Package org.apache.synapse.format.hessian

# Class HessianMessageFormatter

java.lang.Object
org.apache.synapse.format.hessian.HessianMessageFormatter

All Implemented Interfaces:
  `org.apache.axis2.transport.MessageFormatter`

public class HessianMessageFormatter extends Object implements org.apache.axis2.transport.MessageFormatter
Enables a message encoded using the Hessian binary protocol to be written to transport by axis2/synapse and this formats the HessianDataSource to a Hessian message.

See Also:
  - `MessageFormatter`
  - `SynapseBinaryDataSource`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `HessianMessageFormatter()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `formatSOAPAction(org.apache.axis2.context.MessageContext messageContext, org.apache.axiom.om.OMOutputFormat format, String soapAction)`
  Simply returns the soapAction unchanged.
  `byte[]`
  `getBytes(org.apache.axis2.context.MessageContext msgCtxt, org.apache.axiom.om.OMOutputFormat format)`
  This method is not supported because of large file handling limitations
  `String`
  `getContentType(org.apache.axis2.context.MessageContext msgCtxt, org.apache.axiom.om.OMOutputFormat format, String soapActionString)`
  Formats the content type to be written in to the transport
  `URL`
  `getTargetAddress(org.apache.axis2.context.MessageContext messageContext, org.apache.axiom.om.OMOutputFormat format, URL targetURL)`
  `void`
  `writeTo(org.apache.axis2.context.MessageContext msgCtx, org.apache.axiom.om.OMOutputFormat format, OutputStream out, boolean preserve)`
  Extract Hessian bytes from the received SOAP message and write it onto the wire

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### HessianMessageFormatter

    public HessianMessageFormatter()

- ## Method Details

  - ### getContentType

    public String getContentType(org.apache.axis2.context.MessageContext msgCtxt, org.apache.axiom.om.OMOutputFormat format, String soapActionString)
    Formats the content type to be written in to the transport
    Specified by:
      `getContentType` in interface `org.apache.axis2.transport.MessageFormatter`
    Parameters:
      `msgCtxt` - message of which the content type has to be formatted
      `format` - fomat of the expected formatted message
      `soapActionString` - soap action of the message
    Returns:
      contentType formatted content type as a String

  - ### writeTo

    public void writeTo(org.apache.axis2.context.MessageContext msgCtx, org.apache.axiom.om.OMOutputFormat format, OutputStream out, boolean preserve) throws org.apache.axis2.AxisFault
    Extract Hessian bytes from the received SOAP message and write it onto the wire
    Specified by:
      `writeTo` in interface `org.apache.axis2.transport.MessageFormatter`
    Parameters:
      `msgCtx` - message from which the Hessian message has to be extracted
      `format` - message format to be written
      `out` - stream to which the message is written
      `preserve` - whether to preserve the indentations
    Throws:
      `org.apache.axis2.AxisFault` - in case of a failure in writing the message to the provided stream

  - ### getBytes

    public byte[] getBytes(org.apache.axis2.context.MessageContext msgCtxt, org.apache.axiom.om.OMOutputFormat format) throws org.apache.axis2.AxisFault
    This method is not supported because of large file handling limitations
    Specified by:
      `getBytes` in interface `org.apache.axis2.transport.MessageFormatter`
    Parameters:
      `msgCtxt` - message which contains the Hessian message inside the HessianDataSource
      `format` - message format to be written
    Returns:
      Hessian binary bytes of the message
    Throws:
      `org.apache.axis2.AxisFault` - for any invocation

  - ### formatSOAPAction

    public String formatSOAPAction(org.apache.axis2.context.MessageContext messageContext, org.apache.axiom.om.OMOutputFormat format, String soapAction)
    Simply returns the soapAction unchanged.
    Specified by:
      `formatSOAPAction` in interface `org.apache.axis2.transport.MessageFormatter`

  - ### getTargetAddress

    public URL getTargetAddress(org.apache.axis2.context.MessageContext messageContext, org.apache.axiom.om.OMOutputFormat format, URL targetURL) throws org.apache.axis2.AxisFault
    Specified by:
      `getTargetAddress` in interface `org.apache.axis2.transport.MessageFormatter`
    Returns:
      A templated URL based on the given target URL.
    Throws:
      `org.apache.axis2.AxisFault`