You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2008/06/25 00:30:18 UTC

svn commit: r671373 [2/10] - in /tuscany/java/sca/modules/binding-corba-runtime/src: main/java/org/apache/tuscany/sca/binding/corba/impl/ main/java/org/apache/tuscany/sca/binding/corba/impl/exceptions/ main/java/org/apache/tuscany/sca/binding/corba/imp...

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/CharTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/CharTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/CharTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/CharTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,16 +30,16 @@
  */
 public class CharTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(9));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(9));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_char();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_char();
+    }
+
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_char((Character)data);
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_char((Character) data);
-	}
-	
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/DoubleTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/DoubleTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/DoubleTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/DoubleTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,16 +30,16 @@
  */
 public class DoubleTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(7));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(7));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_double();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_double();
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_double((Double) data);
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_double((Double)data);
+    }
 
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/EnumTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/EnumTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/EnumTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/EnumTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -9,34 +9,33 @@
 
 public class EnumTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		// TODO Auto-generated method stub
-		return null;
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        // TODO Auto-generated method stub
+        return null;
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		int value = is.read_long();
-		Object result = null;
-		try {
-			Method method = node.getJavaClass().getMethod("from_int",
-					new Class[] { int.class });
-			result = method.invoke(null, new Object[] { value });
-		} catch (Exception e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		return result;
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        int value = is.read_long();
+        Object result = null;
+        try {
+            Method method = node.getJavaClass().getMethod("from_int", new Class[] {int.class});
+            result = method.invoke(null, new Object[] {value});
+        } catch (Exception e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+        return result;
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		int value = 0;
-		try {
-			Method method = data.getClass().getMethod("value", new Class[] {});
-			value = (Integer) method.invoke(data, new Object[] {});
-		} catch (Exception e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		}
-		os.write_long(value);
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        int value = 0;
+        try {
+            Method method = data.getClass().getMethod("value", new Class[] {});
+            value = (Integer)method.invoke(data, new Object[] {});
+        } catch (Exception e) {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+        os.write_long(value);
+    }
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/FloatTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/FloatTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/FloatTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/FloatTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,16 +30,16 @@
  */
 public class FloatTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(6));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(6));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_float();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_float();
+    }
+
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_float((Float)data);
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_float((Float) data);
-	}
-	
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/IntTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/IntTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/IntTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/IntTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,16 +30,16 @@
  */
 public class IntTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_long();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_long();
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_long((Integer) data);
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_long((Integer)data);
+    }
 
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/LongTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/LongTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/LongTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/LongTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,17 +30,16 @@
  */
 public class LongTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(23));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(23));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_longlong();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_longlong();
+    }
+
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_longlong((Long)data);
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_longlong((Long) data);
-	}
-	
-	
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ReferenceTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ReferenceTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ReferenceTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ReferenceTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -31,18 +31,18 @@
  */
 public class ReferenceTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		// TODO Auto-generated method stub
-		return null;
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        // TODO Auto-generated method stub
+        return null;
+    }
 
-	public java.lang.Object read(TypeTreeNode node, InputStream is) {
-		Object reference = is.read_Object();
-		return (java.lang.Object) InterfaceInstanceCreator.createInstance(reference, node.getJavaClass()); 
-	}
+    public java.lang.Object read(TypeTreeNode node, InputStream is) {
+        Object reference = is.read_Object();
+        return (java.lang.Object)InterfaceInstanceCreator.createInstance(reference, node.getJavaClass());
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, java.lang.Object data) {
-		os.write_Object((Object) data);
-	}
+    public void write(TypeTreeNode node, OutputStream os, java.lang.Object data) {
+        os.write_Object((Object)data);
+    }
 
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/SequenceTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/SequenceTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/SequenceTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/SequenceTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -34,50 +34,49 @@
  */
 public class SequenceTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		TypeCode typeCode = 
-			org.omg.CORBA.ORB.init().create_alias_tc(
-				node.getJavaClass().getSimpleName(),
-				node.getJavaClass().getSimpleName(),
-				org.omg.CORBA.ORB.init().create_sequence_tc(0,
-						TypeHelpersProxy.getType(node.getChildren()[0])));
-		return typeCode;
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        TypeCode typeCode =
+            org.omg.CORBA.ORB.init().create_alias_tc(node.getJavaClass().getSimpleName(),
+                                                     node.getJavaClass().getSimpleName(),
+                                                     org.omg.CORBA.ORB.init()
+                                                         .create_sequence_tc(0,
+                                                                             TypeHelpersProxy.getType(node
+                                                                                 .getChildren()[0])));
+        return typeCode;
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		Object sequence = null;
-		try {
-			int size = is.read_long();
-			sequence = Array.newInstance(node.getChildren()[0].getJavaClass(),
-					size);
-			for (int i = 0; i < size; i++) {
-				Array.set(sequence, i, TypeHelpersProxy.read(
-						node.getChildren()[0], is));
-			}
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return sequence;
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        Object sequence = null;
+        try {
+            int size = is.read_long();
+            sequence = Array.newInstance(node.getChildren()[0].getJavaClass(), size);
+            for (int i = 0; i < size; i++) {
+                Array.set(sequence, i, TypeHelpersProxy.read(node.getChildren()[0], is));
+            }
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return sequence;
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		int sum = 0;
-		// determine length of array
-		List<Object> array = new ArrayList<Object>();
-		while (true) {
-			try {
-				array.add(Array.get(data, sum));
-				sum++;
-			} catch (ArrayIndexOutOfBoundsException e) {
-				break;
-			}
-		}
-		os.write_long(sum);
-		Iterator<Object> iter = array.iterator();
-		while (iter.hasNext()) {
-			Object elem = iter.next();
-			TypeHelpersProxy.write(node.getChildren()[0], os, elem);
-		}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        int sum = 0;
+        // determine length of array
+        List<Object> array = new ArrayList<Object>();
+        while (true) {
+            try {
+                array.add(Array.get(data, sum));
+                sum++;
+            } catch (ArrayIndexOutOfBoundsException e) {
+                break;
+            }
+        }
+        os.write_long(sum);
+        Iterator<Object> iter = array.iterator();
+        while (iter.hasNext()) {
+            Object elem = iter.next();
+            TypeHelpersProxy.write(node.getChildren()[0], os, elem);
+        }
 
-	}
+    }
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ShortTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ShortTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ShortTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/ShortTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,17 +30,16 @@
  */
 public class ShortTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(2));
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(2));
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_short();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_short();
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_short((Short) data);
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_short((Short)data);
+    }
 
