java.io
final class: FilePermissionCollection [javadoc |
source]
java.lang.Object
java.security.PermissionCollection
java.io.FilePermissionCollection
All Implemented Interfaces:
Serializable
Collects
FilePermission objects and allows to query whether a
particular permission is implied by it.
Field Summary |
---|
Vector<Permission> | permissions | |
Methods from java.lang.Object: |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method from java.io.FilePermissionCollection Detail: |
public void add(Permission permission) {
if (isReadOnly()) {
throw new IllegalStateException();
}
if (permission instanceof FilePermission) {
permissions.addElement(permission);
} else {
throw new IllegalArgumentException(permission.toString());
}
}
Add a permission object to the permission collection. |
public Enumeration<Permission> elements() {
return permissions.elements();
}
Returns an enumeration for the collection of permissions. |
public boolean implies(Permission permission) {
if (permission instanceof FilePermission) {
FilePermission fp = (FilePermission) permission;
int matchedMask = 0;
int i = 0;
while (i < permissions.size()
&& ((matchedMask & fp.mask) != fp.mask)) {
// Cast will not fail since we added it
matchedMask |= ((FilePermission) permissions.elementAt(i))
.impliesMask(permission);
i++;
}
return ((matchedMask & fp.mask) == fp.mask);
}
return false;
}
Indicates whether this permissions collection implies a specific
{@code permission}. |