Module: Qpid::Proton::Util::Engine
- Included in:
- Delivery, Disposition, Endpoint, Transport
- Defined in:
- lib/util/engine.rb
Class Method Summary collapse
-
.receive_message(delivery, msg = nil) ⇒ Qpid::Proton::Message
Convenience method to receive messages from a delivery.
Instance Method Summary collapse
-
#condition_to_object(condition) ⇒ Object
:nodoc:.
-
#data_to_object(data_impl) ⇒ Object
:nodoc:.
-
#object_to_condition(object, condition) ⇒ Object
:nodoc:.
-
#object_to_data(object, data_impl) ⇒ Object
:nodoc:.
Class Method Details
.receive_message(delivery, msg = nil) ⇒ Qpid::Proton::Message
Convenience method to receive messages from a delivery.
32 33 34 35 36 37 |
# File 'lib/util/engine.rb', line 32 def self.(delivery, msg = nil) msg = Qpid::Proton::Message.new if msg.nil? msg.decode(delivery.link.receive(delivery.pending)) delivery.link.advance return msg end |
Instance Method Details
#condition_to_object(condition) ⇒ Object
:nodoc:
58 59 60 61 62 63 64 65 66 |
# File 'lib/util/engine.rb', line 58 def condition_to_object(condition) # :nodoc: result = nil if Cproton.pn_condition_is_set(condition) result = Condition.new(Cproton.pn_condition_get_name(condition), Cproton.pn_condition_get_description(condition), data_to_object(Cproton.pn_condition_info(condition))) end return result end |
#data_to_object(data_impl) ⇒ Object
:nodoc:
39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/util/engine.rb', line 39 def data_to_object(data_impl) # :nodoc: object = nil unless data_impl.nil? data = Qpid::Proton::Codec::Data.new(data_impl) data.rewind data.next object = data.object data.rewind end return object end |
#object_to_condition(object, condition) ⇒ Object
:nodoc:
68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/util/engine.rb', line 68 def object_to_condition(object, condition) # :nodoc: Cproton.pn_condition_clear(condition) unless object.nil? Cproton.pn_condition_set_name(condition, object.name) Cproton.pn_condition_set_description(condition, object.description) info = Data.new(Cproton.pn_condition_info(condition)) if object.info? info.object = object.info end end end |
#object_to_data(object, data_impl) ⇒ Object
:nodoc:
51 52 53 54 55 56 |
# File 'lib/util/engine.rb', line 51 def object_to_data(object, data_impl) # :nodoc: unless object.nil? data = Data.new(data_impl) data.object = object end end |