org.apache.felix.scr.impl.helper
Class ModifiedMethod

java.lang.Object
  extended by org.apache.felix.scr.impl.helper.ActivateMethod
      extended by org.apache.felix.scr.impl.helper.ModifiedMethod

public class ModifiedMethod
extends ActivateMethod


Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.felix.scr.impl.helper.ActivateMethod
ActivateMethod.ActivatorParameter
 
Field Summary
protected static Class BUNDLE_CONTEXT_CLASS
           
protected static Class COMPONENT_CONTEXT_CLASS
           
protected static Class INTEGER_CLASS
           
protected static Class MAP_CLASS
           
protected static Class SERVICE_REFERENCE_CLASS
           
 
Constructor Summary
ModifiedMethod(AbstractComponentManager componentManager, String methodName, Class componentClass)
           
 
Method Summary
protected static boolean accept(Method method, boolean acceptPrivate, boolean acceptPackage)
          Returns true if the method is acceptable to be returned from the getMethod(Class, String, Class[], boolean, boolean) and also makes the method accessible.
protected  boolean acceptEmpty()
           
protected  Class getComponentClass()
           
protected  AbstractComponentManager getComponentManager()
           
 Method getMethod(Class clazz, String name, Class[] parameterTypes, boolean acceptPrivate, boolean acceptPackage)
          Finds the named public or protected method in the given class or any super class.
protected  String getMethodName()
           
protected  String getMethodNamePrefix()
           
static String getPackageName(Class clazz)
          Returns the name of the package to which the class belongs or an empty string if the class is in the default package.
protected  boolean isDS11()
           
 boolean methodExists()
           
 
Methods inherited from class org.apache.felix.scr.impl.helper.ActivateMethod
doFindMethod, getAcceptedParameterTypes, getParameters, invoke
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

COMPONENT_CONTEXT_CLASS

protected static final Class COMPONENT_CONTEXT_CLASS

BUNDLE_CONTEXT_CLASS

protected static final Class BUNDLE_CONTEXT_CLASS

SERVICE_REFERENCE_CLASS

protected static final Class SERVICE_REFERENCE_CLASS

MAP_CLASS

protected static final Class MAP_CLASS

INTEGER_CLASS

protected static final Class INTEGER_CLASS
Constructor Detail

ModifiedMethod

public ModifiedMethod(AbstractComponentManager componentManager,
                      String methodName,
                      Class componentClass)
Method Detail

acceptEmpty

protected boolean acceptEmpty()
Overrides:
acceptEmpty in class ActivateMethod

getMethodNamePrefix

protected String getMethodNamePrefix()
Overrides:
getMethodNamePrefix in class ActivateMethod

getComponentManager

protected final AbstractComponentManager getComponentManager()

isDS11

protected final boolean isDS11()

getMethodName

protected final String getMethodName()

getComponentClass

protected final Class getComponentClass()

getMethod

public Method getMethod(Class clazz,
                        String name,
                        Class[] parameterTypes,
                        boolean acceptPrivate,
                        boolean acceptPackage)
                 throws SuitableMethodNotAccessibleException,
                        InvocationTargetException
Finds the named public or protected method in the given class or any super class. If such a method is found, its accessibility is enfored by calling the Method.setAccessible method if required and the method is returned. Enforcing accessibility is required to support invocation of protected methods.

Parameters:
clazz - The Class which provides the method.
name - The name of the method.
parameterTypes - The parameters to the method. Passing null is equivalent to using an empty array.
Returns:
The named method with enforced accessibility or null if no such method exists in the class.
Throws:
SuitableMethodNotAccessibleException - If method with the given name taking the parameters is found in the class but the method is not accessible.
InvocationTargetException - If an unexpected Throwable is caught trying to access the desired method.

accept

protected static boolean accept(Method method,
                                boolean acceptPrivate,
                                boolean acceptPackage)
Returns true if the method is acceptable to be returned from the getMethod(Class, String, Class[], boolean, boolean) and also makes the method accessible.

This method returns true iff:

This method is package private for unit testing purposes. It is not meant to be called from client code.

Parameters:
method - The method to check
acceptPrivate - Whether a private method is acceptable
acceptPackage - Whether a package private method is acceptable
Returns:

getPackageName

public static String getPackageName(Class clazz)
Returns the name of the package to which the class belongs or an empty string if the class is in the default package.


methodExists

public boolean methodExists()


Copyright © 2013 The Apache Software Foundation. All Rights Reserved.