Methods Summary |
---|
public static org.apache.jasper.runtime.ProtectedFunctionMapper | getInstance()Generated Servlet and Tag Handler implementations call this
method to retrieve an instance of the ProtectedFunctionMapper.
This is necessary since generated code does not have access to
create instances of classes in this package.
ProtectedFunctionMapper funcMapper;
if (SecurityUtil.isPackageProtectionEnabled()) {
funcMapper = (ProtectedFunctionMapper)AccessController.doPrivileged(
new PrivilegedAction() {
public Object run() {
return new ProtectedFunctionMapper();
}
} );
} else {
funcMapper = new ProtectedFunctionMapper();
}
funcMapper.fnmap = new java.util.HashMap();
return funcMapper;
|
public static org.apache.jasper.runtime.ProtectedFunctionMapper | getMapForFunction(java.lang.String fnQName, java.lang.Class c, java.lang.String methodName, java.lang.Class[] args)Creates an instance for this class, and stores the Method for
the given EL function prefix and name. This method is used for
the case when there is only one function in the EL expression.
java.lang.reflect.Method method;
ProtectedFunctionMapper funcMapper;
if (SecurityUtil.isPackageProtectionEnabled()){
funcMapper = (ProtectedFunctionMapper)AccessController.doPrivileged(
new PrivilegedAction(){
public Object run() {
return new ProtectedFunctionMapper();
}
});
try{
method = (java.lang.reflect.Method)AccessController.doPrivileged
(new PrivilegedExceptionAction(){
public Object run() throws Exception{
return c.getDeclaredMethod(methodName, args);
}
});
} catch (PrivilegedActionException ex){
throw new RuntimeException(
"Invalid function mapping - no such method: "
+ ex.getException().getMessage());
}
} else {
funcMapper = new ProtectedFunctionMapper();
try {
method = c.getDeclaredMethod(methodName, args);
} catch( NoSuchMethodException e ) {
throw new RuntimeException(
"Invalid function mapping - no such method: "
+ e.getMessage());
}
}
funcMapper.theMethod = method;
return funcMapper;
|
public void | mapFunction(java.lang.String fnQName, java.lang.Class c, java.lang.String methodName, java.lang.Class[] args)Stores a mapping from the given EL function prefix and name to
the given Java method.
java.lang.reflect.Method method;
if (SecurityUtil.isPackageProtectionEnabled()){
try{
method = (java.lang.reflect.Method)AccessController.doPrivileged(new PrivilegedExceptionAction(){
public Object run() throws Exception{
return c.getDeclaredMethod(methodName, args);
}
});
} catch (PrivilegedActionException ex){
throw new RuntimeException(
"Invalid function mapping - no such method: "
+ ex.getException().getMessage());
}
} else {
try {
method = c.getDeclaredMethod(methodName, args);
} catch( NoSuchMethodException e ) {
throw new RuntimeException(
"Invalid function mapping - no such method: "
+ e.getMessage());
}
}
this.fnmap.put(fnQName, method );
|
public java.lang.reflect.Method | resolveFunction(java.lang.String prefix, java.lang.String localName)Resolves the specified local name and prefix into a Java.lang.Method.
Returns null if the prefix and local name are not found.
if (this.fnmap != null) {
return (Method) this.fnmap.get(prefix + ":" + localName);
}
return theMethod;
|