rservicebus 0.0.26 → 0.0.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@ module RServiceBus
2
2
 
3
3
  #Marshals configuration information for an rservicebus host
4
4
  class Config
5
- attr_reader :appName, :messageEndpointMappings, :handlerPathList, :localQueueName, :errorQueueName, :maxRetries, :forwardReceivedMessagesTo, :verbose, :queueTimeout, :statOutputCountdown, :contractList, :libList, :forwardSentMessagesTo, :mqHost
5
+ attr_reader :appName, :messageEndpointMappings, :handlerPathList, :localQueueName, :errorQueueName, :maxRetries, :forwardReceivedMessagesTo, :subscriptionUri, :verbose, :queueTimeout, :statOutputCountdown, :contractList, :libList, :forwardSentMessagesTo, :mqHost
6
6
 
7
7
  @appName
8
8
  @messageEndpointMappings
@@ -14,6 +14,7 @@ class Config
14
14
  @forwardSentMessagesTo
15
15
  @maxRetries
16
16
  @forwardReceivedMessagesTo
17
+ @subscriptionUri
17
18
 
18
19
  @verbose
19
20
 
@@ -90,6 +91,7 @@ class Config
90
91
  @forwardReceivedMessagesTo = self.getValue( "FORWARD_RECEIVED_MESSAGES_TO" )
91
92
  @queueTimeout = self.getValue( "QUEUE_TIMEOUT", "5" ).to_i
92
93
  @statOutputCountdown = self.getValue( "STAT_OUTPUT_COUNTDOWN", "100" ).to_i
94
+ @subscriptionUri = self.getValue( "SUBSCRIPTION_URI", "redis://127.0.0.1:6379/" )
93
95
 
94
96
  return self
95
97
  end
@@ -0,0 +1,24 @@
1
+ module RServiceBus
2
+
3
+ require "uri"
4
+
5
+ #Configure SubscriptionStorage for an rservicebus host
6
+ class ConfigureSubscriptionStorage
7
+
8
+ def get( appName, uri_string )
9
+ uri = URI.parse( uri_string )
10
+
11
+ case uri.scheme
12
+ when "redis"
13
+ require "rservicebus/SubscriptionStorage/Redis"
14
+ s = SubscriptionStorage_Redis.new( appName, uri )
15
+
16
+ else
17
+ abort("Scheme, #{uri.scheme}, not recognised when configuring subscription storage, #{uri_string}");
18
+ end
19
+ return s
20
+ end
21
+
22
+ end
23
+
24
+ end
@@ -98,9 +98,9 @@ module RServiceBus
98
98
  end
99
99
 
100
100
  def configureSubscriptions
101
- subscriptionStorage = SubscriptionStorage_Redis.new( @config.appName, "uri" )
101
+ subscriptionStorage = ConfigureSubscriptionStorage.new.get( @config.appName, @config.subscriptionUri )
102
102
  @subscriptionManager = SubscriptionManager.new( subscriptionStorage )
103
-
103
+
104
104
  return self
105
105
  end
106
106
 
@@ -9,7 +9,8 @@ class SubscriptionStorage_Redis<SubscriptionStorage
9
9
 
10
10
  def initialize( appName, uri )
11
11
  super(appName, uri)
12
- @redis = Redis.new
12
+ port = uri.port.nil? ? 6379 : uri.port
13
+ @redis = Redis.new( :host=>uri.host, :port=>port )
13
14
  end
14
15
 
15
16
  def getAll
@@ -43,7 +44,7 @@ class SubscriptionStorage_Redis<SubscriptionStorage
43
44
  else
44
45
  subscriptions = YAML::load(content)
45
46
  end
46
-
47
+
47
48
  if subscriptions[eventName].nil? then
48
49
  subscriptions[eventName] = Array.new
49
50
  end
data/lib/rservicebus.rb CHANGED
@@ -24,7 +24,7 @@ require "rservicebus/AppResource/Redis"
24
24
 
25
25
  require "rservicebus/SubscriptionManager"
26
26
  require "rservicebus/SubscriptionStorage"
27
- require "rservicebus/SubscriptionStorage/Redis"
27
+ require "rservicebus/ConfigureSubscriptionStorage"
28
28
 
29
29
 
30
30
  module RServiceBus
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rservicebus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.26
4
+ version: 0.0.27
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-27 00:00:00.000000000 Z
12
+ date: 2012-10-28 00:00:00.000000000 Z
13
13
  dependencies: []
14
14
  description: A Ruby interpretation of NServiceBus
15
15
  email: guy@guyirvine.com
@@ -35,6 +35,7 @@ files:
35
35
  - lib/rservicebus/Config.rb
36
36
  - lib/rservicebus/ConfigureAppResource.rb
37
37
  - lib/rservicebus/ConfigureMQ.rb
38
+ - lib/rservicebus/ConfigureSubscriptionStorage.rb
38
39
  - lib/rservicebus/ErrorMessage.rb
39
40
  - lib/rservicebus/HandlerLoader.rb
40
41
  - lib/rservicebus/helper_functions.rb