public void assertFullSessionBean(String ejbName, SessionBeanMetaData session, Mode mode) { assertId(ejbName, session); // TODO: enrich the jboss xml if (mode == Mode.SPEC) { assertMappedName(ejbName, session.getMappedName()); assertClass(ejbName, "Home", session.getHome()); assertClass(ejbName, "Remote", session.getRemote()); assertClass(ejbName, "LocalHome", session.getLocalHome()); assertClass(ejbName, "Local", session.getLocal()); assertClasses(ejbName, "BusinessLocal", 2, session.getBusinessLocals()); assertClasses(ejbName, "BusinessRemote", 2, session.getBusinessRemotes()); assertClass(ejbName, "ServiceEndpoint", session.getServiceEndpoint()); assertClass(ejbName, "EjbClass", session.getEjbClass()); assertEquals(SessionType.Stateless, session.getSessionType()); assertNamedMethod(ejbName + "TimeoutMethod", 2, session.getTimeoutMethod()); assertInitMethods(ejbName, 2, session.getInitMethods()); assertRemoveMethods(ejbName, 3, session.getRemoveMethods()); assertEquals(TransactionManagementType.CONTAINER, session.getTransactionType()); assertAroundInvokes(ejbName, 2, session.getAroundInvokes()); assertLifecycleCallbacks(ejbName, "PostActivate", 2, session.getPostActivates()); assertLifecycleCallbacks(ejbName, "PrePassivate", 2, session.getPrePassivates()); assertEnvironment(ejbName, session.getJndiEnvironmentRefsGroup(), true, mode); assertContainerTransactions(ejbName, 6, 6, session.getContainerTransactions()); assertMethodPermissions( ejbName, ejbName + "MethodPermission", 3, 3, session.getMethodPermissions()); assertExcludeList(ejbName, 5, 5, session.getExcludeList()); assertSecurityRoleRefs(ejbName, 2, session.getSecurityRoleRefs()); assertSecurityIdentity( ejbName, "SecurityIdentity", session.getSecurityIdentity(), true, mode); } else { assertNull(session.getMappedName()); assertNull(session.getHome()); assertNull(session.getRemote()); assertNull(session.getLocalHome()); assertNull(session.getLocal()); assertNull(session.getBusinessLocals()); assertNull(session.getBusinessRemotes()); assertNull(session.getServiceEndpoint()); assertNull(session.getEjbClass()); assertNull(session.getSessionType()); assertNull(session.getTimeoutMethod()); assertNull(session.getInitMethods()); assertNull(session.getRemoveMethods()); assertNull(session.getTransactionType()); assertNull(session.getAroundInvokes()); assertNull(session.getPostActivates()); assertNull(session.getPrePassivates()); assertEnvironment(ejbName, session.getJndiEnvironmentRefsGroup(), false, mode); assertNull(session.getContainerTransactions()); assertNull(session.getMethodPermissions()); assertNull(session.getExcludeList()); assertNull(session.getSecurityRoleRefs()); assertSecurityIdentity( ejbName, "SecurityIdentity", session.getSecurityIdentity(), false, mode); } }