-	
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StringTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StringTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StringTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StringTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -30,17 +30,16 @@
  */
 public class StringTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		return ORB.init().create_string_tc(0);
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        return ORB.init().create_string_tc(0);
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		return is.read_string();
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        return is.read_string();
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		os.write_string((String) data);
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        os.write_string((String)data);
+    }
 
-	
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StructTypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StructTypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StructTypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/StructTypeHelper.java Tue Jun 24 15:30:14 2008
@@ -32,59 +32,57 @@
  */
 public class StructTypeHelper implements TypeHelper {
 
-	public TypeCode getType(TypeTreeNode node) {
-		TypeTreeNode[] children = node.getChildren();
-		if (children != null) {
-			StructMember[] members = new StructMember[children.length];
-			for (int i = 0; i < children.length; i++) {
-				members[i] = new StructMember(children[i].getJavaClass()
-						.getSimpleName(),
-						TypeHelpersProxy.getType(children[i]), null);
-			}
-			TypeCode result = org.omg.CORBA.ORB.init().create_struct_tc(
-					node.getJavaClass().getSimpleName(),
-					node.getJavaClass().getSimpleName(), members);
-			return result;
-		} else {
-			return null;
-		}
-	}
+    public TypeCode getType(TypeTreeNode node) {
+        TypeTreeNode[] children = node.getChildren();
+        if (children != null) {
+            StructMember[] members = new StructMember[children.length];
+            for (int i = 0; i < children.length; i++) {
+                members[i] =
+                    new StructMember(children[i].getJavaClass().getSimpleName(), TypeHelpersProxy.getType(children[i]),
+                                     null);
+            }
+            TypeCode result =
+                org.omg.CORBA.ORB.init().create_struct_tc(node.getJavaClass().getSimpleName(),
+                                                          node.getJavaClass().getSimpleName(),
+                                                          members);
+            return result;
+        } else {
+            return null;
+        }
+    }
 
-	public Object read(TypeTreeNode node, InputStream is) {
-		TypeTreeNode[] children = node.getChildren();
-		Object result = null;
-		if (children != null) {
-			try {
-				result = node.getJavaClass().newInstance();
-				for (int i = 0; i < children.length; i++) {
-					Object childResult = TypeHelpersProxy.read(children[i], is);
-					Field childField = result.getClass().getField(
-							children[i].getName());
-					childField.set(result, childResult);
-				}
-			} catch (Exception e) {
-				// TODO: handle exception
-				e.printStackTrace();
-			}
-		}
-		return result;
-	}
+    public Object read(TypeTreeNode node, InputStream is) {
+        TypeTreeNode[] children = node.getChildren();
+        Object result = null;
+        if (children != null) {
+            try {
+                result = node.getJavaClass().newInstance();
+                for (int i = 0; i < children.length; i++) {
+                    Object childResult = TypeHelpersProxy.read(children[i], is);
+                    Field childField = result.getClass().getField(children[i].getName());
+                    childField.set(result, childResult);
+                }
+            } catch (Exception e) {
+                // TODO: handle exception
+                e.printStackTrace();
+            }
+        }
+        return result;
+    }
 
-	public void write(TypeTreeNode node, OutputStream os, Object data) {
-		TypeTreeNode[] children = node.getChildren();
-		if (children != null) {
-			try {
-				for (int i = 0; i < children.length; i++) {
-					Field childField = node.getJavaClass().getField(
-							children[i].getName());
-					TypeHelpersProxy.write(children[i], os, childField
-							.get(data));
-				}
-			} catch (Exception e) {
-				// TODO: handle exception
-				e.printStackTrace();
-			}
-		}
-	}
+    public void write(TypeTreeNode node, OutputStream os, Object data) {
+        TypeTreeNode[] children = node.getChildren();
+        if (children != null) {
+            try {
+                for (int i = 0; i < children.length; i++) {
+                    Field childField = node.getJavaClass().getField(children[i].getName());
+                    TypeHelpersProxy.write(children[i], os, childField.get(data));
+                }
+            } catch (Exception e) {
+                // TODO: handle exception
+                e.printStackTrace();
+            }
+        }
+    }
 
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelper.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelper.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelper.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelper.java Tue Jun 24 15:30:14 2008
@@ -28,28 +28,28 @@
  * @version $Rev$ $Date$
  */
 public interface TypeHelper {
-	
-	/**
-	 * Gets type definition for CORBA API.
-	 * @param node 
-	 * @return
-	 */
-	TypeCode getType(TypeTreeNode node);
-	
-	/**
-	 * Reads CORBA object
-	 * @param node
-	 * @param is
-	 * @return
-	 */
-	Object read(TypeTreeNode node, InputStream is);
-	
-	/**
-	 * Writes CORBA object
-	 * @param node
-	 * @param os
-	 * @param data
-	 */
-	void write(TypeTreeNode node, OutputStream os, Object data);
-	
+
+    /**
+     * Gets type definition for CORBA API.
+     * @param node 
+     * @return
+     */
+    TypeCode getType(TypeTreeNode node);
+
+    /**
+     * Reads CORBA object
+     * @param node
+     * @param is
+     * @return
+     */
+    Object read(TypeTreeNode node, InputStream is);
+
+    /**
+     * Writes CORBA object
+     * @param node
+     * @param os
+     * @param data
+     */
+    void write(TypeTreeNode node, OutputStream os, Object data);
+
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelpersProxy.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelpersProxy.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelpersProxy.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/TypeHelpersProxy.java Tue Jun 24 15:30:14 2008
@@ -34,101 +34,100 @@
  */
 public class TypeHelpersProxy {
 
-	/**
-	 * Maps primitive types to its TypeHelper implementations
-	 */
-	private static Map<Class<?>, TypeHelper> primitiveTypes = null;
-
-	/**
-	 * Maps other types to its TypeHelper implementations
-	 */
-	private static Map<NodeType, TypeHelper> complexTypes = null;
-
-	static {
-		// initiate type helpers
-		primitiveTypes = new HashMap<Class<?>, TypeHelper>();
-		complexTypes = new HashMap<NodeType, TypeHelper>();
-
-		primitiveTypes.put(boolean.class, new BooleanTypeHelper());
-		primitiveTypes.put(char.class, new CharTypeHelper());
-		primitiveTypes.put(byte.class, new ByteTypeHelper());
-		primitiveTypes.put(short.class, new ShortTypeHelper());
-		primitiveTypes.put(int.class, new IntTypeHelper());
-		primitiveTypes.put(long.class, new LongTypeHelper());
-		primitiveTypes.put(float.class, new FloatTypeHelper());
-		primitiveTypes.put(double.class, new DoubleTypeHelper());
-		primitiveTypes.put(String.class, new StringTypeHelper());
-		primitiveTypes.put(Boolean.class, primitiveTypes.get(boolean.class));
-		primitiveTypes.put(Character.class, primitiveTypes.get(char.class));
-		primitiveTypes.put(Byte.class, primitiveTypes.get(byte.class));
-		primitiveTypes.put(Short.class, primitiveTypes.get(short.class));
-		primitiveTypes.put(Integer.class, primitiveTypes.get(int.class));
-		primitiveTypes.put(Long.class, primitiveTypes.get(long.class));
-		primitiveTypes.put(Float.class, primitiveTypes.get(float.class));
-		primitiveTypes.put(Double.class, primitiveTypes.get(double.class));
-		primitiveTypes.put(String.class, primitiveTypes.get(String.class));
-		complexTypes.put(NodeType.array, new ArrayTypeHelper());
-		complexTypes.put(NodeType.struct, new StructTypeHelper());
-		complexTypes.put(NodeType.reference, new ReferenceTypeHelper());
-		complexTypes.put(NodeType.sequence, new SequenceTypeHelper());
-		complexTypes.put(NodeType.idl_enum, new EnumTypeHelper());
-		complexTypes.put(NodeType.exception, new StructTypeHelper());
-	}
-
-	/**
-	 * Gets type helper basing on given type
-	 * 
-	 * @param node
-	 * @return
-	 */
-	private static TypeHelper getTypeHelper(TypeTreeNode node) {
-		TypeHelper typeHelper = null;
-		NodeType type = node.getNodeType();
-		if (type.equals(NodeType.primitive)) {
-			typeHelper = primitiveTypes.get(node.getJavaClass());
-		} else {
-			typeHelper = complexTypes.get(type);
-		}
-		return typeHelper;
-	}
-
-	/**
-	 * Proxies getType method invocation to appropriate TypeHelper
-	 * implementation. It's not being used since I've changed method for passing
-	 * arguments. May be useful while implementing CORBA service bindings.
-	 * 
-	 * @param node
-	 * @return
-	 */
-	public static final TypeCode getType(TypeTreeNode node) {
-		TypeHelper typeHelper = getTypeHelper(node);
-		TypeCode typeCode = typeHelper.getType(node);
-		return typeCode;
-	}
-
-	/**
-	 * Proxies read method invocation to appropriate TypeHelper implementation.
-	 * 
-	 * @param node
-	 * @param is
-	 * @return
-	 */
-	public static final Object read(TypeTreeNode node, InputStream is) {
-		TypeHelper helper = getTypeHelper(node);
-		return helper.read(node, is);
-	}
-
-	/**
-	 * Proxies write method invocation to appropriate TypeHelper implementation.
-	 * 
-	 * @param node
-	 * @param os
-	 * @param data
-	 */
-	public static final void write(TypeTreeNode node, OutputStream os,
-			Object data) {
-		TypeHelper helper = getTypeHelper(node);
-		helper.write(node, os, data);
-	}
+    /**
+     * Maps primitive types to its TypeHelper implementations
+     */
+    private static Map<Class<?>, TypeHelper> primitiveTypes = null;
+
+    /**
+     * Maps other types to its TypeHelper implementations
+     */
+    private static Map<NodeType, TypeHelper> complexTypes = null;
+
+    static {
+        // initiate type helpers
+        primitiveTypes = new HashMap<Class<?>, TypeHelper>();
+        complexTypes = new HashMap<NodeType, TypeHelper>();
+
+        primitiveTypes.put(boolean.class, new BooleanTypeHelper());
+        primitiveTypes.put(char.class, new CharTypeHelper());
+        primitiveTypes.put(byte.class, new ByteTypeHelper());
+        primitiveTypes.put(short.class, new ShortTypeHelper());
+        primitiveTypes.put(int.class, new IntTypeHelper());
+        primitiveTypes.put(long.class, new LongTypeHelper());
+        primitiveTypes.put(float.class, new FloatTypeHelper());
+        primitiveTypes.put(double.class, new DoubleTypeHelper());
+        primitiveTypes.put(String.class, new StringTypeHelper());
+        primitiveTypes.put(Boolean.class, primitiveTypes.get(boolean.class));
+        primitiveTypes.put(Character.class, primitiveTypes.get(char.class));
+        primitiveTypes.put(Byte.class, primitiveTypes.get(byte.class));
+        primitiveTypes.put(Short.class, primitiveTypes.get(short.class));
+        primitiveTypes.put(Integer.class, primitiveTypes.get(int.class));
+        primitiveTypes.put(Long.class, primitiveTypes.get(long.class));
+        primitiveTypes.put(Float.class, primitiveTypes.get(float.class));
+        primitiveTypes.put(Double.class, primitiveTypes.get(double.class));
+        primitiveTypes.put(String.class, primitiveTypes.get(String.class));
+        complexTypes.put(NodeType.array, new ArrayTypeHelper());
+        complexTypes.put(NodeType.struct, new StructTypeHelper());
+        complexTypes.put(NodeType.reference, new ReferenceTypeHelper());
+        complexTypes.put(NodeType.sequence, new SequenceTypeHelper());
+        complexTypes.put(NodeType.idl_enum, new EnumTypeHelper());
+        complexTypes.put(NodeType.exception, new StructTypeHelper());
+    }
+
+    /**
+     * Gets type helper basing on given type
+     * 
+     * @param node
+     * @return
+     */
+    private static TypeHelper getTypeHelper(TypeTreeNode node) {
+        TypeHelper typeHelper = null;
+        NodeType type = node.getNodeType();
+        if (type.equals(NodeType.primitive)) {
+            typeHelper = primitiveTypes.get(node.getJavaClass());
+        } else {
+            typeHelper = complexTypes.get(type);
+        }
+        return typeHelper;
+    }
+
+    /**
+     * Proxies getType method invocation to appropriate TypeHelper
+     * implementation. It's not being used since I've changed method for passing
+     * arguments. May be useful while implementing CORBA service bindings.
+     * 
+     * @param node
+     * @return
+     */
+    public static final TypeCode getType(TypeTreeNode node) {
+        TypeHelper typeHelper = getTypeHelper(node);
+        TypeCode typeCode = typeHelper.getType(node);
+        return typeCode;
+    }
+
+    /**
+     * Proxies read method invocation to appropriate TypeHelper implementation.
+     * 
+     * @param node
+     * @param is
+     * @return
+     */
+    public static final Object read(TypeTreeNode node, InputStream is) {
+        TypeHelper helper = getTypeHelper(node);
+        return helper.read(node, is);
+    }
+
+    /**
+     * Proxies write method invocation to appropriate TypeHelper implementation.
+     * 
+     * @param node
+     * @param os
+     * @param data
+     */
+    public static final void write(TypeTreeNode node, OutputStream os, Object data) {
+        TypeHelper helper = getTypeHelper(node);
+        helper.write(node, os, data);
+    }
 
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/Utils.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/Utils.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/Utils.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/main/java/org/apache/tuscany/sca/binding/corba/impl/types/util/Utils.java Tue Jun 24 15:30:14 2008
@@ -21,20 +21,19 @@
 
 public class Utils {
 
-	/**
-	 * Creates CORBA id for Java class
-	 * @param forClass
-	 * @return
-	 */
-	public static String getExceptionId(Class<?> forClass) {
-		String result = forClass.getName().replace('.', '/');
-		result = result.replaceAll("Package", "");
-		if (result.endsWith("Exception")) {
-			result = result
-					.substring(0, result.length() - "Exception".length());
-		}
-		result = "IDL:" + result + ":1.0";
-		return result;
-	}
-	
+    /**
+     * Creates CORBA id for Java class
+     * @param forClass
+     * @return
+     */
+    public static String getExceptionId(Class<?> forClass) {
+        String result = forClass.getName().replace('.', '/');
+        result = result.replaceAll("Package", "");
+        if (result.endsWith("Exception")) {
+            result = result.substring(0, result.length() - "Exception".length());
+        }
+        result = "IDL:" + result + ":1.0";
+        return result;
+    }
+
 }

Modified: tuscany/java/sca/modules/binding-corba-runtime/src/test/java/org/apache/tuscany/sca/binding/corba/testing/CorbaServantTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-corba-runtime/src/test/java/org/apache/tuscany/sca/binding/corba/testing/CorbaServantTestCase.java?rev=671373&r1=671372&r2=671373&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-corba-runtime/src/test/java/org/apache/tuscany/sca/binding/corba/testing/CorbaServantTestCase.java (original)
+++ tuscany/java/sca/modules/binding-corba-runtime/src/test/java/org/apache/tuscany/sca/binding/corba/testing/CorbaServantTestCase.java Tue Jun 24 15:30:14 2008
@@ -63,428 +63,403 @@
 
 public class CorbaServantTestCase extends TestCase {
 
-	private Process process;
-	private ORB orb;
+    private Process process;
+    private ORB orb;
+
+    /**
+     * Spawns tnamserv an initiates ORB
+     */
+    public void setUp() throws IOException {
+        String[] args = {"-ORBInitialPort", "" + TestConstants.ORB_INITIAL_PORT};
+        process = Runtime.getRuntime().exec("tnameserv " + args[0] + " " + args[1]);
+        try {
+            // let the tnameserv have time to start
+            Thread.sleep(TestConstants.TNAMESERV_SPAWN_WAIT);
+            orb = ORB.init(args, null);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * Kills tnameserv
+     */
+    public void tearDown() {
+        try {
+            if (process != null) {
+                process.destroy();
+            }
+            // let the tnameserv have time to die
+            Thread.sleep(TestConstants.TNAMESERV_SPAWN_WAIT);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * Binds servant implementation to name
+     */
+    private void bindServant(DynaCorbaServant servant, String name) {
+        try {
+            Object nameService = orb.resolve_initial_references("NameService");
+            NamingContext namingContext = NamingContextHelper.narrow(nameService);
+
+            NameComponent nc = new NameComponent(name, "");
+            NameComponent[] path = new NameComponent[] {nc};
+            namingContext.rebind(path, servant);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+    }
+
+    /**
+     * Returns object reference which is binded to given name
+     * 
+     * @param name
+     * @return
+     */
+    private org.omg.CORBA.Object bindReference(String name) {
+        try {
+            org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService");
+            NamingContext ncRef = NamingContextHelper.narrow(objRef);
+            NameComponent nc = new NameComponent(name, "");
+            NameComponent path[] = {nc};
+            return ncRef.resolve(path);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    /**
+     * Tests primitives (arguments, return types)
+     */
+    public void test_primitivesSetter() {
+        try {
+            PrimitivesSetter primitivesSetter = new PrimitivesSetterServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(primitivesSetter);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids =
+                new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/PrimitivesSetter:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "PrimitivesSetter");
+            PrimitivesSetter psClient = PrimitivesSetterHelper.narrow(bindReference("PrimitivesSetter"));
+            assertTrue(psClient.setBoolean(true) == true);
+            assertTrue(psClient.setChar('A') == 'A');
+            assertTrue(psClient.setString("SomeTest").equals("SomeTest"));
+            assertTrue(psClient.setDouble(2d) == 2d);
+            assertTrue(psClient.setFloat(3f) == 3f);
+            assertTrue(psClient.setLong(1) == 1);
+            assertTrue(psClient.setLongLong(0L) == 0L);
+            assertTrue(psClient.setOctet((byte)8) == (byte)8);
+            assertTrue(psClient.setShort((short)6) == (short)6);
+            assertTrue(psClient.setUnsignedLong(9) == 9);
+            assertTrue(psClient.setUnsignedLongLong(11L) == 11L);
+            assertTrue(psClient.setUnsignedShort((short)15) == (short)15);
+        } catch (Exception e) {
+            e.printStackTrace();
+            fail();
+        }
+    }
+
+    /**
+     * Tests if array values are equal
+     */
+    private boolean areArraysEqual(java.lang.Object arr1, java.lang.Object arr2, int arrLen) {
+        try {
+            for (int i = 0; i < arrLen; i++) {
+                if (!Array.get(arr1, i).equals(Array.get(arr2, i))) {
+                    return false;
+                }
+            }
+            return true;
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return false;
+    }
+
+    /**
+     * Tests arrays (arguments, return types)
+     */
+    public void test_arraysSetter() {
+        try {
+            ArraysSetter arraysSetter = new ArraysSetterServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(arraysSetter);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/ArraysSetter:1.0"};
+            servant.setIds(ids);
+            java.lang.Object result = null;
+            bindServant(servant, "ArraysSetter");
+            ArraysSetter asClient = ArraysSetterHelper.narrow(bindReference("ArraysSetter"));
+
+            boolean[] bArr = new boolean[] {true, false};
+            result = (java.lang.Object)asClient.setBoolean(bArr);
+            assertTrue(areArraysEqual(bArr, result, bArr.length));
+
+            byte[] byArr = new byte[] {1, 2};
+            result = (java.lang.Object)asClient.setOctet(byArr);
+            assertTrue(areArraysEqual(byArr, result, byArr.length));
+
+            short[] shArr = new short[] {1, 2};
+            result = (java.lang.Object)asClient.setShort(shArr);
+            assertTrue(areArraysEqual(shArr, result, shArr.length));
+
+            int[] iArr = new int[] {1, 2};
+            result = (java.lang.Object)asClient.setLong(iArr);
+            assertTrue(areArraysEqual(iArr, result, iArr.length));
+
+            long[] lArr = new long[] {1, 2};
+            result = (java.lang.Object)asClient.setLongLong(lArr);
+            assertTrue(areArraysEqual(lArr, result, lArr.length));
+
+            String[] strArr = new String[] {"Some", "Test"};
+            result = (java.lang.Object)asClient.setString(strArr);
+            assertTrue(areArraysEqual(strArr, result, strArr.length));
+
+            char[] chArr = new char[] {'A', 'B'};
+            result = (java.lang.Object)asClient.setChar(chArr);
+            assertTrue(areArraysEqual(chArr, result, chArr.length));
+
+            float[] flArr = new float[] {1, 2};
+            result = (java.lang.Object)asClient.setFloat(flArr);
+            assertTrue(areArraysEqual(flArr, result, flArr.length));
+
+            double[] dbArr = new double[] {1, 2};
+            result = (java.lang.Object)asClient.setDouble(dbArr);
+            assertTrue(areArraysEqual(dbArr, result, dbArr.length));
+
+        } catch (Exception e) {
+            e.printStackTrace();
+            fail();
+        }
+    }
+
+    /**
+     * Tests structures (arguments, return types)
+     */
+    public void test_TestObject_setStruct() {
+        try {
+            TestObject to = new TestObjectServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(to);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "TestObject");
+            TestObject testObject = TestObjectHelper.narrow(bindReference("TestObject"));
+            SomeStruct ss = new SomeStruct();
+            SimpleStruct inner = new SimpleStruct();
+            inner.field1 = TestConstants.STR_1;
+            inner.field2 = TestConstants.INT_1;
+            ss.innerStruct = inner;
+            ss.str = TestConstants.STR_2;
+            ss.str_list = TestConstants.STR_ARR_1;
+            ss.threeDimSeq = TestConstants.INT_ARRAY_3_DIM;
+            ss.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;
+            SomeStruct result = testObject.setStruct(ss);
+            assertTrue(TestConstants.are2DimArraysEqual(result.twoDimSeq, TestConstants.INT_ARRAY_2_DIM));
+            assertTrue(TestConstants.are3DimArraysEqual(result.threeDimSeq, TestConstants.INT_ARRAY_3_DIM));
+            assertTrue(result.str.equals(ss.str));
+            assertTrue(result.innerStruct.field1.equals(ss.innerStruct.field1));
+            assertTrue(result.innerStruct.field2 == ss.innerStruct.field2);
+            assertTrue(areArraysEqual(result.str_list, ss.str_list, ss.str_list.length));
+        } catch (Exception e) {
+            e.printStackTrace();
+            fail();
+        }
+    }
+
+    /**
+     * Tests handling BAD_OPERATION system exception
+     */
+    public void test_systemException_BAD_OPERATION() {
+        try {
+            TestObjectServant tos = new TestObjectServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(tos);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "TestObject");
+            DynaCorbaRequest request =
+                new DynaCorbaRequest(bindReference("TestObject"), "methodThatSurelyDoesNotExist");
+            request.invoke();
+        } catch (Exception e) {
+            if (e instanceof CorbaException) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+            }
+        }
+
+        try {
+            InvalidTestObjectServant tos = new InvalidTestObjectServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(tos);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "InvalidTestObject");
+            TestObject to = TestObjectHelper.narrow(bindReference("InvalidTestObject"));
+            SomeStruct str = new SomeStruct();
+            str.innerStruct = new SimpleStruct();
+            str.innerStruct.field1 = "Whatever";
+            str.str = "Whatever";
+            str.str_list = new String[] {};
+            str.threeDimSeq = new int[][][] {};
+            str.twoDimSeq = new int[][] {};
+            to.setStruct(str);
+        } catch (Exception e) {
+            if (e instanceof BAD_OPERATION) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+            }
+        }
+    }
+
+    /**
+     * Tests handling user exceptions
+     */
+    public void test_userExceptions() {
+        try {
+            CalcServant calc = new CalcServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(calc);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = {"IDL:org/apache/tuscany/sca/binding/corba/testing/exceptions/Calc:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "Calc");
+            Calc calcClient = CalcHelper.narrow(bindReference("Calc"));
+            calcClient.div(1, 0);
+            fail();
+        } catch (Exception e) {
+            if (e instanceof DivByZero) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+                fail();
+            }
+        }
+
+        try {
+            CalcServant calc = new CalcServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(calc);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = {"IDL:org/apache/tuscany/sca/binding/corba/testing/exceptions/Calc:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "Calc");
+            Calc calcClient = CalcHelper.narrow(bindReference("Calc"));
+            calcClient.divForSmallArgs(255, 255);
+            fail();
+        } catch (Exception e) {
+            if (e instanceof NotSupported) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+                fail();
+            }
+        }
+    }
+
+    /**
+     * Tests enums (arguments, return types)
+     */
+    public void test_enums() {
+        try {
+            EnumManagerServant ems = new EnumManagerServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(ems);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = {"IDL:org/apache/tuscany/sca/binding/corba/testing/enums/EnumManager:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "Enum");
+            EnumManager em = EnumManagerHelper.narrow(bindReference("Enum"));
+            Color color = Color.red;
+            assertTrue(em.getColor(color).value() == color.value());
+        } catch (Exception e) {
+            e.printStackTrace();
+            fail();
+        }
+    }
+
+    public void test_nonCorbaServants() {
+        try {
+            NonCorbaServant ncs = new NonCorbaServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(ncs);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            bindServant(servant, "NonCorbaServant");
+            // it's non corba servant so we don't have stubs to test them
+            DynaCorbaRequest request = new DynaCorbaRequest(bindReference("NonCorbaServant"), "setString");
+            request.addArgument(TestConstants.STR_1);
+            request.setOutputType(String.class);
+            DynaCorbaResponse response = request.invoke();
+            assertTrue(response.getContent().equals(TestConstants.STR_1));
+        } catch (Exception e) {
+            e.printStackTrace();
+            fail();
+        }
+
+        try {
+            NonCorbaServant ncs = new NonCorbaServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(ncs);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            bindServant(servant, "NonCorbaServant");
+            // it's non corba servant so we don't have stubs to test them
+            DynaCorbaRequest request = new DynaCorbaRequest(bindReference("NonCorbaServant"), "throwException");
+            request.addExceptionType(NonCorbaException.class);
+            request.invoke();
+            fail();
+        } catch (Exception e) {
+            if (e instanceof NonCorbaException) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+                fail();
+            }
+        }
+    }
+
+    /**
+     * Tests handling BAD_PARAM system exception
+     */
+    public void test_systemException_BAD_PARAM() {
+        try {
+            CalcServant calc = new CalcServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(calc);
+            DynaCorbaServant servant = new DynaCorbaServant(service, null);
+            String[] ids = new String[] {"IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0"};
+            servant.setIds(ids);
+            bindServant(servant, "Calc");
+            DynaCorbaRequest request = new DynaCorbaRequest(bindReference("Calc"), "div");
+            request.addArgument(2d);
+            request.setOutputType(double.class);
+            request.invoke();
+            fail();
+        } catch (Exception e) {
+            if (e instanceof CorbaException) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+                fail();
+            }
+        }
+    }
+
+    /**
+     * Tests handling BAD_PARAM system exception
+     */
+    public void test_invalidServantConfiguraion() {
+        try {
+            InvalidTypesServant its = new InvalidTypesServant();
+            TestRuntimeComponentService service = new TestRuntimeComponentService(its);
+            //expecting exception...
+            new DynaCorbaServant(service, null);
+            fail();
+        } catch (Exception e) {
+            if (e instanceof RequestConfigurationException) {
+                assertTrue(true);
+            } else {
+                e.printStackTrace();
+                fail();
+            }
+        }
+    }
 
-	/**
-	 * Spawns tnamserv an initiates ORB
-	 */
-	public void setUp() throws IOException {
-		String[] args = { "-ORBInitialPort",
-				"" + TestConstants.ORB_INITIAL_PORT };
-		process = Runtime.getRuntime().exec(
-				"tnameserv " + args[0] + " " + args[1]);
-		try {
-			// let the tnameserv have time to start
-			Thread.sleep(TestConstants.TNAMESERV_SPAWN_WAIT);
-			orb = ORB.init(args, null);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * Kills tnameserv
-	 */
-	public void tearDown() {
-		try {
-			if (process != null) {
-				process.destroy();
-			}
-			// let the tnameserv have time to die
-			Thread.sleep(TestConstants.TNAMESERV_SPAWN_WAIT);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * Binds servant implementation to name
-	 */
-	private void bindServant(DynaCorbaServant servant, String name) {
-		try {
-			Object nameService = orb.resolve_initial_references("NameService");
-			NamingContext namingContext = NamingContextHelper
-					.narrow(nameService);
-
-			NameComponent nc = new NameComponent(name, "");
-			NameComponent[] path = new NameComponent[] { nc };
-			namingContext.rebind(path, servant);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
-	/**
-	 * Returns object reference which is binded to given name
-	 * 
-	 * @param name
-	 * @return
-	 */
-	private org.omg.CORBA.Object bindReference(String name) {
-		try {
-			org.omg.CORBA.Object objRef = orb
-					.resolve_initial_references("NameService");
-			NamingContext ncRef = NamingContextHelper.narrow(objRef);
-			NameComponent nc = new NameComponent(name, "");
-			NameComponent path[] = { nc };
-			return ncRef.resolve(path);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return null;
-	}
-
-	/**
-	 * Tests primitives (arguments, return types)
-	 */
-	public void test_primitivesSetter() {
-		try {
-			PrimitivesSetter primitivesSetter = new PrimitivesSetterServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					primitivesSetter);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/PrimitivesSetter:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "PrimitivesSetter");
-			PrimitivesSetter psClient = PrimitivesSetterHelper
-					.narrow(bindReference("PrimitivesSetter"));
-			assertTrue(psClient.setBoolean(true) == true);
-			assertTrue(psClient.setChar('A') == 'A');
-			assertTrue(psClient.setString("SomeTest").equals("SomeTest"));
-			assertTrue(psClient.setDouble(2d) == 2d);
-			assertTrue(psClient.setFloat(3f) == 3f);
-			assertTrue(psClient.setLong(1) == 1);
-			assertTrue(psClient.setLongLong(0L) == 0L);
-			assertTrue(psClient.setOctet((byte) 8) == (byte) 8);
-			assertTrue(psClient.setShort((short) 6) == (short) 6);
-			assertTrue(psClient.setUnsignedLong(9) == 9);
-			assertTrue(psClient.setUnsignedLongLong(11L) == 11L);
-			assertTrue(psClient.setUnsignedShort((short) 15) == (short) 15);
-		} catch (Exception e) {
-			e.printStackTrace();
-			fail();
-		}
-	}
-
-	/**
-	 * Tests if array values are equal
-	 */
-	private boolean areArraysEqual(java.lang.Object arr1,
-			java.lang.Object arr2, int arrLen) {
-		try {
-			for (int i = 0; i < arrLen; i++) {
-				if (!Array.get(arr1, i).equals(Array.get(arr2, i))) {
-					return false;
-				}
-			}
-			return true;
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return false;
-	}
-
-	/**
-	 * Tests arrays (arguments, return types)
-	 */
-	public void test_arraysSetter() {
-		try {
-			ArraysSetter arraysSetter = new ArraysSetterServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					arraysSetter);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/ArraysSetter:1.0" };
-			servant.setIds(ids);
-			java.lang.Object result = null;
-			bindServant(servant, "ArraysSetter");
-			ArraysSetter asClient = ArraysSetterHelper
-					.narrow(bindReference("ArraysSetter"));
-
-			boolean[] bArr = new boolean[] { true, false };
-			result = (java.lang.Object) asClient.setBoolean(bArr);
-			assertTrue(areArraysEqual(bArr, result, bArr.length));
-
-			byte[] byArr = new byte[] { 1, 2 };
-			result = (java.lang.Object) asClient.setOctet(byArr);
-			assertTrue(areArraysEqual(byArr, result, byArr.length));
-
-			short[] shArr = new short[] { 1, 2 };
-			result = (java.lang.Object) asClient.setShort(shArr);
-			assertTrue(areArraysEqual(shArr, result, shArr.length));
-
-			int[] iArr = new int[] { 1, 2 };
-			result = (java.lang.Object) asClient.setLong(iArr);
-			assertTrue(areArraysEqual(iArr, result, iArr.length));
-
-			long[] lArr = new long[] { 1, 2 };
-			result = (java.lang.Object) asClient.setLongLong(lArr);
-			assertTrue(areArraysEqual(lArr, result, lArr.length));
-
-			String[] strArr = new String[] { "Some", "Test" };
-			result = (java.lang.Object) asClient.setString(strArr);
-			assertTrue(areArraysEqual(strArr, result, strArr.length));
-
-			char[] chArr = new char[] { 'A', 'B' };
-			result = (java.lang.Object) asClient.setChar(chArr);
-			assertTrue(areArraysEqual(chArr, result, chArr.length));
-
-			float[] flArr = new float[] { 1, 2 };
-			result = (java.lang.Object) asClient.setFloat(flArr);
-			assertTrue(areArraysEqual(flArr, result, flArr.length));
-
-			double[] dbArr = new double[] { 1, 2 };
-			result = (java.lang.Object) asClient.setDouble(dbArr);
-			assertTrue(areArraysEqual(dbArr, result, dbArr.length));
-
-		} catch (Exception e) {
-			e.printStackTrace();
-			fail();
-		}
-	}
-
-	/**
-	 * Tests structures (arguments, return types)
-	 */
-	public void test_TestObject_setStruct() {
-		try {
-			TestObject to = new TestObjectServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					to);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "TestObject");
-			TestObject testObject = TestObjectHelper
-					.narrow(bindReference("TestObject"));
-			SomeStruct ss = new SomeStruct();
-			SimpleStruct inner = new SimpleStruct();
-			inner.field1 = TestConstants.STR_1;
-			inner.field2 = TestConstants.INT_1;
-			ss.innerStruct = inner;
-			ss.str = TestConstants.STR_2;
-			ss.str_list = TestConstants.STR_ARR_1;
-			ss.threeDimSeq = TestConstants.INT_ARRAY_3_DIM;
-			ss.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;
-			SomeStruct result = testObject.setStruct(ss);
-			assertTrue(TestConstants.are2DimArraysEqual(result.twoDimSeq,
-					TestConstants.INT_ARRAY_2_DIM));
-			assertTrue(TestConstants.are3DimArraysEqual(result.threeDimSeq,
-					TestConstants.INT_ARRAY_3_DIM));
-			assertTrue(result.str.equals(ss.str));
-			assertTrue(result.innerStruct.field1.equals(ss.innerStruct.field1));
-			assertTrue(result.innerStruct.field2 == ss.innerStruct.field2);
-			assertTrue(areArraysEqual(result.str_list, ss.str_list,
-					ss.str_list.length));
-		} catch (Exception e) {
-			e.printStackTrace();
-			fail();
-		}
-	}
-
-	/**
-	 * Tests handling BAD_OPERATION system exception
-	 */
-	public void test_systemException_BAD_OPERATION() {
-		try {
-			TestObjectServant tos = new TestObjectServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					tos);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "TestObject");
-			DynaCorbaRequest request = new DynaCorbaRequest(
-					bindReference("TestObject"), "methodThatSurelyDoesNotExist");
-			request.invoke();
-		} catch (Exception e) {
-			if (e instanceof CorbaException) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-			}
-		}
-
-		try {
-			InvalidTestObjectServant tos = new InvalidTestObjectServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					tos);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "InvalidTestObject");
-			TestObject to = TestObjectHelper
-					.narrow(bindReference("InvalidTestObject"));
-			SomeStruct str = new SomeStruct();
-			str.innerStruct = new SimpleStruct();
-			str.innerStruct.field1 = "Whatever";
-			str.str = "Whatever";
-			str.str_list = new String[] {};
-			str.threeDimSeq = new int[][][] {};
-			str.twoDimSeq = new int[][] {};
-			to.setStruct(str);
-		} catch (Exception e) {
-			if (e instanceof BAD_OPERATION) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-			}
-		}
-	}
-
-	/**
-	 * Tests handling user exceptions
-	 */
-	public void test_userExceptions() {
-		try {
-			CalcServant calc = new CalcServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					calc);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = { "IDL:org/apache/tuscany/sca/binding/corba/testing/exceptions/Calc:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "Calc");
-			Calc calcClient = CalcHelper.narrow(bindReference("Calc"));
-			calcClient.div(1, 0);
-			fail();
-		} catch (Exception e) {
-			if (e instanceof DivByZero) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-				fail();
-			}
-		}
-
-		try {
-			CalcServant calc = new CalcServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					calc);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = { "IDL:org/apache/tuscany/sca/binding/corba/testing/exceptions/Calc:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "Calc");
-			Calc calcClient = CalcHelper.narrow(bindReference("Calc"));
-			calcClient.divForSmallArgs(255, 255);
-			fail();
-		} catch (Exception e) {
-			if (e instanceof NotSupported) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-				fail();
-			}
-		}
-	}
-
-	/**
-	 * Tests enums (arguments, return types)
-	 */
-	public void test_enums() {
-		try {
-			EnumManagerServant ems = new EnumManagerServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					ems);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = { "IDL:org/apache/tuscany/sca/binding/corba/testing/enums/EnumManager:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "Enum");
-			EnumManager em = EnumManagerHelper.narrow(bindReference("Enum"));
-			Color color = Color.red;
-			assertTrue(em.getColor(color).value() == color.value());
-		} catch (Exception e) {
-			e.printStackTrace();
-			fail();
-		}
-	}
-
-	public void test_nonCorbaServants() {
-		try {
-			NonCorbaServant ncs = new NonCorbaServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					ncs);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			bindServant(servant, "NonCorbaServant");
-			// it's non corba servant so we don't have stubs to test them
-			DynaCorbaRequest request = new DynaCorbaRequest(
-					bindReference("NonCorbaServant"), "setString");
-			request.addArgument(TestConstants.STR_1);
-			request.setOutputType(String.class);
-			DynaCorbaResponse response = request.invoke();
-			assertTrue(response.getContent().equals(TestConstants.STR_1));
-		} catch (Exception e) {
-			e.printStackTrace();
-			fail();
-		}
-
-		try {
-			NonCorbaServant ncs = new NonCorbaServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					ncs);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			bindServant(servant, "NonCorbaServant");
-			// it's non corba servant so we don't have stubs to test them
-			DynaCorbaRequest request = new DynaCorbaRequest(
-					bindReference("NonCorbaServant"), "throwException");
-			request.addExceptionType(NonCorbaException.class);
-			request.invoke();
-			fail();
-		} catch (Exception e) {
-			if (e instanceof NonCorbaException) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-				fail();
-			}
-		}
-	}
-	
-	/**
-	 * Tests handling BAD_PARAM system exception
-	 */
-	public void test_systemException_BAD_PARAM() {
-		try {
-			CalcServant calc = new CalcServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(
-					calc);
-			DynaCorbaServant servant = new DynaCorbaServant(service, null);
-			String[] ids = new String[] { "IDL:org/apache/tuscany/sca/binding/corba/testing/generated/TestObject:1.0" };
-			servant.setIds(ids);
-			bindServant(servant, "Calc");
-			DynaCorbaRequest request = new DynaCorbaRequest(
-					bindReference("Calc"), "div");
-			request.addArgument(2d);
-			request.setOutputType(double.class);
-			request.invoke();
-			fail();
-		} catch (Exception e) {
-			if (e instanceof CorbaException) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-				fail();
-			}
-		}
-	}
-	
-	/**
-	 * Tests handling BAD_PARAM system exception
-	 */
-	public void test_invalidServantConfiguraion() {
-		try {
-			InvalidTypesServant its = new InvalidTypesServant();
-			TestRuntimeComponentService service = new TestRuntimeComponentService(its);
-			//expecting exception...
-			new DynaCorbaServant(service, null);
-			fail();
-		} catch (Exception e) {
-			if (e instanceof RequestConfigurationException) {
-				assertTrue(true);
-			} else {
-				e.printStackTrace();
-				fail();
-			}
-		}
-	}
-	
 }