Java™ Platform
Standard Ed. 6

javax.management
Class MBeanServerPermission

java.lang.Object
  extended by java.security.Permission
      extended by java.security.BasicPermission
          extended by javax.management.MBeanServerPermission
All Implemented Interfaces:
Serializable, Guard

public class MBeanServerPermission
extends BasicPermission

A Permission to perform actions related to MBeanServers. The name of the permission specifies the operation requested or granted by the permission. For a granted permission, it can be * to allow all of the MBeanServer operations specified below. Otherwise, for a granted or requested permission, it must be one of the following:

createMBeanServer
Create a new MBeanServer object using the method MBeanServerFactory.createMBeanServer() or MBeanServerFactory.createMBeanServer(java.lang.String).
findMBeanServer
Find an MBeanServer with a given name, or all MBeanServers in this JVM, using the method MBeanServerFactory.findMBeanServer(java.lang.String).
newMBeanServer
Create a new MBeanServer object without keeping a reference to it, using the method MBeanServerFactory.newMBeanServer() or MBeanServerFactory.newMBeanServer(java.lang.String).
releaseMBeanServer
Remove the MBeanServerFactory's reference to an MBeanServer, using the method MBeanServerFactory.releaseMBeanServer(javax.management.MBeanServer).
The name of the permission can also denote a list of one or more comma-separated operations. Spaces are allowed at the beginning and end of the name and before and after commas.

MBeanServerPermission("createMBeanServer") implies MBeanServerPermission("newMBeanServer").

Since:
1.5
See Also:
Serialized Form

Constructor Summary
MBeanServerPermission(String name)
          Create a new MBeanServerPermission with the given name.
MBeanServerPermission(String name, String actions)
          Create a new MBeanServerPermission with the given name.
 
Method Summary
 boolean equals(Object obj)
          Checks two MBeanServerPermission objects for equality.
 int hashCode()
          Returns the hash code value for this object.
 boolean implies(Permission p)
          Checks if this MBeanServerPermission object "implies" the specified permission.
 PermissionCollection newPermissionCollection()
          Returns a new PermissionCollection object for storing BasicPermission objects.
 
Methods inherited from class java.security.BasicPermission
getActions
 
Methods inherited from class java.security.Permission
checkGuard, getName, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MBeanServerPermission

public MBeanServerPermission(String name)

Create a new MBeanServerPermission with the given name.

This constructor is equivalent to MBeanServerPermission(name,null).

Parameters:
name - the name of the granted permission. It must respect the constraints spelt out in the description of the MBeanServerPermission class.
Throws:
NullPointerException - if the name is null.
IllegalArgumentException - if the name is not * or one of the allowed names or a comma-separated list of the allowed names.

MBeanServerPermission

public MBeanServerPermission(String name,
                             String actions)

Create a new MBeanServerPermission with the given name.

Parameters:
name - the name of the granted permission. It must respect the constraints spelt out in the description of the MBeanServerPermission class.
actions - the associated actions. This parameter is not currently used and must be null or the empty string.
Throws:
NullPointerException - if the name is null.
IllegalArgumentException - if the name is not * or one of the allowed names or a comma-separated list of the allowed names, or if actions is a non-null non-empty string.
NullPointerException - if name is null.
IllegalArgumentException - if name is empty or if arguments are invalid.
Method Detail

hashCode

public int hashCode()
Description copied from class: BasicPermission
Returns the hash code value for this object. The hash code used is the hash code of the name, that is, getName().hashCode(), where getName is from the Permission superclass.

Overrides:
hashCode in class BasicPermission
Returns:
a hash code value for this object.
See Also:
Object.equals(java.lang.Object), Hashtable

implies

public boolean implies(Permission p)

Checks if this MBeanServerPermission object "implies" the specified permission.

More specifically, this method returns true if:

The createMBeanServer permission implies the newMBeanServer permission.

Overrides:
implies in class BasicPermission
Parameters:
p - the permission to check against.
Returns:
true if the specified permission is implied by this object, false if not.

equals

public boolean equals(Object obj)
Checks two MBeanServerPermission objects for equality. Checks that obj is an MBeanServerPermission, and represents the same list of allowable actions as this object.

Overrides:
equals in class BasicPermission
Parameters:
obj - the object we are testing for equality with this object.
Returns:
true if the objects are equal.
See Also:
Object.hashCode(), Hashtable

newPermissionCollection

public PermissionCollection newPermissionCollection()
Description copied from class: BasicPermission
Returns a new PermissionCollection object for storing BasicPermission objects.

A BasicPermissionCollection stores a collection of BasicPermission permissions.

BasicPermission objects must be stored in a manner that allows them to be inserted in any order, but that also enables the PermissionCollection implies method to be implemented in an efficient (and consistent) manner.

Overrides:
newPermissionCollection in class BasicPermission
Returns:
a new PermissionCollection object suitable for storing BasicPermissions.

Java™ Platform
Standard Ed. 6

Submit a bug or feature
For further API reference and developer documentation, see Java SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.