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 TypeMethodDescriptionvoid
void
cacheSyncedGroupsAndStems
(boolean fullyPopulate) void
createGooGroupIfNecessary
(Group grouperGroup) void
createGooMember
(com.google.api.services.admin.directory.model.Group group, com.google.api.services.admin.directory.model.User user, String role) void
createGooMember
(Group group, Subject subject, String role) com.google.api.services.admin.directory.model.User
createGooUser
(Subject subject) void
deleteGooGroup
(Group group) void
deleteGooGroup
(PITGroup group) void
deleteGooGroupByEmail
(String groupKey) void
deleteGooGroupByName
(String groupName) void
deleteGooGroupByName
(String groupName, String groupId) determineRole
(Member member, Group group) com.google.api.services.admin.directory.model.Group
fetchGooGroup
(String groupKey) com.google.api.services.admin.directory.model.User
fetchGooUser
(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) void
initialize
(String consumerName, GoogleAppsSyncProperties properties) void
populates the Google user and group caches.void
populateGooGroupsCache
(com.google.api.services.admin.directory.Directory directory) void
populateGooUsersCache
(com.google.api.services.admin.directory.Directory directory) void
removeGooMembership
(String groupName, Subject subject) void
removeGooMembership
(String groupKey, String subjectEmail) void
removeGooMembership
(String groupName, String groupId, Subject subject) boolean
shouldSyncGroup
(Group group) boolean
shouldSyncStem
(Stem stem) boolean
shouldSyncStem
(String stemName) void
unarchiveGooGroupIfNecessary
(com.google.api.services.admin.directory.model.Group group) com.google.api.services.admin.directory.model.Group
updateGooGroup
(String groupKey, com.google.api.services.admin.directory.model.Group group) void
updateGooMember
(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:
GeneralSecurityException
IOException
-
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
-