Search in sources :

Example 26 with Builder

use of org.apache.axis2.builder.Builder in project wso2-axis2-transports by wso2.

the class HttpTransportTestSuiteBuilder method build.

public void build() {
    TransportTestSuiteBuilder builder = new TransportTestSuiteBuilder(suite);
    builder.addEnvironment(tdf);
    HttpChannel channel = new HttpChannel();
    builder.addAsyncChannel(channel);
    builder.addByteArrayAsyncTestClient(new JavaNetClient());
    if (axisTestClientConfigurators.isEmpty()) {
        builder.addAxisAsyncTestClient(new AxisAsyncTestClient());
    } else {
        for (AxisTestClientConfigurator configurator : axisTestClientConfigurators) {
            builder.addAxisAsyncTestClient(new AxisAsyncTestClient(), configurator);
        }
    }
    builder.addRESTAsyncTestClient(new JavaNetRESTClient());
    builder.addAxisAsyncEndpoint(new AxisAsyncEndpoint());
    builder.addByteArrayAsyncEndpoint(new JettyByteArrayAsyncEndpoint());
    builder.addRESTAsyncEndpoint(new JettyRESTAsyncEndpoint());
    builder.addRequestResponseChannel(channel);
    builder.addAxisRequestResponseTestClient(new AxisRequestResponseTestClient());
    builder.addEchoEndpoint(new AxisEchoEndpoint());
    builder.addEchoEndpoint(new JettyEchoEndpoint());
    builder.build();
    suite.addTest(new MinConcurrencyTest(new AsyncChannel[] { new HttpChannel(), new HttpChannel() }, 2, false, tdf));
}
Also used : AxisRequestResponseTestClient(org.apache.axis2.transport.testkit.axis2.client.AxisRequestResponseTestClient) AxisAsyncEndpoint(org.apache.axis2.transport.testkit.axis2.endpoint.AxisAsyncEndpoint) AxisTestClientConfigurator(org.apache.axis2.transport.testkit.axis2.client.AxisTestClientConfigurator) AsyncChannel(org.apache.axis2.transport.testkit.channel.AsyncChannel) AxisAsyncTestClient(org.apache.axis2.transport.testkit.axis2.client.AxisAsyncTestClient) AxisEchoEndpoint(org.apache.axis2.transport.testkit.axis2.endpoint.AxisEchoEndpoint) MinConcurrencyTest(org.apache.axis2.transport.testkit.tests.misc.MinConcurrencyTest) TransportTestSuiteBuilder(org.apache.axis2.transport.testkit.TransportTestSuiteBuilder)

Example 27 with Builder

use of org.apache.axis2.builder.Builder in project wso2-axis2-transports by wso2.

the class RabbitMQUtils method getBuilder.

private static Builder getBuilder(MessageContext msgContext, String rawContentType) throws AxisFault {
    try {
        ContentType contentType = new ContentType(rawContentType);
        String charset = contentType.getParameter("charset");
        msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING, charset);
        Builder builder = BuilderUtil.getBuilderFromSelector(contentType.getBaseType(), msgContext);
        if (builder == null) {
            if (log.isDebugEnabled()) {
                log.debug("No message builder found for type '" + contentType.getBaseType() + "'. Falling back to SOAP.");
            }
            builder = new SOAPBuilder();
        }
        return builder;
    } catch (ParseException e) {
        throw new AxisFault("Error parsing content type: " + rawContentType, e);
    }
}
Also used : AxisFault(org.apache.axis2.AxisFault) ContentType(javax.mail.internet.ContentType) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) Builder(org.apache.axis2.builder.Builder) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) ParseException(javax.mail.internet.ParseException)

Example 28 with Builder

use of org.apache.axis2.builder.Builder in project wso2-axis2-transports by wso2.

the class MqttUtils method invoke.

public static void invoke(MqttMessage mqttMessage, MessageContext msgContext, String contentType) throws AxisFault, AxisMqttException {
    if (contentType == null) {
        contentType = "text/plain";
    }
    Builder builder = BuilderUtil.getBuilderFromSelector(contentType, msgContext);
    if (builder == null) {
        if (log.isDebugEnabled()) {
            log.debug("No message builder found for type '" + contentType + "'. Falling back to SOAP.");
        }
        builder = new SOAPBuilder();
    }
    msgContext.setProperty(Constants.Configuration.CHARACTER_SET_ENCODING, "UTF-8");
    OMElement documentElement = null;
    byte[] bytes = mqttMessage.getPayload();
    ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(bytes);
    documentElement = builder.processDocument(byteArrayInputStream, contentType, msgContext);
    msgContext.setEnvelope(TransportUtils.createSOAPEnvelope(documentElement));
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) Builder(org.apache.axis2.builder.Builder) TextMessageBuilder(org.apache.axis2.format.TextMessageBuilder) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) OMElement(org.apache.axiom.om.OMElement)

