Sha256: 33a262cdca8d392fd2a45eaa83a44ae0f6488e691a032af396542e4b99633382

Contents?: true

Size: 408 Bytes

Versions: 2

Compression:

Stored size: 408 Bytes

Contents

require 'aws-sdk'

module Alephant
  class Queue
    attr_accessor :q

    def initialize(id)
      @sqs = AWS::SQS.new
      @q = @sqs.queues[id]

      unless @q.exists?
        @q = @sqs.queues.create(id)
        sleep_until_queue_exists
      end
    end

    def sleep_until_queue_exists
      sleep 1 until @q.exists?
    end

    def poll(*args, &block)
      @q.poll(*args, &block)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
alephant-0.0.6-java lib/alephant/models/queue.rb
alephant-0.0.5-java lib/alephant/models/queue.rb