rservicebus 0.1.74 → 0.1.75

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.
Files changed (66) hide show
  1. data/bin/ReturnMessagesToSourceQueue +18 -18
  2. data/bin/SendEmptyMessage +3 -3
  3. data/bin/rsb_ctl +10 -10
  4. data/bin/rservicebus-create +4 -4
  5. data/bin/rservicebus-init +7 -6
  6. data/lib/rservicebus.rb +49 -49
  7. data/lib/rservicebus/Agent.rb +4 -4
  8. data/lib/rservicebus/AppResource.rb +4 -4
  9. data/lib/rservicebus/AppResource/Dir.rb +3 -3
  10. data/lib/rservicebus/AppResource/FluidDb.rb +1 -1
  11. data/lib/rservicebus/AppResource/FluidDbFirebird.rb +1 -1
  12. data/lib/rservicebus/AppResource/FluidDbMysql.rb +4 -4
  13. data/lib/rservicebus/AppResource/FluidDbMysql2.rb +4 -4
  14. data/lib/rservicebus/AppResource/FluidDbPgsql.rb +4 -4
  15. data/lib/rservicebus/AppResource/FluidDbTinyTds.rb +1 -1
  16. data/lib/rservicebus/AppResource/Mysql.rb +2 -2
  17. data/lib/rservicebus/AppResource/Redis.rb +1 -1
  18. data/lib/rservicebus/AppResource/ScpDownload.rb +51 -0
  19. data/lib/rservicebus/AppResource/ScpUpload.rb +3 -2
  20. data/lib/rservicebus/AppResource/Smb.rb +3 -3
  21. data/lib/rservicebus/AppResource/SmbDir.rb +2 -2
  22. data/lib/rservicebus/AppResource/SmbFile.rb +1 -1
  23. data/lib/rservicebus/Audit.rb +9 -9
  24. data/lib/rservicebus/CircuitBreaker.rb +4 -4
  25. data/lib/rservicebus/Config.rb +46 -46
  26. data/lib/rservicebus/ConfigureAppResource.rb +64 -63
  27. data/lib/rservicebus/ConfigureMonitor.rb +12 -12
  28. data/lib/rservicebus/ConfigureSubscriptionStorage.rb +5 -5
  29. data/lib/rservicebus/CronManager.rb +8 -8
  30. data/lib/rservicebus/EndpointMapping.rb +11 -11
  31. data/lib/rservicebus/HandlerLoader.rb +33 -33
  32. data/lib/rservicebus/HandlerManager.rb +2 -2
  33. data/lib/rservicebus/Host.rb +58 -58
  34. data/lib/rservicebus/MQ.rb +21 -21
  35. data/lib/rservicebus/MQ/Beanstalk.rb +9 -9
  36. data/lib/rservicebus/MQ/RabbitMq.rb +5 -5
  37. data/lib/rservicebus/MQ/Redis.rb +3 -3
  38. data/lib/rservicebus/Message.rb +11 -11
  39. data/lib/rservicebus/Monitor.rb +5 -5
  40. data/lib/rservicebus/Monitor/CsvDir.rb +5 -5
  41. data/lib/rservicebus/Monitor/CsvPerLine.rb +5 -5
  42. data/lib/rservicebus/Monitor/Dir.rb +34 -34
  43. data/lib/rservicebus/Monitor/DirNotifier.rb +15 -15
  44. data/lib/rservicebus/ResourceManager.rb +2 -2
  45. data/lib/rservicebus/Saga/Manager.rb +18 -18
  46. data/lib/rservicebus/SagaLoader.rb +19 -19
  47. data/lib/rservicebus/SagaStorage.rb +4 -4
  48. data/lib/rservicebus/SagaStorage/Dir.rb +12 -12
  49. data/lib/rservicebus/SendAtManager.rb +4 -4
  50. data/lib/rservicebus/SendAtStorage.rb +5 -5
  51. data/lib/rservicebus/SendAtStorage/File.rb +3 -3
  52. data/lib/rservicebus/StateManager.rb +2 -2
  53. data/lib/rservicebus/StateStorage.rb +2 -2
  54. data/lib/rservicebus/StateStorage/Dir.rb +11 -11
  55. data/lib/rservicebus/StateStorage/InMemory.rb +1 -1
  56. data/lib/rservicebus/StatisticManager.rb +2 -2
  57. data/lib/rservicebus/SubscriptionManager.rb +2 -2
  58. data/lib/rservicebus/SubscriptionStorage.rb +4 -4
  59. data/lib/rservicebus/SubscriptionStorage/File.rb +3 -3
  60. data/lib/rservicebus/SubscriptionStorage/Redis.rb +10 -10
  61. data/lib/rservicebus/Test.rb +2 -2
  62. data/lib/rservicebus/Test/Bus.rb +2 -2
  63. data/lib/rservicebus/Test/Redis.rb +1 -1
  64. data/lib/rservicebus/Transporter.rb +15 -15
  65. data/lib/rservicebus/helper_functions.rb +15 -15
  66. metadata +13 -12
