Examples of DynaCorbaRequest


Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * @see org.apache.tuscany.sca.invocation.Invoker#invoke(org.apache.tuscany.sca.invocation.Message)
     */
    public Message invoke(Message msg) {
        try {
            DynaCorbaRequest request = new DynaCorbaRequest(remoteObject, msg.getOperation().getName());
            request.setReferenceClass(referenceClass);
            request.setOperationsMap(operationsMap);
            if (msg.getOperation().getOutputType() != null) {
                Annotation[] notes = operationMethodMapping.get(msg.getOperation()).getAnnotations();
                request.setOutputType(msg.getOperation().getOutputType().getPhysical(), notes);
            }
            java.lang.Object[] args = msg.getBody();
            if (args != null) {
                Annotation[][] notes = operationMethodMapping.get(msg.getOperation()).getParameterAnnotations();
                for (int i = 0; i < args.length; i++) {
                    request.addArgument(args[i], notes[i]);
                }
            }
            if (msg.getOperation().getFaultTypes() != null) {
                for (DataType<?> type : msg.getOperation().getFaultTypes()) {
                    request.addExceptionType(type.getPhysical());
                }
            }
            DynaCorbaResponse response = request.invoke();
            msg.setBody(response.getContent());
        } catch (RequestConfigurationException e) {
            throw new ServiceRuntimeException(e);
        } catch (Exception e) {
            msg.setFaultBody(e);
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

                                 Class<?> clazz,
                                 java.lang.Object[] arguments,
                                 java.lang.Object equalTo) {

        try {
            DynaCorbaRequest request = new DynaCorbaRequest(ref, operationName);
            request.setOutputType(clazz);
            for (int i = 0; arguments != null && i < arguments.length; i++) {
                request.addArgument(arguments[i]);
            }

            DynaCorbaResponse response = request.invoke();
            java.lang.Object content = (java.lang.Object)response.getContent();
            assertTrue(content.getClass().equals(clazz));
            if (equalTo != null && equalTo.getClass().isArray()) {
                for (int i = 0; i < Array.getLength(equalTo); i++) {
                    assertTrue(Array.get(content, i).equals(Array.get(equalTo, i)));
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * Tests passing (and getting as result) complex structure
     */
    @Test
    public void test_TestObject_setStruct() {
        DynaCorbaRequest request = new DynaCorbaRequest(refTestObject, "setStruct");

        SomeStruct struct = new SomeStruct();
        SimpleStruct inner = new SimpleStruct();
        inner.field1 = TestConstants.STR_1;
        inner.field2 = TestConstants.INT_1;
        struct.innerStruct = inner;
        struct.str_list = TestConstants.STR_ARR_2;
        struct.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;
        struct.threeDimSeq = TestConstants.INT_ARRAY_3_DIM;
        struct.str = TestConstants.STR_1;

        try {
            request.addArgument(struct);
            request.setOutputType(SomeStruct.class);
            DynaCorbaResponse response = request.invoke();
            SomeStruct result = (SomeStruct)response.getContent();
            assertTrue(TestConstants.are2DimArraysEqual(result.twoDimSeq, TestConstants.INT_ARRAY_2_DIM));
            assertTrue(TestConstants.are3DimArraysEqual(result.threeDimSeq, TestConstants.INT_ARRAY_3_DIM));
            assertEquals(TestConstants.STR_1, result.str);
            assertEquals(TestConstants.STR_ARR_2[0], result.str_list[0]);
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    @Test
    public void test_TestObject_setSimpleStruct() {
        SimpleStruct struct = new SimpleStruct();
        struct.field1 = TestConstants.STR_1;
        struct.field2 = TestConstants.INT_1;
        DynaCorbaRequest request = new DynaCorbaRequest(refTestObject, "setSimpleStruct");
        try {
            request.setOutputType(SimpleStruct.class);
            request.addArgument(struct);
            DynaCorbaResponse response = request.invoke();
            SimpleStruct retStruct = (SimpleStruct)response.getContent();
            assertTrue(retStruct.field1.equals(struct.field1) && retStruct.field2 == struct.field2);
        } catch (Exception e) {
            e.printStackTrace();
            fail("Exception occured during tests: " + e);
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

        for (int i = 0; i < 2; i++) {
            for (int j = 0; j < 2; j++) {
                arr1[i][j] = (int)(Math.random() * 1000);
            }
        }
        DynaCorbaRequest request = new DynaCorbaRequest(refTestObject, "setLongSeq2");
        try {
            request.setOutputType(arr1.getClass());
            request.addArgument(arr1);
            DynaCorbaResponse response = request.invoke();
            int[][] arr2 = (int[][])response.getContent();
            for (int i = 0; i < 2; i++) {
                for (int j = 0; j < 2; j++) {
                    assertEquals(arr1[i][j], arr2[i][j]);
                }
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

        arg1.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;
        arg2.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;
        arg3.twoDimSeq = TestConstants.INT_ARRAY_2_DIM;

        DynaCorbaRequest request = new DynaCorbaRequest(refTestObject, "pickStructFromArgs");
        try {

            request.setOutputType(SomeStruct.class);
            request.addArgument(arg1);
            request.addArgument(arg2);
            request.addArgument(arg3);
            request.addArgument(1);
            DynaCorbaResponse response = request.invoke();
            SomeStruct result = (SomeStruct)response.getContent();

            // just make sure that servant returned right structure
            assertTrue(result.str.equals(TestConstants.STR_1));
        } catch (Exception e) {
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * Tests handling user defined remote exception (single declared)
     */
    @Test
    public void test_singleException() {
        DynaCorbaRequest request1 = new DynaCorbaRequest(refCalcObject, "div");
        try {
            request1.addArgument(2d);
            request1.addArgument(2d);
            request1.setOutputType(Double.class);
            request1.addExceptionType(DivByZero.class);
            request1.invoke();
        } catch (Exception e) {
            fail();
        }

        DynaCorbaRequest request2 = new DynaCorbaRequest(refCalcObject, "div");
        try {
            request2.addArgument(2d);
            request2.addArgument(0d);
            request2.setOutputType(Double.class);
            request2.addExceptionType(DivByZero.class);
            request2.invoke();
        } catch (DivByZero e) {
            assertTrue(e.info != null && e.arguments != null && e.arguments.arg1 == 2 && e.arguments.arg2 == 0);
        } catch (Exception exc) {
            exc.printStackTrace();
            fail();
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * Tests handling user defined multiple exceptions
     */
    @Test
    public void test_multipleExceptions() {
        DynaCorbaRequest request = new DynaCorbaRequest(refCalcObject, "divForSmallArgs");
        try {
            request.addArgument(101d);
            request.addArgument(101d);
            request.setOutputType(Double.class);
            request.addExceptionType(DivByZero.class);
            request.addExceptionType(NotSupported.class);
            request.invoke();
        } catch (Exception e) {
            assertTrue(e instanceof NotSupported);
        }
    }
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * Tests handling exceptions while user defined no exceptions
     */
    @Test
    public void test_noExceptionsDeclared() {
        DynaCorbaRequest request = new DynaCorbaRequest(refCalcObject, "div");
        try {
            request.addArgument(1d);
            request.addArgument(0d);
            request.setOutputType(Double.class);
            request.invoke();
            fail();
        } catch (Exception e) {
            assertTrue(e instanceof RequestConfigurationException);
        }
    }
View Full Code Here

Examples of org.apache.tuscany.sca.binding.corba.impl.reference.DynaCorbaRequest

    /**
     * Tests handling exceptions while user defined no such exception
     */
    @Test
    public void test_noSuchExceptionDeclared() {
        DynaCorbaRequest request = new DynaCorbaRequest(refCalcObject, "div");
        try {
            request.addArgument(1d);
            request.addArgument(0d);
            request.addExceptionType(NotSupported.class);
            request.setOutputType(Double.class);
            request.invoke();
            fail();
        } catch (Exception e) {
            assertTrue(e instanceof RequestConfigurationException);
        }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.