org.apache.tuscany.sca.implementation.spring
Class SpringImplementationProvider

java.lang.Object
  extended by org.apache.tuscany.sca.implementation.spring.SpringImplementationProvider
All Implemented Interfaces:
ImplementationProvider

public class SpringImplementationProvider
extends java.lang.Object
implements ImplementationProvider

A provider class for runtime Spring implementation instances


Constructor Summary
SpringImplementationProvider(RuntimeComponent component, SpringImplementation implementation, ProxyFactory proxyService, JavaPropertyValueObjectFactory propertyValueObjectFactory, java.util.List<PolicyHandlerTuple> policyHandlerClassNames)
          Constructor for the provider - takes a component definition and a Spring implementation description
 
Method Summary
 Invoker createInvoker(RuntimeComponentService service, Operation operation)
          Create an invoker for the component implementation in the invocation chain.
 void start()
          Start this Spring implementation instance
 void stop()
          Stop this implementation instance
 boolean supportsOneWayInvocation()
          For bindings that invoke one-way callback operations asynchronously, there is no need to perform a thread switch before calling the invoker.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SpringImplementationProvider

public SpringImplementationProvider(RuntimeComponent component,
                                    SpringImplementation implementation,
                                    ProxyFactory proxyService,
                                    JavaPropertyValueObjectFactory propertyValueObjectFactory,
                                    java.util.List<PolicyHandlerTuple> policyHandlerClassNames)
Constructor for the provider - takes a component definition and a Spring implementation description

Parameters:
component - - the component in the assembly
implementation - - the implementation
Method Detail

createInvoker

public Invoker createInvoker(RuntimeComponentService service,
                             Operation operation)
Description copied from interface: ImplementationProvider
Create an invoker for the component implementation in the invocation chain. The invoker will be responsible for calling the implementation logic for the given component.

Specified by:
createInvoker in interface ImplementationProvider
Parameters:
service - The component service
operation - The operation that the interceptor will handle
Returns:
An invoker that handles the invocation logic, null should be returned if no invoker is required

supportsOneWayInvocation

public boolean supportsOneWayInvocation()
Description copied from interface: ImplementationProvider
For bindings that invoke one-way callback operations asynchronously, there is no need to perform a thread switch before calling the invoker. This method indicates whether the binding has this capability.

Specified by:
supportsOneWayInvocation in interface ImplementationProvider
Returns:
true if the callback invoker is able to invoke one-way operations asynchronously, false if all invocations are synchronous

start

public void start()
Start this Spring implementation instance

Specified by:
start in interface ImplementationProvider

stop

public void stop()
Stop this implementation instance

Specified by:
stop in interface ImplementationProvider