@@ -59,10 +59,10 @@ module RServiceBus
59
59
  v.finished
60
60
  rescue Exception => e1
61
61
  puts "Caught nested exception rolling back, #{v.class.name}, for msg, #{msgName}"
62
- puts "****"
62
+ puts '****'
63
63
  puts e1.message
64
64
  puts e1.backtrace
65
- puts "****"
65
+ puts '****'
66
66
  end
67
67
  end
68
68
 
@@ -20,14 +20,14 @@ class Saga_Manager
20
20
  def GetMethodsByPrefix( saga, prefix )
21
21
  list = []
22
22
  saga.instance_methods.each do |name|
23
- list.push name.to_s.sub( prefix, "" ) if name.to_s.slice( 0,prefix.length ) == prefix
23
+ list.push name.to_s.sub( prefix, '') if name.to_s.slice( 0,prefix.length ) == prefix
24
24
  end
25
25
 
26
26
  return list
27
27
  end
28
28
 
29
29
  def GetStartWithMethodNames( saga )
30
- return self.GetMethodsByPrefix( saga, "StartWith_" )
30
+ return self.GetMethodsByPrefix( saga, 'StartWith_')
31
31
  end
32
32
 
33
33
  # setBusAttributeIfRequested
@@ -36,7 +36,7 @@ class Saga_Manager
36
36
  def setBusAttributeIfRequested( saga )
37
37
  if defined?( saga.Bus ) then
38
38
  saga.Bus = @host
39
- RServiceBus.log "Bus attribute set for: " + saga.class.name
39
+ RServiceBus.log 'Bus attribute set for: ' + saga.class.name
40
40
  end
41
41
 
42
42
  return self
@@ -76,12 +76,12 @@ class Saga_Manager
76
76
 
77
77
 
78
78
  def prepSaga( saga )
79
- if !@resourceListBySagaName[saga.class.name].nil? then
80
- @resourceListBySagaName[saga.class.name].each do |k,v|
81
- saga.instance_variable_set( "@#{k}", @resourceManager.get(k).getResource() )
82
- RServiceBus.rlog "App resource attribute, #{k}, set for: " + saga.class.name
83
- end
79
+ unless @resourceListBySagaName[saga.class.name].nil? then
80
+ @resourceListBySagaName[saga.class.name].each do |k, v|
81
+ saga.instance_variable_set("@#{k}", @resourceManager.get(k).getResource())
82
+ RServiceBus.rlog "App resource attribute, #{k}, set for: " + saga.class.name
84
83
  end
84
+ end
85
85
 
86
86
  end
87
87
 
@@ -91,16 +91,16 @@ class Saga_Manager
91
91
  msg = rmsg.msg
92
92
 
93
93
  RServiceBus.log "SagaManager, started processing, #{msg.class.name}", true
94
- if !@startWith[msg.class.name].nil? then
95
- @startWith[msg.class.name].each do |saga|
96
- data = Saga_Data.new( saga )
97
- @sagaStorage.Set( data )
98
-
99
- methodName = "StartWith_#{msg.class.name}"
100
- self.ProcessMsg( saga, data, methodName, msg )
101
-
102
- handled = true
103
- end
94
+ unless @startWith[msg.class.name].nil? then
95
+ @startWith[msg.class.name].each do |saga|
96
+ data = Saga_Data.new(saga)
97
+ @sagaStorage.Set(data)
98
+
99
+ methodName = "StartWith_#{msg.class.name}"
100
+ self.ProcessMsg(saga, data, methodName, msg)
101
+
102
+ handled = true
103
+ end
104
104
  end
