Method: SimpleQS::Queue.create
- Defined in:
- lib/simple_qs/queue.rb
.create(name, default_visibility_timeout = nil, &block) ⇒ Object
Create new queue Parameters:
name - String, name of queue. Should be not longer than 80 chars and contain only a-zA-Z0-9\-\_
default_visibility_timeout - Fixnum, visibility timeout [Optional]. In range 0 to MAX_VISIBILITY_TIMEOUT.
If nil, then default is used (30 seconds).
&block - if given, then newly created queue object passed to it
Returns:
SimpleQS::Queue
Raises:
ArgumentError
SimpleQS::Queue::MaxVisibilityError
SimpleQS::Responce::Error
211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 |
# File 'lib/simple_qs/queue.rb', line 211 def create(name, default_visibility_timeout = nil, &block) check_queue_name(name) check_visibility_timeout(default_visibility_timeout) params = { 'Action' => 'CreateQueue', 'QueueName' => name } params['DefaultVisibilityTimeout'] = default_visibility_timeout if default_visibility_timeout request = SimpleQS::Request.build(:get, params) responce = request.perform if responce.successful? queue = new(responce.queue_url) yield queue if block_given? queue else raise responce.to_error end end |