Class AbstractPermissionCollection

java.lang.Object
java.security.PermissionCollection
org.wildfly.security.permission.AbstractPermissionCollection
All Implemented Interfaces:
Serializable, Iterable<Permission>, PermissionVerifier
Direct Known Subclasses:
BooleanPermissionCollection, ByNamePermissionCollection, NameSetPermissionCollection, SimpleActionBitsPermissionCollection, SimplePermissionCollection

public abstract class AbstractPermissionCollection extends PermissionCollection implements Iterable<Permission>, PermissionVerifier
Base class for useful permission collections.
Author:
David M. Lloyd
See Also:
  • Constructor Details

    • AbstractPermissionCollection

      protected AbstractPermissionCollection(AbstractPermission<?> sourcePermission)
      Construct a new instance.
      Parameters:
      sourcePermission - the source permission for this collection (must not be null)
  • Method Details

    • size

      public abstract int size()
      Get the size of this permission collection.
      Returns:
      the size of this permission collection
    • iterator

      public abstract Iterator<Permission> iterator()
      Iterate over this permission collection.
      Specified by:
      iterator in interface Iterable<Permission>
      Returns:
      the iterator (not null)
    • elements

      public abstract Enumeration<Permission> elements()
      Iterate over this permission collection.
      Specified by:
      elements in class PermissionCollection
      Returns:
      the iterator (not null)
    • add

      public final void add(Permission permission)
      Add an item to this collection. The permission class must be the same as the source permission's class.
      Specified by:
      add in class PermissionCollection
      Parameters:
      permission - the permission to add (must not be null)
    • doAdd

      protected abstract void doAdd(AbstractPermission<?> permission)
      Perform the work of adding a permission. The permission is guaranteed to be of the correct type and the collection is guaranteed to have been writable at the time the add(Permission) method was called.
      Parameters:
      permission - the non-null permission