You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by tr...@apache.org on 2009/09/23 17:34:47 UTC

svn commit: r818141 - in /qpid/trunk/qpid/cpp/bindings/qmf: ruby/qmf.rb tests/ruby_console.rb tests/ruby_console_test.rb tests/test_base.rb

Author: tross
Date: Wed Sep 23 15:34:46 2009
New Revision: 818141

URL: http://svn.apache.org/viewvc?rev=818141&view=rev
Log:
Fixes to the QMF Ruby API - added missing methods and reduced use of "get_" convention.

Modified:
    qpid/trunk/qpid/cpp/bindings/qmf/ruby/qmf.rb
    qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console.rb
    qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console_test.rb
    qpid/trunk/qpid/cpp/bindings/qmf/tests/test_base.rb

Modified: qpid/trunk/qpid/cpp/bindings/qmf/ruby/qmf.rb
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf/ruby/qmf.rb?rev=818141&r1=818140&r2=818141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf/ruby/qmf.rb (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf/ruby/qmf.rb Wed Sep 23 15:34:46 2009
@@ -62,6 +62,17 @@
 
       @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 @@
       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 @@
 
     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 @@
       @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 @@
       @broker_list.delete(broker)
     end
 
-    def get_packages()
+    def packages()
       plist = []
       count = @impl.packageCount
       for i in 0...count
@@ -817,7 +844,7 @@
       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 @@
       end
     end
 
-    def get_agents(broker = nil)
+    def agents(broker = nil)
       blist = []
       if broker
         blist << broker
@@ -873,7 +900,7 @@
       return agents
     end
 
-    def get_objects(query, kwargs = {})
+    def objects(query, kwargs = {})
       timeout = 30
       if kwargs.include?(:timeout)
         timeout = kwargs[:timeout]

Modified: qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console.rb
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console.rb?rev=818141&r1=818140&r2=818141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console.rb (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console.rb Wed Sep 23 15:34:46 2009
@@ -25,12 +25,12 @@
 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 @@
       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 @@
 
   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 @@
 
     dump_schema
 
-    agents = @qmfc.get_agents()
+    agents = @qmfc.agents()
     puts "---- Agents ----"
     agents.each do |a|
       puts "  => #{a.label}"
@@ -92,23 +92,25 @@
     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|

Modified: qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console_test.rb
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console_test.rb?rev=818141&r1=818140&r2=818141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console_test.rb (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf/tests/ruby_console_test.rb Wed Sep 23 15:34:46 2009
@@ -27,18 +27,18 @@
     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 @@
   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 @@
   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 @@
   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 @@
   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 @@
   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 @@
   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]
 

Modified: qpid/trunk/qpid/cpp/bindings/qmf/tests/test_base.rb
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/bindings/qmf/tests/test_base.rb?rev=818141&r1=818140&r2=818141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/bindings/qmf/tests/test_base.rb (original)
+++ qpid/trunk/qpid/cpp/bindings/qmf/tests/test_base.rb Wed Sep 23 15:34:46 2009
@@ -25,8 +25,8 @@
 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
 



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org