diff options
author | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-08-07 12:45:31 +0000 |
---|---|---|
committer | slaws <slaws@13f79535-47bb-0310-9956-ffa450edef68> | 2009-08-07 12:45:31 +0000 |
commit | c21f970731bd7d01346f2ef9e5da3a2d35b85b30 (patch) | |
tree | 24c5f3c659c9f0cbe8ddc74f321558d878b4ed38 /branches/sca-java-1.5.1/modules/implementation-spring-old/src/main/java/org/apache/tuscany/sca/implementation/spring/xml/SpringBeanIntrospector.java | |
parent | 9d0b53fa259f2970c493c6c0bb3981d805b4c29f (diff) |
Not included in release
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@801979 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | branches/sca-java-1.5.1/modules/implementation-spring-old/src/main/java/org/apache/tuscany/sca/implementation/spring/xml/SpringBeanIntrospector.java | 133 |
1 files changed, 0 insertions, 133 deletions
diff --git a/branches/sca-java-1.5.1/modules/implementation-spring-old/src/main/java/org/apache/tuscany/sca/implementation/spring/xml/SpringBeanIntrospector.java b/branches/sca-java-1.5.1/modules/implementation-spring-old/src/main/java/org/apache/tuscany/sca/implementation/spring/xml/SpringBeanIntrospector.java deleted file mode 100644 index 5b6cfcab5b..0000000000 --- a/branches/sca-java-1.5.1/modules/implementation-spring-old/src/main/java/org/apache/tuscany/sca/implementation/spring/xml/SpringBeanIntrospector.java +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ -package org.apache.tuscany.sca.implementation.spring.xml; - -import java.util.List; -import org.apache.tuscany.sca.assembly.AssemblyFactory; -import org.apache.tuscany.sca.assembly.ComponentType; -import org.apache.tuscany.sca.contribution.service.ContributionResolveException; -import org.apache.tuscany.sca.implementation.java.DefaultJavaImplementationFactory; -import org.apache.tuscany.sca.implementation.java.IntrospectionException; -import org.apache.tuscany.sca.implementation.java.JavaImplementation; -import org.apache.tuscany.sca.implementation.java.JavaImplementationFactory; -import org.apache.tuscany.sca.implementation.java.introspect.JavaClassVisitor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.BaseJavaClassVisitor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ComponentNameProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ConstructorProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ContextProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.DestroyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.EagerInitProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.InitProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.PolicyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.PropertyProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ReferenceProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ResourceProcessor; -import org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor; -import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory; -import org.apache.tuscany.sca.policy.PolicyFactory; - -/** - * Provides introspection functions for Spring beans - * This version leans heavily on the implementation-java classes - * - * @version $Rev: 512919 $ $Date: 2007-02-28 19:32:56 +0000 (Wed, 28 Feb 2007) $ - */ -public class SpringBeanIntrospector { - - private JavaImplementationFactory javaImplementationFactory; - - /** - * The constructor sets up the various visitor elements that will be used to introspect - * the Spring bean and extract SCA information. - * - * @param assemblyFactory The Assembly Factory to use - * @param javaFactory The Java Interface Factory to use - * @param policyFactory The Policy Factory to use. - */ - public SpringBeanIntrospector(AssemblyFactory assemblyFactory, - JavaInterfaceFactory javaFactory, - PolicyFactory policyFactory, - List<SpringConstructorArgElement> conArgs) { - - javaImplementationFactory = new DefaultJavaImplementationFactory(); - - // Create the list of class visitors - BaseJavaClassVisitor[] extensions = - new BaseJavaClassVisitor[] { - new ConstructorProcessor(assemblyFactory), - new ComponentNameProcessor(assemblyFactory), - new ContextProcessor(assemblyFactory), - new DestroyProcessor(assemblyFactory), - new EagerInitProcessor(assemblyFactory), - new InitProcessor(assemblyFactory), - new PropertyProcessor(assemblyFactory), - new ReferenceProcessor(assemblyFactory, javaFactory), - new ResourceProcessor(assemblyFactory), - new ServiceProcessor(assemblyFactory, javaFactory), - new SpringBeanPojoProcessor(assemblyFactory, javaFactory, conArgs), - new PolicyProcessor(assemblyFactory, policyFactory)}; - for (JavaClassVisitor extension : extensions) { - javaImplementationFactory.addClassVisitor(extension); - } - - } // end constructor - - /** - * Introspect a Spring Bean and extract the features important to SCA - * @param beanClass the Spring Bean class to introspect - * @param componentType the componentType that is filled in through the introspection - * process (assumed empty on invocation, filled on return - * @return a Map of property names to JavaElementImpl - * @throws ContributionResolveException - if there was a problem resolving the - * Spring Bean or its componentType - * - */ - public JavaImplementation introspectBean(Class<?> beanClass, ComponentType componentType) throws ContributionResolveException - { - if (componentType == null) - throw new ContributionResolveException("Introspect Spring bean: supplied componentType is null"); - - // Create a Java implementation ready for the introspection - JavaImplementation javaImplementation = javaImplementationFactory.createJavaImplementation(); - - try { - // Introspect the bean...the results of the introspection are placed into the Java implementation - javaImplementationFactory.createJavaImplementation(javaImplementation, beanClass); - - // Extract the services, references & properties found through introspection - // put the services, references and properties into the component type - componentType.getServices().addAll(javaImplementation.getServices()); - componentType.getReferences().addAll(javaImplementation.getReferences()); - componentType.getProperties().addAll(javaImplementation.getProperties()); - - } catch (IntrospectionException e) { - throw new ContributionResolveException(e); - } // end try - - /* List<Service> services = javaImplementation.getServices(); - for (Service service : services) { - String name = service.getName(); - System.out.println("Spring Bean: found service with name: " + name); - } // end for */ - - return javaImplementation; - - } // end method introspectBean - -} // end class SpringBeanIntrospector |