Module: Capsize::CapsizeSQS
- Includes:
- Capsize
- Defined in:
- lib/capsize/sqs_plugin.rb
Instance Method Summary collapse
- #add_grant(options = {}) ⇒ Object
-
#build_xml ⇒ Object
Creqte the XML for our CapQueue messages.
-
#connect ⇒ Object
returns an instance of SQS::Queue.
- #delete(options = nil) ⇒ Object
- #delete! ⇒ Object
- #empty? ⇒ Boolean
- #get_queue_attributes(force = false) ⇒ Object
- #list_grants ⇒ Object
- #peek_message ⇒ Object
- #peek_messages(options = {}) ⇒ Object
- #receive_message ⇒ Object
- #receive_messages(options = {}) ⇒ Object
- #remove_grant(options = {}) ⇒ Object
- #send_message(m) ⇒ Object
- #set_queue_attributes(atts = {}) ⇒ Object
Methods included from Capsize
Instance Method Details
#add_grant(options = {}) ⇒ Object
111 112 113 114 |
# File 'lib/capsize/sqs_plugin.rb', line 111 def add_grant( ={} ) queue = connect() queue.add_grant() end |
#build_xml ⇒ Object
Creqte the XML for our CapQueue messages
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/capsize/sqs_plugin.rb', line 6 def build_xml body = "" xml = Builder::XmlMarkup.new(:target => body, :indent => 2) xml.command do xml.hosts do get(:hosts).split(/,/).each do |host| xml.host host end unless get(:hosts).nil? end xml.environment do get(:environment).split(/,/).each do |keyvar| xml.variable do key, var = keyvar.split(/=/,2) var.gsub!(/("|')/,'') xml.key key xml.var var end end unless get(:environment).nil? end xml.variables do get(:variables).split(/,/).each do |keyvar| xml.variable do key, var = keyvar.split(/=/,2) var.gsub!(/("|')/,'') xml.key key xml.var var end end unless get(:variables).nil? end xml.task get(:task) end body end |
#connect ⇒ Object
returns an instance of SQS::Queue
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/capsize/sqs_plugin.rb', line 41 def connect set :aws_access_key_id, get(:aws_access_key_id) set :aws_secret_access_key, get(:aws_secret_access_key) raise Exception, "You must have an :aws_access_key_id defined in your config." if fetch(:aws_access_key_id).nil? || fetch(:aws_access_key_id).empty? raise Exception, "You must have an :aws_secret_access_key defined in your config." if fetch(:aws_secret_access_key).nil? || fetch(:aws_secret_access_key).empty? SQS.access_key_id = fetch(:aws_access_key_id) SQS.secret_access_key = fetch(:aws_secret_access_key) queue = nil begin queue = SQS.get_queue queue_name rescue queue = SQS.create_queue queue_name ensure return queue end end |
#delete(options = nil) ⇒ Object
61 62 63 64 |
# File 'lib/capsize/sqs_plugin.rb', line 61 def delete( =nil ) queue = connect() queue.delete() end |
#delete! ⇒ Object
66 67 68 69 |
# File 'lib/capsize/sqs_plugin.rb', line 66 def delete! queue = connect() queue.delete! end |
#empty? ⇒ Boolean
86 87 88 89 |
# File 'lib/capsize/sqs_plugin.rb', line 86 def empty? queue = connect() queue.empty? end |
#get_queue_attributes(force = false) ⇒ Object
76 77 78 79 |
# File 'lib/capsize/sqs_plugin.rb', line 76 def get_queue_attributes( force=false ) queue = connect() queue.get_queue_attributes(force) end |
#list_grants ⇒ Object
121 122 123 124 |
# File 'lib/capsize/sqs_plugin.rb', line 121 def list_grants queue = connect() queue.list_grants end |
#peek_message ⇒ Object
91 92 93 94 |
# File 'lib/capsize/sqs_plugin.rb', line 91 def queue = connect() queue. end |
#peek_messages(options = {}) ⇒ Object
96 97 98 99 |
# File 'lib/capsize/sqs_plugin.rb', line 96 def ( ={} ) queue = connect() queue.() end |
#receive_message ⇒ Object
101 102 103 104 |
# File 'lib/capsize/sqs_plugin.rb', line 101 def queue = connect() queue. end |
#receive_messages(options = {}) ⇒ Object
106 107 108 109 |
# File 'lib/capsize/sqs_plugin.rb', line 106 def ( ={} ) queue = connect() queue.() end |
#remove_grant(options = {}) ⇒ Object
116 117 118 119 |
# File 'lib/capsize/sqs_plugin.rb', line 116 def remove_grant( ={} ) queue = connect() queue.remove_grant() end |
#send_message(m) ⇒ Object
71 72 73 74 |
# File 'lib/capsize/sqs_plugin.rb', line 71 def ( m ) queue = connect() queue.(m) end |
#set_queue_attributes(atts = {}) ⇒ Object
81 82 83 84 |
# File 'lib/capsize/sqs_plugin.rb', line 81 def set_queue_attributes( atts={} ) queue = connect() queue.set_queue_attributes(atts) end |