/** * Checks if any method permissions are set. If they are not set * it is possible that this is a J2ee 1.2 APP and we would need to * grant permissions for execution anyways */ private boolean areMethodPermissionsSet() { boolean empty = deploymentDescriptor.getPermissionedMethodsByPermission().isEmpty(); return !empty; }
private void addMethodPermissionForMethod(MethodPermission mp, MethodDescriptor md) { if (getPermissionedMethodsByPermission().containsKey(mp)) { Set alreadyPermissionedMethodsForThisRole = (Set) getPermissionedMethodsByPermission().get(mp); alreadyPermissionedMethodsForThisRole.add(md); this.getPermissionedMethodsByPermission().put(mp, alreadyPermissionedMethodsForThisRole); } else { Set permissionedMethodsForThisRole = new HashSet(); permissionedMethodsForThisRole.add(md); this.getPermissionedMethodsByPermission().put(mp, permissionedMethodsForThisRole); } }
private void dumpMethodPermissions() { _logger.log(Level.FINE, "For Bean " + getName()); Map allPermissions = getPermissionedMethodsByPermission(); Set permissions = allPermissions.keySet(); for (Iterator permissionsIterator = permissions.iterator(); permissionsIterator.hasNext();) { MethodPermission mp = (MethodPermission) permissionsIterator.next(); _logger.log(Level.FINE, " Method Permission : " + mp); Set allMethods = (Set) getPermissionedMethodsByPermission().get(mp); for (Iterator methodIterator = allMethods.iterator(); methodIterator.hasNext();) { MethodDescriptor md = (MethodDescriptor) methodIterator.next(); _logger.log(Level.FINE, " -> " + md); } } }
private Set getMethodPermissions(MethodDescriptor methodDescriptor) { Set methodPermissionsForMethod = new HashSet(); for (Iterator e = this.getPermissionedMethodsByPermission().keySet().iterator(); e.hasNext();) { MethodPermission nextPermission = (MethodPermission) e.next(); Set permissionedMethods = (Set) this.getPermissionedMethodsByPermission().get(nextPermission); for (Iterator itr = permissionedMethods.iterator(); itr.hasNext();) { MethodDescriptor md = (MethodDescriptor) itr.next(); if (md.equals(methodDescriptor)) { methodPermissionsForMethod.add(nextPermission); } } } return methodPermissionsForMethod; }
/** * Returns true if I have Roles to which method permissions have been assigned. */ public boolean hasPermissionedRoles() { for (Iterator itr = this.getEjbs().iterator(); itr.hasNext();) { EjbDescriptor nextEjbDescriptor = (EjbDescriptor) itr.next(); if (!nextEjbDescriptor.getPermissionedMethodsByPermission().isEmpty()) { return true; } } return false; }
Set getAllMethodDescriptors() { Set allMethodDescriptors = new HashSet(); for (Enumeration e = getMethodContainerTransactions().keys(); e.hasMoreElements();) { allMethodDescriptors.add(e.nextElement()); } for (Iterator e = this.getPermissionedMethodsByPermission().keySet().iterator(); e.hasNext();) { MethodPermission nextPermission = (MethodPermission) e.next(); Set permissionedMethods = (Set) this.getPermissionedMethodsByPermission().get(nextPermission); for (Iterator itr = permissionedMethods.iterator(); itr.hasNext();) { allMethodDescriptors.add(itr.next()); } } return allMethodDescriptors; }
void removeRole(Role role) { //this.getPermissionedRoles().remove(role); this.getPermissionedMethodsByPermission().remove(new MethodPermission(role)); Set roleReferences = new HashSet(this.getRoleReferences()); for (Iterator itr = roleReferences.iterator(); itr.hasNext();) { RoleReference roleReference = (RoleReference) itr.next(); if (roleReference.getRole().equals(role)) { roleReference.setValue(""); } } }
/** * @return a Set of method descriptors for all the methods associated * with an unchecked method permission */ public Set getUncheckedMethodDescriptors() { if (needToConvertMethodPermissions()) { convertMethodPermissions(); } return (Set) getPermissionedMethodsByPermission().get(MethodPermission.getUncheckedMethodPermission()); }
/** * @eturn the set of roles to which have been assigned method permissions. */ public Set getPermissionedRoles() { if (needToConvertMethodPermissions()) { convertMethodPermissions(); } Set allPermissionedRoles = new HashSet(); for (Iterator i = this.getPermissionedMethodsByPermission().keySet().iterator(); i.hasNext();) { MethodPermission pm = (MethodPermission) i.next(); if (pm.isRoleBased()) { allPermissionedRoles.add(pm.getRole()); } } return allPermissionedRoles; }
/** * @return a Set of method descriptors for all the methoda assoicated * with an excluded method permission */ public Set getExcludedMethodDescriptors() { if (needToConvertMethodPermissions()) { convertMethodPermissions(); } return (Set) getPermissionedMethodsByPermission().get(MethodPermission.getExcludedMethodPermission()); }
/** * Remove a method permission from a method or a set of methods * * @param mp is the method permission to remove * @param md describe the method or set of methods this permission apply to */ public void removePermissionedMethod(MethodPermission mp, MethodDescriptor md) { if (this.getEjbBundleDescriptor() == null) { throw new IllegalArgumentException(localStrings.getLocalString( "enterprise.deployment.exceptioncanotaddrolesdescriptor", "Cannot add roles when the descriptor is not part of a bundle")); } if (mp.isRoleBased()) { if (!getEjbBundleDescriptor().getRoles().contains(mp.getRole())) { throw new IllegalArgumentException(localStrings.getLocalString( "enterprise.deployment.exceptioncannotaddrolesbndledoesnothave", "Cannot add roles when the bundle does not have them")); } } if (this.getPermissionedMethodsByPermission().containsKey(mp)) { Set alreadyPermissionedMethodsForThisRole = (Set) this.getPermissionedMethodsByPermission().get(mp); alreadyPermissionedMethodsForThisRole.remove(md); this.getPermissionedMethodsByPermission().put(mp, alreadyPermissionedMethodsForThisRole); } }
if (roleReferences != null) printDescriptorSet(roleReferences, toStringBuffer); for (Iterator e = this.getPermissionedMethodsByPermission().keySet().iterator(); e.hasNext();) { MethodPermission nextPermission = (MethodPermission) e.next(); toStringBuffer.append("\n method-permission->method: "); nextPermission.print(toStringBuffer); toStringBuffer.append(" -> ").append(this.getPermissionedMethodsByPermission().get(nextPermission));
aVisitor.accept(aRef); for (Iterator e = getPermissionedMethodsByPermission().keySet().iterator(); e.hasNext();) { MethodPermission nextPermission = (MethodPermission) e.next(); Set methods = (Set) getPermissionedMethodsByPermission().get(nextPermission); aVisitor.accept(nextPermission, methods.iterator());
continue; Vector excludedMethods = new Vector(); addMethodPermissions(ejbDesc, ejbDesc.getPermissionedMethodsByPermission(), excludedMethods, mpNode, assemblyNode); addMethodPermissions(ejbDesc, ejbDesc.getStyledPermissionedMethodsByPermission(), excludedMethods, mpNode, assemblyNode); if (excludedMethods.size()>0) {
this.transactionType = other.transactionType; this.methodContainerTransactions = new Hashtable(other.getMethodContainerTransactions()); this.permissionedMethodsByPermission = new Hashtable(other.getPermissionedMethodsByPermission()); if (other.env == null) {