Class: IntellisenseRuby::SQS_Publisher
- Inherits:
-
Object
- Object
- IntellisenseRuby::SQS_Publisher
- Defined in:
- lib/intellisense-ruby/sqs_publisher.rb
Instance Attribute Summary collapse
-
#sqs_queue ⇒ Object
Returns the value of attribute sqs_queue.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ SQS_Publisher
constructor
A new instance of SQS_Publisher.
- #send_message(message = {}) ⇒ Object
Constructor Details
#initialize(options = {}) ⇒ SQS_Publisher
Returns a new instance of SQS_Publisher.
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/intellisense-ruby/sqs_publisher.rb', line 12 def initialize( = {}) @sqs = AWS::SQS.new( :access_key_id => [:warehouse_access_key_id], :secret_access_key => [:warehouse_secret_access_key]) @sqs_queue = @sqs.queues[[:warehouse_queue_url]] @logger = [:logger] begin @sqs_queue.arn log_info("intellisense-ruby: SQS_Publisher created! with queue #{@sqs_queue.url}") rescue => ex log_error("intellisense-ruby: SQS_Publisher creation FAILED... messages will not be sent due to: #{ex.class.name}") @sqs_queue = nil end end |
Instance Attribute Details
#sqs_queue ⇒ Object
Returns the value of attribute sqs_queue.
10 11 12 |
# File 'lib/intellisense-ruby/sqs_publisher.rb', line 10 def sqs_queue @sqs_queue end |
Instance Method Details
#send_message(message = {}) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/intellisense-ruby/sqs_publisher.rb', line 32 def ( = {}) if @sqs_queue.nil? log_error("intellisense-ruby: SENSOR FAILED to send message to SQS: #{}") return false end begin val = .to_s msg = @sqs_queue.(val) log_info("intellisense-ruby: SQS_Publisher - Sent message: #{msg.id}") return true rescue => ex log_error("intellisense-ruby: SQS_Publisher - FAILED to send messages due to: #{ex.class.name}") return false end end |