package org.openedit.entermedia.search; import java.util.Collection; import java.util.List; import org.openedit.entermedia.Asset; import org.openedit.entermedia.MediaArchive; import org.openedit.profile.UserProfile; import com.openedit.OpenEditException; import com.openedit.users.User; public interface AssetSecurityArchive { public abstract List getAccessList(MediaArchive inArchive, Asset inAsset) throws OpenEditException; public abstract void revokeViewAccess(MediaArchive inArchive, String username, Asset inAsset); public abstract void revokeGroupViewAccess(MediaArchive inArchive, String groupname, Asset inAsset); public abstract void grantViewAccess(MediaArchive inArchive, String username, Asset inAsset) throws OpenEditException; public abstract void grantGroupViewAccess(MediaArchive inArchive, String groupname, Asset inAsset) throws OpenEditException; public abstract void grantGroupViewAccess(MediaArchive inArchive, Collection<String> groupnames, Asset inAsset) throws OpenEditException; public abstract void grantAllAccess(MediaArchive inArchive, Asset inAsset); //This is for users? public abstract void clearAssetPermissions(MediaArchive inArchive, Asset inAsset); public abstract Boolean canDo(MediaArchive inArchive, User inUser, UserProfile inProfile, String inType, Asset inAsset); //public abstract void grantAccess(MediaArchive inArchive, String username, Asset inAsset, String inView) throws OpenEditException; //public abstract void grantViewAccess(MediaArchive inArchive, User inUser, Category inCat) throws OpenEditException; //public abstract Map checkAssetPermissions(User inUser, String inCatalogId, String sourcePath); //public abstract void clearViewAccess(MediaArchive inArchive, Asset inJobfolder); //use asset.isPropertyTrue("public") ///public abstract boolean hasAnonymousViewAsset(Asset inAsset) throws OpenEditException; }