//
// SessionBean interface methods
//================================
protected void testAllowedOperations(String methodName) {
OperationsPolicy policy = new OperationsPolicy();
/*[0] Test getEJBHome /////////////////*/
try {
ejbContext.getEJBHome();
policy.allow(OperationsPolicy.Context_getEJBHome);
} catch (IllegalStateException ise) {
}
/*[1] Test getCallerPrincipal /////////*/
try {
ejbContext.getCallerPrincipal();
policy.allow(OperationsPolicy.Context_getCallerPrincipal);
} catch (IllegalStateException ise) {
}
/*[2] Test isCallerInRole /////////////*/
try {
ejbContext.isCallerInRole("TheMan");
policy.allow(OperationsPolicy.Context_isCallerInRole);
} catch (IllegalStateException ise) {
}
/*[3] Test getRollbackOnly ////////////*/
try {
ejbContext.getRollbackOnly();
policy.allow(OperationsPolicy.Context_getRollbackOnly);
} catch (IllegalStateException ise) {
}
/*[4] Test setRollbackOnly ////////////*/
try {
ejbContext.setRollbackOnly();
policy.allow(OperationsPolicy.Context_setRollbackOnly);
} catch (IllegalStateException ise) {
}
/*[5] Test getUserTransaction /////////*/
try {
ejbContext.getUserTransaction();
policy.allow(OperationsPolicy.Context_getUserTransaction);
} catch (IllegalStateException ise) {
}
/*[6] Test getEJBObject ///////////////*/
try {
ejbContext.getEJBObject();
policy.allow(OperationsPolicy.Context_getEJBObject);
} catch (IllegalStateException ise) {
}
/*[7] Test Context_getPrimaryKey ///////////////
*
* Can't really do this
*/
/*[8] Test JNDI_access_to_java_comp_env ///////////////*/
try {
InitialContext jndiContext = new InitialContext();
String actual = (String) jndiContext.lookup("java:comp/env/stateless/references/JNDI_access_to_java_comp_env");
policy.allow(OperationsPolicy.JNDI_access_to_java_comp_env);
} catch (IllegalStateException ise) {
} catch (NamingException ne) {
}
/*[11] Test lookup /////////*/
try {
ejbContext.lookup("stateless/references/JNDI_access_to_java_comp_env");
policy.allow(OperationsPolicy.Context_lookup);
} catch (IllegalArgumentException ise) {
}
/*[12] Test getTimerService/////////*/
try {
ejbContext.getTimerService();
policy.allow(OperationsPolicy.Context_getTimerService);
} catch (IllegalStateException ise) {
}
allowedOperationsTable.put(methodName, policy);
}