Package edu.internet2.middleware.grouper.app.provisioningExamples.exampleWsReplaceProvisionerGeneric
Class GrouperExampleWsGenericTargetDao
java.lang.Object
edu.internet2.middleware.grouper.app.provisioning.targetDao.GrouperProvisionerTargetDaoBase
edu.internet2.middleware.grouper.app.provisioningExamples.exampleWsReplaceProvisionerGeneric.GrouperExampleWsGenericTargetDao
DAO is the glue from the provisioner to the target. Implement the select/insert/update/delete.
If the target supports batching (either multiple updates at a time for example, or batching operations),
implement that instead of individual operations. Each operation needs to be registered in
registerGrouperProvisionerDaoCapabilities() or it wont be used
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
start logging the source low level actionsstop logging and get the output only call this if you successfully started the loggingvoid
registerGrouperProvisionerDaoCapabilities
(GrouperProvisionerDaoCapabilities grouperProvisionerDaoCapabilities) tell the framework what methods are availablereplaceGroupMemberships
(TargetDaoReplaceGroupMembershipsRequest targetDaoReplaceGroupMembershipsRequest) this is the method the provisioning framework will callstatic void
replaceMembers
(Map<String, Object> debugMap, String configId, List<String> netIds, String source, String role) select/insert/update is better than replace, but if thats all you got, run with it.Methods inherited from class edu.internet2.middleware.grouper.app.provisioning.targetDao.GrouperProvisionerTargetDaoBase
addTargetDaoTimingInfo, deleteEntities, deleteEntity, deleteGroup, deleteGroups, deleteMembership, deleteMemberships, getGrouperProvisioner, getGrouperProvisionerDaoCapabilities, getTargetDaoTimingInfos, insertEntities, insertEntity, insertGroup, insertGroups, insertMembership, insertMemberships, retrieveAllData, retrieveAllEntities, retrieveAllGroups, retrieveAllMemberships, retrieveEntities, retrieveEntity, retrieveGroup, retrieveGroups, retrieveIncrementalData, retrieveMembership, retrieveMemberships, retrieveMembershipsByEntities, retrieveMembershipsByEntity, retrieveMembershipsByGroup, retrieveMembershipsByGroups, sendChangesToTarget, sendEntityChangesToTarget, sendGroupChangesToTarget, sendMembershipChangesToTarget, setGrouperProvisioner, setGrouperProvisionerDaoCapabilities, setTargetDaoTimingInfos, updateEntities, updateEntity, updateGroup, updateGroups, updateMembership, updateMemberships
-
Field Details
-
doNotLogHeaders
some things
-
-
Constructor Details
-
GrouperExampleWsGenericTargetDao
public GrouperExampleWsGenericTargetDao()
-
-
Method Details
-
loggingStart
public boolean loggingStart()Description copied from class:GrouperProvisionerTargetDaoBase
start logging the source low level actions- Overrides:
loggingStart
in classGrouperProvisionerTargetDaoBase
- Returns:
- true if the logging was started (i.e. can be stopped), or false if already started (in which case somewhere up the stack with stop it so dont stop it)
-
loggingStop
Description copied from class:GrouperProvisionerTargetDaoBase
stop logging and get the output only call this if you successfully started the logging- Overrides:
loggingStop
in classGrouperProvisionerTargetDaoBase
-
replaceMembers
public static void replaceMembers(Map<String, Object> debugMap, String configId, List<String> netIds, String source, String role) select/insert/update is better than replace, but if thats all you got, run with it. this is an example of a "command" method which doesnt use anything from provisioning. So this could be called from another place for another reason (e.g. test external system). You can put all these types of methods in a commands class instead of the dao class to organize things. This is how Grouper implements provisioners.- Parameters:
debugMap
-configId
-netIds
-source
-role
-
-
replaceGroupMemberships
public TargetDaoReplaceGroupMembershipsResponse replaceGroupMemberships(TargetDaoReplaceGroupMembershipsRequest targetDaoReplaceGroupMembershipsRequest) this is the method the provisioning framework will call- Overrides:
replaceGroupMemberships
in classGrouperProvisionerTargetDaoBase
- Parameters:
this
- is the group and memberships to replace- Returns:
- tell the framework what happened or what was returned
-
registerGrouperProvisionerDaoCapabilities
public void registerGrouperProvisionerDaoCapabilities(GrouperProvisionerDaoCapabilities grouperProvisionerDaoCapabilities) tell the framework what methods are available- Specified by:
registerGrouperProvisionerDaoCapabilities
in classGrouperProvisionerTargetDaoBase
-