public class MethodResolver extends Object
Modifier and Type | Field and Description |
---|---|
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 and Description |
---|
MethodResolver() |
Modifier and Type | Method and Description |
---|---|
static void |
convertParams(Object[] argsIn,
Object[][] argsOut,
Class[] paramTypes,
ExpressionContext exprContext)
Convert a set of parameters based on a set of paramTypes.
|
static Constructor |
getConstructor(Class classObj,
Object[] argsIn,
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 Method |
getElementMethod(Class classObj,
String name)
Given the name of a method, figure out the resolution of
the Java Method
|
static Method |
getMethod(Class classObj,
String name,
Object[] argsIn,
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(Class[] javaParamTypes,
int javaParamsStart,
Object[] xsltArgs,
int score)
Score the conversion of a set of XSLT arguments to a
given set of Java parameters.
|
public static final int STATIC_ONLY
public static final int INSTANCE_ONLY
public static final int STATIC_AND_INSTANCE
public static final int DYNAMIC
public static Constructor getConstructor(Class classObj, Object[] argsIn, Object[][] argsOut, ExpressionContext exprContext) throws NoSuchMethodException, SecurityException, 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.TransformerException
- may be thrown for Xalan conversion
exceptions.NoSuchMethodException
SecurityException
public static Method getMethod(Class classObj, String name, Object[] argsIn, Object[][] argsOut, ExpressionContext exprContext, int searchMethod) throws NoSuchMethodException, SecurityException, 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.TransformerException
- may be thrown for Xalan conversion
exceptions.NoSuchMethodException
SecurityException
public static Method getElementMethod(Class classObj, String name) throws NoSuchMethodException, SecurityException, TransformerException
classObj
- The Class of the object that should have the method.name
- The name of the method to be invoked.TransformerException
- may be thrown for Xalan conversion
exceptions.NoSuchMethodException
SecurityException
public static void convertParams(Object[] argsIn, Object[][] argsOut, Class[] paramTypes, ExpressionContext exprContext) throws 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.TransformerException
- may be thrown for Xalan conversion
exceptions.public static int scoreMatch(Class[] javaParamTypes, int javaParamsStart, 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.Copyright © 2017 JBoss by Red Hat. All rights reserved.