Class PermissionFileStore<V extends Permission>
- java.lang.Object
-
- edu.uiuc.ncsa.security.storage.IndexedStreamStore<V>
-
- edu.uiuc.ncsa.security.storage.FileStore<V>
-
- org.oa4mp.server.api.admin.permissions.PermissionFileStore<V>
-
- All Implemented Interfaces:
edu.uiuc.ncsa.security.core.Store<V>,Map<edu.uiuc.ncsa.security.core.Identifier,V>,PermissionsStore<V>
public class PermissionFileStore<V extends Permission> extends edu.uiuc.ncsa.security.storage.FileStore<V> implements PermissionsStore<V>
Created by Jeff Gaynor
on 10/11/16 at 1:57 PM
-
-
Constructor Summary
Constructors Constructor Description PermissionFileStore(File directory, edu.uiuc.ncsa.security.core.IdentifiableProvider<V> idp, edu.uiuc.ncsa.security.storage.data.MapConverter<V> cp, boolean removeEmptyFiles, boolean removeFailedFiles)PermissionFileStore(File storeDirectory, File indexDirectory, edu.uiuc.ncsa.security.core.IdentifiableProvider<V> identifiableProvider, edu.uiuc.ncsa.security.storage.data.MapConverter<V> converter, boolean removeEmptyFiles, boolean removeFailedFiles)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PermissionListget(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)Retrieve a permission from the admin and client identifier.List<edu.uiuc.ncsa.security.core.Identifier>getAdmins(edu.uiuc.ncsa.security.core.Identifier clientID)A list of all admin ids for a given client.List<Permission>getByAdminID(edu.uiuc.ncsa.security.core.Identifier adminID)List<Permission>getByClientID(edu.uiuc.ncsa.security.core.Identifier clientID)List<Permission>getByErsatzID(edu.uiuc.ncsa.security.core.Identifier ersatzID)intgetClientCount(edu.uiuc.ncsa.security.core.Identifier adminID)List<edu.uiuc.ncsa.security.core.Identifier>getClients(edu.uiuc.ncsa.security.core.Identifier adminID)A list of all identifiers that a given admin can manage.PermissiongetErsatzChain(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID, edu.uiuc.ncsa.security.core.Identifier ersatzID)Get the specific permission with the chain starting with clientID and ending with ersatzID.PermissionListgetErsatzChains(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)Returns the chain of ersatz clients for a given admin and provisioning client.List<V>getMostRecent(int n, List<String> attributes)PermissionListgetProvisioners(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier ersatzID)booleanhasEntry(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)Returns whether or not there is an entry for this pair of identifiers.-
Methods inherited from class edu.uiuc.ncsa.security.storage.FileStore
checkPermissions, clear, containsKey, containsValue, create, createIndexEntry, delete, doSetup, entrySet, get, getAll, getIndexDirectory, getIndexEntry, getItemFile, getItemFile, getMapConverter, getStorageDirectory, getXMLConverter, keySet, loadByIdentifier, loadFile, loadFromIndex, putAll, realRemove, realSave, register, remove, remove, removeByID, removeIndexEntry, save, search, search, search, search, setIndexDirectory, setStorageDirectory, size, size, toString, update, update, values
-
Methods inherited from class edu.uiuc.ncsa.security.storage.IndexedStreamStore
createIndexEntry, getCreatedItems, hashString, isEmpty, loadStream, put, put
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Map
clear, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, equals, forEach, get, getOrDefault, hashCode, isEmpty, keySet, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values
-
Methods inherited from interface org.oa4mp.server.api.admin.permissions.PermissionsStore
getMapConverter
-
-
-
-
Method Detail
-
getMostRecent
public List<V> getMostRecent(int n, List<String> attributes)
- Specified by:
getMostRecentin interfaceedu.uiuc.ncsa.security.core.Store<V extends Permission>
-
getAdmins
public List<edu.uiuc.ncsa.security.core.Identifier> getAdmins(edu.uiuc.ncsa.security.core.Identifier clientID)
Description copied from interface:PermissionsStoreA list of all admin ids for a given client.- Specified by:
getAdminsin interfacePermissionsStore<V extends Permission>- Returns:
-
getClients
public List<edu.uiuc.ncsa.security.core.Identifier> getClients(edu.uiuc.ncsa.security.core.Identifier adminID)
Description copied from interface:PermissionsStoreA list of all identifiers that a given admin can manage.- Specified by:
getClientsin interfacePermissionsStore<V extends Permission>- Returns:
-
getClientCount
public int getClientCount(edu.uiuc.ncsa.security.core.Identifier adminID)
- Specified by:
getClientCountin interfacePermissionsStore<V extends Permission>
-
get
public PermissionList get(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)
Description copied from interface:PermissionsStoreRetrieve a permission from the admin and client identifier.- Specified by:
getin interfacePermissionsStore<V extends Permission>- Returns:
-
getErsatzChains
public PermissionList getErsatzChains(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)
Description copied from interface:PermissionsStoreReturns the chain of ersatz clients for a given admin and provisioning client. Access the list usingPermission.getErsatzChain().- Specified by:
getErsatzChainsin interfacePermissionsStore<V extends Permission>- Returns:
-
getProvisioners
public PermissionList getProvisioners(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier ersatzID)
- Specified by:
getProvisionersin interfacePermissionsStore<V extends Permission>
-
hasEntry
public boolean hasEntry(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID)Description copied from interface:PermissionsStoreReturns whether or not there is an entry for this pair of identifiers. There is at most one permission for any such pair- Specified by:
hasEntryin interfacePermissionsStore<V extends Permission>- Returns:
-
getErsatzChain
public Permission getErsatzChain(edu.uiuc.ncsa.security.core.Identifier adminID, edu.uiuc.ncsa.security.core.Identifier clientID, edu.uiuc.ncsa.security.core.Identifier ersatzID)
Description copied from interface:PermissionsStoreGet the specific permission with the chain starting with clientID and ending with ersatzID.- Specified by:
getErsatzChainin interfacePermissionsStore<V extends Permission>- Returns:
-
getByAdminID
public List<Permission> getByAdminID(edu.uiuc.ncsa.security.core.Identifier adminID)
- Specified by:
getByAdminIDin interfacePermissionsStore<V extends Permission>
-
getByClientID
public List<Permission> getByClientID(edu.uiuc.ncsa.security.core.Identifier clientID)
- Specified by:
getByClientIDin interfacePermissionsStore<V extends Permission>
-
getByErsatzID
public List<Permission> getByErsatzID(edu.uiuc.ncsa.security.core.Identifier ersatzID)
- Specified by:
getByErsatzIDin interfacePermissionsStore<V extends Permission>
-
-