diff options
Diffstat (limited to 'qpid/cpp/bindings/qpid/ruby')
23 files changed, 4 insertions, 2717 deletions
diff --git a/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt b/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt index 96c00154ba..d403f3fdee 100644 --- a/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt +++ b/qpid/cpp/bindings/qpid/ruby/CMakeLists.txt @@ -26,7 +26,7 @@ set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/ruby.i PROPERTIES SWIG_F swig_add_module(cqpid ruby ${CMAKE_CURRENT_SOURCE_DIR}/ruby.i) swig_link_libraries(cqpid qpidmessaging qpidtypes qmf2 ${RUBY_LIBRARY}) -set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-fno-strict-aliasing -I${RUBY_INCLUDE_DIR} -I${qpid-cpp_SOURCE_DIR}/include") +set_source_files_properties(${swig_generated_file_fullname} PROPERTIES COMPILE_FLAGS "-I${RUBY_INCLUDE_DIR} -I${qpid-cpp_SOURCE_DIR}/include") ##---------------------------------- ## Install the complete Ruby binding diff --git a/qpid/cpp/bindings/qpid/ruby/Makefile.am b/qpid/cpp/bindings/qpid/ruby/Makefile.am index a2a5dd76bd..67a3615362 100644 --- a/qpid/cpp/bindings/qpid/ruby/Makefile.am +++ b/qpid/cpp/bindings/qpid/ruby/Makefile.am @@ -21,7 +21,7 @@ if HAVE_RUBY_DEVEL INCLUDES = -I$(top_srcdir)/include -I$(top_builddir)/include -I$(top_srcdir)/src -I$(top_builddir)/src -EXTRA_DIST = CMakeLists.txt ruby.i +EXTRA_DIST = ruby.i BUILT_SOURCES = cqpid.cpp SWIG_FLAGS = -w362,401 @@ -33,10 +33,10 @@ cqpid.cpp: $(srcdir)/ruby.i $(srcdir)/../qpid.i $(srcdir)/../../swig_ruby_typema rubylibarchdir = $(RUBY_LIB_ARCH) rubylibarch_LTLIBRARIES = cqpid.la -cqpid_la_LDFLAGS = -avoid-version -module -shared -shrext ".$(RUBY_DLEXT)" +cqpid_la_LDFLAGS = -avoid-version -module -shrext ".$(RUBY_DLEXT)" cqpid_la_LIBADD = $(RUBY_LIBS) -L$(top_builddir)/src/.libs -lqpidmessaging -lqpidtypes \ $(top_builddir)/src/libqpidmessaging.la $(top_builddir)/src/libqpidtypes.la -cqpid_la_CXXFLAGS = $(INCLUDES) -I$(RUBY_INC) -I$(RUBY_INC_ARCH) -fno-strict-aliasing +cqpid_la_CXXFLAGS = $(INCLUDES) -I$(RUBY_INC) -I$(RUBY_INC_ARCH) nodist_cqpid_la_SOURCES = cqpid.cpp CLEANFILES = cqpid.cpp diff --git a/qpid/cpp/bindings/qpid/ruby/README.rdoc b/qpid/cpp/bindings/qpid/ruby/README.rdoc deleted file mode 100644 index 960fdf6107..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/README.rdoc +++ /dev/null @@ -1,27 +0,0 @@ -= Qpid - Open Source AMQP Messaging - -Qpid is an cross-platform enterprise messaging system. - -Version :: 0.10.0.alpha.0 - -= Links - -Documents :: http://qpid.apache.org/ - -= Installation - -You can install Qpid with the following command. - - $ gem install qpid - -== Examples - -Take a look at the integration tests for examples on how to leverage -the messaging capabilities of Qpid in your Ruby applications. - -== License - -Licensed to the Apache Software Foundation (ASF) under one or more -contributor licensing agreements. - - diff --git a/qpid/cpp/bindings/qpid/ruby/Rakefile b/qpid/cpp/bindings/qpid/ruby/Rakefile deleted file mode 100644 index ef2b158eba..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/Rakefile +++ /dev/null @@ -1,74 +0,0 @@ -# Rakefile for Qpid -*- ruby -*- -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -task :noop - -require 'rubygems' -require 'rake/clean' -require 'rake/rdoctask' -require 'rake/testtask' - -CLOBBER.include('pkg') - -load './lib/qpid/version.rb' - -desc 'Default: run all tests.' -task :default => :'test:all' - -#--------------- -# Testing tasks. -#--------------- - -desc 'Run all tests (alias for test:all).' -task :test => :'test:all' - -namespace :test do - desc "Run all tests (default)." - task :all => [:units, :integrations] - - desc "Run unit tests." - Rake::TestTask.new(:units) do |t| - t.libs << '.' - t.pattern = 'test/test*.rb' - t.verbose = true - end - - desc "Run integration tests." - Rake::TestTask.new(:integrations) do |t| - t.libs << '.' - t.pattern = 'test/integration/*.rb' - t.verbose = true - end - -end - -#--------------------- -# Documentation tasks. -#--------------------- - -Rake::RDocTask.new( - :rdoc => 'rdoc', - :clobber_rdoc => 'rdoc:clean', - :rerdoc => 'rdoc:force' - ) do |rd| - rd.main = 'README.rdoc' - rd.options << '--all' - rd.rdoc_files.include('README.rdoc', 'lib/**/*.rb') -end diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid.rb deleted file mode 100644 index 1f00c136c1..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid.rb +++ /dev/null @@ -1,29 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'qpid/errors' -require 'qpid/duration' -require 'qpid/address' -require 'qpid/encoding' -require 'qpid/message' -require 'qpid/sender' -require 'qpid/receiver' -require 'qpid/session' -require 'qpid/connection' - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/address.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/address.rb deleted file mode 100644 index 73b61bb1c7..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/address.rb +++ /dev/null @@ -1,125 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -module Qpid - - module Messaging - - # Address represents an address to which messages can be sent or from - # which they can be received. - # - # An Address can be described using the following pattern: - # - # <address> [ / <subject> ] ; [ { <key> : <value> , ... } ] - # - # where *address* is a simple name and *subject* is a subject or subject - # pattern. - # - # The options, enclosed in curly braces, are key:value pairs delimited by - # a comma. The values can be nested maps also enclosed in curly braces. - # Or they can be lists of values, where they are contained within square - # brackets but still comma delimited, such as: - # - # [value1,value2,value3] - # - # The following are the list of supported options: - # - # create:: Indicates if the address should be created; values are *always*, - # *never*, *sender* or *reciever*. - # - # assert:: Indicates whether or not to assert any specified node properties; - # values are *always*, *never*, *sender* or *receiver*. - # - # delete:: Indicates whether or not to delete the addressed node when a - # sender or receiver is cancelled; values are *always*, *never*, - # *sender* or *receiver*. - # - # node:: A nested map describing properties for the addressed node. - # Properties are *type* (*topic* or *queue*), *durable* (a boolean), - # *x-declare* (a nested map of amqp 0.10-specific options) and - # *x-bindings*. (nested list which specifies a queue, exchange or - # a binding key and arguments. - # - # link:: A nested map through which properties of the link can be specified; - # properties are *durable*, *reliability*, *x-declare*, *x-subscribe* - # and *x-bindings*. - # - # mode:: (*For receivers only*) indicates whether the receiver should consume - # or browse messages; values are *consume* (the default) and *browse*. - class Address - - def initialize(name, subject, options = {}, _type = "", address_impl = nil) - @address_impl = address_impl || Cqpid::Address.new(name, subject, convert_options(options), _type) - end - - def address_impl # :nodoc: - @address_impl - end - - # Returns the name. - def name; @address_impl.getName; end - - # Sets the name. - def name=(name); @address_impl.setName name; end - - # Returns the subject. - def subject; @address_impl.getSubject; end - - # Sets the subject. - def subject=(subject); @address_impl.setSubject(subject); end - - # Returns the type. - #--- - # We cannot use "type" since that clashes with the Ruby object.type - # identifier. - def _type; @address_impl.getType; end - - # Sets the type. - # - # The type of the address determines how Sender and Receiver objects - # are constructed for it. If no type is specified then it will be - # determined by querying the broker. - def _type=(_type); @address_impl.setType(_type); end - - # Returns the options. - def options; @address_impl.getOptions; end - - # Sets the options for the address. - # Any symbols are converted to strings. - def options=(options); @address_impl.setOptions(convert_options(options)); end - - def to_s; @address_impl.str; end - - private - - def convert_options(options) - result = {} - options.each_pair {|key, value| result[key.to_s] = value.to_s} - - return result - end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/connection.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/connection.rb deleted file mode 100644 index 5c56c1f5d0..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/connection.rb +++ /dev/null @@ -1,134 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -module Qpid - - module Messaging - - # Connection allows for establishing connections to a remote endpoint. - class Connection - - # The following general options are supported (as strings or symbols): - # - # username:: - # password:: - # heartbeat:: - # tcp_nodelay:: - # sasl_mechanism:: - # sasl_service:: - # sasl_min_ssf:: - # sasl_max_ssf:: - # transport:: - # - # The following options specifically control reconnection behavior: - # - # reconnect:: *true* or *false*; indicates whether to attempt reconnections - # reconnect_timeout:: the number of seconds to attempt reconnecting - # reconnect_limit:: the number of retries before reporting failure - # reconnect_interval_min:: initial delay, in seconds, before attempting a reconnecting - # reconnect_interval_max:: number of seconds to wait before additional reconnect attempts - # reconnect_interval:: shorthand for setting box min and max values - # reconnect_urls:: a list of alternate URLs to use for reconnection attempts - def initialize(url, options = {}, connection_impl = nil) - @url = url - @connection_impl = connection_impl - @options = options - end - - def connection_impl # :nodoc: - @connection_impl - end - - # Opens the connection. - def open - @connection_impl = Cqpid::Connection.new(@url, convert_options) - @connection_impl.open - end - - # Reports whether the connection is open. - def open?; false || (@connection_impl.isOpen if @connection_impl); end - - # Closes the connection. - def close; @connection_impl.close if open?; end - - # Creates a new session. - # - # If :transactional => true then a transactional session is created. - # Otherwise a standard session is created. - def create_session(args = {}) - name = args[:name] || "" - if open? - if args[:transactional] - session = @connection_impl.createTransactionalSession name - else - session = @connection_impl.createSession name - end - return Session.new(session) - else - raise RuntimeError.new "No connection available." - end - end - - # Returns a session for the specified session name. - def session name - session_impl = @connection_impl.getSession name - Qpid::Messaging::Session.new session_impl if session_impl - end - - # Returns the username used to authenticate with the connection. - def authenticated_username; @connection_impl.getAuthenticatedUsername if open?; end - - # inherited from Handle - - # Returns whether the underlying handle is valid; i.e., not null. - def valid? - @connection_impl.isValid - end - - # Returns whether the underlying handle is null. - def null? - @connection_impl.isNull - end - - # Swaps the underlying connection handle. - def swap connection - @connection_impl.swap connection.connection_impl - end - - private - - def convert_options - result = {} - # map only those options defined in the C++ layer - # TODO when new options are added, this needs to be updated. - unless @options.nil? || @options.empty? - @options.each_pair {|key, value| result[key.to_s] = value.to_s} - end - - return result - end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/duration.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/duration.rb deleted file mode 100644 index c1f44e9281..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/duration.rb +++ /dev/null @@ -1,63 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -module Qpid - - module Messaging - - # A Duration represents a period of time in milliseconds - # - # It defines the following named values as symbols: - # - # :FOREVER :: the maximum integer value for the platform - # :IMMEDIATE :: an alias for 0 - # :SECOND :: 1,000ms - # :MINUTE :: 60,000ms - class Duration - - def initialize duration # :nodoc: - @duration_impl = Cqpid::Duration.new duration - end - - def duration_impl # :nodoc: - @duration_impl - end - - def self.add_item(key, value) # :nodoc: - @hash ||= {} - @hash[key] = Duration.new value - end - - def self.const_missing(key) # :nodoc: - @hash[key] - end - - self.add_item :FOREVER, Cqpid::Duration.FOREVER.getMilliseconds - self.add_item :IMMEDIATE, Cqpid::Duration.IMMEDIATE.getMilliseconds - self.add_item :SECOND, Cqpid::Duration.SECOND.getMilliseconds - self.add_item :MINUTE, Cqpid::Duration.MINUTE.getMilliseconds - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/encoding.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/encoding.rb deleted file mode 100644 index c8b843b597..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/encoding.rb +++ /dev/null @@ -1,56 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -module Qpid - - module Messaging - - # Encodes the supplied content into the given message. - def self.encode content, message, encoding = nil - prepared = content - case content - when Hash - prepared = {} - content.each_pair do |key,value| - prepared[key.to_s] = value.to_s - end - Cqpid::encode prepared, message.message_impl - when Array - prepared = [] - content.each {|value| prepared << value.to_s} - Cqpid::encode prepared, message.message_impl - end - end - - # Decodes and returns the message's content. - def self.decode(message, content_type = nil) - content_type = message.content_type unless content_type - - case content_type - when "amqp/map": Cqpid.decodeMap message.message_impl - when "amqp/list": Cqpid.decodeList message.message_impl - end - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/errors.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/errors.rb deleted file mode 100644 index 7a16d08d84..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/errors.rb +++ /dev/null @@ -1,30 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -module Qpid - - module Messaging - - class KeyError < RuntimeError - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/message.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/message.rb deleted file mode 100644 index 652b9fe564..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/message.rb +++ /dev/null @@ -1,129 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -module Qpid - - module Messaging - - # Message represents a message. - class Message - - def initialize(args = {}, message_impl = nil) - @message_impl = message_impl - @message_impl = Cqpid::Message.new if @message_impl.nil? - @message_impl.setContent args[:content].to_s if args[:content] - end - - def message_impl # :nodoc: - @message_impl - end - - # Assigns the reply to address. - # The address must be an instance of Address. - def reply_to=(address); @message_impl.setReplyTo address.address_impl; end - - # Returns the reply to address for the message as an instance of +Address+. - def reply_to - address_impl = @message_impl.getReplyTo - # only return an address if a reply to was specified - Qpid::Messaging::Address.new(nil, nil, nil, nil, address_impl) if address_impl - end - - # Sets the subject. - def subject=(subject); @message_impl.setSubject subject; end - - # Returns the subject. - def subject; @message_impl.getSubject; end - - # Sets the content type. - def content_type=(content_type); @message_impl.setContentType content_type; end - - # Returns the content type. - def content_type; @message_impl.getContentType; end - - # Sets the message id. - def message_id=(message_id); @message_impl.setMessageId message_id.to_s; end - - # Returns the message id. - def message_id; @message_impl.getMessageId; end - - # Sets the user id. - def user_id=(user_id); @message_impl.setUserId user_id; end - - # Returns the user id. - def user_id; @message_impl.getUserId; end - - # Sets the correlation id. - def correlation_id=(correlation_id); @message_impl.setCorrelationId correlation_id; end - - # Returns the correlation id. - def correlation_id; @message_impl.getCorrelationId; end - - # Sets the priority. - def priority=(priority); @message_impl.setPriority priority; end - - # Returns the priority. - def priority; @message_impl.getPriority; end - - # Sets the time-to-live in milliseconds. - def ttl=(duration); @message_impl.setTtl duration; end - - # Returns the time-to-live in milliseconds. - def ttl; @message_impl.getTtl; end - - # Sets the durability. - def durable=(durable); @message_impl.setDurable durable; end - - # Returns the durability. - def durable; @message_impl.getDurable; end - - # Allows marking the message as redelivered. - def redelivered=(redelivered); @message_impl.setRedelivered redelivered; end - - # Returns if the message was redelivered. - def redelivered; @message_impl.getRedelivered; end - - # Returns all named properties. - # *NOTE:* It is recommended to use the +foo[key]+ method for - # retrieving properties. - def properties; @message_impl.getProperties; end - - # Returns the value for the named property. - def [](key); self.properties[key.to_s]; end - - # Assigns a value to the named property. - def []=(key, value); @message_impl.setProperty(key.to_s, value.to_s); end - - # Sets the content. - def content=(content); @message_impl.setContent content.to_s; end - - # Returns the content. - def content; @message_impl.getContent; end - - # Returns the content's size. - def content_size; @message_impl.getContentSize; end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/receiver.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/receiver.rb deleted file mode 100644 index d498aa922b..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/receiver.rb +++ /dev/null @@ -1,102 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -require 'qpid/duration' - -module Qpid - - module Messaging - - # Receiver defines a type for receiving messages. - class Receiver - - def initialize(receiver_impl) # :nodoc: - @receiver_impl = receiver_impl - end - - def receiver_impl # :nodoc: - @receiver_impl - end - - # Retrieves a message from the receiver's local queue, or waits - # for up to the duration specified for one to become available. - def get(duration = Qpid::Messaging::Duration::FOREVER) - message_impl = @receiver_impl.get duration.duration_impl - create_message_wrapper message_impl unless message_impl.nil? - end - - # Retrieves a message from the receiver's subscription, or waits - # for up to the duration specified for one to become available. - def fetch(duration = Qpid::Messaging::Duration::FOREVER) - message_impl = @receiver_impl.fetch duration.duration_impl - create_message_wrapper message_impl unless message_impl.nil? - end - - # Sets the capacity. - # - # The capacity for a receiver determines the number of messages that - # can be held in the receiver before being fetched. - def capacity=(capacity); @receiver_impl.setCapacity capacity; end - - # Returns the capacity. - def capacity; @receiver_impl.getCapacity; end - - # Returns the number of available messages waiting to be fetched. - def available; @receiver_impl.getAvailable; end - - # Returns the number of messages that have been received and acknowledged - # but whose acknowledgements have not been confirmed by the sender. - def unsettled; @receiver_impl.getUnsettled; end - - # Cancels the reciever. - def close; @receiver_impl.close; end - - # Returns whether the receiver is closed. - def closed?; @receiver_impl.isClosed; end - - # Returns the name of the receiver - def name; @receiver_impl.getName; end - - # Returns the Session for this receiver. - def session; Qpid::Messaging::Session.new(@receiver_impl.getSession); end - - # Returns whether the underlying handle is valid. - def valid?; @receiver_impl.isValid; end - - # Returns whether the underlying handle is null. - def null?; @receiver_impl.isNull; end - - def swap receiver - @receiver_impl.swap receiver.receiver_impl - end - - private - - def create_message_wrapper message_impl - Qpid::Messaging::Message.new({}, message_impl) - end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/sender.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/sender.rb deleted file mode 100644 index 5d59c20d7e..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/sender.rb +++ /dev/null @@ -1,82 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -module Qpid - - module Messaging - - # Sender defines a type for sending messages. - class Sender - - def initialize(sender_impl) # :nodoc: - @sender_impl = sender_impl - end - - def sender_impl # :nodoc: - @sender_impl - end - - # Sends a message. - def send(message, args = {}) - block = args[:block] || false - @sender_impl.send message.message_impl, block - end - - # Closes the sender. - def close; @sender_impl.close; end - - # Returns the name for the sender. - def name; @sender_impl.getName; end - - # Sets the capacity for the sender, which is the number of outgoing - # messages that can be held pending confirmation or receipt by - # the broker. - def capacity=(capacity); @sender_impl.setCapacity capacity; end - - # Returns the capacity. - def capacity; @sender_impl.getCapacity; end - - # Returns the number of messages sent that are pending receipt - # confirmation by the broker. - def unsettled; @sender_impl.getUnsettled; end - - # Returns the available capacity for sending messages. - def available - @sender_impl.getAvailable - end - - # Returns the Session for this sender. - def session; Qpid::Messaging::Session.new @sender_impl.getSession; end - - # Returns if the underlying sender is valid. - def valid?; @sender_impl.isValid; end - - # Returns if the underlying sender is null. - def null?; @sender_impl.isNull; end - - def swap sender - @sender_impl.swap sender.sender_impl - end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/session.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/session.rb deleted file mode 100644 index 543c26cc70..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/session.rb +++ /dev/null @@ -1,186 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -require 'cqpid' - -require 'qpid/errors' - -module Qpid - - module Messaging - - # A Session represents a distinct conversation between end points. - class Session - - def initialize(session) # :nodoc: - @session_impl = session - end - - def session_impl # :nodoc: - @session_impl - end - - # Returns the +Connection+ for the +Session+. - def connection - connection_impl = @session_impl.getConnection - Qpid::Messaging::Connection.new "", {}, connection_impl - end - - # Creates a new endpoint for sending messages. - def create_sender(address) - _address = address - - if address.class == Qpid::Messaging::Address - _address = address.address_impl - end - - Qpid::Messaging::Sender.new(@session_impl.createSender(_address)) - end - - # Retrieves the +Sender+ with the specified name. - def sender(name) - result = nil - - begin - sender_impl = @session_impl.getSender name - result = Sender.for_impl sender_impl - rescue - # treat any error as a key error - end - - raise Qpid::Messaging::KeyError, "No such sender: #{name}" if result.nil? - result - end - - # Retrieves the +Receiver+ with the specified name. - def receiver(name) - result = nil - - begin - receiver_impl = @session_impl.getReceiver name - result = Receiver.for_impl receiver_impl - rescue - # treat any error as a key error - end - - raise Qpid::Messaging::KeyError, "No such receiver: #{name}" if result.nil? - result - end - - # Creates a new endpoint for receiving messages. - def create_receiver(address) - result = nil - - if address.class == Qpid::Messaging::Address - address_impl = address.address_impl - result = Qpid::Messaging::Receiver.new(@session_impl.createReceiver(address_impl)) - else - result = Qpid::Messaging::Receiver.new(@session_impl.createReceiver(address)) - end - - return result - end - - # Closes the Session and all associated Senders and Receivers. - # All Sessions are closed when the associated Connection is closed. - def close; @session_impl.close; end - - # Commits any pending transactions for a transactional session. - def commit; @session_impl.commit; end - - # Rolls back any uncommitted transactions on a transactional session. - def rollback; @session_impl.rollback; end - - # Acknowledges one or more outstanding messages that have been received - # on this session. - # - # If a message is submitted (:message => something_message) then only - # that message is acknowledged. Otherwise all messsages are acknowledged. - # - # If :sync => true then the call will block until the server completes - # processing the acknowledgements. - # If :sync => true then the call will block until processed by the server (def. false) - def acknowledge(args = {}) - sync = args[:sync] || false - message = args[:message] if args[:message] - - unless message.nil? - @session_impl.acknowledge message.message_impl, sync - else - @session_impl.acknowledge sync - end - end - - # Rejects the specified message. A rejected message will not be redelivered. - # - # NOTE: A message cannot be rejected once it has been acknowledged. - def reject(message); @session_impl.reject message.message_impl; end - - # Releases the message, which allows the broker to attempt to - # redeliver it. - # - # NOTE: A message connot be released once it has been acknowled. - def release(message); @session_impl.release message.message_impl; end - - # Requests synchronization with the server. - # - # If :block => true then the call will block until the server acknowledges. - # - # If :block => false (default) then the call will complete and the server - # will send notification on completion. - def sync(args = {}) - block = args[:block] || false - @session_impl.sync block - end - - # Returns the total number of receivable messages, and messages already received, - # by Receivers associated with this session. - def receivable; @session_impl.getReceivable; end - - # Returns the number of messages that have been acknowledged by this session - # whose acknowledgements have not been confirmed as processed by the server. - def unsettled_acks; @session_impl.getUnsettledAcks; end - - # Fetches the receiver for the next message. - def next_receiver(timeout = Qpid::Messaging::Duration::FOREVER) - receiver_impl = @session_impl.nextReceiver(timeout.duration_impl) - Qpid::Messaging::Receiver.new receiver_impl - end - - # Returns whether there are errors on this session. - def error?; @session_impl.hasError; end - - def check_error; @session_impl.checkError; end - - # Returns if the underlying session is valid. - def valid?; @session_impl.isValid; end - - # Returns if the underlying session is null. - def null?; @session_impl.isNull; end - - def swap session - @session_impl.swap session.session_impl - end - - end - - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/lib/qpid/version.rb b/qpid/cpp/bindings/qpid/ruby/lib/qpid/version.rb deleted file mode 100644 index a791b1638c..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/lib/qpid/version.rb +++ /dev/null @@ -1,31 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -module Qpid - - module Version - - NUMBERS = [MAJOR = 0, - MINOR = 10, - BUILD = 0] - end - - VERSION = Version::NUMBERS.join('.') - -end diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_address.rb b/qpid/cpp/bindings/qpid/ruby/test/test_address.rb deleted file mode 100644 index f54e93aa3d..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_address.rb +++ /dev/null @@ -1,39 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'cqpid' -require 'qpid/address' - -class TestAddress < Test::Unit::TestCase - - def test_constructor - result = Qpid::Messaging::Address.new "name", "subject", {:foo => :bar}, "type" - - assert_equal "name", result.name - assert_equal "subject", result.subject - assert_equal "type", result._type - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_connection.rb b/qpid/cpp/bindings/qpid/ruby/test/test_connection.rb deleted file mode 100644 index 648fb0588a..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_connection.rb +++ /dev/null @@ -1,257 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'cqpid' -require 'qpid/connection' - -class TestConnection < Test::Unit::TestCase - - def setup - @connection_impl = flexmock("connection_impl") - @other_connection = flexmock("other_connection") - @other_connection_impl = flexmock("other_connection_impl") - @cqpid_connection = flexmock(Cqpid::Connection) - - @session = flexmock("session") - @session_name = "test-session" - - @url = "localhost" - @options = {} - - @connection = Qpid::Messaging::Connection.new(@url, @options, @connection_impl) - end - - def test_create_with_username_and_password - @cqpid_connection. - should_receive(:new). - once.with("localhost", - {"username" => "username", - "password" => "password"}). - and_return(@connection_impl) - @connection_impl. - should_receive(:open). - once - - result = Qpid::Messaging::Connection.new("localhost", - :username => "username", - :password => "password") - result.open - - assert_same @connection_impl, result.connection_impl - end - - def test_create_with_hostname - result = Qpid::Messaging::Connection.new("localhost") - - assert_not_nil result - end - - def test_open - @cqpid_connection. - should_receive(:new). - once. - with(@url, {}). - and_return(@connection_impl) - @connection_impl. - should_receive(:open). - once - - @connection.open - - assert_same @connection_impl, @connection.connection_impl - end - - def test_check_open_when_open - @connection_impl. - should_receive(:isOpen). - once. - and_return(true) - - assert @connection.open? - end - - def test_check_open_before_connection - result = Qpid::Messaging::Connection.new("hostname") - - assert !result.open? - end - - def test_check_open_when_closed - @connection_impl. - should_receive(:isOpen). - once. - and_return(false) - - assert !@connection.open? - end - - def test_close_an_unopened_session - @connection_impl. - should_receive(:isOpen). - once. - and_return(false) - - @connection.close - end - - def test_close - @connection_impl. - should_receive(:isOpen). - once. - and_return(true). - should_receive(:close). - once - - @connection.close - end - - def test_create_session_without_name - @connection_impl. - should_receive(:isOpen). - once. - and_return(true). - should_receive(:createSession). - once. - with(""). - and_return(@session) - - result = @connection.create_session - - assert_not_nil result - assert_same @session, result.session_impl - end - - def test_create_session - @connection_impl. - should_receive(:isOpen). - once. - and_return(true). - should_receive(:createSession). - once. - with(@session_name). - and_return(@session) - - result = @connection.create_session :name => @session_name - - assert_not_nil result - assert_same @session, result.session_impl - end - - def test_create_session_raises_exception_when_closed - @connection_impl. - should_receive(:isOpen). - once. - and_return(false) - - assert_raise(RuntimeError) {@connection.create_session @session_name} - end - - def test_create_transactional_session - @connection_impl. - should_receive(:isOpen). - once. - and_return(true). - should_receive(:createTransactionalSession). - once. - with(""). - and_return(@session) - - result = @connection.create_session :transactional => true - - assert_not_nil result - assert_same @session, result.session_impl - end - - def test_authenticated_username_when_not_connected - @connection_impl. - should_receive(:isOpen). - once. - and_return(false) - - result = @connection.authenticated_username - - assert_nil result - end - - def test_authenticated_username - @connection_impl. - should_receive(:isOpen). - once. - and_return(true). - should_receive(:getAuthenticatedUsername). - once. - and_return("farkle") - - result = @connection.authenticated_username - - assert_equal "farkle", result - end - - def test_get_session_with_invalid_name - @connection_impl. - should_receive(:getSession). - once. - with(@session_name). - and_return(nil) - - result = @connection.session @session_name - - assert_nil result - end - - # APIs inherited from Handle - - def test_is_valid - @connection_impl. - should_receive(:isValid). - once. - and_return(true) - - assert @connection.valid? - end - - def test_is_null - @connection_impl. - should_receive(:isNull). - once. - and_return(false) - - assert !@connection.null? - end - - def test_swap - @other_connection. - should_receive(:connection_impl). - once. - and_return(@other_connection_impl) - @connection_impl. - should_receive(:swap). - once. - with(@other_connection_impl) - - @connection.swap @other_connection - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_encoding.rb b/qpid/cpp/bindings/qpid/ruby/test/test_encoding.rb deleted file mode 100644 index 060975a1d5..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_encoding.rb +++ /dev/null @@ -1,146 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'cqpid' -require 'qpid/encoding' - -class TestEncoding < Test::Unit::TestCase - - def setup - @cqpid = flexmock(Cqpid) - - @message = flexmock("message") - @message_impl = flexmock("message_impl") - - @encoded = {"foo" => "bar"} - end - - def test_encode_map_with_symbols - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:encode). - once. - with({"foo" => "bar"}, @message_impl). - and_return(@encoded) - - result = Qpid::Messaging.encode({:foo => :bar}, @message) - - assert_same @encoded, result - end - - def test_encode_list_with_symbols - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:encode). - once. - with(["foo", "bar"], @message_impl). - and_return(@encoded) - - result = Qpid::Messaging.encode([:foo, :bar], @message) - - assert_same @encoded, result - end - - def test_encode_with_content_type - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:encode). - once. - with({"foo" => "bar"}, @message_impl). - and_return(@encoded) - - result = Qpid::Messaging.encode({:foo => :bar}, @message) - - assert_same @encoded, result - end - - def test_encode - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:encode). - once. - with({"foo" => "bar"}, @message_impl). - and_return(@encoded) - - result = Qpid::Messaging.encode({"foo" => "bar"}, @message) - - assert_same @encoded, result - end - - def test_decode_for_map - decoded = {"foo" => "bar"} - @message. - should_receive(:content_type). - once. - and_return("amqp/map") - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:decodeMap). - once. - with(@message_impl). - and_return(decoded) - - result = Qpid::Messaging.decode(@message) - - assert_same decoded, result - end - - def test_decode_for_list - decoded = ["foo", "bar"] - @message. - should_receive(:content_type). - once. - and_return("amqp/list") - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @cqpid. - should_receive(:decodeList). - once. - with(@message_impl). - and_return(decoded) - - result = Qpid::Messaging.decode(@message) - - assert_same decoded, result - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_message.rb b/qpid/cpp/bindings/qpid/ruby/test/test_message.rb deleted file mode 100644 index 0d71d42360..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_message.rb +++ /dev/null @@ -1,307 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'qpid/encoding' -require 'qpid/message' - -class TestMessage < Test::Unit::TestCase - - def setup - @address = flexmock("address") - @address_impl = flexmock("address_impl") - - @message_impl = flexmock("message") - @message = Qpid::Messaging::Message.new({}, @message_impl) - end - - def test_message_impl - assert_same @message_impl, @message.message_impl - end - - def test_set_reply_to - @address. - should_receive(:address_impl). - once. - and_return(@address_impl) - @message_impl. - should_receive(:setReplyTo). - once. - with(@address_impl) - - @message.reply_to = @address - end - - def test_get_reply_to - @message_impl. - should_receive(:getReplyTo). - once. - and_return(@address_impl) - - result = @message.reply_to - - assert_not_nil result - assert_same @address_impl, result.address_impl - end - - def test_set_subject - @message_impl. - should_receive(:setSubject). - once. - with("New Subject") - - @message.subject = "New Subject" - end - - def test_get_subject - @message_impl. - should_receive(:getSubject). - once. - and_return("Old Subject") - - assert_equal "Old Subject", @message.subject - end - - def test_set_content_type - @message_impl. - should_receive(:setContentType). - once. - and_return("amqp/map") - - @message.content_type = "amqp/map" - end - - def test_get_content_type - @message_impl. - should_receive(:getContentType). - once. - and_return("amqp/list") - - assert_equal "amqp/list", @message.content_type - end - - def test_set_message_id - @message_impl. - should_receive(:setMessageId). - once. - with("717") - - @message.message_id = "717" - end - - def test_get_message_id - @message_impl. - should_receive(:getMessageId). - once. - and_return("1965") - - assert_equal "1965", @message.message_id - end - - def test_set_user_id - @message_impl. - should_receive(:setUserId). - once. - with("129") - - @message.user_id = "129" - end - - def test_get_user_id - @message_impl. - should_receive(:getUserId). - once. - and_return("1971") - - assert_equal "1971", @message.user_id - end - - def test_set_correlation_id - @message_impl. - should_receive(:setCorrelationId). - once. - with("320") - - @message.correlation_id = "320" - end - - def test_get_correlation_id - @message_impl. - should_receive(:getCorrelationId). - once. - and_return("1996") - - assert_equal "1996", @message.correlation_id - end - - def test_set_priority - @message_impl. - should_receive(:setPriority). - once. - with(9) - - @message.priority = 9 - end - - def test_get_priority - @message_impl. - should_receive(:getPriority). - once. - and_return(21) - - assert_equal 21, @message.priority - end - - def test_set_ttl - @message_impl. - should_receive(:setTtl). - once. - with(Qpid::Messaging::Duration::FOREVER) - - @message.ttl = Qpid::Messaging::Duration::FOREVER - end - - def test_get_ttl - @message_impl. - should_receive(:getTtl). - once. - and_return(Qpid::Messaging::Duration::SECOND) - - assert_equal Qpid::Messaging::Duration::SECOND, @message.ttl - end - - def test_set_durable - @message_impl. - should_receive(:setDurable). - once. - with(true) - - @message.durable = true - end - - def test_set_not_durable - @message_impl. - should_receive(:setDurable). - once. - with(false) - - @message.durable = false - end - - def test_get_durable - @message_impl. - should_receive(:getDurable). - once. - and_return(true) - - assert @message.durable - end - - def test_set_redelivered - @message_impl. - should_receive(:setRedelivered). - once. - with(true) - - @message.redelivered = true - end - - def test_set_not_redelivered - @message_impl. - should_receive(:setRedelivered). - once. - with(false) - - @message.redelivered = false - end - - def test_get_redelivered - @message_impl. - should_receive(:getRedelivered). - once. - and_return(false) - - assert !@message.redelivered - end - - def test_get_properties - properties = {"foo" => "bar"} - @message_impl. - should_receive(:getProperties). - once. - and_return(properties) - - result = @message.properties - - assert_equal properties, result - end - - def test_get_property - @message_impl. - should_receive(:getProperties). - once. - and_return({"foo" => "bar"}) - - result = @message["foo"] - - assert_equal "bar", result - end - - def test_set_property - @message_impl. - should_receive(:setProperty). - once. - with("foo", "bar") - - @message["foo"] = "bar" - end - - def test_set_content - @message_impl. - should_receive(:setContent). - once. - with("foo") - - @message.content = "foo" - end - - def test_get_content - @message_impl. - should_receive(:getContent). - once. - and_return("foo") - - assert_equal "foo", @message.content - end - - def test_get_content_size - @message_impl. - should_receive(:getContentSize). - once. - and_return(68) - - assert_equal 68, @message.content_size - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_receiver.rb b/qpid/cpp/bindings/qpid/ruby/test/test_receiver.rb deleted file mode 100644 index 61a4db17f2..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_receiver.rb +++ /dev/null @@ -1,238 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'qpid/receiver' - -class TestReceiver < Test::Unit::TestCase - - def setup - @session_impl = flexmock("session") - - @Message_class = flexmock(Qpid::Messaging::Message) - @Messaging_module = flexmock(Qpid::Messaging) - @message_impl = flexmock("message_impl") - @message = flexmock("message") - - @receiver_impl = flexmock("receiver") - @other_receiver = flexmock("other_receiver") - @other_receiver_impl = flexmock("other_receiver_impl") - @receiver = Qpid::Messaging::Receiver.new @receiver_impl - end - - def test_receiver_impl - assert_same @receiver_impl, @receiver.receiver_impl - end - - def test_get - @receiver_impl. - should_receive(:get). - once. - with_any_args. - and_return(@message_impl) - - result = @receiver.get - - assert_not_nil result - assert_same @message_impl, result.message_impl - end - - def test_get_with_duration - @receiver_impl. - should_receive(:get). - once. - with_any_args. - and_return(@message_impl) - - result = @receiver.get Qpid::Messaging::Duration::MINUTE - - assert_not_nil result - assert_same @message_impl, result.message_impl - end - - def test_get_with_no_message_received - @receiver_impl. - should_receive(:get). - once. - with_any_args. - and_return(nil) - - result = @receiver.get Qpid::Messaging::Duration::SECOND - - assert_nil result - end - - def test_fetch - @receiver_impl. - should_receive(:fetch). - once. - with_any_args. - and_return(@message_impl) - - result = @receiver.fetch - - assert_not_nil result - assert_same @message_impl, result.message_impl - end - - def test_fetch_with_duration - @receiver_impl. - should_receive(:fetch). - once. - with_any_args. - and_return(@message_impl) - - result = @receiver.fetch Qpid::Messaging::Duration::MINUTE - - assert_not_nil result - assert_same @message_impl, result.message_impl - end - - def test_fetch_with_no_message_received - @receiver_impl. - should_receive(:fetch). - once. - with_any_args. - and_return(nil) - - result = @receiver.fetch Qpid::Messaging::Duration::SECOND - - assert_nil result - end - - def test_set_capacity - @receiver_impl. - should_receive(:setCapacity). - once. - with(15) - - @receiver.capacity = 15 - end - - def test_get_capacity - @receiver_impl. - should_receive(:getCapacity). - once. - and_return(17) - - assert_equal 17, @receiver.capacity - end - - def test_get_available - @receiver_impl. - should_receive(:getAvailable). - once. - and_return(2) - - assert_equal 2, @receiver.available - end - - def test_get_unsettled - @receiver_impl. - should_receive(:getUnsettled). - once. - and_return(12) - - assert_equal 12, @receiver.unsettled - end - - def test_close - @receiver_impl. - should_receive(:close). - once - - @receiver.close - end - - def test_closed_when_open - @receiver_impl. - should_receive(:isClosed). - once. - and_return(false) - - assert !@receiver.closed? - end - - def test_closed - @receiver_impl. - should_receive(:isClosed). - once. - and_return(true) - - assert @receiver.closed? - end - - def test_get_name - @receiver_impl. - should_receive(:getName). - once. - and_return("my-queue") - - assert_equal "my-queue", @receiver.name - end - - def test_get_session - @receiver_impl. - should_receive(:getSession). - once. - and_return(@session_impl) - - result = @receiver.session - - assert_not_nil result - assert_same @session_impl, result.session_impl - end - - def test_is_valid - @receiver_impl. - should_receive(:isValid). - once. - and_return(false) - - assert !@receiver.valid? - end - - def test_is_null - @receiver_impl. - should_receive(:isNull). - once. - and_return(true) - - assert @receiver.null? - end - - def test_swap - @other_receiver. - should_receive(:receiver_impl). - once. - and_return(@other_receiver_impl) - @receiver_impl. - should_receive(:swap). - once. - with(@other_receiver_impl) - - @receiver.swap @other_receiver - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_sender.rb b/qpid/cpp/bindings/qpid/ruby/test/test_sender.rb deleted file mode 100644 index 64348b9f72..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_sender.rb +++ /dev/null @@ -1,183 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'qpid/sender' - -class TestSender < Test::Unit::TestCase - - def setup - @messaging = flexmock(Qpid::Messaging) - @message = flexmock("message") - - @session_impl = flexmock("session_impl") - - @sender_impl = flexmock("sender_impl") - @other_sender_impl = flexmock("other_sender_impl") - @sender = Qpid::Messaging::Sender.new @sender_impl - @other_sender = flexmock("other_sender") - end - - def test_send - message_impl = "message_impl" - content = {:foo => :bar} - @message. - should_receive(:message_impl). - once. - and_return(message_impl) - @sender_impl. - should_receive(:send). - once. - with(message_impl, false) - - @sender.send @message - end - - def test_send_and_dont_block - message_impl = "message_impl" - content = {:foo => :bar} - @message. - should_receive(:message_impl). - once. - and_return(message_impl) - @sender_impl. - should_receive(:send). - once. - with(message_impl, false) - - @sender.send @message, :block => false - end - - def test_send_and_block - message_impl = "message_impl" - content = {:foo => :bar} - @message. - should_receive(:message_impl). - once. - and_return(message_impl) - @sender_impl. - should_receive(:send). - once. - with(message_impl, true) - - @sender.send @message, :block => true - end - - def test_close - @sender_impl. - should_receive(:close). - once - - @sender.close - end - - def test_set_capacity - @sender_impl. - should_receive(:setCapacity). - once. - with(17) - - @sender.capacity = 17 - end - - def test_get_capacity - @sender_impl. - should_receive(:getCapacity). - once. - and_return(12) - - assert_equal 12, @sender.capacity - end - - def test_unsettled - @sender_impl. - should_receive(:getUnsettled). - once. - and_return(5) - - assert_equal 5, @sender.unsettled - end - - def test_available - @sender_impl. - should_receive(:getAvailable). - once. - and_return(15) - - assert_equal 15, @sender.available - end - - def test_name - @sender_impl. - should_receive(:getName). - once. - and_return("myname") - - assert_equal "myname", @sender.name - end - - def test_session - @sender_impl. - should_receive(:getSession). - once. - and_return(@session_impl) - - result = @sender.session - - assert_not_nil result - assert_same @session_impl, result.session_impl - end - - def test_is_valid - @sender_impl. - should_receive(:isValid). - once. - and_return(true) - - assert @sender.valid? - end - - def test_is_null - @sender_impl. - should_receive(:isNull). - once. - and_return(false) - - assert !@sender.null? - end - - def test_swap - @other_sender. - should_receive(:sender_impl). - once. - and_return(@other_sender_impl) - @sender_impl. - should_receive(:swap). - once. - with(@other_sender_impl) - - @sender.swap @other_sender - end - -end - diff --git a/qpid/cpp/bindings/qpid/ruby/test/test_session.rb b/qpid/cpp/bindings/qpid/ruby/test/test_session.rb deleted file mode 100644 index 20f055967b..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/test_session.rb +++ /dev/null @@ -1,445 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'flexmock/test_unit' - -require 'qpid/errors' -require 'qpid/duration' -require 'qpid/session' - -class TestSession < Test::Unit::TestCase - - def setup - @session_impl = flexmock("session_impl") - @other_session = flexmock("other_session") - @other_session_impl = flexmock("other_session_impl") - @sender = flexmock("sender") - - @Connection_class = flexmock(Qpid::Messaging::Connection) - @connection_impl = flexmock("connection_impl") - @connection = flexmock("connection") - - @Receiver_class = flexmock(Qpid::Messaging::Receiver) - @receiver = flexmock("receiver") - @receiver_impl = flexmock("receiver_impl") - - @address = flexmock("address") - @address_impl = flexmock("address_impl") - - @Sender_class = flexmock(Qpid::Messaging::Sender) - @sender = flexmock("sender") - @sender_impl = flexmock("sender_impl") - - @message = flexmock("message") - @message_impl = flexmock("message_impl") - - @duration = flexmock("duration") - @duration_impl = flexmock("duration_impl") - - @session = Qpid::Messaging::Session.new(@session_impl) - end - - def test_create_sender_with_Address - @address. - should_receive(:class). - once. - and_return(Qpid::Messaging::Address). - should_receive(:address_impl). - once. - and_return(@address_impl) - @session_impl. - should_receive(:createSender). - once. - with(@address_impl). - and_return(@sender_impl) - - result = @session.create_sender @address - - assert_not_nil result - end - - def test_create_sender - @session_impl. - should_receive(:createSender). - once. - with_any_args. - and_return(@sender_impl) - - result = @session.create_sender("my-queue") - - assert_not_nil result - end - - def test_create_sender_with_address_string - @session_impl. - should_receive(:createSender). - once. - with("my-queue;{create:always}"). - and_return(@sender_impl) - - result = @session.create_sender "my-queue;{create:always}" - - assert_same @sender_impl, result.sender_impl - end - - def test_create_receiver - @address. - should_receive(:class). - once. - and_return(Qpid::Messaging::Address). - should_receive(:address_impl). - once. - and_return(@address_impl) - @session_impl. - should_receive(:createReceiver). - once. - with(@address_impl). - and_return(@receiver_impl) - - result = @session.create_receiver(@address) - - assert_equal @receiver_impl, result.receiver_impl - end - - def test_create_receiver_with_address_string - @session_impl. - should_receive(:createReceiver). - once. - with("my-queue"). - and_return(@receiver_impl) - - result = @session.create_receiver("my-queue") - - assert_same @receiver_impl, result.receiver_impl - end - - def test_close - @session_impl. - should_receive(:close). - once - - @session.close - end - - def test_commit - @session_impl. - should_receive(:commit). - once - - @session.commit - end - - def test_rollback - @session_impl. - should_receive(:rollback). - once - - @session.rollback - end - - def test_acknowledge_with_no_args - @session_impl. - should_receive(:acknowledge). - once. - with(false) - - @session.acknowledge - end - - def test_acknowledge_and_sync - @session_impl. - should_receive(:acknowledge). - once. - with(true) - - @session.acknowledge :sync => true - end - - def test_acknowledge_and_dont_sync - @session_impl. - should_receive(:acknowledge). - once. - with(false) - - @session.acknowledge :sync => false - end - - def test_acknowledge_message_without_sync - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @session_impl. - should_receive(:acknowledge). - once. - with(@message_impl, false) - - @session.acknowledge :message => @message - end - - def test_acknowledge_message_and_sync - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @session_impl. - should_receive(:acknowledge). - once. - with(@message_impl, true) - - @session.acknowledge :message => @message, :sync => true - end - - def test_acknowledge_message_and_dont_sync - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @session_impl. - should_receive(:acknowledge). - once. - with(@message_impl, false) - - @session.acknowledge :message => @message, :sync => false - end - - def test_reject_message - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @session_impl. - should_receive(:reject). - once. - with(@message_impl) - - @session.reject @message - end - - def test_release_message - @message. - should_receive(:message_impl). - once. - and_return(@message_impl) - @session_impl. - should_receive(:release). - once. - with(@message_impl) - - @session.release @message - end - - def test_sync_without_block - @session_impl. - should_receive(:sync). - once - - @session.sync - end - - def test_sync_and_block - @session_impl. - should_receive(:sync). - once. - with(true) - - @session.sync :block => true - end - - def test_sync_and_dont_block - @session_impl. - should_receive(:sync). - once. - with(false) - - @session.sync :block => false - end - - def test_receivable - @session_impl. - should_receive(:getReceivable). - once. - and_return(5) - - assert_equal 5, @session.receivable - end - - def test_unsettled_acks - @session_impl. - should_receive(:getUnsettledAcks). - once. - and_return(17) - - assert_equal 17, @session.unsettled_acks - end - - def test_next_receiver_with_no_duration - @session_impl. - should_receive(:nextReceiver). - once. - with(Qpid::Messaging::Duration::FOREVER.duration_impl). - and_return(@receiver_impl) - - result = @session.next_receiver - - assert_same @receiver_impl, result.receiver_impl - end - - def test_next_receiver_with_duration - @duration. - should_receive(:duration_impl). - once. - and_return(@duration_impl) - @session_impl. - should_receive(:nextReceiver). - once. - with(@duration_impl). - and_return(@receiver_impl) - - result = @session.next_receiver @duration - - assert_same @receiver_impl, result.receiver_impl - end - - def test_sender - @session_impl. - should_receive(:getSender). - once. - with("farkle"). - and_return(@sender_impl) - @Sender_class. - should_receive(:for_impl). - once. - with(@sender_impl). - and_return(@sender) - - result = @session.sender "farkle" - - assert_same @sender, result - end - - def test_sender_with_invalid_name - @session_impl. - should_receive(:getSender). - once. - with("farkle"). - and_throw(RuntimeError) - - assert_raise(Qpid::Messaging::KeyError) {@session.sender "farkle"} - end - - def test_receiver - @session_impl. - should_receive(:getReceiver). - once. - with("farkle"). - and_return(@receiver_impl) - @Receiver_class. - should_receive(:for_impl). - once. - with(@receiver_impl). - and_return(@receiver) - - result = @session.receiver "farkle" - - assert_same @receiver, result - end - - def test_receiver_with_invalid_name - @session_impl. - should_receive(:getReceiver). - once. - with("farkle"). - and_throw(RuntimeError) - - assert_raise(Qpid::Messaging::KeyError) {@session.receiver "farkle"} - end - - def test_connection - @session_impl. - should_receive(:getConnection). - once. - and_return(@connection_impl) - - result = @session.connection - - assert_same @connection_impl, result.connection_impl - end - - def test_error_with_none - @session_impl. - should_receive(:hasError). - once. - and_return(false) - - assert !@session.error? - end - - def test_error - @session_impl. - should_receive(:hasError). - once. - and_return(true) - - assert @session.error? - end - - def test_check_error - @session_impl. - should_receive(:checkError). - once - - @session.check_error - end - - def test_is_valid - @session_impl. - should_receive(:isValid). - once. - and_return(false) - - assert !@session.valid? - end - - def test_is_null - @session_impl. - should_receive(:isNull). - once. - and_return(false) - - assert !@session.null? - end - - def test_swap - @other_session. - should_receive(:session_impl). - once. - and_return(@other_session_impl) - @session_impl. - should_receive(:swap). - once. - with(@other_session_impl) - - @session.swap @other_session - end - -end diff --git a/qpid/cpp/bindings/qpid/ruby/test/ts_bindings.rb b/qpid/cpp/bindings/qpid/ruby/test/ts_bindings.rb deleted file mode 100644 index 7aa410c8f8..0000000000 --- a/qpid/cpp/bindings/qpid/ruby/test/ts_bindings.rb +++ /dev/null @@ -1,30 +0,0 @@ -# -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# - -$:.unshift File.join(File.dirname(__FILE__), "..", "lib") - -require 'test/unit' -require 'test_encoding' -require 'test_address' -require 'test_message' -require 'test_sender' -require 'test_receiver' -require 'test_session' -require 'test_connection' - |