1 16 package org.outerj.daisy.repository.commonimpl.acl; 17 18 import org.outerj.daisy.repository.commonimpl.AuthenticatedUser; 19 import org.outerj.daisy.repository.Document; 20 import org.outerj.daisy.repository.RepositoryException; 21 import org.outerj.daisy.repository.VariantKey; 22 import org.outerj.daisy.repository.acl.AclResultInfo; 23 import org.outerj.daisy.repository.acl.AclPermission; 24 25 32 public interface AclStrategy { 33 public static final long LIVE_ACL_ID = 1; 34 public static final long STAGING_ACL_ID = 2; 35 36 public AclImpl loadAcl(long id, AuthenticatedUser user) throws RepositoryException; 37 38 public void storeAcl(AclImpl acl) throws RepositoryException; 39 40 public void copyStagingToLive(AuthenticatedUser user) throws RepositoryException; 41 42 public void copyLiveToStaging(AuthenticatedUser user) throws RepositoryException; 43 44 public AclResultInfo getAclInfo(AuthenticatedUser user, long id, long userId, long[] roleIds, Document document) throws RepositoryException; 45 46 public AclResultInfo getAclInfo(AuthenticatedUser user, long id, long userId, long[] roleIds, long documentId, long branchId, long languageId) throws RepositoryException; 47 48 public long[] filterDocumentTypes(AuthenticatedUser user, long[] documentTypeIds, long collectionId) throws RepositoryException; 50 51 public VariantKey[] filterDocuments(AuthenticatedUser user, VariantKey[] variantKeys, AclPermission permission) throws RepositoryException; 52 } 53 | Popular Tags |