|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.xalan.extensions.MethodResolver
public class MethodResolver
Utility class to help resolve method overloading with Xalan XSLT argument types.
Field Summary | |
---|---|
static int |
DYNAMIC
Specifies a Dynamic method search. |
static int |
INSTANCE_ONLY
Specifies a search for instance methods only. |
static int |
STATIC_AND_INSTANCE
Specifies a search for both static and instance methods. |
static int |
STATIC_ONLY
Specifies a search for static methods only. |
Constructor Summary | |
---|---|
MethodResolver()
|
Method Summary | |
---|---|
static void |
convertParams(java.lang.Object[] argsIn,
java.lang.Object[][] argsOut,
java.lang.Class[] paramTypes,
ExpressionContext exprContext)
Convert a set of parameters based on a set of paramTypes. |
static java.lang.reflect.Constructor |
getConstructor(java.lang.Class classObj,
java.lang.Object[] argsIn,
java.lang.Object[][] argsOut,
ExpressionContext exprContext)
Given a class, figure out the resolution of the Java Constructor from the XSLT argument types, and perform the conversion of the arguments. |
static java.lang.reflect.Method |
getElementMethod(java.lang.Class classObj,
java.lang.String name)
Given the name of a method, figure out the resolution of the Java Method |
static java.lang.reflect.Method |
getMethod(java.lang.Class classObj,
java.lang.String name,
java.lang.Object[] argsIn,
java.lang.Object[][] argsOut,
ExpressionContext exprContext,
int searchMethod)
Given the name of a method, figure out the resolution of the Java Method from the XSLT argument types, and perform the conversion of the arguments. |
static int |
scoreMatch(java.lang.Class[] javaParamTypes,
int javaParamsStart,
java.lang.Object[] xsltArgs,
int score)
Score the conversion of a set of XSLT arguments to a given set of Java parameters. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int STATIC_ONLY
public static final int INSTANCE_ONLY
public static final int STATIC_AND_INSTANCE
public static final int DYNAMIC
Constructor Detail |
---|
public MethodResolver()
Method Detail |
---|
public static java.lang.reflect.Constructor getConstructor(java.lang.Class classObj, java.lang.Object[] argsIn, java.lang.Object[][] argsOut, ExpressionContext exprContext) throws java.lang.NoSuchMethodException, java.lang.SecurityException, javax.xml.transform.TransformerException
classObj
- the Class of the object to be constructed.argsIn
- An array of XSLT/XPath arguments.argsOut
- An array of the exact size as argsIn, which will be
populated with converted arguments if a suitable method is found.
javax.xml.transform.TransformerException
- may be thrown for Xalan conversion
exceptions.
java.lang.NoSuchMethodException
java.lang.SecurityException
public static java.lang.reflect.Method getMethod(java.lang.Class classObj, java.lang.String name, java.lang.Object[] argsIn, java.lang.Object[][] argsOut, ExpressionContext exprContext, int searchMethod) throws java.lang.NoSuchMethodException, java.lang.SecurityException, javax.xml.transform.TransformerException
classObj
- The Class of the object that should have the method.name
- The name of the method to be invoked.argsIn
- An array of XSLT/XPath arguments.argsOut
- An array of the exact size as argsIn, which will be
populated with converted arguments if a suitable method is found.
javax.xml.transform.TransformerException
- may be thrown for Xalan conversion
exceptions.
java.lang.NoSuchMethodException
java.lang.SecurityException
public static java.lang.reflect.Method getElementMethod(java.lang.Class classObj, java.lang.String name) throws java.lang.NoSuchMethodException, java.lang.SecurityException, javax.xml.transform.TransformerException
classObj
- The Class of the object that should have the method.name
- The name of the method to be invoked.
javax.xml.transform.TransformerException
- may be thrown for Xalan conversion
exceptions.
java.lang.NoSuchMethodException
java.lang.SecurityException
public static void convertParams(java.lang.Object[] argsIn, java.lang.Object[][] argsOut, java.lang.Class[] paramTypes, ExpressionContext exprContext) throws javax.xml.transform.TransformerException
argsIn
- An array of XSLT/XPath arguments.argsOut
- An array of the exact size as argsIn, which will be
populated with converted arguments.paramTypes
- An array of class objects, of the exact same
size as argsIn and argsOut.
javax.xml.transform.TransformerException
- may be thrown for Xalan conversion
exceptions.public static int scoreMatch(java.lang.Class[] javaParamTypes, int javaParamsStart, java.lang.Object[] xsltArgs, int score)
javaParamTypes
- Must be filled with valid class names, and
of the same length as xsltArgs.xsltArgs
- Must be filled with valid object instances, and
of the same length as javeParamTypes.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |