org.apache.tuscany.sca.implementation.java.introspect.impl
Class ServiceProcessor

java.lang.Object
  extended by org.apache.tuscany.sca.implementation.java.introspect.impl.BaseJavaClassVisitor
      extended by org.apache.tuscany.sca.implementation.java.introspect.impl.ServiceProcessor
All Implemented Interfaces:
JavaClassVisitor

public class ServiceProcessor
extends BaseJavaClassVisitor

Processes an Service annotation and updates the component type with corresponding Services. Also processes related Callback annotations.


Field Summary
 
Fields inherited from class org.apache.tuscany.sca.implementation.java.introspect.impl.BaseJavaClassVisitor
assemblyFactory
 
Constructor Summary
ServiceProcessor(AssemblyFactory assemblyFactory, JavaInterfaceFactory javaFactory)
           
 
Method Summary
 Service createService(java.lang.Class<?> interfaze)
           
<T> void
visitClass(java.lang.Class<T> clazz, JavaImplementation type)
          A callback received when the component implementation class is first loaded
 void visitField(java.lang.reflect.Field field, JavaImplementation type)
          A callback received as the component implementation's public and protected fields are evaluated
 void visitMethod(java.lang.reflect.Method method, JavaImplementation type)
          A callback received as the component implementation's public and protected methods are evaluated
 
Methods inherited from class org.apache.tuscany.sca.implementation.java.introspect.impl.BaseJavaClassVisitor
visitConstructor, visitConstructorParameter, visitEnd, visitSuperClass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServiceProcessor

public ServiceProcessor(AssemblyFactory assemblyFactory,
                        JavaInterfaceFactory javaFactory)
Method Detail

visitClass

public <T> void visitClass(java.lang.Class<T> clazz,
                           JavaImplementation type)
                throws IntrospectionException
Description copied from interface: JavaClassVisitor
A callback received when the component implementation class is first loaded

Specified by:
visitClass in interface JavaClassVisitor
Overrides:
visitClass in class BaseJavaClassVisitor
Parameters:
clazz - the component implementation class
type - the incomplete component type associated with the implementation class
Throws:
IntrospectionException - if an error is encountered while processing metadata

visitMethod

public void visitMethod(java.lang.reflect.Method method,
                        JavaImplementation type)
                 throws IntrospectionException
Description copied from interface: JavaClassVisitor
A callback received as the component implementation's public and protected methods are evaluated

Specified by:
visitMethod in interface JavaClassVisitor
Overrides:
visitMethod in class BaseJavaClassVisitor
Parameters:
method - the current public or protected method being evaluated
type - the incomplete component type associated with the implementation class
Throws:
IntrospectionException - if an error is encountered while processing metadata

visitField

public void visitField(java.lang.reflect.Field field,
                       JavaImplementation type)
                throws IntrospectionException
Description copied from interface: JavaClassVisitor
A callback received as the component implementation's public and protected fields are evaluated

Specified by:
visitField in interface JavaClassVisitor
Overrides:
visitField in class BaseJavaClassVisitor
Parameters:
field - the current public or protected field being evaluated
type - the incomplete component type associated with the implementation class
Throws:
IntrospectionException - if an error is encountered while processing metadata

createService

public Service createService(java.lang.Class<?> interfaze)
                      throws InvalidInterfaceException
Throws:
InvalidInterfaceException