home *** CD-ROM | disk | FTP | other *** search
/ Sky at Night 2007 June / SAN CD 6-2007 CD-ROM 25.iso / pc / Software / AstroGrav_Win / Java / jre1.6.0 / lib / rt.jar / javax / management / MBeanServerPermissionCollection.class (.txt) < prev    next >
Encoding:
Java Class File  |  2006-11-29  |  1.5 KB  |  46 lines

  1. package javax.management;
  2.  
  3. import java.security.Permission;
  4. import java.security.PermissionCollection;
  5. import java.util.Collections;
  6. import java.util.Enumeration;
  7. import java.util.Set;
  8.  
  9. class MBeanServerPermissionCollection extends PermissionCollection {
  10.    private MBeanServerPermission collectionPermission;
  11.    private static final long serialVersionUID = -5661980843569388590L;
  12.  
  13.    public synchronized void add(Permission var1) {
  14.       if (!(var1 instanceof MBeanServerPermission)) {
  15.          String var4 = "Permission not an MBeanServerPermission: " + var1;
  16.          throw new IllegalArgumentException(var4);
  17.       } else if (this.isReadOnly()) {
  18.          throw new SecurityException("Read-only permission collection");
  19.       } else {
  20.          MBeanServerPermission var2 = (MBeanServerPermission)var1;
  21.          if (this.collectionPermission == null) {
  22.             this.collectionPermission = var2;
  23.          } else if (!this.collectionPermission.implies(var1)) {
  24.             int var3 = this.collectionPermission.mask | var2.mask;
  25.             this.collectionPermission = new MBeanServerPermission(var3);
  26.          }
  27.  
  28.       }
  29.    }
  30.  
  31.    public synchronized boolean implies(Permission var1) {
  32.       return this.collectionPermission != null && this.collectionPermission.implies(var1);
  33.    }
  34.  
  35.    public synchronized Enumeration<Permission> elements() {
  36.       Set var1;
  37.       if (this.collectionPermission == null) {
  38.          var1 = Collections.emptySet();
  39.       } else {
  40.          var1 = Collections.singleton(this.collectionPermission);
  41.       }
  42.  
  43.       return Collections.enumeration(var1);
  44.    }
  45. }
  46.