Example 29 with Builder

use of org.apache.axis2.builder.Builder in project wso2-axis2-transports by wso2.

the class MSMQUtil method setSOAPEnvelope.

public static void setSOAPEnvelope(Message message, MessageContext msgContext, String contentType) throws AxisFault {
    if (contentType == null) {
        // TODO;we only support text/plain
        contentType = "text/plain";
        if (log.isDebugEnabled()) {
            log.debug("No content type specified; assuming " + contentType);
        }
    }
    int index = contentType.indexOf(';');
    String type = index > 0 ? contentType.substring(0, index) : contentType;
    Builder builder = BuilderUtil.getBuilderFromSelector(type, msgContext);
    String messageBody = null;
    try {
        messageBody = message.getBodyAsString();
    } catch (UnsupportedEncodingException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    if (builder == null) {
        if (log.isDebugEnabled()) {
            log.debug("No message builder found for type' " + type + ".Using SOAP builder");
        }
        builder = new SOAPBuilder();
    }
    OMElement documentElement;
    // TODO: we need to handle the message types separately. Assume text message builder format
    TextMessageBuilder textMessageBuilder;
    if (builder instanceof TextMessageBuilder) {
        textMessageBuilder = (TextMessageBuilder) builder;
    } else {
        textMessageBuilder = new TextMessageBuilderAdapter(builder);
    }
    documentElement = textMessageBuilder.processDocument(messageBody, contentType, msgContext);
    msgContext.setEnvelope(TransportUtils.createSOAPEnvelope(documentElement));
}
Also used : TextMessageBuilderAdapter(org.apache.axis2.format.TextMessageBuilderAdapter) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) Builder(org.apache.axis2.builder.Builder) TextMessageBuilder(org.apache.axis2.format.TextMessageBuilder) UnsupportedEncodingException(java.io.UnsupportedEncodingException) SOAPBuilder(org.apache.axis2.builder.SOAPBuilder) OMElement(org.apache.axiom.om.OMElement) TextMessageBuilder(org.apache.axis2.format.TextMessageBuilder)

Example 30 with Builder

use of org.apache.axis2.builder.Builder in project wso2-synapse by wso2.

the class JsonStreamingBuilderTest method testCase.

public void testCase() throws AxisFault {
    String jsonPayload = "{\n" + "\"account_number\":\"1234567890\",\n" + "\"routing_number\":\"09100001\",\n" + "\"image_type\":\"COMMERCIAL_DEPOSIT\"\n" + "}";
    String expectedXml = "<jsonObject>" + "<account_number>1234567890</account_number>" + "<routing_number>09100001</routing_number>" + "<image_type>COMMERCIAL_DEPOSIT</image_type>" + "</jsonObject>";
    MessageContext messageContext = Util.newMessageContext();
    InputStream inputStream = Util.newInputStream(jsonPayload.getBytes());
    Builder jsonBuilder = Util.newJsonStreamBuilder();
    OMElement element = jsonBuilder.processDocument(inputStream, "application/json", messageContext);
    assertEquals("Invalid content received", expectedXml, element.toString());
}
Also used : InputStream(java.io.InputStream) Builder(org.apache.axis2.builder.Builder) OMElement(org.apache.axiom.om.OMElement) MessageContext(org.apache.axis2.context.MessageContext)

Aggregations

OMElement (org.apache.axiom.om.OMElement)24 MessageContext (org.apache.axis2.context.MessageContext)15 Builder (org.apache.axis2.builder.Builder)13 AxisFault (org.apache.axis2.AxisFault)11 SOAPEnvelope (org.apache.axiom.soap.SOAPEnvelope)9 ByteArrayInputStream (java.io.ByteArrayInputStream)8 SOAPBuilder (org.apache.axis2.builder.SOAPBuilder)8 InputStream (java.io.InputStream)7 HashMap (java.util.HashMap)7 ByteArrayOutputStream (java.io.ByteArrayOutputStream)5 EndpointReference (org.apache.axis2.addressing.EndpointReference)5 ContentType (javax.mail.internet.ContentType)4 ParseException (javax.mail.internet.ParseException)4 XMLStreamException (javax.xml.stream.XMLStreamException)4 Parameter (org.apache.axis2.description.Parameter)4 AxisConfiguration (org.apache.axis2.engine.AxisConfiguration)4 MessageFormatter (org.apache.axis2.transport.MessageFormatter)4 ManagedTestSuite (org.apache.axis2.transport.testkit.ManagedTestSuite)4 TransportTestSuiteBuilder (org.apache.axis2.transport.testkit.TransportTestSuiteBuilder)4 AxisAsyncTestClient (org.apache.axis2.transport.testkit.axis2.client.AxisAsyncTestClient)4