org.apache.tuscany.sca.core.databinding.wire
Class DataBindingRuntimeWireProcessor

java.lang.Object
  extended by org.apache.tuscany.sca.core.databinding.wire.DataBindingRuntimeWireProcessor
All Implemented Interfaces:
RuntimeWireProcessor

public class DataBindingRuntimeWireProcessor
extends java.lang.Object
implements RuntimeWireProcessor

This processor is responsible to add an interceptor to invocation chain if the source and target operations have different databinding requirements


Constructor Summary
DataBindingRuntimeWireProcessor(Mediator mediator, DataBindingExtensionPoint dataBindings, FaultExceptionMapper faultExceptionMapper)
           
 
Method Summary
protected  boolean isOnMessage(Operation op)
          FIXME: TUSCANY-2586, temporary work around till the JIRA is fixed to prevent the PassByValueInterceptor being used for services when the binding protocol doesn't need the copies done.
protected  boolean isRemotable(InvocationChain chain, Operation sourceOperation, Operation targetOperation)
          Pass-by-value copies are required if the interfaces are remotable unless the implementation uses the @AllowsPassByReference annotation.
 boolean isTransformationRequired(DataType source, DataType target)
           
 boolean isTransformationRequired(Operation source, Operation target)
           
 void process(RuntimeWire wire)
          Process the runtime wire to add interceptors
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DataBindingRuntimeWireProcessor

public DataBindingRuntimeWireProcessor(Mediator mediator,
                                       DataBindingExtensionPoint dataBindings,
                                       FaultExceptionMapper faultExceptionMapper)
Method Detail

isTransformationRequired

public boolean isTransformationRequired(DataType source,
                                        DataType target)

isTransformationRequired

public boolean isTransformationRequired(Operation source,
                                        Operation target)

process

public void process(RuntimeWire wire)
Description copied from interface: RuntimeWireProcessor
Process the runtime wire to add interceptors

Specified by:
process in interface RuntimeWireProcessor

isOnMessage

protected boolean isOnMessage(Operation op)
FIXME: TUSCANY-2586, temporary work around till the JIRA is fixed to prevent the PassByValueInterceptor being used for services when the binding protocol doesn't need the copies done.


isRemotable

protected boolean isRemotable(InvocationChain chain,
                              Operation sourceOperation,
                              Operation targetOperation)
Pass-by-value copies are required if the interfaces are remotable unless the implementation uses the @AllowsPassByReference annotation.