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;
|