org.mule.transport.legstar.cixs.transformer
Class HostToLegstarExecRequestMuleTransformer

java.lang.Object
  extended by org.mule.transformer.AbstractTransformer
      extended by org.mule.transformer.AbstractMessageTransformer
          extended by org.mule.transport.legstar.transformer.AbstractHostMuleTransformer
              extended by org.mule.transport.legstar.cixs.transformer.AbstractHostToExecRequestMuleTransformer
                  extended by org.mule.transport.legstar.cixs.transformer.HostToLegstarExecRequestMuleTransformer
All Implemented Interfaces:
org.mule.api.AnnotatedObject, org.mule.api.context.MuleContextAware, org.mule.api.lifecycle.Disposable, org.mule.api.lifecycle.Initialisable, org.mule.api.NameableObject, org.mule.api.NamedObject, org.mule.api.processor.MessageProcessor, org.mule.api.transformer.MessageTransformer, org.mule.api.transformer.Transformer, org.mule.endpoint.EndpointAware

public class HostToLegstarExecRequestMuleTransformer
extends AbstractHostToExecRequestMuleTransformer

HostToLegstarMuleTransformer wraps host data into an architected LegStarMessage.

Source types are either simple byte arrays which means the target is a single part, commarea type, program, or maps of byte arrays which means the target program is container-aware.

The return type is a byte array ready to be sent to the mainframe. It is expected that the mainframe has the LegStar modules installed.


Nested Class Summary
 
Nested classes/interfaces inherited from class org.mule.transport.legstar.transformer.AbstractHostMuleTransformer
AbstractHostMuleTransformer.HolderGetter, AbstractHostMuleTransformer.HolderSetter
 
Field Summary
 
Fields inherited from class org.mule.transport.legstar.cixs.transformer.AbstractHostToExecRequestMuleTransformer
LEGSTAR_HOST_TRACE_ON_KEY
 
Fields inherited from class org.mule.transformer.AbstractTransformer
encoding, endpoint, logger, mimeType, MULE_MESSAGE_DATA_TYPE, muleContext, name, returnType, sourceTypes
 
Fields inherited from interface org.mule.api.lifecycle.Initialisable
PHASE_NAME
 
Fields inherited from interface org.mule.api.lifecycle.Disposable
PHASE_NAME
 
Fields inherited from interface org.mule.api.AnnotatedObject
PROPERTY_NAME
 
Constructor Summary
HostToLegstarExecRequestMuleTransformer()
           
 
Method Summary
 com.legstar.messaging.LegStarMessage createLegStarMessage(HostProgram hostProgram)
          Produce an empty architected LegStar message.
 void setMessageProperties(org.mule.api.MuleMessage esbMessage)
          Allows derived classes to set additional properties on the esb message.
 byte[] wrapHostData(byte[] hostData, org.mule.api.MuleMessage esbMessage)
          This method wraps a single part payload into a LegStarMessage.
 byte[] wrapHostData(Map<String,byte[]> hostDataMap, org.mule.api.MuleMessage esbMessage)
          If the mainframe is expecting a formatted LegStar message, this method wraps a multi part payloads into a LegStarMessage.
 
Methods inherited from class org.mule.transport.legstar.cixs.transformer.AbstractHostToExecRequestMuleTransformer
getHostCompatibleCorrelationId, getHostProgram, getReplyTo, hostTransform, isHostTraceOn, setHostProgram, setHostTraceOn, setReplyTo
 
Methods inherited from class org.mule.transport.legstar.transformer.AbstractHostMuleTransformer
getHostCharset, getHostCharset, getI18NMessages, setHostCharset, transformMessage
 
Methods inherited from class org.mule.transformer.AbstractMessageTransformer
checkReturnClass, doTransform, isSourceDataTypeSupported, transform, transform, transform
 
Methods inherited from class org.mule.transformer.AbstractTransformer
dispose, generateTransformerName, getAnnotation, getAnnotations, getEncoding, getEncoding, getEndpoint, getMimeType, getName, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, initialise, isAcceptNull, isAllowNullReturn, isConsumed, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, isSourceTypeSupported, process, registerSourceType, registerSourceType, setAllowNullReturn, setAnnotations, setEncoding, setEndpoint, setIgnoreBadInput, setMimeType, setMuleContext, setName, setReturnClass, setReturnDataType, toString, transform, unregisterSourceType, unregisterSourceType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.mule.api.transformer.Transformer
getEncoding, getEndpoint, getMimeType, getReturnClass, getReturnDataType, getSourceDataTypes, getSourceTypes, isAcceptNull, isIgnoreBadInput, isSourceDataTypeSupported, isSourceTypeSupported, setReturnClass, setReturnDataType, transform
 
Methods inherited from interface org.mule.api.processor.MessageProcessor
process
 
Methods inherited from interface org.mule.api.lifecycle.Initialisable
initialise
 
Methods inherited from interface org.mule.api.lifecycle.Disposable
dispose
 
Methods inherited from interface org.mule.api.NameableObject
setName
 
Methods inherited from interface org.mule.api.NamedObject
getName
 
Methods inherited from interface org.mule.api.context.MuleContextAware
setMuleContext
 
Methods inherited from interface org.mule.endpoint.EndpointAware
setEndpoint
 

Constructor Detail

HostToLegstarExecRequestMuleTransformer

public HostToLegstarExecRequestMuleTransformer()
Method Detail

wrapHostData

public byte[] wrapHostData(byte[] hostData,
                           org.mule.api.MuleMessage esbMessage)
                    throws org.mule.api.transformer.TransformerException
This method wraps a single part payload into a LegStarMessage.

Specified by:
wrapHostData in class AbstractHostToExecRequestMuleTransformer
Parameters:
hostData - the single part mainframe payload
esbMessage - the original mule message
Returns:
the payload eventually wrapped in a LegStarMessage
Throws:
org.mule.api.transformer.TransformerException - if wrapping fails

wrapHostData

public byte[] wrapHostData(Map<String,byte[]> hostDataMap,
                           org.mule.api.MuleMessage esbMessage)
                    throws org.mule.api.transformer.TransformerException
If the mainframe is expecting a formatted LegStar message, this method wraps a multi part payloads into a LegStarMessage.

Specified by:
wrapHostData in class AbstractHostToExecRequestMuleTransformer
Parameters:
hostDataMap - the multi part mainframe payload (one entry per container)
esbMessage - the original mule message
Returns:
the payload eventually wrapped in a LegStarMessage
Throws:
org.mule.api.transformer.TransformerException - if wrapping fails

setMessageProperties

public void setMessageProperties(org.mule.api.MuleMessage esbMessage)
Allows derived classes to set additional properties on the esb message.

Specified by:
setMessageProperties in class AbstractHostToExecRequestMuleTransformer
Parameters:
esbMessage - the original mule message

createLegStarMessage

public final com.legstar.messaging.LegStarMessage createLegStarMessage(HostProgram hostProgram)
                                                                throws org.mule.api.transformer.TransformerException
Produce an empty architected LegStar message. If a program properties file name is passed, it is used to build the message header.

Parameters:
hostProgram - the target program attributes
Returns:
a LegStar message with no data parts
Throws:
org.mule.api.transformer.TransformerException - if message cannot be built


Copyright © 2013 LegSem. All Rights Reserved.