Package org.mule.api.transformer

Examples of org.mule.api.transformer.DataType


    }

    public void testGenericCollectionTypesFromMethodParam() throws Exception
    {
        DataType dt = DataTypeFactory.createFromParameterType(getClass().getDeclaredMethod("listOfExceptionsMethod", Collection.class), 0);
        assertTrue(dt instanceof CollectionDataType);

        assertEquals(Collection.class, dt.getType());
        assertEquals(Exception.class, ((CollectionDataType) dt).getItemType());

        DataType dt2 = DataTypeFactory.createFromParameterType(getClass().getDeclaredMethod("listOfExceptionsMethod", Collection.class), 0);
        assertTrue(dt.isCompatibleWith(dt2));
        assertEquals(dt, dt2);

        dt2 = DataTypeFactory.createFromParameterType(getClass().getDeclaredMethod("listOfExceptionsMethod", List.class), 0);
        assertTrue(dt.isCompatibleWith(dt2));
View Full Code Here


        assertFalse(dt.equals(dt2));
    }

    public void testGenericCollectionTypesFromField() throws Exception
    {
        DataType dt = DataTypeFactory.createFromField(getClass().getDeclaredField("listOfExceptions"));
        assertTrue(dt instanceof CollectionDataType);

        assertEquals(List.class, dt.getType());
        assertEquals(Exception.class, ((CollectionDataType) dt).getItemType());
    }
View Full Code Here

    @Override
    protected String generateTransformerName()
    {
        String name = transformers.get(0).getClass().getSimpleName();
        int i = name.indexOf("To");
        DataType dt = transformers.get(transformers.size() -1).getReturnDataType();
        if (i > 0 && dt != null)
        {
            String target = dt.getType().getSimpleName();
            if (target.equals("byte[]"))
            {
                target = "byteArray";
            }
            name = name.substring(0, i + 2) + StringUtils.capitalize(target);
View Full Code Here

     * {@inheritDoc}
     */
    @Override
    public Object getPayload(Class outputType) throws TransformerException
    {
        DataType outputDataType = DataTypeFactory.create(outputType);
        List results = new ArrayList(getMessageList().size());
        for (Iterator iterator = getMessageList().iterator(); iterator.hasNext();)
        {
            MuleMessage message = (MuleMessage) iterator.next();
            results.add(message.getPayload(outputDataType));
View Full Code Here

        if(method.getName().startsWith("ibean"))
        {
            invocationContext.setResult(result.getPayload());
            return;
        }
        DataType requiredType = DataTypeConverter.convertIBeansToMule(invocationContext.getReturnType()); // DataTypeFactory.createFromReturnType(method);

        if (method.getAnnotation(Return.class) != null)
        {
            String returnExpression = method.getAnnotation(Return.class).value();

            finalResult = handleReturnAnnotation(returnExpression, result, invocationContext);

            DataType finalType = DataTypeFactory.createFromObject(finalResult);
            if (!requiredType.isCompatibleWith(finalType))
            {
                Transformer transformer = muleContext.getRegistry().lookupTransformer( finalType, requiredType);
                finalResult = transformer.transform(finalResult);
            }
        }
        else
        {

            if (requiredType.getType().equals(MuleMessage.class))
            {
                finalResult = result.getMessage();
            }
            else if (requiredType.getType().equals(Response.class))
            {
                finalResult = result;
            }
            else
            {
                DataType sourceType = DataTypeFactory.createFromObject(result.getMessage());
                if(requiredType.isCompatibleWith(sourceType))
                {
                    finalResult = result.getPayload();
                }
                else
View Full Code Here

                target = source;
            }
        }
        if ((target != null) && (!isAssignableFrom(expectedType, target.getClass())))
        {
            DataType sourceDataType = DataTypeFactory.create(target.getClass());
            if (expectedType instanceof ParameterizedType)
            {
                expectedType = ((ParameterizedType) expectedType).getRawType();
            }
            DataType targetDataType = DataTypeFactory.create(((Class) expectedType));
            Transformer t = muleMessage.getMuleContext()
                .getRegistry()
                .lookupTransformer(sourceDataType, targetDataType);
            return t.transform(target);
        }
View Full Code Here

                               String expectedMimeType,
                               Object source) throws TransformerException, TransformerMessagingException
    {
        if ((source != null) && (!isAssignableFrom(expectedType, source.getClass())))
        {
            DataType sourceDataType = DataTypeFactory.create(source.getClass());
            DataType targetDataType = null;
            if (expectedType instanceof ParameterizedType)
            {
                expectedType = ((ParameterizedType) expectedType).getRawType();
            }
            if (expectedMimeType != null)
View Full Code Here

                               String expectedMimeType,
                               Object source) throws TransformerException, TransformerMessagingException
    {
        if ((source != null) && (!isAssignableFrom(expectedType, source.getClass())))
        {
            DataType sourceDataType = DataTypeFactory.create(source.getClass());
            DataType targetDataType = null;
            if (expectedType instanceof ParameterizedType)
            {
                expectedType = ((ParameterizedType) expectedType).getRawType();
            }
            if (expectedMimeType != null)
View Full Code Here

        AnnotatedTransformerProxy trans = (AnnotatedTransformerProxy)muleContext.getRegistry()
                .lookupTransformer(getClass().getSimpleName() + ".dummy");

        assertNotNull(trans);
        assertEquals(getClass().getSimpleName() + ".dummy", trans.getName());
        DataType dt = DataTypeFactory.create(ArrayList.class, Object.class, null);
        assertTrue("should be a CollectionDataType", trans.getReturnDataType() instanceof CollectionDataType);
        assertEquals(Object.class, ((CollectionDataType)trans.getReturnDataType()).getItemType());

        assertEquals(dt, trans.getReturnDataType());
View Full Code Here

        assertEquals(getClass().getSimpleName() + ".dummy2", trans.getName());
        assertTrue("should be a CollectionDataType", trans.getReturnDataType() instanceof CollectionDataType);
        assertEquals(String.class, ((CollectionDataType)trans.getReturnDataType()).getItemType());

        DataType dt = DataTypeFactory.create(ArrayList.class, String.class, null);
        assertEquals(dt, trans.getReturnDataType());
        assertEquals(3, trans.getSourceDataTypes().size());
        assertTrue(trans.getSourceDataTypes().contains(DataTypeFactory.create(BufferedInputStream.class)));
        assertTrue(trans.getSourceDataTypes().contains(DataTypeFactory.create(FileInputStream.class)));
        assertTrue(trans.getSourceDataTypes().contains(DataTypeFactory.create(ByteArrayInputStream.class)));
View Full Code Here

TOP

Related Classes of org.mule.api.transformer.DataType

Copyright © 2018 www.massapicom. 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.