edu.internet2.middleware.grouper.hooks.examples
Class AssignSelfOptOutGroupPrivilegeHook

java.lang.Object
  extended by edu.internet2.middleware.grouper.hooks.GroupHooks
      extended by edu.internet2.middleware.grouper.hooks.examples.AssignSelfOptOutGroupPrivilegeHook

public class AssignSelfOptOutGroupPrivilegeHook
extends GroupHooks

 If you want the group or groups in a folder to allow opt out to anyone in group, 
 then configure this hook in grouper.properties:
 
 hooks.group.class=edu.internet2.middleware.grouper.hooks.examples.AssignSelfOptOutGroupPrivilegeHook
 hooks.membership.class=edu.internet2.middleware.grouper.hooks.examples.AssignSelfOptOutMembershipPrivilegeRevocationVetoHook
 
 configure an attribute to assign to groups or folders in grouper.properties
 
 grouper.optOutRequired.attributeDefName = a:b:c:assignOptOut
 
 https://bugs.internet2.edu/jira/browse/GRP-1197
 
 grouperSession = GrouperSession.startRootSession(); 
 String attributeFolderName = "a:b:c"; 
 attributeDef = new AttributeDefSave(grouperSession).assignName(attributeFolderName + ":assignOptOutDef").assignToStem(true).assignAttributeDefType(AttributeDefType.attr).assignCreateParentStemsIfNotExist(true).assignValueType(AttributeDefValueType.marker).save();
 attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); 
 attributeDefName = new AttributeDefNameSave(grouperSession, attributeDef).assignName(attributeFolderName + ":assignOptOut").assignCreateParentStemsIfNotExist(true).save(); 
 
 Test it out
 
 stem = new StemSave(grouperSession).assignName("j:k").assignCreateParentStemsIfNotExist(true).save();
 stem.getAttributeDelegate().assignAttribute(attributeDefName);
 groupSub = new GroupSave(grouperSession).assignName("j:k:l:m").assignCreateParentStemsIfNotExist(true).save();

 


Field Summary
 
Fields inherited from class edu.internet2.middleware.grouper.hooks.GroupHooks
METHOD_GROUP_POST_COMMIT_DELETE, METHOD_GROUP_POST_COMMIT_INSERT, METHOD_GROUP_POST_COMMIT_UPDATE, METHOD_GROUP_POST_DELETE, METHOD_GROUP_POST_INSERT, METHOD_GROUP_POST_UPDATE, METHOD_GROUP_PRE_DELETE, METHOD_GROUP_PRE_INSERT, METHOD_GROUP_PRE_UPDATE
 
Constructor Summary
AssignSelfOptOutGroupPrivilegeHook()
           
 
Method Summary
 void groupPostCommitInsert(HooksContext hooksContext, HooksGroupBean postCommitInsertBean)
          called right after the commit of a post insert commit.
 
Methods inherited from class edu.internet2.middleware.grouper.hooks.GroupHooks
groupPostCommitDelete, groupPostCommitUpdate, groupPostDelete, groupPostInsert, groupPostUpdate, groupPreDelete, groupPreInsert, groupPreUpdate
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AssignSelfOptOutGroupPrivilegeHook

public AssignSelfOptOutGroupPrivilegeHook()
Method Detail

groupPostCommitInsert

public void groupPostCommitInsert(HooksContext hooksContext,
                                  HooksGroupBean postCommitInsertBean)
Description copied from class: GroupHooks
called right after the commit of a post insert commit. Note, cant veto this or participate in the tx

Overrides:
groupPostCommitInsert in class GroupHooks
See Also:
GroupHooks.groupPostCommitInsert(edu.internet2.middleware.grouper.hooks.beans.HooksContext, edu.internet2.middleware.grouper.hooks.beans.HooksGroupBean)