docs/publishing.md in table_sync-5.0.0 vs docs/publishing.md in table_sync-5.1.0
- old
+ new
@@ -39,11 +39,11 @@
Example:
```ruby
class TableSync::Job < ActiveJob::Base
def perform(*args)
- TableSync::Publisher.new(*args).publish_now
+ TableSync::Publishing::Publisher.new(*args).publish_now
end
end
```
- `TableSync.batch_publishing_job_class_callable` is a callable which should resolve to a ActiveJob subclass that calls TableSync batch publisher back to actually publish changes (required for batch publisher)
@@ -68,20 +68,20 @@
- `TableSync.notifier` is a module that provides publish and recieve notifications.
# Manual publishing
-`TableSync::Publisher.new(object_class, original_attributes, confirm: true, state: :updated, debounce_time: 45)`
+`TableSync::Publishing::Publisher.new(object_class, original_attributes, confirm: true, state: :updated, debounce_time: 45)`
where state is one of `:created / :updated / :destroyed` and `confirm` is Rabbit's confirm delivery flag and optional param `debounce_time` determines debounce time in seconds, 1 minute by default.
# Manual publishing with batches
-You can use `TableSync::BatchPublisher` to publish changes in batches (array of hashes in `attributes`).
+You can use `TableSync::Publishing::BatchPublisher` to publish changes in batches (array of hashes in `attributes`).
-When using `TableSync::BatchPublisher`,` TableSync.routing_key_callable` is called as follows: `TableSync.routing_key_callable.call(klass, {})`, i.e. empty hash is passed instead of attributes. And `TableSync.routing_metadata_callable` is not called at all: metadata is set to empty hash.
+When using `TableSync::Publishing::BatchPublisher`,` TableSync.routing_key_callable` is called as follows: `TableSync.routing_key_callable.call(klass, {})`, i.e. empty hash is passed instead of attributes. And `TableSync.routing_metadata_callable` is not called at all: metadata is set to empty hash.
-`TableSync::BatchPublisher.new(object_class, original_attributes_array, **options)`, where `original_attributes_array` is an array with hash of attributes of published objects and `options` is a hash of options.
+`TableSync::Publishing::BatchPublisher.new(object_class, original_attributes_array, **options)`, where `original_attributes_array` is an array with hash of attributes of published objects and `options` is a hash of options.
`options` consists of:
- `confirm`, which is a flag for RabbitMQ, `true` by default
- `routing_key`, which is a custom key used (if given) to override one from `TableSync.routing_key_callable`, `nil` by default
- `push_original_attributes` (default value is `false`), if this option is set to `true`,
@@ -90,11 +90,11 @@
- `event`, which is an option for event specification (`:destroy` or `:update`), `:update` by default
Example:
```ruby
-TableSync::BatchPublisher.new(
+TableSync::Publishing::BatchPublisher.new(
"SomeClass",
[{ id: 1 }, { id: 2 }],
confirm: false,
routing_key: "custom_routing_key",
push_original_attributes: true,
@@ -103,15 +103,15 @@
)
```
# Manual publishing with batches (Russian)
-С помощью класса `TableSync::BatchPublisher` вы можете опубликовать изменения батчами (массивом в `attributes`).
+С помощью класса `TableSync::Publishing::BatchPublisher` вы можете опубликовать изменения батчами (массивом в `attributes`).
-При использовании `TableSync::BatchPublisher`, `TableSync.routing_key_callable` вызывается следующим образом: `TableSync.routing_key_callable.call(klass, {})`, то есть вместо аттрибутов передается пустой хэш. А `TableSync.routing_metadata_callable` не вызывается вовсе: в метадате устанавливается пустой хэш.
+При использовании `TableSync::Publishing::BatchPublisher`, `TableSync.routing_key_callable` вызывается следующим образом: `TableSync.routing_key_callable.call(klass, {})`, то есть вместо аттрибутов передается пустой хэш. А `TableSync.routing_metadata_callable` не вызывается вовсе: в метадате устанавливается пустой хэш.
-`TableSync::BatchPublisher.new(object_class, original_attributes_array, **options)`, где `original_attributes_array` - массив с аттрибутами публикуемых объектов и `options`- это хэш с дополнительными опциями.
+`TableSync::Publishing::BatchPublisher.new(object_class, original_attributes_array, **options)`, где `original_attributes_array` - массив с аттрибутами публикуемых объектов и `options`- это хэш с дополнительными опциями.
`options` состоит из:
- `confirm`, флаг для RabbitMQ, по умолчанию - `true`
- `routing_key`, ключ, который (если указан) замещает ключ, получаемый из `TableSync.routing_key_callable`, по умолчанию - `nil`
- `push_original_attributes` (значение по умолчанию `false`), если для этой опции задано значение true, в Rabbit будут отправлены original_attributes_array, вместо получения значений записей из базы непосредственно перед отправкой.
@@ -119,10 +119,10 @@
- `event`, опция для указания типа события (`:destroy` или `:update`), `:update` по умолчанию
Example:
```ruby
-TableSync::BatchPublisher.new(
+TableSync::Publishing::BatchPublisher.new(
"SomeClass",
[{ id: 1 }, { id: 2 }],
confirm: false,
routing_key: "custom_routing_key",
push_original_attributes: true,