pheromone 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 69a08227e4e394d739b9d3d5fef0452e79612332
4
- data.tar.gz: ed90ba4683d52281d3463f9cd7aca7280713153d
3
+ metadata.gz: d3f1fe5bb2dbe4e0cf815e03111d80d089746436
4
+ data.tar.gz: 13e6ac662e5654c71b7430c517ba0711fa45889f
5
5
  SHA512:
6
- metadata.gz: f586f911337ebb468434a962b4163a2ea3dab779d0ba149abf6e366d7497954e8ec15c6a5dc8d39ca1b82a70016ba7f0c607770c7eb29d0502c523b0d31c86c1
7
- data.tar.gz: e19530afdbaabad95a1aa5a3a8c34f87b804479dd1436f1b3dfa8139b4012b303afe2e49cf256f51d25c813165e862600f425acc1e90260690cd13d9eb2e56bd
6
+ metadata.gz: bd41d445ff84159f46def857afb9a28d3c9dfa1eadcd81d1ce7664ccf5c87b4d3fcc148a37f4a48726278fe447bd0cc7e483a7b4ab6cc09bf90d499357708c62
7
+ data.tar.gz: cd7210697a807f606fdaf14f5c4765e1a5e975e431bcc4e55275186d293085b11f48b4a3fd11919e6dd59b4b22ed2cba71685b7c13dcd33c40c201e0d6d482f2
data/README.md CHANGED
@@ -270,7 +270,7 @@ These can be sent in by passing `producer_options` to the `publish` method:
270
270
 
271
271
  ```
272
272
  class PublishableModel < ActiveRecord::Base
273
- include Pheromone
273
+ include Pheromone::Publishable
274
274
  publish [
275
275
  {
276
276
  event_types: [:create],
@@ -0,0 +1,19 @@
1
+ require 'waterdrop'
2
+ # Encapsulates WaterDrop::Message
3
+ module Pheromone
4
+ module Messaging
5
+ class Message
6
+ def initialize(topic:, message:, options:)
7
+ @topic = topic
8
+ @message = message
9
+ @options = options
10
+ end
11
+
12
+ attr_reader :topic, :message, :options
13
+
14
+ def send!
15
+ ::WaterDrop::Message.new(topic, message, options).send!
16
+ end
17
+ end
18
+ end
19
+ end
@@ -1,6 +1,6 @@
1
1
  require 'pheromone'
2
2
  require 'pheromone/messaging/message_formatter'
3
- require 'waterdrop'
3
+ require 'pheromone/messaging/message'
4
4
  # This module is used for sending messages to Kafka
5
5
  # Dispatch method can be :sync or :async
6
6
  # When dispatch_method is async, the message object is passed to a job
@@ -35,12 +35,12 @@ module Pheromone
35
35
  end
36
36
 
37
37
  def message
38
- ::WaterDrop::Message.new(
39
- @message_parameters[:topic],
40
- MessageFormatter.new(
38
+ Message.new(
39
+ topic: @message_parameters[:topic],
40
+ message: MessageFormatter.new(
41
41
  @message_parameters[:message]
42
42
  ).format,
43
- @message_parameters[:producer_options] || {}
43
+ options: @message_parameters[:producer_options] || {}
44
44
  )
45
45
  end
46
46
 
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Pheromone
3
- VERSION = '0.2.1'.freeze
3
+ VERSION = '0.2.2'.freeze
4
4
  end
data/lib/pheromone.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  require 'pheromone/publishable'
2
2
  require 'pheromone/config'
3
+ require 'pheromone/messaging/message'
3
4
 
4
5
  module Pheromone
5
6
  class << self
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pheromone
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ankita Gupta
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-25 00:00:00.000000000 Z
11
+ date: 2017-08-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: active_model_serializers
@@ -230,6 +230,7 @@ files:
230
230
  - lib/pheromone/config.rb
231
231
  - lib/pheromone/exceptions/invalid_publish_options.rb
232
232
  - lib/pheromone/exceptions/unsupported_message_format.rb
233
+ - lib/pheromone/messaging/message.rb
233
234
  - lib/pheromone/messaging/message_dispatcher.rb
234
235
  - lib/pheromone/messaging/message_formatter.rb
235
236
  - lib/pheromone/method_invoker.rb