Author: elisabeth.hendrickson
Date: Mon Sep 22 10:21:48 2008
New Revision: 799

Modified:
   trunk/proto/remote/ruby/examplelibrary.rb
   trunk/proto/remote/ruby/robotremoteserver.rb

Log:
PL/EH - support for arrays and hashes

Modified: trunk/proto/remote/ruby/examplelibrary.rb
==============================================================================
--- trunk/proto/remote/ruby/examplelibrary.rb   (original)
+++ trunk/proto/remote/ruby/examplelibrary.rb   Mon Sep 22 10:21:48 2008
@@ -235,8 +235,8 @@
   end

   def return_nested_dictionary
-#    return { 1=>{true=>false},
-#             2=>{'A'=>{'n'=>nil}, 'B'=>{'o'=>MyObject.new, 'e'=>{}}} }
+    return { 1=>{true=>false},
+             2=>{'A'=>{'n'=>nil}, 'B'=>{'o'=>MyObject.new, 'e'=>{}}} }
   end

   @@attribute = "Not keyword"

Modified: trunk/proto/remote/ruby/robotremoteserver.rb
==============================================================================
--- trunk/proto/remote/ruby/robotremoteserver.rb        (original)
+++ trunk/proto/remote/ruby/robotremoteserver.rb        Mon Sep 22 10:21:48 2008
@@ -63,9 +63,17 @@
if [String, Integer, Fixnum, Float, TrueClass, FalseClass].include?(ret.class)
       return ret
     elsif ret.class == Array
-      return ret   # TODO: Handle internal values
+      new_ret = []
+      ret.each {|item|
+        new_ret.push(handle_return_value(item))
+      }
+      return new_ret   # TODO: Handle internal values
     elsif ret.class == Hash
-      return ret   # TODO: Handle internal values
+      new_ret = {}
+      ret.keys.each {|key|
+        new_ret[key.to_s] = handle_return_value(ret[key])
+      }
+      return new_ret   # TODO: Handle internal values
     else
       return ret.to_s
     end

Reply via email to