public class FullSyncProvisioner extends Object
Modifier and Type | Class and Description |
---|---|
static class |
FullSyncProvisioner.FULL_SYNC_COMMAND |
static class |
FullSyncProvisioner.QUEUE_TYPE |
Modifier and Type | Field and Description |
---|---|
static String |
FULL_SYNC_ALL_GROUPS |
protected Provisioner<?,?,?> |
provisioner |
Modifier | Constructor and Description |
---|---|
protected |
FullSyncProvisioner(Provisioner provisioner)
Constructor used by the getfullSyncer() factory method to construct a full-sync wrapper
around a provisioner.
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
fullSyncGroup(GrouperGroupInfo _grouperGroupInfo,
edu.internet2.middleware.grouper.pspng.FullSyncQueueItem fullSyncQueueItem)
Workhorse method that handles the FullSync of a specific group.
|
org.joda.time.DateTime |
getLastSuccessfulFullSyncDate(String groupName) |
String |
getName() |
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem |
getNextFullSyncRequest()
get the next full-sync request from our queues/subqueues.
|
Provisioner<?,?,?> |
getProvisioner() |
static boolean |
isFullSyncRunning(String provisionerId) |
protected boolean |
processGroupCleanup(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem) |
protected void |
processQueueItem(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem) |
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem |
queue(FullSyncProvisioner.QUEUE_TYPE queue,
edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem) |
protected List<edu.internet2.middleware.grouper.pspng.FullSyncQueueItem> |
queueAllGroupsForFullSync(FullSyncProvisioner.QUEUE_TYPE queue,
String externalReference,
String reasonFormat,
Object... reasonArgs)
Go through the Grouper Groups and queue up the ones that match the provisioner's
ShouldBeProvisioned filter.
|
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem |
requeue(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem,
boolean processingFailed)
Requeue item either into GrouperMessaging or a local queue, depending on where the queueItem
came from
|
edu.internet2.middleware.grouper.pspng.FullSyncQueueItem |
scheduleGroupCleanup(FullSyncProvisioner.QUEUE_TYPE queue,
String externalReference,
String reasonFormat,
Object... reasonArgs)
Put a GROUP_CLEANUP_MARKER into the full-sync schedule.
|
edu.internet2.middleware.grouper.pspng.FullSyncQueueItem |
scheduleGroupForSync(FullSyncProvisioner.QUEUE_TYPE queue,
String groupName,
String externalReference,
String reasonFormat,
Object... reasonArgs)
Put the given group in a queue for full syncing
|
protected void |
setUpGrouperMessagingQueue(FullSyncProvisioner.QUEUE_TYPE queueType) |
protected void |
start()
Get the FullSync thread_manageFullSyncProcessing() thread running
|
JobStatistics |
startFullSyncOfAllGroupsAndWaitForCompletion(Hib3GrouperLoaderLog hib3GrouploaderLog) |
protected void |
startMessageReadingThread(FullSyncProvisioner.QUEUE_TYPE queue_type)
starts a thread that reads from a GrouperMessaging queue and puts the items in
a local-memory subQueue (which defines the item's eventual priority).
|
protected void |
thread_fullSyncMessageQueueReader(FullSyncProvisioner.QUEUE_TYPE queueType)
Method that reads a full-sync queue (See Grouper Messaging) and forwards messages
to an internal (in memory) subqueue.
|
protected void |
thread_manageFullSyncProcessing()
method that manages full-sync processing.
|
public static final String FULL_SYNC_ALL_GROUPS
protected final Provisioner<?,?,?> provisioner
protected FullSyncProvisioner(Provisioner provisioner)
provisioner
- public Provisioner<?,?,?> getProvisioner()
public String getName()
protected void start()
protected void startMessageReadingThread(FullSyncProvisioner.QUEUE_TYPE queue_type)
queue_type
- protected void thread_manageFullSyncProcessing()
protected void thread_fullSyncMessageQueueReader(FullSyncProvisioner.QUEUE_TYPE queueType)
protected void setUpGrouperMessagingQueue(FullSyncProvisioner.QUEUE_TYPE queueType)
protected void processQueueItem(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem) throws PspException
PspException
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem getNextFullSyncRequest()
public static boolean isFullSyncRunning(String provisionerId)
public JobStatistics startFullSyncOfAllGroupsAndWaitForCompletion(Hib3GrouperLoaderLog hib3GrouploaderLog) throws PspException
PspException
protected List<edu.internet2.middleware.grouper.pspng.FullSyncQueueItem> queueAllGroupsForFullSync(FullSyncProvisioner.QUEUE_TYPE queue, String externalReference, String reasonFormat, Object... reasonArgs) throws PspException
PspException
public edu.internet2.middleware.grouper.pspng.FullSyncQueueItem scheduleGroupForSync(FullSyncProvisioner.QUEUE_TYPE queue, String groupName, String externalReference, String reasonFormat, Object... reasonArgs)
queue
- : What queue should be used?groupName
- reasonArgs
- public edu.internet2.middleware.grouper.pspng.FullSyncQueueItem scheduleGroupCleanup(FullSyncProvisioner.QUEUE_TYPE queue, String externalReference, String reasonFormat, Object... reasonArgs)
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queue(FullSyncProvisioner.QUEUE_TYPE queue, edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem)
protected edu.internet2.middleware.grouper.pspng.FullSyncQueueItem requeue(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem, boolean processingFailed)
queueItem
- processingFailed
- True when the event was actually processed and needs to have its
retryCount and wakeTime updatedprotected boolean fullSyncGroup(GrouperGroupInfo _grouperGroupInfo, edu.internet2.middleware.grouper.pspng.FullSyncQueueItem fullSyncQueueItem)
_grouperGroupInfo
- Group on which to do a Full Sync. The grouper group will be reread from database to make sure information is fresh.fullSyncQueueItem
- What is driving this syncprotected boolean processGroupCleanup(edu.internet2.middleware.grouper.pspng.FullSyncQueueItem queueItem)
public org.joda.time.DateTime getLastSuccessfulFullSyncDate(String groupName)
Copyright © 2016 Internet2. All rights reserved.