public abstract class AbstractPrincipalAttributesRepository
extends java.lang.Object
implements org.apereo.cas.authentication.principal.PrincipalAttributesRepository, java.io.Closeable
| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractPrincipalAttributesRepository.MergingStrategy
Defines the merging strategy options.
|
| Modifier and Type | Field and Description |
|---|---|
protected long |
expiration
The expiration time.
|
protected AbstractPrincipalAttributesRepository.MergingStrategy |
mergingStrategy
The merging strategy that deals with existing principal attributes
and those that are retrieved from the source.
|
protected java.lang.String |
timeUnit
Expiration time unit.
|
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractPrincipalAttributesRepository()
Instantiates a new principal attributes repository.
|
|
AbstractPrincipalAttributesRepository(long expiration,
java.lang.String timeUnit)
Instantiates a new principal attributes repository.
|
| Modifier and Type | Method and Description |
|---|---|
protected abstract void |
addPrincipalAttributes(java.lang.String id,
java.util.Map<java.lang.String,java.lang.Object> attributes)
Add principal attributes into the underlying cache instance.
|
protected java.util.Map<java.lang.String,java.lang.Object> |
convertPersonAttributesToPrincipalAttributes(java.util.Map<java.lang.String,java.util.List<java.lang.Object>> attributes)
Convert person attributes to principal attributes.
|
boolean |
equals(java.lang.Object obj) |
java.util.Map<java.lang.String,java.lang.Object> |
getAttributes(org.apereo.cas.authentication.principal.Principal p) |
long |
getExpiration() |
AbstractPrincipalAttributesRepository.MergingStrategy |
getMergingStrategy() |
protected abstract java.util.Map<java.lang.String,java.lang.Object> |
getPrincipalAttributes(org.apereo.cas.authentication.principal.Principal p)
Gets principal attributes from cache.
|
java.lang.String |
getTimeUnit() |
int |
hashCode() |
protected java.util.Map<java.lang.String,java.util.List<java.lang.Object>> |
retrievePersonAttributesToPrincipalAttributes(java.lang.String id)
Obtains attributes first from the repository by calling
IPersonAttributeDao.getPerson(String). |
void |
setAttributeRepository(org.apereo.services.persondir.IPersonAttributeDao attributeRepository) |
void |
setExpiration(long expiration) |
void |
setMergingStrategy(AbstractPrincipalAttributesRepository.MergingStrategy mergingStrategy)
The merging strategy that deals with existing principal attributes
and those that are retrieved from the source.
|
void |
setTimeUnit(java.lang.String unit) |
java.lang.String |
toString() |
protected long expiration
protected java.lang.String timeUnit
protected AbstractPrincipalAttributesRepository.MergingStrategy mergingStrategy
protected AbstractPrincipalAttributesRepository()
public AbstractPrincipalAttributesRepository(long expiration,
java.lang.String timeUnit)
expiration - the expirationtimeUnit - the time unitpublic void setMergingStrategy(AbstractPrincipalAttributesRepository.MergingStrategy mergingStrategy)
mergingStrategy - the strategy to use for conflictspublic AbstractPrincipalAttributesRepository.MergingStrategy getMergingStrategy()
protected java.util.Map<java.lang.String,java.lang.Object> convertPersonAttributesToPrincipalAttributes(java.util.Map<java.lang.String,java.util.List<java.lang.Object>> attributes)
attributes - person attributesprotected java.util.Map<java.lang.String,java.util.List<java.lang.Object>> retrievePersonAttributesToPrincipalAttributes(java.lang.String id)
IPersonAttributeDao.getPerson(String).id - the person id to locate in the attribute repositorypublic java.util.Map<java.lang.String,java.lang.Object> getAttributes(org.apereo.cas.authentication.principal.Principal p)
getAttributes in interface org.apereo.cas.authentication.principal.PrincipalAttributesRepositoryprotected abstract void addPrincipalAttributes(java.lang.String id,
java.util.Map<java.lang.String,java.lang.Object> attributes)
id - identifier used by the cache as key.attributes - attributes to cacheprotected abstract java.util.Map<java.lang.String,java.lang.Object> getPrincipalAttributes(org.apereo.cas.authentication.principal.Principal p)
p - the principalpublic void setAttributeRepository(org.apereo.services.persondir.IPersonAttributeDao attributeRepository)
public java.lang.String toString()
toString in class java.lang.Objectpublic long getExpiration()
public java.lang.String getTimeUnit()
public void setTimeUnit(java.lang.String unit)
public void setExpiration(long expiration)
public boolean equals(java.lang.Object obj)
equals in class java.lang.Objectpublic int hashCode()
hashCode in class java.lang.Object