Package org.apache.synapse.mediators.transform

Examples of org.apache.synapse.mediators.transform.PayloadFactoryMediator


        if (!(m instanceof PayloadFactoryMediator)) {
            handleException("Unsupported mediator was passed in for serialization: " + m.getType());
            return null;
        }

        PayloadFactoryMediator mediator = (PayloadFactoryMediator) m;

        OMElement payloadFactoryElem = fac.createOMElement(PAYLOAD_FACTORY, synNS);
        saveTracingState(payloadFactoryElem, mediator);

        if (mediator.getFormat() != null) {

            try {
                OMElement formatElem = fac.createOMElement(FORMAT, synNS);
                formatElem.addChild(AXIOMUtil.stringToOM(mediator.getFormat()));
                payloadFactoryElem.addChild(formatElem);
            } catch (XMLStreamException e) {
                handleException("Error while serializing payloadFactory mediator", e);
            }
        } else {
            handleException("Invalid payloadFactory mediator, format is required");
        }

        List<PayloadFactoryMediator.Argument> argList = mediator.getArgumentList();

        if (argList != null && argList.size() > 0) {

            OMElement argumentsElem = fac.createOMElement(ARGS, synNS);
View Full Code Here


    private static final QName FORMAT_Q = new QName(XMLConfigConstants.SYNAPSE_NAMESPACE, "format");
    private static final QName ARGS_Q = new QName(XMLConfigConstants.SYNAPSE_NAMESPACE, "args");

    public Mediator createSpecificMediator(OMElement elem, Properties properties) {

        PayloadFactoryMediator payloadFactoryMediator = new PayloadFactoryMediator();

        OMElement formatElem = elem.getFirstChildWithName(FORMAT_Q);

        if (formatElem != null) {
            OMElement copy = formatElem.getFirstElement().cloneOMElement();
            removeIndentations(copy);
            payloadFactoryMediator.setFormat(copy.toString());
        } else {
            handleException("format element of payloadFactoryMediator is required");
        }

        OMElement argumentsElem = elem.getFirstChildWithName(ARGS_Q);

        if (argumentsElem != null) {

            Iterator itr = argumentsElem.getChildElements();

            while (itr.hasNext()) {
                OMElement argElem = (OMElement) itr.next();
                PayloadFactoryMediator.Argument arg = new PayloadFactoryMediator.Argument();
                String value;

                if ((value = argElem.getAttributeValue(ATT_VALUE)) != null) {
                    arg.setValue(value);
                } else if ((value = argElem.getAttributeValue(ATT_EXPRN)) != null) {

                    if (value.trim().length() == 0) {
                        handleException("Value of 'expression' attribute is required");
                    } else {
                        try {
                            arg.setExpression(SynapseXPathFactory.getSynapseXPath(argElem, ATT_EXPRN));
                        } catch (JaxenException e) {
                            handleException("Invalid XPath expression is provided for " +
                                    "'expression' attribute: " + value, e);
                        }
                    }

                } else {
                    handleException("Unsupported arg type. 'value' or 'expression' attribute is " +
                            "required");
                }

                payloadFactoryMediator.addArgument(arg);
            }
        }

        return payloadFactoryMediator;
    }
View Full Code Here

TOP

Related Classes of org.apache.synapse.mediators.transform.PayloadFactoryMediator

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.