Class GoogleGrouperConnector
java.lang.Object
edu.internet2.middleware.changelogconsumer.googleapps.GoogleGrouperConnector
Contains methods used by both the ChangeLogConsumer and the FullSync classes.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidcacheSyncedGroupsAndStems(boolean fullyPopulate) voidcreateGooGroupIfNecessary(Group grouperGroup) voidcreateGooMember(com.google.api.services.admin.directory.model.Group group, com.google.api.services.admin.directory.model.User user, String role) voidcreateGooMember(Group group, Subject subject, String role) com.google.api.services.admin.directory.model.UsercreateGooUser(Subject subject) voiddeleteGooGroup(Group group) voiddeleteGooGroup(PITGroup group) voiddeleteGooGroupByEmail(String groupKey) voiddeleteGooGroupByName(String groupName) voiddeleteGooGroupByName(String groupName, String groupId) determineRole(Member member, Group group) com.google.api.services.admin.directory.model.GroupfetchGooGroup(String groupKey) com.google.api.services.admin.directory.model.UserfetchGooUser(String userKey) fetchGrouperGroup(String groupName) fetchGrouperSubject(String sourceId, String subjectId) Finds the AttributeDefName specific to this GoogleApps ChangeLog Consumer instance.List<com.google.api.services.admin.directory.model.Member>getGooMembership(String groupKey) voidinitialize(String consumerName, GoogleAppsSyncProperties properties) voidpopulates the Google user and group caches.voidpopulateGooGroupsCache(com.google.api.services.admin.directory.Directory directory) voidpopulateGooUsersCache(com.google.api.services.admin.directory.Directory directory) voidremoveGooMembership(String groupName, Subject subject) voidremoveGooMembership(String groupKey, String subjectEmail) voidremoveGooMembership(String groupName, String groupId, Subject subject) booleanshouldSyncGroup(Group group) booleanshouldSyncStem(Stem stem) booleanshouldSyncStem(String stemName) voidunarchiveGooGroupIfNecessary(com.google.api.services.admin.directory.model.Group group) com.google.api.services.admin.directory.model.GroupupdateGooGroup(String groupKey, com.google.api.services.admin.directory.model.Group group) voidupdateGooMember(Group group, Subject subject, String role)
-
Field Details
-
SYNC_TO_GOOGLE
- See Also:
-
GOOGLE_PROVISIONER
- See Also:
-
ATTRIBUTE_CONFIG_STEM
- See Also:
-
GOOGLE_CONFIG_STEM
- See Also:
-
SYNC_TO_GOOGLE_NAME
- See Also:
-
-
Constructor Details
-
GoogleGrouperConnector
public GoogleGrouperConnector()
-
-
Method Details
-
initialize
public void initialize(String consumerName, GoogleAppsSyncProperties properties) throws GeneralSecurityException, IOException - Throws:
GeneralSecurityExceptionIOException
-
populateGoogleCache
public void populateGoogleCache()populates the Google user and group caches. -
populateGooUsersCache
public void populateGooUsersCache(com.google.api.services.admin.directory.Directory directory) -
populateGooGroupsCache
public void populateGooGroupsCache(com.google.api.services.admin.directory.Directory directory) -
fetchGooGroup
public com.google.api.services.admin.directory.model.Group fetchGooGroup(String groupKey) throws IOException - Throws:
IOException
-
fetchGooUser
-
fetchGrouperGroup
-
fetchGrouperSubject
-
createGooUser
public com.google.api.services.admin.directory.model.User createGooUser(Subject subject) throws IOException - Throws:
IOException
-
createGooMember
public void createGooMember(com.google.api.services.admin.directory.model.Group group, com.google.api.services.admin.directory.model.User user, String role) throws IOException - Throws:
IOException
-
createGooGroupIfNecessary
- Throws:
IOException
-
determineRole
-
unarchiveGooGroupIfNecessary
public void unarchiveGooGroupIfNecessary(com.google.api.services.admin.directory.model.Group group) throws IOException - Throws:
IOException
-
deleteGooGroup
- Throws:
IOException
-
deleteGooGroup
- Throws:
IOException
-
deleteGooGroupByName
- Throws:
IOException
-
deleteGooGroupByName
- Throws:
IOException
-
deleteGooGroupByEmail
- Throws:
IOException
-
getGoogleSyncAttribute
Finds the AttributeDefName specific to this GoogleApps ChangeLog Consumer instance.- Returns:
- The AttributeDefName for this GoogleApps ChangeLog Consumer
-
shouldSyncGroup
-
shouldSyncStem
-
shouldSyncStem
-
cacheSyncedGroupsAndStems
public void cacheSyncedGroupsAndStems() -
cacheSyncedGroupsAndStems
public void cacheSyncedGroupsAndStems(boolean fullyPopulate) -
removeGooMembership
- Throws:
IOException
-
removeGooMembership
public void removeGooMembership(String groupName, String groupId, Subject subject) throws IOException - Throws:
IOException
-
removeGooMembership
- Throws:
IOException
-
updateGooGroup
public com.google.api.services.admin.directory.model.Group updateGooGroup(String groupKey, com.google.api.services.admin.directory.model.Group group) throws IOException - Throws:
IOException
-
getGooMembership
public List<com.google.api.services.admin.directory.model.Member> getGooMembership(String groupKey) throws IOException - Throws:
IOException
-
getAddressFormatter
-
getSyncedGroupsAndStems
-
createGooMember
- Throws:
IOException
-
updateGooMember
- Throws:
IOException
-