105
105
  return handled if handled == true
106
106
 
@@ -23,15 +23,15 @@ class SagaLoader
23
23
  #
24
24
  # @param [String] filePath the path to be cleaned
25
25
  def getRequirePath( filePath )
26
- if !filePath.start_with?( "/" ) then
27
- filePath = "./" + filePath
28
- end
26
+ unless filePath.start_with?('/') then
27
+ filePath = './' + filePath
28
+ end
29
29
 
30
30
  if File.exists?( filePath ) then
31
- return filePath.sub( ".rb", "")
31
+ return filePath.sub( '.rb', '')
32
32
  end
33
33
 
34
- abort( "Filepath, " + filePath + ", given for Saga require doesn't exist" );
34
+ abort( 'Filepath, ' + filePath + ", given for Saga require doesn't exist" );
35
35
  end
36
36
 
37
37
  # Instantiate the saga named in sagaName from the file name in filePath
@@ -49,9 +49,9 @@ class SagaLoader
49
49
  begin
50
50
  saga = Object.const_get(sagaName);
51
51
  rescue Exception => e
52
- puts "Expected class name: " + sagaName + ", not found after require: " + requirePath
53
- puts "**** Check in " + filePath + " that the class is named : " + sagaName
54
- puts "( In case its not that )"
52
+ puts 'Expected class name: ' + sagaName + ', not found after require: ' + requirePath
53
+ puts '**** Check in ' + filePath + ' that the class is named : ' + sagaName
54
+ puts '( In case its not that )'
55
55
  raise e
56
56
  end
57
57
 
@@ -70,17 +70,17 @@ class SagaLoader
70
70
  end
71
71
 
72
72
  begin
73
- RServiceBus.rlog "filePath: " + filePath
74
- RServiceBus.rlog "sagaName: " + sagaName
73
+ RServiceBus.rlog 'filePath: ' + filePath
74
+ RServiceBus.rlog 'sagaName: ' + sagaName
75
75
 
76
76
  saga = self.loadSagaFromFile( sagaName, filePath )
77
- RServiceBus.log "Loaded Saga: " + sagaName
77
+ RServiceBus.log 'Loaded Saga: ' + sagaName
78
78
 
79
79
  @sagaManager.RegisterSaga( saga )
80
80
 
81
81
  @listOfLoadedPaths[filePath] = 1
82
82
  rescue Exception => e
83
- puts "Exception loading saga from file: " + filePath
83
+ puts 'Exception loading saga from file: ' + filePath
84
84
  puts e.message
85
85
  puts e.backtrace[0]
86
86
 
@@ -94,7 +94,7 @@ class SagaLoader
94
94
  # @param [String] path directory to check
95
95
  # @return [Array] a list of paths to files found in the given path
96
96
  def getListOfFilesForDir( path )
97
- list = Dir[path + "/*"];
97
+ list = Dir[path + '/*'];
98
98
 
99
99
  RServiceBus.rlog "SagaLoader.getListOfFilesForDir. path: #{path}, list: #{list}"
100
100
 
@@ -108,7 +108,7 @@ class SagaLoader
108
108
  baseName = File.basename( filePath )
109
109
  extName = File.extname( baseName )
110
110
 
111
- sagaName = baseName.sub( extName, "" )
111
+ sagaName = baseName.sub( extName, '')
112
112
 
113
113
  return "Saga_#{sagaName}"
114
114
  end
@@ -121,11 +121,11 @@ class SagaLoader
121
121
  RServiceBus.rlog "SagaLoader.loadSagasFromPath. baseDir: #{baseDir}"
122
122
 
123
123
  self.getListOfFilesForDir(baseDir).each do |filePath|
124
- if !filePath.end_with?( "." ) then
125
-
126
- sagaName = self.getSagaName( filePath )
127
- self.loadSaga( filePath, sagaName )
128
- end
124
+ unless filePath.end_with?('.') then
125
+
126
+ sagaName = self.getSagaName(filePath)
127
+ self.loadSaga(filePath, sagaName)
128
+ end
129
129
  end
