|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.jasig.portal.groups.pags.PersonAttributesGroupStore
public class PersonAttributesGroupStore
The Person Attributes Group Store uses attributes stored in the IPerson object to determine group membership. It can use attributes from any data source supported by the PersonDirectory service.
Nested Class Summary | |
---|---|
static class |
PersonAttributesGroupStore.GroupDefinition
|
static class |
PersonAttributesGroupStore.TestGroup
|
Field Summary | |
---|---|
private java.util.Map |
containingGroups
|
private java.util.Map |
groupDefinitions
|
private java.util.Map |
groups
|
private static org.apache.commons.logging.Log |
log
|
private java.util.Properties |
props
|
Fields inherited from interface org.jasig.portal.groups.IGroupConstants |
---|
CHANNEL_CATEGORIES, CONTAINS, ENDS_WITH, EVERYONE, IS, NODE_SEPARATOR, PORTAL_ADMINISTRATORS, STARTS_WITH |
Constructor Summary | |
---|---|
PersonAttributesGroupStore()
|
Method Summary | |
---|---|
private void |
cacheContainingGroupsForGroups()
|
private IEntityGroup |
cacheGet(java.lang.String key)
|
private void |
cachePut(IEntityGroup group)
|
boolean |
contains(IEntityGroup group,
IGroupMember member)
Answers if group contains member . |
void |
delete(IEntityGroup group)
Delete this IEntityGroup from the data store. |
IEntityGroup |
find(java.lang.String key)
Returns an instance of the IEntityGroup from the data store. |
java.util.Iterator |
findContainingGroups(IGroupMember member)
Returns an Iterator over the Collection of
IEntityGroups that the IGroupMember belongs to. |
private java.util.Iterator |
findContainingGroupsForEntity(IEntity member)
|
private java.util.Iterator |
findContainingGroupsForGroup(IEntityGroup group)
|
java.util.Iterator |
findEntitiesForGroup(IEntityGroup group)
Returns an Iterator over the Collection of
IEntities that are members of this IEntityGroup . |
ILockableEntityGroup |
findLockable(java.lang.String key)
Returns an instance of the ILockableEntityGroup from the data store. |
java.lang.String[] |
findMemberGroupKeys(IEntityGroup group)
Returns a String[] containing the keys of IEntityGroups
that are members of this IEntityGroup . |
java.util.Iterator |
findMemberGroups(IEntityGroup group)
Returns an Iterator over the Collection of
IEntityGroups that are members of this IEntityGroup . |
private IPersonAttributesConfiguration |
getConfig(java.lang.String className)
|
private void |
initGroups()
Iterates over the groupDefinitions Collection and creates the corresponding groups. |
private IPersonTester |
initializeTester(java.lang.String tester,
java.lang.String attribute,
java.lang.String value)
|
IEntityGroup |
newInstance(java.lang.Class entityType)
|
IEntity |
newInstance(java.lang.String key)
|
IEntity |
newInstance(java.lang.String key,
java.lang.Class type)
|
private java.util.Set |
primGetAllContainingGroups(IEntityGroup group,
java.util.Set s)
|
EntityIdentifier[] |
searchForEntities(java.lang.String query,
int method,
java.lang.Class type)
Find EntityIdentifiers for entities whose name matches the query string according to the specified method and is of the specified type |
EntityIdentifier[] |
searchForGroups(java.lang.String query,
int method,
java.lang.Class leaftype)
Find EntityIdentifiers for groups whose name matches the query string according to the specified method and matches the provided leaf type |
private boolean |
testRecursively(PersonAttributesGroupStore.GroupDefinition groupDef,
IPerson person)
|
void |
update(IEntityGroup group)
Adds or updates the IEntityGroup AND ITS MEMBERSHIPS to the
data store, as appropriate. |
void |
updateMembers(IEntityGroup group)
Commits the group memberships of the IEntityGroup to
the data store. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final org.apache.commons.logging.Log log
private java.util.Properties props
private java.util.Map groupDefinitions
private java.util.Map groups
private java.util.Map containingGroups
Constructor Detail |
---|
public PersonAttributesGroupStore()
Method Detail |
---|
private IPersonAttributesConfiguration getConfig(java.lang.String className) throws java.lang.ClassNotFoundException, java.lang.InstantiationException, java.lang.IllegalAccessException
java.lang.ClassNotFoundException
java.lang.InstantiationException
java.lang.IllegalAccessException
private void initGroups() throws GroupsException
GroupsException
private IPersonTester initializeTester(java.lang.String tester, java.lang.String attribute, java.lang.String value)
private IEntityGroup cacheGet(java.lang.String key)
private void cachePut(IEntityGroup group)
public boolean contains(IEntityGroup group, IGroupMember member) throws GroupsException
IEntityGroupStore
group
contains member
.
contains
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroupmember
- org.jasig.portal.groups.IGroupMember
GroupsException
public void delete(IEntityGroup group) throws GroupsException
IEntityGroupStore
IEntityGroup
from the data store.
delete
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public IEntityGroup find(java.lang.String key) throws GroupsException
IEntityGroupStore
IEntityGroup
from the data store.
find
in interface IEntityGroupStore
key
- java.lang.String
GroupsException
private void cacheContainingGroupsForGroups() throws GroupsException
GroupsException
private boolean testRecursively(PersonAttributesGroupStore.GroupDefinition groupDef, IPerson person) throws GroupsException
GroupsException
private java.util.Set primGetAllContainingGroups(IEntityGroup group, java.util.Set s) throws GroupsException
GroupsException
public java.util.Iterator findContainingGroups(IGroupMember member) throws GroupsException
IEntityGroupStore
Iterator
over the Collection
of
IEntityGroups
that the IGroupMember
belongs to.
findContainingGroups
in interface IEntityGroupStore
member
- org.jasig.portal.groups.IEntityGroup
GroupsException
private java.util.Iterator findContainingGroupsForGroup(IEntityGroup group)
private java.util.Iterator findContainingGroupsForEntity(IEntity member) throws GroupsException
GroupsException
public java.util.Iterator findEntitiesForGroup(IEntityGroup group) throws GroupsException
IEntityGroupStore
Iterator
over the Collection
of
IEntities
that are members of this IEntityGroup
.
findEntitiesForGroup
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public ILockableEntityGroup findLockable(java.lang.String key) throws GroupsException
IEntityGroupStore
ILockableEntityGroup
from the data store.
findLockable
in interface IEntityGroupStore
key
- java.lang.String
GroupsException
public java.lang.String[] findMemberGroupKeys(IEntityGroup group) throws GroupsException
IEntityGroupStore
String[]
containing the keys of IEntityGroups
that are members of this IEntityGroup
. In a composite group
system, a group may contain a member group from a different service. This is
called a foreign membership, and is only possible in an internally-managed
service. A group store in such a service can return the key of a foreign member
group, but not the group itself, which can only be returned by its local store.
findMemberGroupKeys
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public java.util.Iterator findMemberGroups(IEntityGroup group) throws GroupsException
IEntityGroupStore
Iterator
over the Collection
of
IEntityGroups
that are members of this IEntityGroup
.
findMemberGroups
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public IEntityGroup newInstance(java.lang.Class entityType) throws GroupsException
newInstance
in interface IEntityGroupStore
GroupsException
public EntityIdentifier[] searchForGroups(java.lang.String query, int method, java.lang.Class leaftype) throws GroupsException
IEntityGroupStore
searchForGroups
in interface IEntityGroupStore
GroupsException
public void update(IEntityGroup group) throws GroupsException
IEntityGroupStore
IEntityGroup
AND ITS MEMBERSHIPS to the
data store, as appropriate.
update
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public void updateMembers(IEntityGroup group) throws GroupsException
IEntityGroupStore
IEntityGroup
to
the data store.
updateMembers
in interface IEntityGroupStore
group
- org.jasig.portal.groups.IEntityGroup
GroupsException
public IEntity newInstance(java.lang.String key, java.lang.Class type) throws GroupsException
newInstance
in interface IEntityStore
key
- java.lang.String - the entity's keytype
- java.lang.Class - the entity's Type
GroupsException
public IEntity newInstance(java.lang.String key) throws GroupsException
newInstance
in interface IEntityStore
key
- java.lang.String
GroupsException
public EntityIdentifier[] searchForEntities(java.lang.String query, int method, java.lang.Class type) throws GroupsException
IEntitySearcher
searchForEntities
in interface IEntitySearcher
GroupsException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |