001/* 002 * The contents of this file are subject to the license and copyright 003 * detailed in the LICENSE and NOTICE files at the root of the source 004 * tree. 005 */ 006package org.fcrepo.kernel.api.auth; 007 008import java.net.URI; 009import java.util.Set; 010 011/** 012 * @author whikloj 013 * @author acoburn 014 * @since 2015-08-25 015 */ 016public interface WebACAuthorization { 017 018 /** 019 * Get the set of acl:agents, empty set if none. 020 * 021 * @return set of acl:agents 022 */ 023 Set<String> getAgents(); 024 025 /** 026 * Get the set of acl:agentClasses, empty set if none. 027 * 028 * @return set of acl:agentClasses 029 */ 030 Set<String> getAgentClasses(); 031 032 /** 033 * Get the set of acl:modes, empty set if none. 034 * 035 * @return set of acl:modes 036 */ 037 Set<URI> getModes(); 038 039 /** 040 * Get the set of strings directly linked from this ACL, empty set if none. 041 * 042 * @return set of String 043 */ 044 Set<String> getAccessToURIs(); 045 046 /** 047 * Get the set of strings describing the rdf:types for this ACL, empty set if none. 048 * 049 * @return set of Strings 050 */ 051 Set<String> getAccessToClassURIs(); 052 053 /** 054 * Get the set of strings describing the agent groups for this ACL, empty set if none. 055 * 056 * @return set of Strings 057 */ 058 Set<String> getAgentGroups(); 059 060 /** 061 * Get the set of strings describing the defaults for this ACL, empty set if none. 062 * 063 * @return set of Strings 064 */ 065 Set<String> getDefaults(); 066}