Class: Reqless::ClientQueuePatterns
- Inherits:
-
Object
- Object
- Reqless::ClientQueuePatterns
- Defined in:
- lib/reqless.rb
Instance Method Summary collapse
- #get_queue_identifier_patterns ⇒ Object
- #get_queue_priority_patterns ⇒ Object
-
#initialize(client) ⇒ ClientQueuePatterns
constructor
A new instance of ClientQueuePatterns.
- #set_queue_identifier_patterns(identifier_patterns) ⇒ Object
- #set_queue_priority_patterns(queue_priority_patterns) ⇒ Object
Constructor Details
#initialize(client) ⇒ ClientQueuePatterns
Returns a new instance of ClientQueuePatterns.
149 150 151 |
# File 'lib/reqless.rb', line 149 def initialize(client) @client = client end |
Instance Method Details
#get_queue_identifier_patterns ⇒ Object
153 154 155 156 157 158 159 160 161 |
# File 'lib/reqless.rb', line 153 def get_queue_identifier_patterns serialized_patterns = @client.call('queueIdentifierPatterns.getAll') identifiers_with_serialized_patterns = JSON.parse(serialized_patterns) Hash[ identifiers_with_serialized_patterns.map do |identifier, serialized_pattern| [identifier, JSON.parse(serialized_pattern)] end ] end |
#get_queue_priority_patterns ⇒ Object
170 171 172 173 174 175 176 177 178 179 180 |
# File 'lib/reqless.rb', line 170 def get_queue_priority_patterns serialized_priority_patterns_json = @client.call('queuePriorityPatterns.getAll') serialized_priority_patterns = JSON.parse(serialized_priority_patterns_json) serialized_priority_patterns.map do |serialized_priority_pattern| priority_pattern = JSON.parse(serialized_priority_pattern) QueuePriorityPattern.new( priority_pattern['pattern'], priority_pattern.fetch('fairly', false), ) end end |
#set_queue_identifier_patterns(identifier_patterns) ⇒ Object
163 164 165 166 167 168 |
# File 'lib/reqless.rb', line 163 def set_queue_identifier_patterns(identifier_patterns) args = identifier_patterns.flat_map do |identifier, pattern| [identifier, JSON.dump(pattern)] end @client.call('queueIdentifierPatterns.setAll', *args) end |
#set_queue_priority_patterns(queue_priority_patterns) ⇒ Object
182 183 184 185 186 187 188 189 190 |
# File 'lib/reqless.rb', line 182 def set_queue_priority_patterns(queue_priority_patterns) serialized_patterns = queue_priority_patterns.map do |queue_priority_pattern| JSON.dump({ 'pattern': queue_priority_pattern.pattern, 'fairly': queue_priority_pattern.should_distribute_fairly, }) end @client.call('queuePriorityPatterns.setAll', *serialized_patterns) end |