130
130
 
131
131
  return self
@@ -4,11 +4,11 @@ module RServiceBus
4
4
 
5
5
  def SagaStorage.Get( uri )
6
6
  case uri.scheme
7
- when "dir"
8
- require "rservicebus/SagaStorage/Dir"
7
+ when 'dir'
8
+ require 'rservicebus/SagaStorage/Dir'
9
9
  return SagaStorage_Dir.new( uri )
10
- when "inmem"
11
- require "rservicebus/SagaStorage/InMemory"
10
+ when 'inmem'
11
+ require 'rservicebus/SagaStorage/InMemory'
12
12
  return SagaStorage_InMemory.new( uri )
13
13
  else
14
14
  abort("Scheme, #{uri.scheme}, not recognised when configuring SagaStorage, #{uri.to_s}");
@@ -6,23 +6,23 @@ module RServiceBus
6
6
  @sagaDir = uri.path
7
7
 
8
8
  inputDir = Dir.new( @sagaDir )
9
- if !File.writable?( @sagaDir ) then
10
- puts "***** Directory is not writable, #{@sagaDir}."
11
- puts "***** Make the directory, #{@sagaDir}, writable and try again."
12
- puts "***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>"
13
- abort();
9
+ unless File.writable?(@sagaDir) then
10
+ puts "***** Directory is not writable, #{@sagaDir}."
11
+ puts "***** Make the directory, #{@sagaDir}, writable and try again."
12
+ puts '***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>'
13
+ abort();
14
14
  end
15
15
  rescue Errno::ENOENT => e
16
16
  puts "***** Directory does not exist, #{@sagaDir}."
17
17
  puts "***** Create the directory, #{@sagaDir}, and try again."
18
18
  puts "***** eg, mkdir #{@sagaDir}"
19
- puts "***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>"
19
+ puts '***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>'
20
20
  abort();
21
21
  rescue Errno::ENOTDIR => e
22
22
  puts "***** The specified path does not point to a directory, #{@sagaDir}."
23
23
  puts "***** Either repoint path to a directory, or remove, #{@sagaDir}, and create it as a directory."
24
24
  puts "***** eg, rm #{@sagaDir} && mkdir #{@sagaDir}"
25
- puts "***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>"
25
+ puts '***** Or, set the Saga Directory explicitly by, SAGA_URI=<dir://path/to/saga>'
26
26
  abort();
27
27
  end
28
28
 
@@ -35,14 +35,14 @@ module RServiceBus
35
35
  #Set
36
36
  def Set( data )
37
37
  path = self.getPath( data.correlationId )
38
- @list << Hash["path", path, "data", data]
38
+ @list << Hash['path', path, 'data', data]
39
39
  end
40
40
 
41
41
  #Get
42
42
  def Get( correlationId )
43
43
  path = self.getPath( correlationId )
44
44
  data = self.load( path )
45
- @list << Hash["path", path, "data", data]
45
+ @list << Hash['path', path, 'data', data]
46
46
 
47
47
  return data
48
48
  end
@@ -50,7 +50,7 @@ module RServiceBus
50
50
  #Finish
51
51
  def Commit
52
52
  @list.each do |e|
53
- File.open( e['path'], "w" ) { |f| f.write( YAML::dump( e['data'] ) ) }
53
+ File.open( e['path'], 'w') { |f| f.write( YAML::dump( e['data'] ) ) }
54
54
  end
55
55
  @deleted.each do |correlationId|
56
56
  File.unlink( self.getPath( correlationId ) )
@@ -72,11 +72,11 @@ module RServiceBus
72
72
  end
73
73
 
74
74
  def load( path )
75
- return Hash.new if !File.exists?( path )
75
+ return Hash.new unless File.exists?(path)
76
76
 
77
77
  content = IO.read( path )
78
78
 
79
- return Hash.new if content == ""
79
+ return Hash.new if content == ''
80
80
 
81
81
  return YAML::load( content )
82
82
  end
@@ -9,9 +9,9 @@ module RServiceBus
9
9
  #Check if the SendAt Dir has been specified
