package org.jboss.security.acl; import java.util.Collection; import org.jboss.security.authorization.Resource; /** * <p> * Interface to register {@code ACL}s. * </p> * * @author <a href="mailto:sguilhen@redhat.com">Stefan Guilhen</a> */ public interface ACLRegistration { /** * <p> * Registers an {@code ACL} associated with the specified {@code Resource}. This usually means interacting * with a {@code ACLPersistenceStrategy} to persist the created {@code ACL}. * </p> * * @param resource the {@code Resource} for which an {@code ACL} is to be registered. */ public void registerACL(Resource resource); /** * <p> * Registers an {@code ACL} associated with the specified {@code Resource} using the supplied entries. * </p> * * @param resource the {@code Resource} for which an {@code ACL} is to be registered. * @param entries the entries of the {@code ACL} being registered. */ public void registerACL(Resource resource, Collection<ACLEntry> entries); /** * <p> * Deregisters the {@code ACL} associated with the specified resource. * </p> * * @param resource the {@code Resource} for which an {@code ACL} is to be deregistered. */ public void deRegisterACL(Resource resource); }