Repository: qpid-proton Updated Branches: refs/heads/master 2dda72c70 -> 8e65759f0
NO-JIRA: [ruby] add Disposition::State::name_of int values Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/8e65759f Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/8e65759f Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/8e65759f Branch: refs/heads/master Commit: 8e65759f0f1682b5c45e41b67ff049bd3caf04b0 Parents: 2dda72c Author: Alan Conway <acon...@redhat.com> Authored: Fri May 11 12:05:33 2018 -0400 Committer: Alan Conway <acon...@redhat.com> Committed: Fri May 11 12:06:10 2018 -0400 ---------------------------------------------------------------------- ruby/lib/core/disposition.rb | 30 ++++++++++++++++++++++++------ ruby/lib/core/transfer.rb | 21 +-------------------- ruby/tests/test_delivery.rb | 8 ++++++++ 3 files changed, 33 insertions(+), 26 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/8e65759f/ruby/lib/core/disposition.rb ---------------------------------------------------------------------- diff --git a/ruby/lib/core/disposition.rb b/ruby/lib/core/disposition.rb index bbc4b06..9078fc2 100644 --- a/ruby/lib/core/disposition.rb +++ b/ruby/lib/core/disposition.rb @@ -18,7 +18,6 @@ module Qpid::Proton - # @deprecated use {Delivery} class Disposition include Util::Deprecation @@ -27,12 +26,31 @@ module Qpid::Proton # @private extend Util::SWIGClassHelper + # States of a message transfer + module State + # Message was successfully processed by the receiver + ACCEPTED = Cproton::PN_ACCEPTED - ACCEPTED = Cproton::PN_ACCEPTED - REJECTED = Cproton::PN_REJECTED - RELEASED = Cproton::PN_RELEASED - MODIFIED = Cproton::PN_MODIFIED - RECEIVED = Cproton::PN_RECEIVED + # Message rejected as invalid and unprocessable by the receiver. + REJECTED = Cproton::PN_REJECTED + + # Message was not (and will not be) processed by the receiver, but may be + # acceptable if re-delivered to another receiver + RELEASED = Cproton::PN_RELEASED + # Like {RELEASED}, but there are modifications (see {Tracker#modifications}) + # that must be applied to the message by the {Sender} before re-delivering it. + MODIFIED = Cproton::PN_MODIFIED + + # Partial message data received. Only used during link recovery. + RECEIVED = Cproton::PN_RECEIVED + + module ClassMethods + def name_of(state) Cproton::pn_disposition_type_name(state); end + end + extend ClassMethods + def self.included(klass) klass.extend ClassMethods; end + end + include State attr_reader :impl http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/8e65759f/ruby/lib/core/transfer.rb ---------------------------------------------------------------------- diff --git a/ruby/lib/core/transfer.rb b/ruby/lib/core/transfer.rb index 53adf69..ded3726 100644 --- a/ruby/lib/core/transfer.rb +++ b/ruby/lib/core/transfer.rb @@ -42,26 +42,7 @@ module Qpid::Proton public - # AMQP Delivery States describing the outcome of a message transfer - module State - # Message was successfully processed by the receiver - ACCEPTED = Cproton::PN_ACCEPTED - - # Message rejected as invalid and unprocessable by the receiver. - REJECTED = Cproton::PN_REJECTED - - # Message was not (and will not be) processed by the receiver, but may be - # acceptable if re-delivered to another receiver - RELEASED = Cproton::PN_RELEASED - - # Like {RELEASED}, but there are modifications (see {Tracker#modifications}) - # that must be applied to the message by the {Sender} before re-delivering it. - MODIFIED = Cproton::PN_MODIFIED - - # Partial message data received. Only used during link recovery. - RECEIVED = Cproton::PN_RECEIVED - end - + State = Disposition::State include State # @return [String] Unique ID for the transfer in the context of the {#link} http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/8e65759f/ruby/tests/test_delivery.rb ---------------------------------------------------------------------- diff --git a/ruby/tests/test_delivery.rb b/ruby/tests/test_delivery.rb index f061665..db50582 100644 --- a/ruby/tests/test_delivery.rb +++ b/ruby/tests/test_delivery.rb @@ -107,4 +107,12 @@ class TestDelivery < MiniTest::Test assert_equal ["accept", "reject", "release-really", "release", "modify", "modify-empty", "modify-nil", "reject-raise", "release-raise"], rh.received assert_empty sh.unsettled end + + def test_names + names = ["accepted", "rejected", "released", "modified"] + states = names.collect { |n| Disposition.const_get(n.upcase) } + assert_equal names, states.collect { |s| Disposition::name_of(s) } + assert_equal names, states.collect { |s| Disposition::State::name_of(s) } + assert_equal names, states.collect { |s| Transfer::name_of(s) } + end end --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org