10
10
  #If it has, make sure it exists, and is writable
11
11
 
12
- string = RServiceBus.getValue( "SENDAT_URI" )
12
+ string = RServiceBus.getValue('SENDAT_URI')
13
13
  if string.nil? then
14
- string = "file:///tmp/rservicebus-sendat"
14
+ string = 'file:///tmp/rservicebus-sendat'
15
15
  end
16
16
 
17
17
  uri = URI.parse( string )
@@ -24,8 +24,8 @@ module RServiceBus
24
24
  def Process
25
25
  now = DateTime.now
26
26
  @SendAtStorage.GetAll.each_with_index do |row,idx|
27
- if row["timestamp"] > now then
28
- @Bus._SendNeedsWrapping( row["msg"], row["queueName"], row["correlationId"] )
27
+ if row['timestamp'] > now then
28
+ @Bus._SendNeedsWrapping( row['msg'], row['queueName'], row['correlationId'] )
29
29
  @SendAtStorage.Delete( idx )
30
30
  end
31
31
  end
@@ -1,16 +1,16 @@
1
1
  module RServiceBus
2
2
 
3
- require "rservicebus/SendAtStorage"
3
+ require 'rservicebus/SendAtStorage'
4
4
 
5
5
  class SendAtStorage
6
6
 
7
7
  def SendAtStorage.Get( uri )
8
8
  case uri.scheme
9
- when "file"
10
- require "rservicebus/SendAtStorage/File"
9
+ when 'file'
10
+ require 'rservicebus/SendAtStorage/File'
11
11
  return SendAtStorage_File.new( uri )
12
- when "inmem"
13
- require "rservicebus/SendAtStorage/InMemory"
12
+ when 'inmem'
13
+ require 'rservicebus/SendAtStorage/InMemory'
14
14
  return SendAtStorage_InMemory.new( uri )
15
15
  else
16
16
  abort("Scheme, #{uri.scheme}, not recognised when configuring SendAtStorage, #{uri.to_s}");
@@ -6,11 +6,11 @@ module RServiceBus
6
6
  @list = self.load( uri.path )
7
7
  end
8
8
  def load( path )
9
- return Array.new if !File.exists?( path )
9
+ return Array.new unless File.exists?(path)
10
10
 
11
11
  content = IO.read( path )
12
12
 
13
- return Array.new if content == ""
13
+ return Array.new if content == ''
14
14
 
15
15
  return YAML::load( content )
16
16
  end
@@ -36,7 +36,7 @@ module RServiceBus
36
36
  #Finish
37
37
  def Save
38
38
  content = YAML::dump( @list )
39
- File.open( @uri.path, "w" ) { |f| f.write( YAML::dump( content ) ) }
39
+ File.open( @uri.path, 'w') { |f| f.write( YAML::dump( content ) ) }
40
40
  end
41
41
 
42
42
 
@@ -9,9 +9,9 @@ module RServiceBus
9
9
  #Check if the State Dir has been specified
10
10
  #If it has, make sure it exists, and is writable
11
11
 
12
- string = RServiceBus.getValue( "STATE_URI" )
12
+ string = RServiceBus.getValue('STATE_URI')
13
13
  if string.nil? then
14
- string = "dir:///tmp"
14
+ string = 'dir:///tmp'
15
15
  end
16
16
 
17
17
  uri = URI.parse( string )
@@ -4,10 +4,10 @@ module RServiceBus
4
4
 
5
5
  def StateStorage.Get( uri )
6
6
  case uri.scheme
7
- when "dir"
7
+ when 'dir'
8
8
  require 'rservicebus/StateStorage/Dir.rb'
9
9
  return StateStorage_Dir.new( uri )
10
- when "inmem"
10
+ when 'inmem'
11
11
  require 'rservicebus/StateStorage/InMemory.rb'
12
12
  return StateStorage_InMemory.new( uri )
13
13
  else
@@ -6,23 +6,23 @@ module RServiceBus
6
6
  @stateDir = uri.path
7
7
 
8
8
  inputDir = Dir.new( @stateDir )
