All pastes #153024 Raw Edit

Unnamed

public text v1 · immutable
#153024 ·published 2006-08-29 10:17 UTC
rendered paste body
--- a/org/freedesktop/dbus/DBusConnection.java
+++ b/org/freedesktop/dbus/DBusConnection.java
@@ -763,6 +766,26 @@ public class DBusConnection 
                throw new DBusException("Failure in serializing parameters: "+e.getMessage());
             }
          }
+         else if (Tuple.class.isAssignableFrom(r)) {
+            Constructor con = r.getDeclaredConstructors()[0];
+            Field[] fs = r.getDeclaredFields();
+            Type[] ts = new Type[fs.length];
+           ts = p.getActualTypeArguments();
+            for (Field f : fs) {
+               Position pos = f.getAnnotation(Position.class);
+               if (null == pos) continue;
+            //   ts[pos.value()] = f.getGenericType();
+            }
+            Object[] oldparams = ((Tuple) parameter).getParameters();
+            Object[] newparams = convertParameters(oldparams, ts);
+            try {
+               parameter = con.newInstance(newparams);
+            } catch (Exception e) {
+                   e.printStackTrace (System.err);
+               if (DBusConnection.EXCEPTION_DEBUG) e.printStackTrace();
+               throw new DBusException("Failure in serializing parameters: "+e.getMessage());
+            }
+         }
       }
 
       else if (type instanceof GenericArrayType) {