You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yoko-commits@incubator.apache.org by ri...@apache.org on 2006/11/07 13:01:57 UTC
svn commit: r472095 [1/4] - in /incubator/yoko/trunk:
bindings/src/main/java/org/apache/yoko/bindings/corba/
bindings/src/test/java/org/apache/yoko/bindings/corba/
bindings/src/test/java/org/apache/yoko/bindings/corba/types/
core/src/main/java/org/apac...
Author: rickmcguire
Date: Tue Nov 7 05:01:55 2006
New Revision: 472095
URL: http://svn.apache.org/viewvc?view=rev&rev=472095
Log:
YOKO-202 Yoko support is inadventently setting system properties.
Modified:
incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaClientBinding.java
incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaServerBinding.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplMarshalTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplUnmarshalTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaMessageTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaNestedTypeTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaObjectReaderTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaObjectWriterTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaStreamableTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaUtilsTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaAnyHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaArrayHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaEnumHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaFixedHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaHandlerUtilsTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaObjectHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaPrimitiveHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaSequenceHandlerTest.java
incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/types/CorbaStructHandlerTest.java
incubator/yoko/trunk/core/src/main/java/org/apache/yoko/orb/CosNaming/tnaming/TransientNameService.java
incubator/yoko/trunk/core/src/main/java/org/apache/yoko/orb/OB/IORDump.java
incubator/yoko/trunk/core/src/main/java/org/apache/yoko/orb/OBCORBA/ORB_impl.java
incubator/yoko/trunk/core/src/test/java/ORBTest/Client.java
incubator/yoko/trunk/core/src/test/java/ORBTest/Collocated.java
incubator/yoko/trunk/core/src/test/java/ORBTest/Server.java
incubator/yoko/trunk/core/src/test/java/test/codesets/Client.java
incubator/yoko/trunk/core/src/test/java/test/codesets/Server.java
incubator/yoko/trunk/core/src/test/java/test/iiopplugin/Client.java
incubator/yoko/trunk/core/src/test/java/test/iiopplugin/Server.java
incubator/yoko/trunk/core/src/test/java/test/ins/Client.java
incubator/yoko/trunk/core/src/test/java/test/ins/Server.java
incubator/yoko/trunk/core/src/test/java/test/local/Client.java
incubator/yoko/trunk/core/src/test/java/test/local/Server.java
incubator/yoko/trunk/core/src/test/java/test/obv/Client.java
incubator/yoko/trunk/core/src/test/java/test/obv/Server.java
incubator/yoko/trunk/core/src/test/java/test/pi/Client.java
incubator/yoko/trunk/core/src/test/java/test/pi/Collocated.java
incubator/yoko/trunk/core/src/test/java/test/pi/Server.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestActivate.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestAdapterActivatorServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestCollocated.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestCreate.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestDeactivate.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestDefaultServantServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestDestroy.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestDispatchStrategyClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestDispatchStrategyServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestFind.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestLocationForwardClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestLocationForwardServerMain.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestMisc.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestMultipleOrbsClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestMultipleOrbsServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestMultipleOrbsThreadedClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestMultipleOrbsThreadedServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestPOAManagerClient.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestPOAManagerFactory.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestPOAManagerServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestServantActivator.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestServantActivatorServer.java
incubator/yoko/trunk/core/src/test/java/test/poa/TestServantLocatorServer.java
incubator/yoko/trunk/core/src/test/java/test/retry/Client.java
incubator/yoko/trunk/core/src/test/java/test/retry/Server.java
incubator/yoko/trunk/core/src/test/java/test/tnaming/Client.java
incubator/yoko/trunk/core/src/test/java/test/tnaming/Server.java
incubator/yoko/trunk/core/src/test/java/test/types/TestAny.java
incubator/yoko/trunk/core/src/test/java/test/types/TestDynAny.java
incubator/yoko/trunk/core/src/test/java/test/types/TestPortableTypes.java
incubator/yoko/trunk/core/src/test/java/test/types/TestUnion.java
incubator/yoko/trunk/distribution/src/main/samples/orb/hello_world/src/corba/client/Client.java
incubator/yoko/trunk/distribution/src/main/samples/orb/hello_world/src/corba/server/Server.java
incubator/yoko/trunk/distribution/src/main/samples/ws/hello_world/src/corba/client/Client.java
incubator/yoko/trunk/distribution/src/main/samples/ws/hello_world/src/corba/server/Server.java
incubator/yoko/trunk/rmi/src/main/java/org/apache/yoko/rmi/impl/PortableRemoteObjectExtImpl.java
incubator/yoko/trunk/rmi/src/main/java/org/apache/yoko/rmi/util/stub/BCELClassBuilder.java
Modified: incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaClientBinding.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaClientBinding.java?view=diff&rev=472095&r1=472094&r2=472095
==============================================================================
--- incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaClientBinding.java (original)
+++ incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaClientBinding.java Tue Nov 7 05:01:55 2006
@@ -24,6 +24,7 @@
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Properties;
import java.util.concurrent.Executor;
import java.util.concurrent.Future;
import java.util.logging.Level;
@@ -75,21 +76,21 @@
protected ORB orb;
protected org.omg.CORBA.Object target;
- private class CorbaBusLifeCycleListener extends WeakReference<CorbaClientBinding>
+ private class CorbaBusLifeCycleListener extends WeakReference<CorbaClientBinding>
implements BusLifeCycleListener {
CorbaBusLifeCycleListener(CorbaClientBinding c) {
super(c);
}
-
+
public void initComplete() {
// Nothing needed for the binding
}
-
+
public void preShutdown() {
// Nothing needed for the binding
}
-
+
public void postShutdown() {
// TODO: Revisit: Is this being invoked?
if (orb != null) {
@@ -106,13 +107,14 @@
throws WSDLException, IOException {
super(b, ref);
endpointRef = ref;
-
+
bus.getLifeCycleManager().registerLifeCycleListener(new CorbaBusLifeCycleListener(this));
-
+
// TODO: Set any additional properties needed to initialize the ORB before
- // we initialize it. We will get this information from the Celtix configuration
+ // we initialize it. We will get this information from the Celtix configuration
// that is used with the current application.
- java.util.Properties props = System.getProperties();
+ java.util.Properties props = new Properties();
+ props.putAll(System.getProperties());
props.put("org.omg.CORBA.ORBClass", "org.apache.yoko.orb.CORBA.ORB");
props.put("org.omg.CORBA.ORBSingletonClass",
"org.apache.yoko.orb.CORBA.ORBSingleton");
@@ -144,7 +146,7 @@
LOG.log(Level.SEVERE, "Unable to locate a valid CORBA address");
throw new CorbaBindingException("Unable to locate a valid CORBA address");
}
-
+
if (!isBindingCompatible(address.getLocation())) {
LOG.log(Level.SEVERE, "Address not a valid CORBA address");
throw new CorbaBindingException("Address not a valid CORBA address");
@@ -167,9 +169,9 @@
// -- from ClientBinding interface --
public boolean isBindingCompatible(String address) {
// TODO - add support for file that contain IORs
- return address.startsWith("IOR:")
- || address.startsWith("corbaloc:")
- || address.startsWith("relfile:")
+ return address.startsWith("IOR:")
+ || address.startsWith("corbaloc:")
+ || address.startsWith("relfile:")
|| address.startsWith("file:");
}
@@ -217,8 +219,8 @@
// Get the typecodes for the exceptions this operation can throw. These are defined in the
// operation definition from WSDL.
ExceptionList exList = orb.create_exception_list();
- OperationType operation = CorbaUtils.getCorbaOperationType(callback.getOperationName(),
- bus,
+ OperationType operation = CorbaUtils.getCorbaOperationType(callback.getOperationName(),
+ bus,
endpointRef);
if (operation == null) {
@@ -231,12 +233,12 @@
exList.add((TypeCode) tcs[i]);
}
- Request request =
- target._create_request(ctx,
- (String)objectCtx.get(ObjectMessageContext.WSDL_OPERATION),
- list,
+ Request request =
+ target._create_request(ctx,
+ (String)objectCtx.get(ObjectMessageContext.WSDL_OPERATION),
+ list,
ret,
- exList,
+ exList,
ctxList);
request.invoke();
@@ -259,7 +261,7 @@
UnknownUserException userEx = (UnknownUserException)ex;
Any exAny = userEx.except;
RaisesType raisesExType = exceptions.get(exAny.type());
-
+
CorbaStreamable streamableEx = createStreamableException(exAny, raisesExType);
mc.getMessage().setStreamableException(streamableEx);
corbaBinding.unmarshalFault(mc, objectCtx, callback);
@@ -272,8 +274,8 @@
return objectCtx;
}
-
- public void invokeOneWay(ObjectMessageContext objectCtx, DataBindingCallback callback)
+
+ public void invokeOneWay(ObjectMessageContext objectCtx, DataBindingCallback callback)
throws IOException {
CorbaMessageContext mc = (CorbaMessageContext)corbaBinding.createBindingMessageContext(objectCtx);
mc.put(ObjectMessageContext.MESSAGE_INPUT, Boolean.TRUE);
@@ -310,8 +312,8 @@
// Get the typecodes for the exceptions this operation can throw. These are defined in the
// operation definition from WSDL.
ExceptionList exList = orb.create_exception_list();
- OperationType operation = CorbaUtils.getCorbaOperationType(callback.getOperationName(),
- bus,
+ OperationType operation = CorbaUtils.getCorbaOperationType(callback.getOperationName(),
+ bus,
endpointRef);
if (operation == null) {
@@ -324,21 +326,21 @@
exList.add((TypeCode) tcs[i]);
}
- Request request =
- target._create_request(ctx,
- (String)objectCtx.get(ObjectMessageContext.WSDL_OPERATION),
- list,
+ Request request =
+ target._create_request(ctx,
+ (String)objectCtx.get(ObjectMessageContext.WSDL_OPERATION),
+ list,
ret,
- exList,
+ exList,
ctxList);
request.send_oneway();
-
+
} catch (java.lang.Exception ex) {
throw new CorbaBindingException("Exception during invokeOneWay", ex);
}
}
- public Future<ObjectMessageContext> invokeAsync(ObjectMessageContext objectCtx,
+ public Future<ObjectMessageContext> invokeAsync(ObjectMessageContext objectCtx,
DataBindingCallback callback,
Executor executor) throws IOException {
throw new CorbaBindingException("invokeAsync not yet implemented");
@@ -360,7 +362,7 @@
}
public CorbaStreamable createStreamableException(Any exception, RaisesType exRaises) {
- // first, we need to get the definition of the exception. All we have from the raises type is the
+ // first, we need to get the definition of the exception. All we have from the raises type is the
// exception idl type
QName exIdlType = exRaises.getException();
List<CorbaTypeMap> typeMaps = corbaBinding.getCorbaTypeMaps();
@@ -368,15 +370,15 @@
for (Iterator i = typeMaps.iterator(); i.hasNext();) {
CorbaTypeMap tm = (CorbaTypeMap)i.next();
if (tm.getTargetNamespace().equals(exIdlType.getNamespaceURI())) {
- ex = (Exception)tm.getType(exIdlType.getLocalPart());
+ ex = (Exception)tm.getType(exIdlType.getLocalPart());
break;
}
}
-
+
if (ex == null) {
throw new CorbaBindingException("Unable to find definition for thrown exception");
}
-
+
TypeCode tc = CorbaUtils.getTypeCode(orb, exIdlType, typeMaps);
// TODO: Revisit - What should the name of the object holder be?
CorbaExceptionHandler obj = new CorbaExceptionHandler(new QName(ex.getName()), exIdlType, tc, ex);
@@ -385,14 +387,14 @@
MemberType member = (MemberType)i.next();
QName memberName = new QName(member.getName());
QName memberType = member.getIdltype();
- CorbaObjectHandler memberObj =
+ CorbaObjectHandler memberObj =
CorbaHandlerUtils.createTypeHandler(orb, memberName, memberType, typeMaps);
obj.addMember(memberObj);
}
CorbaStreamable exStreamable = new CorbaStreamable(obj, new QName("exception"));
exStreamable._read(exception.create_input_stream());
-
+
return exStreamable;
}
}
Modified: incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaServerBinding.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaServerBinding.java?view=diff&rev=472095&r1=472094&r2=472095
==============================================================================
--- incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaServerBinding.java (original)
+++ incubator/yoko/trunk/bindings/src/main/java/org/apache/yoko/bindings/corba/CorbaServerBinding.java Tue Nov 7 05:01:55 2006
@@ -19,6 +19,7 @@
package org.apache.yoko.bindings.corba;
import java.io.IOException;
+import java.util.Properties;
import java.util.logging.Logger;
import javax.wsdl.WSDLException;
@@ -62,7 +63,8 @@
LOG.info("Service address retrieved: " + location);
// TODO: Get any configuration options for the ORB and set the appropriate properties.
- java.util.Properties props = System.getProperties();
+ java.util.Properties props = new Properties();
+ props.putAll(System.getProperties());
props.put("org.omg.CORBA.ORBClass", "org.apache.yoko.orb.CORBA.ORB");
props.put("org.omg.CORBA.ORBSingletonClass", "org.apache.yoko.orb.CORBA.ORBSingleton");
props.put("yoko.orb.id", "Yoko-Server-Binding");
@@ -71,7 +73,7 @@
// and port information as properties to the ORB during initialization.
if (location.startsWith("IOR:")) {
// TODO: How to handle this? Can we obtain port/host information from the IOR
- // or do we just want to let the ORB pick the port and export the IOR to the
+ // or do we just want to let the ORB pick the port and export the IOR to the
// Logs?
} else if (location.startsWith("corbaloc")) {
int corbalocIndex = location.indexOf(":");
@@ -101,9 +103,9 @@
public boolean isBindingCompatible(String address) {
// TODO - add support for files which contain IORs
- return address.startsWith("IOR:")
- || address.startsWith("corbaloc:")
- || address.startsWith("relfile")
+ return address.startsWith("IOR:")
+ || address.startsWith("corbaloc:")
+ || address.startsWith("relfile")
|| address.startsWith("file");
}
@@ -138,7 +140,7 @@
CorbaDSIServant servant = new CorbaDSIServant(orb, bindingPOA, this, sbeCallback);
byte[] objectId = bindingPOA.activate_object(servant);
obj = bindingPOA.id_to_reference(objectId);
-
+
if (location.startsWith("relfile:")) {
String iorFile = location.substring("relfile:".length(), location.length());
// allow for up to 3 '/' to match common uses of relfile url format
@@ -170,7 +172,7 @@
try {
int keyIndex = location.indexOf('/');
String key = location.substring(keyIndex + 1);
- org.apache.yoko.orb.OB.BootManager bootManager =
+ org.apache.yoko.orb.OB.BootManager bootManager =
org.apache.yoko.orb.OB.BootManagerHelper.narrow(
orb.resolve_initial_references("BootManager"));
bootManager.add_binding(key.getBytes(), obj);
@@ -189,8 +191,8 @@
CorbaUtils.exportObjectReferenceToFile(obj, orb, iorFile);
LOG.info("Object Reference: " + orb.object_to_string(obj));
}
- // TODO: Provide other export mechanisms?
-
+ // TODO: Provide other export mechanisms?
+
poaManager.activate();
} catch (Exception ex) {
// TODO: Throw appropriate exception
@@ -209,7 +211,7 @@
}
public void partialResponse(OutputStreamMessageContext outputContext,
- DataBindingCallback callback)
+ DataBindingCallback callback)
throws IOException {
// Complete? No concept of a partial response in CORBA
}
Modified: incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplMarshalTest.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplMarshalTest.java?view=diff&rev=472095&r1=472094&r2=472095
==============================================================================
--- incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplMarshalTest.java (original)
+++ incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplMarshalTest.java Tue Nov 7 05:01:55 2006
@@ -18,6 +18,7 @@
*/
package org.apache.yoko.bindings.corba;
+import java.util.Properties;
import javax.xml.ws.Holder;
import junit.framework.TestCase;
@@ -42,45 +43,46 @@
public class CorbaBindingImplMarshalTest extends TestCase {
private static String TEST_CLASS = "org.apache.schemas.yoko.idl.parammodes.ParamModes";
-
+
private TestUtils testUtils;
private ORB orb;
private Bus bus;
private EndpointReferenceType endpoint;
private CorbaBindingImpl bindingImpl;
private Class paramModesClass;
-
+
public CorbaBindingImplMarshalTest(String arg0) {
super(arg0);
}
public static void main(String[] args) {
junit.textui.TestRunner.run(CorbaBindingImplMarshalTest.class);
}
-
+
protected void setUp() throws Exception {
super.setUp();
-
+
testUtils = new TestUtils();
-
- java.util.Properties props = System.getProperties();
+
+ java.util.Properties props = new Properties();
+ props.putAll(System.getProperties());
props.put("org.omg.CORBA.ORBClass", "org.apache.yoko.orb.CORBA.ORB");
props.put("org.omg.CORBA.ORBSingletonClass", "org.apache.yoko.orb.CORBA.ORBSingleton");
props.put("yoko.orb.id", "Yoko-Test");
orb = ORB.init(new String[0], props);
bus = Bus.init(new String[0]);
-
+
paramModesClass = Thread.currentThread().getContextClassLoader().loadClass(TEST_CLASS);
-
+
// programmatically add the corba binding factory
BindingManager manager = bus.getBindingManager();
CorbaBindingFactory corbaBF = new CorbaBindingFactory();
corbaBF.init(bus);
manager.registerBinding(CorbaConstants.NU_WSDL_CORBA, corbaBF);
-
+
endpoint = testUtils.getParamModesEndpointReference();
bindingImpl = new CorbaBindingImpl(bus, endpoint, orb, false);
}
-
+
protected void tearDown() throws Exception {
if (orb != null) {
try {
@@ -90,29 +92,29 @@
}
}
}
-
+
public void testMarshalSingleInParam() throws Exception {
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
params = new Class[1];
params[0] = short.class;
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInParam", params));
objContext.setMessageObjects((short)123);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
@@ -124,16 +126,16 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInParamWithReturn", params));
objContext.setMessageObjects((short)123);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
@@ -144,28 +146,28 @@
assertNotNull(ret);
assertTrue(ret.getObject().getTypeCodeKind().value() == TCKind._tk_short);
}
-
+
public void testMarshalSingleOutParam() throws Exception {
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
// Since this call has a void return type, the outparam is actually mapped to the return type
params = new Class[0];
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleOutParam", params));
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
@@ -176,19 +178,19 @@
// Now try the call with a return value
params = new Class[1];
params[0] = new Holder<Short>().getClass();
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleOutParamWithReturn", params));
objContext.setMessageObjects(new Holder<Short>((short)123));
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
@@ -204,45 +206,45 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
params = new Class[1];
params[0] = new Holder<Short>().getClass();
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInOutParam", params));
objContext.setMessageObjects(new Holder<Short>(new Short((short)123)));
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
CorbaStreamable param0 = streamables[0];
assertTrue(param0.getObject().getTypeCodeKind().value() == TCKind._tk_short);
assertTrue(param0.getMode() == ARG_INOUT.value);
-
+
// Now try the call with the return value
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInOutParamWithReturn", params));
objContext.setMessageObjects(new Holder<Short>(new Short((short)123)));
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 1);
@@ -258,28 +260,28 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
params = new Class[2];
params[0] = short.class;
params[1] = short.class;
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInParams", params));
Object[] paramObjs = new Object[2];
paramObjs[0] = (short)123;
paramObjs[1] = (short)456;
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -289,21 +291,21 @@
CorbaStreamable param1 = streamables[1];
assertTrue(param1.getObject().getTypeCodeKind().value() == TCKind._tk_short);
assertTrue(param1.getMode() == ARG_IN.value);
-
+
// Now try the call with a return value
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInParamsWithReturn", params));
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -322,29 +324,29 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
// Since the call has more than one out parameter, they should be mapped to the parameters
params = new Class[2];
params[0] = new Holder<Short>().getClass();
params[1] = new Holder<Short>().getClass();
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleOutParams", params));
Object[] paramObjs = new Object[2];
paramObjs[0] = new Holder<Short>((short)123);
paramObjs[1] = new Holder<Short>((short)456);
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -359,16 +361,16 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleOutParamsWithReturn", params));
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -387,28 +389,28 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
params = new Class[2];
params[0] = new Holder<Short>().getClass();
params[1] = new Holder<Short>().getClass();
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInOutParams", params));
Object[] paramObjs = new Object[2];
paramObjs[0] = new Holder<Short>((short)123);
paramObjs[1] = new Holder<Short>((short)456);
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -423,16 +425,16 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInOutParamsWithReturn", params));
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 2);
@@ -451,13 +453,13 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// First try call the operation using a void return type
params = new Class[3];
params[0] = short.class;
params[1] = new Holder<Short>().getClass();
params[2] = new Holder<Short>().getClass();
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleMixedParams", params));
Object[] paramObjs = new Object[3];
@@ -465,16 +467,16 @@
paramObjs[1] = new Holder<Short>((short)456);
paramObjs[2] = new Holder<Short>((short)789);
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
CorbaStreamable[] streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 3);
@@ -492,16 +494,16 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleMixedParamsWithReturn", params));
objContext.setMessageObjects(paramObjs);
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
// Verify that everything was marshalled correctly
streamables = corbaContext.getMessage().getStreamableArguments();
assertTrue(streamables.length == 3);
@@ -518,28 +520,28 @@
assertNotNull(ret);
assertTrue(ret.getObject().getTypeCodeKind().value() == TCKind._tk_short);
}
-
+
public void testMarshalReturn() throws Exception {
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testReturn", params));
-
+
corbaContext = new CorbaMessageContextImpl(new GenericMessageContext());
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
-
+
bindingImpl.marshal(objContext,
corbaContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
CorbaStreamable ret = corbaContext.getMessage().getStreamableReturn();
assertNotNull(ret);
assertTrue(ret.getObject().getTypeCodeKind().value() == TCKind._tk_short);
}
-
-
+
+
}
Modified: incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplTest.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplTest.java?view=diff&rev=472095&r1=472094&r2=472095
==============================================================================
--- incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplTest.java (original)
+++ incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplTest.java Tue Nov 7 05:01:55 2006
@@ -22,6 +22,7 @@
import java.io.ByteArrayOutputStream;
import java.util.ArrayList;
import java.util.List;
+import java.util.Properties;
import javax.xml.namespace.QName;
import javax.xml.stream.events.EndElement;
@@ -71,43 +72,44 @@
private Bus bus;
private CorbaBindingImpl simpleBindingImpl;
private CorbaBindingImpl staxBindingImpl;
-
+
private final String staxTestNamespaceURI = "http://yoko.apache.org/StaxTest/idl_types";
private final String staxTestPrefix = "corbatm";
public CorbaBindingImplTest(String arg0) {
super(arg0);
}
-
+
public static void main(String[] args) {
junit.textui.TestRunner.run(CorbaBindingImplTest.class);
}
-
+
protected void setUp() throws Exception {
super.setUp();
-
+
testUtils = new TestUtils();
objContext = new ObjectMessageContextImpl();
-
- java.util.Properties props = System.getProperties();
+
+ java.util.Properties props = new Properties();
+ props.putAll(System.getProperties());
props.put("org.omg.CORBA.ORBClass", "org.apache.yoko.orb.CORBA.ORB");
props.put("org.omg.CORBA.ORBSingletonClass", "org.apache.yoko.orb.CORBA.ORBSingleton");
props.put("yoko.orb.id", "Yoko-Server-Binding");
orb = ORB.init(new String[0], props);
-
+
Class c = Thread.currentThread().getContextClassLoader().loadClass("org.apache.yoko.simple.Simple");
Class[] params = { String.class };
objContext.setMethod(c.getMethod("testSimpleMethod", params));
bus = Bus.init(new String[0]);
-
+
// programmatically add the corba binding factory
BindingManager manager = bus.getBindingManager();
CorbaBindingFactory corbaBF = new CorbaBindingFactory();
corbaBF.init(bus);
manager.registerBinding(CorbaConstants.NU_WSDL_CORBA, corbaBF);
-
- simpleBindingImpl =
+
+ simpleBindingImpl =
new CorbaBindingImpl(bus, testUtils.getSimpleTestEndpointReference(), orb, false);
staxBindingImpl = new CorbaBindingImpl(bus, testUtils.getStaxTestEndpointReference(), orb, false);
}
@@ -121,13 +123,13 @@
}
}
}
-
+
// Tests for the marshalling and unmarshalling operations are done in separate test classes since
// there are a large number of tests for testing parameter types of different modes. See the following
// test classes:
// - CorbaBindingImplMarshalTest
// - CorbaBindingImplUnmarshalTest
-
+
public void testReadWriteStaxPrimitive() {
CorbaPrimitiveHandler obj = new CorbaPrimitiveHandler(new QName("BooleanType"),
CorbaConstants.NT_CORBA_BOOLEAN,
@@ -138,7 +140,7 @@
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -146,7 +148,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -156,12 +158,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -169,21 +171,21 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler result = simpleBindingImpl.readPrimitiveFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler result = simpleBindingImpl.readPrimitiveFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(result);
-
+
assertTrue(result instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultObj = (CorbaPrimitiveHandler)result;
-
+
assertTrue(resultObj.getName().equals(obj.getName()));
assertTrue(resultObj.getIdlType().equals(obj.getIdlType()));
assertTrue(resultObj.getTypeCode().equal(obj.getTypeCode()));
assertTrue(resultObj.getValueData().equals(obj.getValueData()));
}
-
+
public void testReadWriteStaxArray() {
QName objName = new QName("object");
QName objIdlType = new QName(staxTestNamespaceURI, "TestArray", staxTestPrefix);
@@ -206,11 +208,11 @@
obj.addElement(el);
objElements.add(el);
}
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -218,7 +220,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -228,12 +230,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -241,15 +243,15 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler result = staxBindingImpl.readArrayFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler result = staxBindingImpl.readArrayFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(result);
-
+
assertTrue(result instanceof CorbaArrayHandler);
CorbaArrayHandler resultObj = (CorbaArrayHandler)result;
-
+
assertTrue(resultObj.getName().equals(obj.getName()));
assertTrue(resultObj.getIdlType().equals(obj.getIdlType()));
assertTrue(resultObj.getTypeCode().equal(obj.getTypeCode()));
@@ -261,7 +263,7 @@
assertTrue(resultEl.getValueData().equals(objEl.getValueData()));
}
}
-
+
public void testReadWriteStaxEnum() {
QName objName = new QName("object");
QName objIdlType = new QName(staxTestNamespaceURI, "TestEnum", staxTestPrefix);
@@ -277,13 +279,13 @@
TypeCode objTypeCode = CorbaUtils.getTypeCode(orb, objIdlType, staxBindingImpl.getCorbaTypeMaps());
CorbaEnumHandler obj = new CorbaEnumHandler(objName, objIdlType, objTypeCode, enumType);
assertNotNull(obj);
-
+
obj.setValue(enums[1]);
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -291,7 +293,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -301,12 +303,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -314,18 +316,18 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler resultObj = staxBindingImpl.readEnumFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler resultObj = staxBindingImpl.readEnumFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(resultObj);
-
+
assertTrue(resultObj instanceof CorbaEnumHandler);
CorbaEnumHandler result = (CorbaEnumHandler)resultObj;
-
+
Object resultValueObj = result.getValue();
assertTrue(resultValueObj instanceof String);
-
+
String resultValue = (String)resultValueObj;
assertTrue(resultValue.equals(enums[1]));
}
@@ -342,11 +344,11 @@
java.math.BigDecimal fixedValue = new java.math.BigDecimal("12345.67");
obj.setValue(fixedValue);
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -354,7 +356,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -364,12 +366,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -377,18 +379,18 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler resultObj = staxBindingImpl.readFixedFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler resultObj = staxBindingImpl.readFixedFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(resultObj);
-
+
assertTrue(resultObj instanceof CorbaFixedHandler);
CorbaFixedHandler result = (CorbaFixedHandler)resultObj;
-
+
Object resultValueObj = result.getValue();
assertTrue(resultValueObj instanceof java.math.BigDecimal);
-
+
java.math.BigDecimal resultValue = (java.math.BigDecimal)resultValueObj;
assertTrue(resultValue.toString().equals(fixedValue.toString()));
}
@@ -415,11 +417,11 @@
obj.addElement(el);
objElements.add(el);
}
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -427,7 +429,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -437,12 +439,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -450,15 +452,15 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler result = staxBindingImpl.readSequenceFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler result = staxBindingImpl.readSequenceFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(result);
-
+
assertTrue(result instanceof CorbaSequenceHandler);
CorbaSequenceHandler resultObj = (CorbaSequenceHandler)result;
-
+
assertTrue(resultObj.getName().equals(obj.getName()));
assertTrue(resultObj.getIdlType().equals(obj.getIdlType()));
assertTrue(resultObj.getTypeCode().equal(obj.getTypeCode()));
@@ -493,7 +495,7 @@
Boolean member1Value = new Boolean(false);
member1.setValue(member1Value);
obj.addMember(member1);
-
+
MemberType m2 = structMembers.get(1);
TypeCode m2TypeCode = CorbaUtils.getTypeCode(orb, m2.getIdltype(), staxBindingImpl.getCorbaTypeMaps());
CorbaPrimitiveHandler member2 = new CorbaPrimitiveHandler(new QName(m2.getName()),
@@ -503,7 +505,7 @@
String member2Value = "Member 2 string";
member2.setValue(member2Value);
obj.addMember(member2);
-
+
MemberType m3 = structMembers.get(2);
TypeCode m3TypeCode = CorbaUtils.getTypeCode(orb, m3.getIdltype(), staxBindingImpl.getCorbaTypeMaps());
CorbaPrimitiveHandler member3 = new CorbaPrimitiveHandler(new QName(m3.getName()),
@@ -513,11 +515,11 @@
Float member3Value = new Float(12345.678);
member3.setValue(member3Value);
obj.addMember(member3);
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -525,7 +527,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -535,12 +537,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -548,18 +550,18 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler resultObj = staxBindingImpl.readStructFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler resultObj = staxBindingImpl.readStructFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(resultObj);
-
+
assertTrue(resultObj instanceof CorbaStructHandler);
CorbaStructHandler result = (CorbaStructHandler)resultObj;
-
+
List<CorbaObjectHandler> resultMembers = result.getMembers();
assertTrue(resultMembers.size() == 3);
-
+
CorbaObjectHandler resultMember1Obj = resultMembers.get(0);
assertTrue(resultMember1Obj instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultMember1 = (CorbaPrimitiveHandler)resultMember1Obj;
@@ -567,7 +569,7 @@
assertTrue(resultMember1ValueObj instanceof Boolean);
Boolean resultMember1Value = (Boolean)resultMember1ValueObj;
assertTrue(resultMember1Value.booleanValue() == member1Value.booleanValue());
-
+
CorbaObjectHandler resultMember2Obj = resultMembers.get(1);
assertTrue(resultMember2Obj instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultMember2 = (CorbaPrimitiveHandler)resultMember2Obj;
@@ -575,7 +577,7 @@
assertTrue(resultMember2ValueObj instanceof String);
String resultMember2Value = (String)resultMember2ValueObj;
assertTrue(resultMember2Value.equals(member2Value));
-
+
CorbaObjectHandler resultMember3Obj = resultMembers.get(2);
assertTrue(resultMember3Obj instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultMember3 = (CorbaPrimitiveHandler)resultMember3Obj;
@@ -584,7 +586,7 @@
Float resultMember3Value = (Float)resultMember3ValueObj;
assertTrue(resultMember3Value.floatValue() == member3Value.floatValue());
}
-
+
public void testReadWriteUnion() {
QName objName = new QName("object");
QName objIdlType = new QName(staxTestNamespaceURI, "TestUnion", staxTestPrefix);
@@ -594,13 +596,13 @@
TypeCode objTypeCode = CorbaUtils.getTypeCode(orb, objIdlType, staxBindingImpl.getCorbaTypeMaps());
CorbaUnionHandler obj = new CorbaUnionHandler(objName, objIdlType, objTypeCode, unionType);
assertNotNull(obj);
-
+
Character unionValue = new Character('u');
- TypeCode unionValueTC = CorbaUtils.getTypeCode(orb, CorbaConstants.NT_CORBA_WCHAR,
+ TypeCode unionValueTC = CorbaUtils.getTypeCode(orb, CorbaConstants.NT_CORBA_WCHAR,
staxBindingImpl.getCorbaTypeMaps());
CorbaPrimitiveHandler unionValueObj = new CorbaPrimitiveHandler(new QName("case12"),
CorbaConstants.NT_CORBA_WCHAR,
- unionValueTC,
+ unionValueTC,
null);
unionValueObj.setValue(unionValue);
Short discriminatorValue = new Short((short)1);
@@ -614,11 +616,11 @@
obj.setDiscriminator(discriminator);
obj.setValue("1", unionValueObj);
-
+
XMLInputFactory inputFactory = XMLInputFactory.newInstance();
XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
outputFactory.setProperty(XMLOutputFactory.IS_REPAIRING_NAMESPACES, Boolean.TRUE);
-
+
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
XMLEventWriter evtWriter = null;
try {
@@ -626,7 +628,7 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtWriter);
-
+
try {
XMLEventFactory factory = XMLEventFactory.newInstance();
StartElement startEl = factory.createStartElement(obj.getName(), null, null);
@@ -636,12 +638,12 @@
evtWriter.add(endEl);
evtWriter.flush();
} catch (XMLStreamException ex) {
-
+
}
- ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
+ ByteArrayInputStream inStream = new ByteArrayInputStream(outStream.toByteArray());
XMLEventReader evtReader = null;
- try {
+ try {
evtReader = inputFactory.createXMLEventReader(inStream);
// read the first tag which should be a start document
XMLEvent evt = evtReader.nextEvent();
@@ -649,15 +651,15 @@
} catch (XMLStreamException ex) {
}
assertNotNull(evtReader);
-
- CorbaObjectHandler resultObj = staxBindingImpl.readUnionFromStax(evtReader,
- obj.getIdlType(),
+
+ CorbaObjectHandler resultObj = staxBindingImpl.readUnionFromStax(evtReader,
+ obj.getIdlType(),
obj.getTypeCode());
assertNotNull(resultObj);
-
+
assertTrue(resultObj instanceof CorbaUnionHandler);
CorbaUnionHandler result = (CorbaUnionHandler)resultObj;
-
+
CorbaObjectHandler resultDiscriminatorObj = result.getDiscriminator();
assertTrue(resultDiscriminatorObj instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultDiscriminator = (CorbaPrimitiveHandler)resultDiscriminatorObj;
@@ -665,7 +667,7 @@
assertTrue(resultDiscValueObj instanceof Short);
Short resultDiscValue = (Short)resultDiscValueObj;
assertTrue(resultDiscValue.shortValue() == discriminatorValue.shortValue());
-
+
CorbaObjectHandler resultValueObj = result.getValue();
assertTrue(resultValueObj instanceof CorbaPrimitiveHandler);
CorbaPrimitiveHandler resultValue = (CorbaPrimitiveHandler)resultValueObj;
Modified: incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplUnmarshalTest.java
URL: http://svn.apache.org/viewvc/incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplUnmarshalTest.java?view=diff&rev=472095&r1=472094&r2=472095
==============================================================================
--- incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplUnmarshalTest.java (original)
+++ incubator/yoko/trunk/bindings/src/test/java/org/apache/yoko/bindings/corba/CorbaBindingImplUnmarshalTest.java Tue Nov 7 05:01:55 2006
@@ -18,6 +18,7 @@
*/
package org.apache.yoko.bindings.corba;
+import java.util.Properties;
import javax.xml.namespace.QName;
import javax.xml.ws.Holder;
@@ -41,45 +42,46 @@
public class CorbaBindingImplUnmarshalTest extends TestCase {
private static String TEST_CLASS = "org.apache.schemas.yoko.idl.parammodes.ParamModes";
-
+
private TestUtils testUtils;
private ORB orb;
private Bus bus;
private EndpointReferenceType endpoint;
private CorbaBindingImpl bindingImpl;
private Class paramModesClass;
-
+
public CorbaBindingImplUnmarshalTest(String arg0) {
super(arg0);
}
public static void main(String[] args) {
junit.textui.TestRunner.run(CorbaBindingImplUnmarshalTest.class);
}
-
+
protected void setUp() throws Exception {
super.setUp();
-
+
testUtils = new TestUtils();
-
- java.util.Properties props = System.getProperties();
+
+ java.util.Properties props = new Properties();
+ props.putAll(System.getProperties());
props.put("org.omg.CORBA.ORBClass", "org.apache.yoko.orb.CORBA.ORB");
props.put("org.omg.CORBA.ORBSingletonClass", "org.apache.yoko.orb.CORBA.ORBSingleton");
props.put("yoko.orb.id", "Yoko-Test");
orb = ORB.init(new String[0], props);
bus = Bus.init(new String[0]);
-
+
paramModesClass = Thread.currentThread().getContextClassLoader().loadClass(TEST_CLASS);
-
+
// programmatically add the corba binding factory
BindingManager manager = bus.getBindingManager();
CorbaBindingFactory corbaBF = new CorbaBindingFactory();
corbaBF.init(bus);
manager.registerBinding(CorbaConstants.NU_WSDL_CORBA, corbaBF);
-
+
endpoint = testUtils.getParamModesEndpointReference();
bindingImpl = new CorbaBindingImpl(bus, endpoint, orb, true);
}
-
+
protected void tearDown() throws Exception {
if (orb != null) {
try {
@@ -89,16 +91,16 @@
}
}
}
-
+
public void testUnmarshalSingleInParam() throws Exception {
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[1];
params[0] = short.class;
-
+
CorbaPrimitiveHandler handler = new CorbaPrimitiveHandler(new QName("p"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -110,7 +112,7 @@
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInParam", params));
@@ -120,23 +122,23 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 1);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInParamWithReturn", params));
objContext.setMessageObjects((short)0);
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 1);
Object ret = objContext.getReturn();
@@ -147,10 +149,10 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[0];
-
+
CorbaPrimitiveHandler handler = new CorbaPrimitiveHandler(new QName("p"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -162,7 +164,7 @@
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleOutParam", params));
@@ -171,27 +173,27 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
// In this case, there should be no parameters since the out param is mapped to the return type
assertTrue(resultArgs == null);
-
+
// Now try the call with a return type
params = new Class[1];
params[0] = new Holder<Short>().getClass();
-
+
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleOutParamWithReturn", params));
objContext.setMessageObjects(new Holder<Short>(new Short((short)0)));
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 1);
Object ret = objContext.getReturn();
@@ -202,11 +204,11 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[1];
params[0] = new Holder<Short>().getClass();
-
+
CorbaPrimitiveHandler handler = new CorbaPrimitiveHandler(new QName("p"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -218,7 +220,7 @@
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, true);
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInOutParam", params));
@@ -228,10 +230,10 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 1);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
@@ -239,13 +241,13 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testSingleInOutParamWithReturn", params));
objContext.setMessageObjects(new Holder<Short>(new Short((short)0)));
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 1);
Object ret = objContext.getReturn();
@@ -256,12 +258,12 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[2];
params[0] = short.class;
params[1] = short.class;
-
+
CorbaPrimitiveHandler handler0 = new CorbaPrimitiveHandler(new QName("p1"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -280,7 +282,7 @@
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
corbaContext.getMessage().addStreamableArgument(arg1);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInParams", params));
@@ -293,10 +295,10 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
@@ -304,13 +306,13 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInParamsWithReturn", params));
objContext.setMessageObjects(objCtxArgs);
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
Object ret = objContext.getReturn();
@@ -321,12 +323,12 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[2];
params[0] = new Holder<Short>().getClass();
params[1] = new Holder<Short>().getClass();
-
+
CorbaPrimitiveHandler handler0 = new CorbaPrimitiveHandler(new QName("p1"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -345,7 +347,7 @@
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
corbaContext.getMessage().addStreamableArgument(arg1);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleOutParams", params));
@@ -358,24 +360,24 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
-
+
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleOutParamsWithReturn", params));
objContext.setMessageObjects(objCtxArgs);
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
Object ret = objContext.getReturn();
@@ -386,12 +388,12 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[2];
params[0] = new Holder<Short>().getClass();
params[1] = new Holder<Short>().getClass();
-
+
CorbaPrimitiveHandler handler0 = new CorbaPrimitiveHandler(new QName("p1"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -410,7 +412,7 @@
corbaContext.setMessage(new CorbaMessage());
corbaContext.getMessage().addStreamableArgument(arg0);
corbaContext.getMessage().addStreamableArgument(arg1);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInOutParams", params));
@@ -423,10 +425,10 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
@@ -434,13 +436,13 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleInOutParamsWithReturn", params));
objContext.setMessageObjects(objCtxArgs);
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 2);
Object ret = objContext.getReturn();
@@ -451,14 +453,14 @@
ObjectMessageContextImpl objContext = null;
CorbaMessageContextImpl corbaContext = null;
Class[] params = null;
-
+
// Prepare the arguments
params = new Class[3];
params[0] = short.class;
params[1] = new Holder<Short>().getClass();
params[2] = new Holder<Short>().getClass();
-
-
+
+
CorbaPrimitiveHandler handler0 = new CorbaPrimitiveHandler(new QName("p1"),
CorbaConstants.NT_CORBA_SHORT,
orb.get_primitive_tc(TCKind.tk_short),
@@ -484,7 +486,7 @@
corbaContext.getMessage().addStreamableArgument(arg0);
corbaContext.getMessage().addStreamableArgument(arg1);
corbaContext.getMessage().addStreamableArgument(arg2);
-
+
// First try call the operation using a void return type
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleMixedParams", params));
@@ -498,10 +500,10 @@
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
Object[] resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 3);
-
+
// Now try the call with a return type
corbaContext.put(ObjectMessageContext.MESSAGE_INPUT, false);
corbaContext.getMessage().setStreamableReturn(arg0);
@@ -509,13 +511,13 @@
objContext = new ObjectMessageContextImpl();
objContext.setMethod(paramModesClass.getMethod("testMultipleMixedParamsWithReturn", params));
objContext.setMessageObjects(objCtxArgs);
-
+
bindingImpl.unmarshal(corbaContext,
objContext,
new JAXBDataBindingCallback(objContext.getMethod(),
DataBindingCallback.Mode.MESSAGE,
null));
-
+
resultArgs = objContext.getMessageObjects();
assertTrue(resultArgs.length == 3);
Object ret = objContext.getReturn();