diff options
author | Ted Ross <tross@apache.org> | 2009-09-23 15:34:46 +0000 |
---|---|---|
committer | Ted Ross <tross@apache.org> | 2009-09-23 15:34:46 +0000 |
commit | e22a66333c43313a480273577d8834a1a04fabdc (patch) | |
tree | 8dce72eab68ca899d5650edfae634a7b04207231 /cpp | |
parent | 2d25b7496207e62c98386b96506d49f4311c4d49 (diff) | |
download | qpid-python-e22a66333c43313a480273577d8834a1a04fabdc.tar.gz |
Fixes to the QMF Ruby API - added missing methods and reduced use of "get_" convention.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@818141 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/bindings/qmf/ruby/qmf.rb | 41 | ||||
-rwxr-xr-x | cpp/bindings/qmf/tests/ruby_console.rb | 20 | ||||
-rwxr-xr-x | cpp/bindings/qmf/tests/ruby_console_test.rb | 18 | ||||
-rw-r--r-- | cpp/bindings/qmf/tests/test_base.rb | 4 |
4 files changed, 56 insertions, 27 deletions
diff --git a/cpp/bindings/qmf/ruby/qmf.rb b/cpp/bindings/qmf/ruby/qmf.rb index 965858909a..265d2ce192 100644 --- a/cpp/bindings/qmf/ruby/qmf.rb +++ b/cpp/bindings/qmf/ruby/qmf.rb @@ -62,6 +62,17 @@ module Qmf @impl.setAttr(key, v) end + + def method_missing(name_in, *args) + name = name_in.to_s + if name[name.length - 1] == 61 + attr = name[0..name.length - 2] + set_attr(attr, args[0]) + return + end + + super.method_missing(name_in, args) + end end class ConnectionHandler @@ -212,6 +223,22 @@ module Qmf return ObjectId.new(@impl.getObjectId) end + def properties + list = [] + @object_class.properties.each do |prop| + list << [prop, get_attr(prop.name)] + end + return list + end + + def statistics + list = [] + @object_class.statistics.each do |stat| + list << [stat, get_attr(stat.name)] + end + return list + end + def get_attr(name) val = value(name) case val.getType @@ -403,7 +430,7 @@ module Qmf def update() raise "No linkage to broker" unless @broker - newer = @broker.console.get_objects(Query.new(:object_id => object_id)) + newer = @broker.console.objects(Query.new(:object_id => object_id)) raise "Expected exactly one update for this object" unless newer.size == 1 merge_update(newer[0]) end @@ -687,11 +714,11 @@ module Qmf @impl = i end - def get_package() + def package_name() @impl.getPackageName() end - def get_class() + def class_name() @impl.getClassName() end end @@ -808,7 +835,7 @@ module Qmf @broker_list.delete(broker) end - def get_packages() + def packages() plist = [] count = @impl.packageCount for i in 0...count @@ -817,7 +844,7 @@ module Qmf return plist end - def get_classes(package, kind=CLASS_OBJECT) + def classes(package, kind=CLASS_OBJECT) clist = [] count = @impl.classCount(package) for i in 0...count @@ -854,7 +881,7 @@ module Qmf end end - def get_agents(broker = nil) + def agents(broker = nil) blist = [] if broker blist << broker @@ -873,7 +900,7 @@ module Qmf return agents end - def get_objects(query, kwargs = {}) + def objects(query, kwargs = {}) timeout = 30 if kwargs.include?(:timeout) timeout = kwargs[:timeout] diff --git a/cpp/bindings/qmf/tests/ruby_console.rb b/cpp/bindings/qmf/tests/ruby_console.rb index 90672b2447..d4df4ebc5d 100755 --- a/cpp/bindings/qmf/tests/ruby_console.rb +++ b/cpp/bindings/qmf/tests/ruby_console.rb @@ -25,12 +25,12 @@ require 'socket' class App < Qmf::ConsoleHandler def dump_schema - packages = @qmfc.get_packages + packages = @qmfc.packages puts "----- Packages -----" packages.each do |p| puts p puts " ----- Object Classes -----" - classes = @qmfc.get_classes(p) + classes = @qmfc.classes(p) classes.each do |c| puts " #{c.name}" @@ -59,7 +59,7 @@ class App < Qmf::ConsoleHandler end puts " ----- Event Classes -----" - classes = @qmfc.get_classes(p, Qmf::CLASS_EVENT) + classes = @qmfc.classes(p, Qmf::CLASS_EVENT) classes.each do |c| puts " #{c.name}" puts " ---- Args ----" @@ -74,8 +74,8 @@ class App < Qmf::ConsoleHandler def main @settings = Qmf::ConnectionSettings.new - @settings.set_attr("host", ARGV[0]) if ARGV.size > 0 - @settings.set_attr("port", ARGV[1].to_i) if ARGV.size > 1 + @settings.host = ARGV[0] if ARGV.size > 0 + @settings.port = ARGV[1].to_i if ARGV.size > 1 @connection = Qmf::Connection.new(@settings) @qmfc = Qmf::Console.new @@ -84,7 +84,7 @@ class App < Qmf::ConsoleHandler dump_schema - agents = @qmfc.get_agents() + agents = @qmfc.agents() puts "---- Agents ----" agents.each do |a| puts " => #{a.label}" @@ -92,23 +92,25 @@ class App < Qmf::ConsoleHandler puts "----" for idx in 0...20 - blist = @qmfc.get_objects(Qmf::Query.new(:class => "broker")) + blist = @qmfc.objects(Qmf::Query.new(:class => "broker")) puts "---- Brokers ----" blist.each do |b| puts " ---- Broker ----" puts " systemRef: #{b.systemRef}" puts " port : #{b.port}" puts " uptime : #{b.uptime / 1000000000}" + puts " properties : #{b.properties}" + puts " statistics : #{b.statistics}" for rep in 0...1 puts " Pinging..." ret = b.echo(45, 'text string') - puts " status=#{ret.status} text=#{ret.exception.asString} seq=#{ret.arguments['sequence']} body=#{ret.arguments['body']}" + puts " status=#{ret.status} text=#{ret.exception.asString} seq=#{ret.args.sequence} body=#{ret.args.body}" end end puts "----" - qlist = @qmfc.get_objects(Qmf::Query.new(:package => "org.apache.qpid.broker", + qlist = @qmfc.objects(Qmf::Query.new(:package => "org.apache.qpid.broker", :class => "queue")) puts "---- Queues ----" qlist.each do |q| diff --git a/cpp/bindings/qmf/tests/ruby_console_test.rb b/cpp/bindings/qmf/tests/ruby_console_test.rb index 6c6547efbb..29f7be9db0 100755 --- a/cpp/bindings/qmf/tests/ruby_console_test.rb +++ b/cpp/bindings/qmf/tests/ruby_console_test.rb @@ -27,18 +27,18 @@ class ConsoleTest < ConsoleTestBase agents = [] count = 0 while agents.size == 0 - agents = @qmfc.get_objects(Qmf::Query.new(:class => "agent")) + agents = @qmfc.objects(Qmf::Query.new(:class => "agent")) sleep(1) count += 1 fail("Timed out waiting for remote agent") if count > 10 end - agentList = @qmfc.get_agents + agentList = @qmfc.agents assert_equal(agentList.size, 2, "Number of agents reported by Console") end def test_B_basic_method_invocation - parents = @qmfc.get_objects(Qmf::Query.new(:class => "parent")) + parents = @qmfc.objects(Qmf::Query.new(:class => "parent")) assert_equal(parents.size, 1, "Number of 'parent' objects") parent = parents[0] for seq in 0...10 @@ -54,7 +54,7 @@ class ConsoleTest < ConsoleTestBase end def test_C_basic_types_numeric_big - parents = @qmfc.get_objects(Qmf::Query.new(:class =>"parent")) + parents = @qmfc.objects(Qmf::Query.new(:class =>"parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] @@ -76,7 +76,7 @@ class ConsoleTest < ConsoleTestBase end def test_C_basic_types_numeric_small - parents = @qmfc.get_objects(Qmf::Query.new(:class =>"parent")) + parents = @qmfc.objects(Qmf::Query.new(:class =>"parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] @@ -98,7 +98,7 @@ class ConsoleTest < ConsoleTestBase end def test_C_basic_types_numeric_negative - parents = @qmfc.get_objects(Qmf::Query.new(:class =>"parent")) + parents = @qmfc.objects(Qmf::Query.new(:class =>"parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] @@ -120,7 +120,7 @@ class ConsoleTest < ConsoleTestBase end def test_C_basic_types_string_short - parents = @qmfc.get_objects(Qmf::Query.new(:class =>"parent")) + parents = @qmfc.objects(Qmf::Query.new(:class =>"parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] @@ -148,7 +148,7 @@ class ConsoleTest < ConsoleTestBase end def test_C_basic_types_string_long - parents = @qmfc.get_objects(Qmf::Query.new(:class =>"parent")) + parents = @qmfc.objects(Qmf::Query.new(:class =>"parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] @@ -174,7 +174,7 @@ class ConsoleTest < ConsoleTestBase end def test_D_userid_for_method - parents = @qmfc.get_objects(Qmf::Query.new(:class => "parent")) + parents = @qmfc.objects(Qmf::Query.new(:class => "parent")) assert_equal(parents.size, 1, "Number of parent objects") parent = parents[0] diff --git a/cpp/bindings/qmf/tests/test_base.rb b/cpp/bindings/qmf/tests/test_base.rb index 8bf433611e..80cc43a12d 100644 --- a/cpp/bindings/qmf/tests/test_base.rb +++ b/cpp/bindings/qmf/tests/test_base.rb @@ -25,8 +25,8 @@ require 'socket' class ConsoleTestBase < Qmf::ConsoleHandler def initialize @settings = Qmf::ConnectionSettings.new - @settings.set_attr("host", ARGV[0]) if ARGV.size > 0 - @settings.set_attr("port", ARGV[1].to_i) if ARGV.size > 1 + @settings.host = ARGV[0] if ARGV.size > 0 + @settings.port = ARGV[1].to_i if ARGV.size > 1 @connection = Qmf::Connection.new(@settings) @qmfc = Qmf::Console.new |