org.starhope.appius.sys.admin
Class CapabilityRecords

java.lang.Object
  extended by org.starhope.appius.util.SimpleDataRecord<CapabilityRecords>
      extended by org.starhope.appius.sys.admin.CapabilityRecords
All Implemented Interfaces:
com.whirlycott.cache.Cacheable, Serializable, Comparable<CapabilityRecords>, CTime, DataRecord, HasSubversionRevision

public class CapabilityRecords
extends SimpleDataRecord<CapabilityRecords>

Author:
brpocock@star-hope.org
See Also:
Serialized Form

Field Summary
private  ConcurrentHashMap<Integer,ConcurrentSkipListSet<SecurityCapability>> caps
          WRITEME
private static long serialVersionUID
          WRITEME: Document this brpocock@star-hope.org
 
Fields inherited from class org.starhope.appius.util.SimpleDataRecord
myLoader, timeLastChanged, timeLastSaved
 
Constructor Summary
CapabilityRecords(RecordLoader<CapabilityRecords> loader)
          WRITEME: Document this constructor brpocock@star-hope.org
 
Method Summary
 void addCapability(AbstractUser userByID, SecurityCapability securityCapability)
          WRITEME: Document this method brpocock@star-hope.org
 Collection<SecurityCapability> forUser(AbstractUser who)
           
 Collection<SecurityCapability> forUser(int userID)
           
 int getCacheableID()
          Note that all records must have either a numeric ID ( DataRecord.getCacheableID() or a string identifier ( DataRecord.getCacheableIdent() or both.
 String getCacheableIdent()
          Note that all records must have either a numeric ID ( DataRecord.getCacheableID() or a string identifier ( DataRecord.getCacheableIdent() or both.
 String getSubversionRevision()
           Return the Subversion revision level of this class's source code file, as supplied via the special "$Rev: " sequence.
 void grantCapability(AbstractUser grantor, AbstractUser recipient, SecurityCapability cap)
          WRITEME
 
Methods inherited from class org.starhope.appius.util.SimpleDataRecord
changed, checkStale, compareTo, equals, finalize, getRecordLoader, getTimeLastChanged, getTimeLastSaved, hashCode, isBeingLoaded, markAsLoaded, markAsSaved, markForReload, onRemove, onRetrieve, onStore, save, setRecordLoader, toString
 
Methods inherited from class java.lang.Object
clone, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
WRITEME: Document this brpocock@star-hope.org

See Also:
Constant Field Values

caps

private final ConcurrentHashMap<Integer,ConcurrentSkipListSet<SecurityCapability>> caps
WRITEME

Constructor Detail

CapabilityRecords

public CapabilityRecords(RecordLoader<CapabilityRecords> loader)
WRITEME: Document this constructor brpocock@star-hope.org

Parameters:
loader - the record loader
Method Detail

addCapability

public void addCapability(AbstractUser userByID,
                          SecurityCapability securityCapability)
WRITEME: Document this method brpocock@star-hope.org

Parameters:
userByID - WRITEME
securityCapability - WRITEME

forUser

public Collection<SecurityCapability> forUser(AbstractUser who)
Parameters:
who - WRITEME
Returns:
WRITEME

forUser

public Collection<SecurityCapability> forUser(int userID)
Parameters:
userID - WRITEME
Returns:
WRITEME

getCacheableID

public int getCacheableID()
                   throws NotFoundException
Description copied from interface: DataRecord
Note that all records must have either a numeric ID ( DataRecord.getCacheableID() or a string identifier ( DataRecord.getCacheableIdent() or both.

Returns:
an unique ID number
Throws:
NotFoundException - if the item doesn't have a distinct numeric ID
See Also:
DataRecord.getCacheableID()

getCacheableIdent

public String getCacheableIdent()
                         throws NotFoundException
Description copied from interface: DataRecord
Note that all records must have either a numeric ID ( DataRecord.getCacheableID() or a string identifier ( DataRecord.getCacheableIdent() or both.

Returns:
an unique identifier string
Throws:
NotFoundException - if the item doesn't have a distinct string identifier
See Also:
DataRecord.getCacheableIdent()

getSubversionRevision

public String getSubversionRevision()
Description copied from interface: HasSubversionRevision

Return the Subversion revision level of this class's source code file, as supplied via the special "$Rev: " sequence.

As an example,the Subversion revision string for this file is "$Rev: 1968 $"

 
 @Override
 public String getSubversionRevision () {
        return "$Rev: ";
 }
 

Returns:
The Subversion revision level for this class's source code file.
See Also:
HasSubversionRevision.getSubversionRevision()

grantCapability

public void grantCapability(AbstractUser grantor,
                            AbstractUser recipient,
                            SecurityCapability cap)
                     throws PrivilegeRequiredException
WRITEME

Parameters:
grantor - WRITEME
recipient - WRITEME
cap - WRITEME
Throws:
PrivilegeRequiredException - WRITEME