9
- if !File.writable?( @stateDir ) then
10
- puts "***** Directory is not writable, #{@stateDir}."
11
- puts "***** Make the directory, #{@stateDir}, writable and try again."
12
- puts "***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>"
13
- abort();
9
+ unless File.writable?(@stateDir) then
10
+ puts "***** Directory is not writable, #{@stateDir}."
11
+ puts "***** Make the directory, #{@stateDir}, writable and try again."
12
+ puts '***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>'
13
+ abort();
14
14
  end
15
15
  rescue Errno::ENOENT => e
16
16
  puts "***** Directory does not exist, #{@stateDir}."
17
17
  puts "***** Create the directory, #{@stateDir}, and try again."
18
18
  puts "***** eg, mkdir #{@stateDir}"
19
- puts "***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>"
19
+ puts '***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>'
20
20
  abort();
21
21
  rescue Errno::ENOTDIR => e
22
22
  puts "***** The specified path does not point to a directory, #{@stateDir}."
23
23
  puts "***** Either repoint path to a directory, or remove, #{@stateDir}, and create it as a directory."
24
24
  puts "***** eg, rm #{@stateDir} && mkdir #{@stateDir}"
25
- puts "***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>"
25
+ puts '***** Or, set the State Directory explicitly by, STATE_URI=<dir://path/to/state>'
26
26
  abort();
27
27
  end
28
28
 
@@ -35,7 +35,7 @@ module RServiceBus
35
35
  def Get( handler )
36
36
  path = self.getPath( handler )
37
37
  hash = self.load( path )
38
- @list << Hash["path", path, "hash", hash]
38
+ @list << Hash['path', path, 'hash', hash]
39
39
 
40
40
  return hash
41
41
  end
@@ -43,7 +43,7 @@ module RServiceBus
43
43
  #Finish
44
44
  def Commit
45
45
  @list.each do |e|
46
- File.open( e['path'], "w" ) { |f| f.write( YAML::dump( e['hash'] ) ) }
46
+ File.open( e['path'], 'w') { |f| f.write( YAML::dump( e['hash'] ) ) }
47
47
  end
48
48
  end
49
49
 
@@ -55,11 +55,11 @@ module RServiceBus
55
55
  end
56
56
 
57
57
  def load( path )
58
- return Hash.new if !File.exists?( path )
58
+ return Hash.new unless File.exists?(path)
59
59
 
60
60
  content = IO.read( path )
61
61
 
62
- return Hash.new if content == ""
62
+ return Hash.new if content == ''
63
63
 
64
64
  return YAML::load( content )
65
65
  end
@@ -14,7 +14,7 @@ module RServiceBus
14
14
  #Get
15
15
  def Get( handler )
16
16
  hash = @hash[handler.class.name]
17
- @list << Hash["name", handler.class.name, "hash", hash]
17
+ @list << Hash['name', handler.class.name, 'hash', hash]
18
18
 
19
19
  return hash
20
20
  end
@@ -17,8 +17,8 @@ class StatisticManager
17
17
 
18
18
  @totalByMessageType = Hash.new
19
19
 
20
- @output = !RServiceBus.getValue( "VERBOSE", nil ).nil?
21
- @maxStatOutputCountdown = RServiceBus.getValue( "STAT_OUTPUT_COUNTDOWN", "1" ).to_i
20
+ @output = !RServiceBus.getValue( 'VERBOSE', nil ).nil?
21
+ @maxStatOutputCountdown = RServiceBus.getValue( 'STAT_OUTPUT_COUNTDOWN', '1').to_i
22
22
  @statOutputCountdown = 0
23
23
  end
24
24
 
@@ -24,12 +24,12 @@ class SubscriptionManager
24
24
  end
25
25
 
26
26
  def add( eventName, queueName )
27
- RServiceBus.log "Adding subscription for, " + eventName + ", to, " + queueName
27
+ RServiceBus.log 'Adding subscription for, ' + eventName + ', to, ' + queueName
28
28
  @subscriptions = @subscriptionStorage.add( eventName, queueName )
29
29
  end
30
30
 
31
31
  def remove( eventName, queueName )
32
- raise "Method, remove, needs to be implemented for this subscription storage"
32
+ raise 'Method, remove, needs to be implemented for this subscription storage'
33
33
  end
34
34
  end
35
35