diff options
Diffstat (limited to 'sandbox/implementation-spring2/src/main/java/org/apache/tuscany/implementation/spring/SpringImplementationProviderFactory.java')
-rw-r--r-- | sandbox/implementation-spring2/src/main/java/org/apache/tuscany/implementation/spring/SpringImplementationProviderFactory.java | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/sandbox/implementation-spring2/src/main/java/org/apache/tuscany/implementation/spring/SpringImplementationProviderFactory.java b/sandbox/implementation-spring2/src/main/java/org/apache/tuscany/implementation/spring/SpringImplementationProviderFactory.java new file mode 100644 index 0000000000..d005dc5c75 --- /dev/null +++ b/sandbox/implementation-spring2/src/main/java/org/apache/tuscany/implementation/spring/SpringImplementationProviderFactory.java @@ -0,0 +1,40 @@ +package org.apache.tuscany.implementation.spring; + +import org.apache.tuscany.sca.provider.ImplementationProvider; +import org.apache.tuscany.sca.provider.ImplementationProviderFactory; +import org.apache.tuscany.sca.runtime.RuntimeComponent; + +/** + * ImplementationProviderFactory for Spring implementation type + * @author MikeEdwards + * + */ +public class SpringImplementationProviderFactory implements ImplementationProviderFactory<SpringImplementation> { + + /** + * Simple constructor + * + */ + public SpringImplementationProviderFactory() { + super(); + } + + /** + * Returns a SpringImplementationProvider for a given component and Spring implementation + * @param component the component for which implementation instances are required + * @param implementation the Spring implementation with details of the component + * implementation + * @return the SpringImplementationProvider for the specified component + */ + public ImplementationProvider createImplementationProvider(RuntimeComponent component, + SpringImplementation implementation) { + return new SpringImplementationProvider( component, implementation ); + } + + /** + * Returns the class of the Spring implementation + */ + public Class<SpringImplementation> getModelType() { + return SpringImplementation.class; + } +} // end class SpringImplementationProviderFactory |