You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Next »

Grouper can export a folder or the entire registry as a GSH script.   This is currently experimental, take a backup or verify in a test env first.

The script is idempotent (run it twice, its ok).  It will not delete what is there in general though it will delete attribute assignments on exported assignments.

It will not export

  • audits
  • point in time data
  • daemon logs
  • change log entries
  • if you are importing and the objects already exist, it will not sync up the object ID uuid's
  • membership fields are not imported (note, privileges are, but if you are using a membership list that is not "members" (not common), that will be skipped
  • if you export a folder, and some necessary objects do not exist in the target (e.g. attribute definitions), they will be reported as an error and skipped
  • note: if you have international characters, these might get mangled when going to a gsh script and back...

Start an export

grouperSession = GrouperSession.startRootSession();
scriptName = "c:/temp/script.gsh";
new File(scriptName).delete();
new edu.internet2.middleware.grouper.xml.export.XmlExportGshScript().assignStemName(":").assignFileNameToWriteTo(scriptName).exportGsh();

The end of the script will print a summary of changes that occurred:

Script complete: total objects: 6222, expected approx total: 6327, changes: 133, known errors (view output for full list): 36

 

Example script

GrouperSession grouperSession = GrouperSession.startRootSession();
long gshTotalObjectCount = 0L;
long gshTotalChangeCount = 0L;
long gshTotalErrorCount = 0L;
StemSave stemSave = new StemSave(grouperSession).assignName(":").assignCreateParentStemsIfNotExist(true).assignDisplayName(":");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:attribute");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:attrExternalSubjectInvite").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in external subject invite attributes, and holds the data via attributes for invites.  Dont delete this folder").assignDisplayName("etc:attribute:attrExternalSubjectInvite");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:attrLoader").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper loader attributes").assignDisplayName("etc:attribute:attrLoader");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:entities").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper entities attributes").assignDisplayName("etc:attribute:entities");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:loaderLdap").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper loader ldap attributes").assignDisplayName("etc:attribute:loaderLdap");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:permissionLimits").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper permission limits").assignDisplayName("etc:attribute:permissionLimits");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:rules").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper rules attributes").assignDisplayName("etc:attribute:rules");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:attribute:userData").assignCreateParentStemsIfNotExist(true).assignDescription("folder for built in Grouper user data attributes").assignDisplayName("etc:attribute:userData");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:grouperUi").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:grouperUi");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:legacy").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("etc:legacy:attribute").assignCreateParentStemsIfNotExist(true).assignDescription("Folder for legacy attributes.  Do not delete.").assignDisplayName("etc:legacy:attribute");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
StemSave stemSave = new StemSave(grouperSession).assignName("test").assignCreateParentStemsIfNotExist(true).assignDisplayName("test");
stem = stemSave.save();
gshTotalObjectCount++;
if (stemSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for stem: " + stem.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("etc:grouperUi:grouperUiUserData").assignCreateParentStemsIfNotExist(true).assignDescription("Internal group for grouper which has user data stored in membership attributes for grouperUiUserData").assignDisplayName("etc:grouperUi:grouperUiUserData").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("etc:sysadminReadersGroup").assignCreateParentStemsIfNotExist(true).assignDescription("system administrators with read privileges").assignDisplayName("etc:sysadminReadersGroup").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("etc:sysadminViewersGroup").assignCreateParentStemsIfNotExist(true).assignDescription("system administrators with view privileges").assignDisplayName("etc:sysadminViewersGroup").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("etc:wsUsersGroup").assignCreateParentStemsIfNotExist(true).assignDescription("users allowed to use the WS").assignDisplayName("etc:wsUsersGroup").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("test:group0").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:group0").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("test:left").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:left").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("test:owner").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:owner").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
GroupSave groupSave = new GroupSave(grouperSession).assignName("test:right").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:right").assignTypeOfGroup(TypeOfGroup.group);
Group group = groupSave.save();
gshTotalObjectCount++;
if (groupSave.getSaveResultType() != SaveResultType.NO_CHANGE) { System.out.println("Made change for group: " + group.getName()); gshTotalChangeCount++;}
Group ownerGroup = GroupFinder.findByName(grouperSession, "test:owner", false);
Group leftFactorGroup = GroupFinder.findByName(grouperSession, "test:left", false);
Group rightFactorGroup = GroupFinder.findByName(grouperSession, "test:right", false);
CompositeType compositeType = CompositeType.COMPLEMENT;
if (ownerGroup != null) { if (leftFactorGroup != null) { if (rightFactorGroup != null) {  CompositeSave compositeSave = new CompositeSave(grouperSession).assignOwnerGroup(ownerGroup).assignCompositeType(compositeType).assignLeftFactorGroup(leftFactorGroup).assignRightFactorGroup(rightFactorGroup); gshTotalObjectCount++; Composite composite = compositeSave.save(); if (compositeSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for composite: " + composite.toString()); gshTotalChangeCount++;}  } else { System.out.println("ERROR: cant find rightFactorGroup: 'test:right'"); gshTotalErrorCount++; }  } else { System.out.println("ERROR: cant find leftFactorGroup: 'test:left'"); gshTotalErrorCount++; }  } else { System.out.println("ERROR: cant find overallGroup: 'test:owner'"); gshTotalErrorCount++; }
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef").assignCreateParentStemsIfNotExist(true).assignToStemAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef").assignCreateParentStemsIfNotExist(true).assignToStem(true).assignAttributeDefType(AttributeDefType.type).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:attrLoader:attributeDefLoaderDef").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:attrLoader:attributeDefLoaderTypeDef").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignAttributeDefType(AttributeDefType.type).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:entities:entitySubjectIdentifierDef").assignCreateParentStemsIfNotExist(true).assignToGroup(true).assignAttributeDefPublic(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:loaderLdap:grouperLoaderLdapDef").assignCreateParentStemsIfNotExist(true).assignToGroup(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:loaderLdap:grouperLoaderLdapValueDef").assignCreateParentStemsIfNotExist(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:permissionLimits:limitsDef").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignToEffMembership(true).assignToEffMembershipAssn(true).assignToGroup(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.limit).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:permissionLimits:limitsDefInt").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignToEffMembership(true).assignToEffMembershipAssn(true).assignToGroup(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.limit).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.integer);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:permissionLimits:limitsDefMarker").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignToEffMembership(true).assignToEffMembershipAssn(true).assignToGroup(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.limit).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:rules:rulesAttrDef").assignCreateParentStemsIfNotExist(true).assignToAttributeDefAssn(true).assignToGroupAssn(true).assignToStemAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:rules:rulesTypeDef").assignCreateParentStemsIfNotExist(true).assignToAttributeDef(true).assignToGroup(true).assignToStem(true).assignAttributeDefType(AttributeDefType.type).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:userData:grouperUserDataDef").assignCreateParentStemsIfNotExist(true).assignToImmMembership(true).assignToImmMembership(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:attribute:userData:grouperUserDataValueDef").assignCreateParentStemsIfNotExist(true).assignToImmMembershipAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:legacy:attribute:legacyAttributeDef_grouperLoader").assignCreateParentStemsIfNotExist(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("etc:legacy:attribute:legacyGroupTypeDef_grouperLoader").assignCreateParentStemsIfNotExist(true).assignToGroup(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("test:attrDefMarker").assignCreateParentStemsIfNotExist(true).assignToGroup(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(true).assignMultiValued(false).assignValueType(AttributeDefValueType.marker);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
AttributeDefSave attributeDefSave = new AttributeDefSave(grouperSession).assignName("test:attrDefMarkerMeta").assignCreateParentStemsIfNotExist(true).assignToGroupAssn(true).assignAttributeDefType(AttributeDefType.attr).assignMultiAssignable(false).assignMultiValued(false).assignValueType(AttributeDefValueType.string);
AttributeDef attributeDef = attributeDefSave.save();
gshTotalObjectCount++;
if (attributeDefSave.getSaveResultType() != SaveResultType.NO_CHANGE) {System.out.println("Made change for attributeDef: " + attributeDef.getName()); gshTotalChangeCount++;}
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:loaderLdap:grouperLoaderLdapDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataValueDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:userData:grouperUserDataValueDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapValueDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:loaderLdap:grouperLoaderLdapValueDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyGroupTypeDef_grouperLoader", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:legacy:attribute:legacyGroupTypeDef_grouperLoader");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyGroupTypeDef_grouperLoader'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:userData:grouperUserDataDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyAttributeDef_grouperLoader", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:legacy:attribute:legacyAttributeDef_grouperLoader");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefMarker", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:permissionLimits:limitsDefMarker");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDefMarker'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefInt", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:permissionLimits:limitsDefInt");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDefInt'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesAttrDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:rules:rulesAttrDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderTypeDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:attrLoader:attributeDefLoaderTypeDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderTypeDef'"); }
attributeDef = AttributeDefFinder.findByName("test:attrDefMarkerMeta", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: test:attrDefMarkerMeta");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesTypeDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:rules:rulesTypeDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesTypeDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:attrLoader:attributeDefLoaderDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:entities:entitySubjectIdentifierDef", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: etc:attribute:entities:entitySubjectIdentifierDef");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:entities:entitySubjectIdentifierDef'"); }
attributeDef = AttributeDefFinder.findByName("test:attrDefMarker", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: test:attrDefMarker");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarker'"); }
attributeDef = AttributeDefFinder.findByName("test:attrDefMarker", false);
if (attributeDef != null) { int changeCount = attributeDef.getAttributeDefActionDelegate().configureActionList("assign"); gshTotalObjectCount+=1; if (changeCount > 0) { gshTotalChangeCount+=changeCount; System.out.println("Made " + changeCount + " changes for actionList of attributeDef: test:attrDefMarker");  } } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarker'"); }
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataValueDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:userData:grouperUserDataValueDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:legacy:attribute", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:legacy:attribute'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "etc:grouperUi:grouperUiUserData", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:grouperUi:grouperUiUserData'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = null;
Group group = GroupFinder.findByName(grouperSession, "etc:grouperUi:grouperUiUserData", false);
if (subject != null) { if (group != null) { boolean changed = group.addOrEditMember(subject, false, true, null, null, false);      gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group membership: " + group.getName() + ", field: " + field + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:grouperUi:grouperUiUserData'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");}
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderTypeDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:attrLoader:attributeDefLoaderTypeDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("test:attrDefMarkerMeta", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'test:attrDefMarkerMeta'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesTypeDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:rules:rulesTypeDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:entities", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:entities'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyGroupTypeDef_grouperLoader", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:legacy:attribute:legacyGroupTypeDef_grouperLoader'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "etc:sysadminReadersGroup", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:sysadminReadersGroup'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:permissionLimits", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:permissionLimits'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:loaderLdap", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:loaderLdap'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:attrExternalSubjectInvite", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:attrExternalSubjectInvite'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "test", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'test'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:entities:entitySubjectIdentifierDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:entities:entitySubjectIdentifierDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "test:owner", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:owner'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("test:attrDefMarker", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'test:attrDefMarker'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:loaderLdap:grouperLoaderLdapDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "etc:sysadminViewersGroup", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:sysadminViewersGroup'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "test:right", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:right'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyAttributeDef_grouperLoader", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:userData", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:userData'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapValueDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "test:group0", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:group0'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefMarker", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefMarker'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesAttrDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:rules:rulesAttrDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefInt", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefInt'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "etc:wsUsersGroup", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:wsUsersGroup'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = null;
Group group = GroupFinder.findByName(grouperSession, "etc:wsUsersGroup", false);
if (subject != null) { if (group != null) { boolean changed = group.addOrEditMember(subject, false, true, null, null, false);      gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group membership: " + group.getName() + ", field: " + field + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'etc:wsUsersGroup'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");}
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:legacy", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:legacy'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:grouperUi", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:grouperUi'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("admins", false);
Group group = GroupFinder.findByName(grouperSession, "test:left", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:left'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:attrLoader", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:attrLoader'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:userData:grouperUserDataDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("stemmers", false);
Stem stem = StemFinder.findByName(grouperSession, "etc:attribute:rules", false);
if (privilege != null) { if (subject != null) { if (stem != null) { boolean changed = stem.grantPriv(subject, privilege, false);   gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for stem privilege: " + stem.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find stem: 'etc:attribute:rules'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrAdmins", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperSystem'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrReaders", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:entities:entitySubjectIdentifierDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:entities:entitySubjectIdentifierDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrUpdaters", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:entities:entitySubjectIdentifierDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:entities:entitySubjectIdentifierDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("viewers", false);
Group group = GroupFinder.findByName(grouperSession, "test:group0", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:group0'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("readers", false);
Group group = GroupFinder.findByName(grouperSession, "test:group0", false);
if (privilege != null) { if (subject != null) { if (group != null) { boolean changed = group.grantPriv(subject, privilege, false);    gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for group privilege: " + group.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject)); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find group: 'test:group0'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrReaders", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefMarker", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefMarker'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrUpdaters", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefMarker", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefMarker'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrReaders", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefInt", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefInt'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrUpdaters", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefInt", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDefInt'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrReaders", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
Subject subject = SubjectFinder.findByIdAndSource("GrouperAll", "g:isa", false);
Privilege privilege = Privilege.listToPriv("attrUpdaters", false);
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDef", false);
if (privilege != null) { if (subject != null) { if (attributeDef != null) { boolean changed = attributeDef.getPrivilegeDelegate().grantPriv(subject, privilege, false);  gshTotalObjectCount++;  if (changed) { gshTotalChangeCount++;  System.out.println("Made change for attributeDef privilege: " + attributeDef.getName() + ", privilege: " + privilege + ", subject: " + GrouperUtil.subjectToString(subject));  } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attribute definition: 'etc:attribute:permissionLimits:limitsDef'"); } } else { gshTotalErrorCount++; System.out.println("ERROR: cant find subject: 'g:isa' --> 'GrouperAll'");} } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectEmailAddress").assignCreateParentStemsIfNotExist(true).assignDescription("email address this invite was sent to").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectEmailAddress");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInvite").assignCreateParentStemsIfNotExist(true).assignDescription("is an invite").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInvite");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDate").assignCreateParentStemsIfNotExist(true).assignDescription("number of millis since 1970 that this invite was issued").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteDate");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmail").assignCreateParentStemsIfNotExist(true).assignDescription("email sent to user as invite").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmail");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmailWhenRegistered").assignCreateParentStemsIfNotExist(true).assignDescription("email addresses to notify when the user registers").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteEmailWhenRegistered");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteExpireDate").assignCreateParentStemsIfNotExist(true).assignDescription("number of millis since 1970 when this invite expires").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteExpireDate");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteGroupUuids").assignCreateParentStemsIfNotExist(true).assignDescription("comma separated group ids to assign this user to").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteGroupUuids");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteMemberId").assignCreateParentStemsIfNotExist(true).assignDescription("member id who invited this user").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteMemberId");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteUuid").assignCreateParentStemsIfNotExist(true).assignDescription("unique id in the email sent to the user").assignDisplayName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteUuid");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderTypeDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoader").assignCreateParentStemsIfNotExist(true).assignDescription("is a loader based attribute def, the loader attributes will be available to be assigned").assignDisplayName("etc:attribute:attrLoader:attributeLoader");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderTypeDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderActionQuery").assignCreateParentStemsIfNotExist(true).assignDescription("SQL query with at least the following column: action_name").assignDisplayName("etc:attribute:attrLoader:attributeLoaderActionQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderActionSetQuery").assignCreateParentStemsIfNotExist(true).assignDescription("SQL query with at least the following columns: if_has_action_name, then_has_action_name").assignDisplayName("etc:attribute:attrLoader:attributeLoaderActionSetQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderAttrQuery").assignCreateParentStemsIfNotExist(true).assignDescription("SQL query with at least some of the following columns: attr_name, attr_display_name, attr_description").assignDisplayName("etc:attribute:attrLoader:attributeLoaderAttrQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderAttrSetQuery").assignCreateParentStemsIfNotExist(true).assignDescription("SQL query with at least the following columns: if_has_attr_name, then_has_attr_name").assignDisplayName("etc:attribute:attrLoader:attributeLoaderAttrSetQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderAttrsLike").assignCreateParentStemsIfNotExist(true).assignDescription("If empty, then orphans will be left alone (for attributeDefName and attributeDefNameSets).  If %, then all orphans deleted.  If a SQL like string, then only ones in that like string not in loader will be deleted").assignDisplayName("etc:attribute:attrLoader:attributeLoaderAttrsLike");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderDbName").assignCreateParentStemsIfNotExist(true).assignDescription("DB name in grouper-loader.properties or default grouper db if blank").assignDisplayName("etc:attribute:attrLoader:attributeLoaderDbName");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderIntervalSeconds").assignCreateParentStemsIfNotExist(true).assignDescription("If a START_TO_START_INTERVAL schedule type, this is the number of seconds between runs").assignDisplayName("etc:attribute:attrLoader:attributeLoaderIntervalSeconds");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderPriority").assignCreateParentStemsIfNotExist(true).assignDescription("Quartz has a fixed threadpool (max configured in the grouper-loader.properties), and when the max is reached, then jobs are prioritized by this integer.  The higher the better, and the default if not set is 5.").assignDisplayName("etc:attribute:attrLoader:attributeLoaderPriority");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderQuartzCron").assignCreateParentStemsIfNotExist(true).assignDescription("If a CRON schedule type, this is the cron setting string from the quartz product to run a job daily, hourly, weekly, etc.  e.g. daily at 7am: 0 0 7 * * ?").assignDisplayName("etc:attribute:attrLoader:attributeLoaderQuartzCron");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderScheduleType").assignCreateParentStemsIfNotExist(true).assignDescription("Type of schedule.  Defaults to CRON if a cron schedule is entered, or START_TO_START_INTERVAL if an interval is entered").assignDisplayName("etc:attribute:attrLoader:attributeLoaderScheduleType");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:attrLoader:attributeLoaderType").assignCreateParentStemsIfNotExist(true).assignDescription("Type of loader, e.g. ATTR_SQL_SIMPLE").assignDisplayName("etc:attribute:attrLoader:attributeLoaderType");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:entities:entitySubjectIdentifierDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:entities:entitySubjectIdentifier").assignCreateParentStemsIfNotExist(true).assignDescription("This overrides the subjectId of the entity").assignDisplayName("etc:attribute:entities:entitySubjectIdentifier");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:entities:entitySubjectIdentifierDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdap").assignCreateParentStemsIfNotExist(true).assignDescription("Marks a group to be processed by the Grouper loader as an LDAP synced job").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:loaderLdap:grouperLoaderLdapValueDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapAdmins").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to ADMIN the group.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group admins");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapAndGroups").assignCreateParentStemsIfNotExist(true).assignDescription("If you want to restrict membership in the dynamic group based on other group(s), put the list of group names here comma-separated.  The require groups means if you put a group names in there (e.g. school:community:employee) then it will 'and' that group with the member list from the loader.  So only members of the group from the loader query who are also employees will be in the resulting group").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP require in groups");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapAttributeFilterExpression").assignCreateParentStemsIfNotExist(true).assignDescription("JEXL expression that returns true or false to signify if an attribute (in GROUPS_FROM_ATTRIBUTES) is ok to use for a group.  attributeValue is the variable that is the value of the attribute.").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP attribute filter expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapErrorUnresolvable").assignCreateParentStemsIfNotExist(true).assignDescription("Value could be true or false (default to true).  If true, then there will be an error if there are unresolvable subjects in the results.  If you know there are subjects in LDAP which are not resolvable by Grouper, set to false, they will be ignored").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP error unresolvable");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapExtraAttributes").assignCreateParentStemsIfNotExist(true).assignDescription("Attribute names (comma separated) to get LDAP data for expressions in group name, displayExtension, description, optional, for LDAP_GROUP_LIST").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP extra attributes");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapFilter").assignCreateParentStemsIfNotExist(true).assignDescription("LDAP filter returns objects that have subjectIds or subjectIdentifiers and group name (if LDAP_GROUP_LIST)").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP filter");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupAttrReaders").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to GROUP_ATTR_READ on the group.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group attribute readers");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupAttrUpdaters").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to GROUP_ATTR_UPDATE on the group.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group attribute updaters");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupAttribute").assignCreateParentStemsIfNotExist(true).assignDescription("Attribute name of the filter object result that holds the group name (required for loader ldap type: LDAP_GROUPS_FROM_ATTRIBUTE)").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group attribute name");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupDescriptionExpression").assignCreateParentStemsIfNotExist(true).assignDescription("JEXL expression language fragment that evaluates to the group description, optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group description expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupDisplayNameExpression").assignCreateParentStemsIfNotExist(true).assignDescription("JEXL expression language fragment that evaluates to the group display name, optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group display name expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupNameExpression").assignCreateParentStemsIfNotExist(true).assignDescription("JEXL expression language fragment that evaluates to the group name (relative in the stem as the group which has the loader definition), optional, for LDAP_GROUP_LIST, or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group name expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupTypes").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated GroupTypes which will be applied to the loaded groups.  The reason this enhancement exists is so we can do a group list filter and attach addIncludeExclude to the groups.  Note, if you do this (or use some requireGroups), the group name in the loader query should end in the system of record suffix, which by default is _systemOfRecord. optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group types");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapGroupsLike").assignCreateParentStemsIfNotExist(true).assignDescription("This should be a sql like string (e.g. school:orgs:%org%_systemOfRecord), and the loader should be able to query group names to see which names are managed by this loader job.  So if a group falls off the loader resultset (or is moved), this will help the loader remove the members from this group.  Note, if the group is used anywhere as a member or composite member, it wont be removed.  All include/exclude/requireGroups will be removed.  Though the two groups, include and exclude, will not be removed if they have members.  There is a grouper-loader.properties setting to remove loader groups if empty and not used: #if using a sql table, and specifying the name like string, then shoudl the group (in addition to memberships)# be removed if not used anywhere else?loader.sqlTable.likeString.removeGroupIfNotUsed = true").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP groups like");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapOptins").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to OPT IN to the group membership list.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group optins");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapOptouts").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to OPT OUT of the group membership list.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group optouts");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapPriority").assignCreateParentStemsIfNotExist(true).assignDescription("Quartz has a fixed threadpool (max configured in the grouper-loader.properties), and when the max is reached, then jobs are prioritized by this integer.  The higher the better, and the default if not set is 5.").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP scheduling priority");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapQuartzCron").assignCreateParentStemsIfNotExist(true).assignDescription("Quartz cron config string, e.g. every day at 8am is: 0 0 8 * * ?").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP quartz cron");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapReaders").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to READ the group membership.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group readers");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSearchDn").assignCreateParentStemsIfNotExist(true).assignDescription("Location that constrains the subtree where the filter is applicable").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP search base DN");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSearchScope").assignCreateParentStemsIfNotExist(true).assignDescription("How the deep in the subtree the search will take place.  Can be OBJECT_SCOPE, ONELEVEL_SCOPE, or SUBTREE_SCOPE (default)").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP search scope");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapServerId").assignCreateParentStemsIfNotExist(true).assignDescription("Server ID that is configured in the grouper-loader.properties that identifies the connection information to the LDAP server").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP server ID");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSourceId").assignCreateParentStemsIfNotExist(true).assignDescription("Source ID from the sources.xml that narrows the search for subjects.  This is optional though makes the loader job more efficient").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP source ID");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSubjectAttribute").assignCreateParentStemsIfNotExist(true).assignDescription("Attribute name of the filter object result that holds the subject id.  Note, if you use 'dn', and dn is not an attribute of the object, then the fully qualified object name will be used").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP subject attribute name");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSubjectExpression").assignCreateParentStemsIfNotExist(true).assignDescription("JEXL expression language fragment that processes the subject string before passing it to the subject API (optional)").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP subject expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapSubjectIdType").assignCreateParentStemsIfNotExist(true).assignDescription("The type of subject ID.  This can be either: subjectId (most efficient), subjectIdentifier (2nd most efficient), or subjectIdOrIdentifier").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP subject ID type");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapType").assignCreateParentStemsIfNotExist(true).assignDescription("This holds the type of job from the GrouperLoaderType enum, currently the only valid values are LDAP_SIMPLE, LDAP_GROUP_LIST, LDAP_GROUPS_FROM_ATTRIBUTES. Simple is a group loaded from LDAP filter which returns subject ids or identifiers.  Group list is an LDAP filter which returns group objects, and the group objects have a list of subjects.  Groups from attributes is an LDAP filter that returns subjects which have a multi-valued attribute e.g. affiliations where groups will be created based on subject who have each attribute value  ").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP type");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapUpdaters").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to UPDATE the group memberships.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group updaters");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:loaderLdap:grouperLoaderLdapViewers").assignCreateParentStemsIfNotExist(true).assignDescription("Comma separated subjectIds or subjectIdentifiers who will be allowed to VIEW the group.  optional for LDAP_GROUP_LIST or LDAP_GROUPS_FROM_ATTRIBUTES").assignDisplayName("etc:attribute:loaderLdap:Grouper loader LDAP group viewers");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:loaderLdap:grouperLoaderLdapValueDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefInt", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitAmountLessThan").assignCreateParentStemsIfNotExist(true).assignDescription("Make sure the amount is less than the configured value").assignDisplayName("etc:attribute:permissionLimits:amount less than");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDefInt'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitAmountLessThanOrEqual").assignCreateParentStemsIfNotExist(true).assignDescription("Make sure the amount is less or equal to the configured value").assignDisplayName("etc:attribute:permissionLimits:amount less than or equal to");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDefInt'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitExpression").assignCreateParentStemsIfNotExist(true).assignDescription("An expression language limit has a value of an EL which evaluates to true or false").assignDisplayName("etc:attribute:permissionLimits:Expression");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitIpOnNetworkRealm").assignCreateParentStemsIfNotExist(true).assignDescription("If the user is on an IP address on a centrally configured list of addresses").assignDisplayName("etc:attribute:permissionLimits:ipAddress on network realm");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitIpOnNetworks").assignCreateParentStemsIfNotExist(true).assignDescription("If the user is on an IP address on the following networks").assignDisplayName("etc:attribute:permissionLimits:ipAddress on networks");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitLabelsContain").assignCreateParentStemsIfNotExist(true).assignDescription("Configure a set of comma separated labels.  The env variable 'labels' should be passed with comma separated labels.  If one is there, its ok, if not, then disallowed").assignDisplayName("etc:attribute:permissionLimits:labels contains");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:permissionLimits:limitsDefMarker", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:permissionLimits:limitWeekday9to5").assignCreateParentStemsIfNotExist(true).assignDescription("Make sure the check for the permission happens between 9am to 5pm on Monday through Friday").assignDisplayName("etc:attribute:permissionLimits:Weekday 9 to 5");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:permissionLimits:limitsDefMarker'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesTypeDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:rule").assignCreateParentStemsIfNotExist(true).assignDescription("is a rule").assignDisplayName("etc:attribute:rules:rule");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesTypeDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesAttrDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleActAsSubjectId").assignCreateParentStemsIfNotExist(true).assignDescription("subject id to act as, mutually exclusive with identifier").assignDisplayName("etc:attribute:rules:ruleActAsSubjectId");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleActAsSubjectIdentifier").assignCreateParentStemsIfNotExist(true).assignDescription("subject identifier to act as, mutually exclusive with id").assignDisplayName("etc:attribute:rules:ruleActAsSubjectIdentifier");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleActAsSubjectSourceId").assignCreateParentStemsIfNotExist(true).assignDescription("subject source id to act as").assignDisplayName("etc:attribute:rules:ruleActAsSubjectSourceId");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckArg0").assignCreateParentStemsIfNotExist(true).assignDescription("when the check needs an arg, this is the arg0").assignDisplayName("etc:attribute:rules:ruleCheckArg0");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckArg1").assignCreateParentStemsIfNotExist(true).assignDescription("when the check needs an arg, this is the arg1").assignDisplayName("etc:attribute:rules:ruleCheckArg1");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckOwnerId").assignCreateParentStemsIfNotExist(true).assignDescription("when the check should be to see if rule should fire, this is owner of type, mutually exclusive with name").assignDisplayName("etc:attribute:rules:ruleCheckOwnerId");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckOwnerName").assignCreateParentStemsIfNotExist(true).assignDescription("when the check should be to see if rule should fire, this is owner of type, mutually exclusice with id").assignDisplayName("etc:attribute:rules:ruleCheckOwnerName");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckStemScope").assignCreateParentStemsIfNotExist(true).assignDescription("when the check is a stem type, this is Stem.Scope ALL or SUB").assignDisplayName("etc:attribute:rules:ruleCheckStemScope");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleCheckType").assignCreateParentStemsIfNotExist(true).assignDescription("when the check should be to see if rule should fire, enum: RuleCheckType").assignDisplayName("etc:attribute:rules:ruleCheckType");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfConditionEl").assignCreateParentStemsIfNotExist(true).assignDescription("expression language to run to see if the rule should run, or blank if should run always").assignDisplayName("etc:attribute:rules:ruleIfConditionEl");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfConditionEnum").assignCreateParentStemsIfNotExist(true).assignDescription("RuleIfConditionEnum that sees if rule should fire, or exclude if should run always").assignDisplayName("etc:attribute:rules:ruleIfConditionEnum");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfConditionEnumArg0").assignCreateParentStemsIfNotExist(true).assignDescription("RuleIfConditionEnumArg0 if the if condition takes an argument, this is the first one").assignDisplayName("etc:attribute:rules:ruleIfConditionEnumArg0");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfConditionEnumArg1").assignCreateParentStemsIfNotExist(true).assignDescription("RuleIfConditionEnumArg1 if the if condition takes an argument, this is the second param").assignDisplayName("etc:attribute:rules:ruleIfConditionEnumArg1");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfOwnerId").assignCreateParentStemsIfNotExist(true).assignDescription("when the if part has an arg, this is owner of if, mutually exclusive with name").assignDisplayName("etc:attribute:rules:ruleIfOwnerId");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfOwnerName").assignCreateParentStemsIfNotExist(true).assignDescription("when the if part has an arg, this is owner of if, mutually exclusive with id").assignDisplayName("etc:attribute:rules:ruleIfOwnerName");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleIfStemScope").assignCreateParentStemsIfNotExist(true).assignDescription("when the if part is a stem, this is the scope of SUB or ONE").assignDisplayName("etc:attribute:rules:ruleIfStemScope");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleRunDaemon").assignCreateParentStemsIfNotExist(true).assignDescription("T|F for if this rule daemon should run.  Default to true if blank and check and if are enums, false if not").assignDisplayName("etc:attribute:rules:ruleRunDaemon");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleThenEl").assignCreateParentStemsIfNotExist(true).assignDescription("expression language to run when the rule fires").assignDisplayName("etc:attribute:rules:ruleThenEl");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleThenEnum").assignCreateParentStemsIfNotExist(true).assignDescription("RuleThenEnum to run when the rule fires").assignDisplayName("etc:attribute:rules:ruleThenEnum");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleThenEnumArg0").assignCreateParentStemsIfNotExist(true).assignDescription("RuleThenEnum argument 0 to run when the rule fires (enum might need args)").assignDisplayName("etc:attribute:rules:ruleThenEnumArg0");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleThenEnumArg1").assignCreateParentStemsIfNotExist(true).assignDescription("RuleThenEnum argument 1 to run when the rule fires (enum might need args)").assignDisplayName("etc:attribute:rules:ruleThenEnumArg1");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleThenEnumArg2").assignCreateParentStemsIfNotExist(true).assignDescription("RuleThenEnum argument 2 to run when the rule fires (enum might need args)").assignDisplayName("etc:attribute:rules:ruleThenEnumArg2");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:rules:ruleValid").assignCreateParentStemsIfNotExist(true).assignDescription("T|F for if this rule is valid, or the reason, managed by hook automatically").assignDisplayName("etc:attribute:rules:ruleValid");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserData").assignCreateParentStemsIfNotExist(true).assignDescription("Marks a group that has memberships which have attributes for user data").assignDisplayName("etc:attribute:userData:Grouper user data");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:attribute:userData:grouperUserDataValueDef", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataFavoriteAttributeDefNames").assignCreateParentStemsIfNotExist(true).assignDescription("A list of attribute definition name ids and metadata in json format that are the favorites for a user").assignDisplayName("etc:attribute:userData:Grouper user data favorite attribute definition names");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataFavoriteAttributeDefs").assignCreateParentStemsIfNotExist(true).assignDescription("A list of attribute definition ids and metadata in json format that are the favorites for a user").assignDisplayName("etc:attribute:userData:Grouper user data favorite attribute definitions");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataFavoriteGroups").assignCreateParentStemsIfNotExist(true).assignDescription("A list of group ids and metadata in json format that are the favorites for a user").assignDisplayName("etc:attribute:userData:Grouper user data favorite groups");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataFavoriteStems").assignCreateParentStemsIfNotExist(true).assignDescription("A list of folder ids and metadata in json format that are the favorites for a user").assignDisplayName("etc:attribute:userData:Grouper user data favorite folders");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataFavoriteSubjects").assignCreateParentStemsIfNotExist(true).assignDescription("A list of member ids and metadata in json format that are the favorites for a user").assignDisplayName("etc:attribute:userData:Grouper user data favorite subjects");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataPreferences").assignCreateParentStemsIfNotExist(true).assignDescription("Preferences and metadata in json format for a user").assignDisplayName("etc:attribute:userData:Grouper user data preferences");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataRecentAttributeDefNames").assignCreateParentStemsIfNotExist(true).assignDescription("A list of attribute definition name ids and metadata in json format that are the recently used attribute definition names for a user").assignDisplayName("etc:attribute:userData:Grouper user data recent attribute definition names");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataRecentAttributeDefs").assignCreateParentStemsIfNotExist(true).assignDescription("A list of attribute definition ids and metadata in json format that are the recently used attribute definitions for a user").assignDisplayName("etc:attribute:userData:Grouper user data recent attribute definitions");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataRecentGroups").assignCreateParentStemsIfNotExist(true).assignDescription("A list of group ids and metadata in json format that are the recently used groups for a user").assignDisplayName("etc:attribute:userData:Grouper user data recent groups");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataRecentStems").assignCreateParentStemsIfNotExist(true).assignDescription("A list of folder ids and metadata in json format that are the recently used folders for a user").assignDisplayName("etc:attribute:userData:Grouper user data recent folders");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:attribute:userData:grouperUserDataRecentSubjects").assignCreateParentStemsIfNotExist(true).assignDescription("A list of attribute member ids and metadata in json format that are the recently used subjects for a user").assignDisplayName("etc:attribute:userData:Grouper user data recent subjects");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:attribute:userData:grouperUserDataValueDef'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyAttributeDef_grouperLoader", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderAndGroups").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderAndGroups");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderDbName").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderDbName");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupQuery").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupTypes").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupTypes");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupsLike").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderGroupsLike");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderIntervalSeconds").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderIntervalSeconds");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderPriority").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderPriority");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderQuartzCron").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderQuartzCron");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderQuery").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderQuery");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderScheduleType").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderScheduleType");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyAttribute_grouperLoaderType").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyAttribute_grouperLoaderType");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyGroupTypeDef_grouperLoader", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("etc:legacy:attribute:legacyGroupType_grouperLoader").assignCreateParentStemsIfNotExist(true).assignDisplayName("etc:legacy:attribute:legacyGroupType_grouperLoader");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyGroupTypeDef_grouperLoader'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("test:attrDefMarker", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefName0").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefName0");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarker'"); } 
AttributeDef attributeDef = AttributeDefFinder.findByName("test:attrDefMarkerMeta", false);
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefNameMeta0").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefNameMeta0");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefNameMeta1").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefNameMeta1");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefNameMeta2").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefNameMeta2");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefNameMeta3").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefNameMeta3");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); } 
if (attributeDef != null) {  AttributeDefNameSave attributeDefNameSave = new AttributeDefNameSave(grouperSession, attributeDef).assignName("test:attributeDefNameMeta4").assignCreateParentStemsIfNotExist(true).assignDisplayName("test:attributeDefNameMeta4");  AttributeDefName attributeDefName = attributeDefNameSave.save();  gshTotalObjectCount++;  if (attributeDefNameSave.getSaveResultType() != SaveResultType.NO_CHANGE) {gshTotalChangeCount++;  System.out.println("Made change for attributeDefName: " + attributeDefName.getName()); }   } else { gshTotalErrorCount++;  System.out.println("ERROR: cant find attributeDef: 'test:attrDefMarkerMeta'"); } 
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrLoader:attributeDefLoaderDef", false);
attributeDefScopeType = AttributeDefScopeType.valueOfIgnoreCase("attributeDefNameIdAssigned", true);
if (attributeDef != null) { if (attributeDefScopeType != null) { gshTotalObjectCount++;  if (attributeDef.getAttributeDefScopeDelegate().retrieveAttributeDefScope(attributeDefScopeType, ""b553b108a6fd4aa2a93450de43dd8c23"", "null") != null) { gshTotalChangeCount++; attributeDef.getAttributeDefScopeDelegate().assignScope(attributeDefScopeType, ""b553b108a6fd4aa2a93450de43dd8c23"", "null"); System.out.println("Made change for attributeDefScope on attributeDef: etc:attribute:attrLoader:attributeDefLoaderDef, b553b108a6fd4aa2a93450de43dd8c23, null"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDefScopeType: 'attributeDefNameIdAssigned'"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrLoader:attributeDefLoaderDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef", false);
attributeDefScopeType = AttributeDefScopeType.valueOfIgnoreCase("nameEquals", true);
if (attributeDef != null) { if (attributeDefScopeType != null) { gshTotalObjectCount++;  if (attributeDef.getAttributeDefScopeDelegate().retrieveAttributeDefScope(attributeDefScopeType, ""etc:attribute:attrExternalSubjectInvite:externalSubjectInvite"", "null") != null) { gshTotalChangeCount++; attributeDef.getAttributeDefScopeDelegate().assignScope(attributeDefScopeType, ""etc:attribute:attrExternalSubjectInvite:externalSubjectInvite"", "null"); System.out.println("Made change for attributeDefScope on attributeDef: etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef, etc:attribute:attrExternalSubjectInvite:externalSubjectInvite, null"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDefScopeType: 'nameEquals'"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDef: 'etc:attribute:attrExternalSubjectInvite:externalSubjectInviteAttrDef'"); }
attributeDef = AttributeDefFinder.findByName("etc:legacy:attribute:legacyAttributeDef_grouperLoader", false);
attributeDefScopeType = AttributeDefScopeType.valueOfIgnoreCase("idEquals", true);
if (attributeDef != null) { if (attributeDefScopeType != null) { gshTotalObjectCount++;  if (attributeDef.getAttributeDefScopeDelegate().retrieveAttributeDefScope(attributeDefScopeType, ""0010a73cbaa24d52a4406d177392f5e2"", "null") != null) { gshTotalChangeCount++; attributeDef.getAttributeDefScopeDelegate().assignScope(attributeDefScopeType, ""0010a73cbaa24d52a4406d177392f5e2"", "null"); System.out.println("Made change for attributeDefScope on attributeDef: etc:legacy:attribute:legacyAttributeDef_grouperLoader, 0010a73cbaa24d52a4406d177392f5e2, null"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDefScopeType: 'idEquals'"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDef: 'etc:legacy:attribute:legacyAttributeDef_grouperLoader'"); }
attributeDef = AttributeDefFinder.findByName("etc:attribute:rules:rulesAttrDef", false);
attributeDefScopeType = AttributeDefScopeType.valueOfIgnoreCase("nameEquals", true);
if (attributeDef != null) { if (attributeDefScopeType != null) { gshTotalObjectCount++;  if (attributeDef.getAttributeDefScopeDelegate().retrieveAttributeDefScope(attributeDefScopeType, ""etc:attribute:rules:rule"", "null") != null) { gshTotalChangeCount++; attributeDef.getAttributeDefScopeDelegate().assignScope(attributeDefScopeType, ""etc:attribute:rules:rule"", "null"); System.out.println("Made change for attributeDefScope on attributeDef: etc:attribute:rules:rulesAttrDef, etc:attribute:rules:rule, null"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDefScopeType: 'nameEquals'"); }  } else { gshTotalErrorCount++; System.out.println("ERROR: cant find attributeDef: 'etc:attribute:rules:rulesAttrDef'"); }
Set attributeAssignIdsAlreadyUsed = new HashSet();
boolean problemWithAttributeAssign = false;
AttributeAssignSave attributeAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignSave.assignAttributeAssignType(AttributeAssignType.group);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefName0", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefName0");  problemWithAttributeAssign = true; }
attributeAssignSave.assignAttributeDefName(attributeDefName);
Group ownerGroup = GroupFinder.findByName(grouperSession, "test:group0", false);
if (ownerGroup == null) { gshTotalErrorCount++; System.out.println("Error: cant find group: test:group0"); problemWithAttributeAssign = true;  }
attributeAssignSave.assignOwnerGroup(ownerGroup);
attributeAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta1", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta1");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta0", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta0");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("B");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta2", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta2");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("F");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
gshTotalObjectCount += 6;
if (!problemWithAttributeAssign) { AttributeAssign attributeAssign = attributeAssignSave.save(); if (attributeAssignSave.getChangesCount() > 0) { gshTotalChangeCount+=attributeAssignSave.getChangesCount();  System.out.println("Made " + attributeAssignSave.getChangesCount() + " changes for attribute assign: " + attributeAssign.toString()); } }
boolean problemWithAttributeAssign = false;
AttributeAssignSave attributeAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignSave.assignAttributeAssignType(AttributeAssignType.group);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefName0", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefName0");  problemWithAttributeAssign = true; }
attributeAssignSave.assignAttributeDefName(attributeDefName);
Group ownerGroup = GroupFinder.findByName(grouperSession, "test:group0", false);
if (ownerGroup == null) { gshTotalErrorCount++; System.out.println("Error: cant find group: test:group0"); problemWithAttributeAssign = true;  }
attributeAssignSave.assignOwnerGroup(ownerGroup);
attributeAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta2", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta2");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("D");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta1", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta1");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("F");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.group_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("test:attributeDefNameMeta3", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: test:attributeDefNameMeta3");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("E");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
gshTotalObjectCount += 7;
if (!problemWithAttributeAssign) { AttributeAssign attributeAssign = attributeAssignSave.save(); if (attributeAssignSave.getChangesCount() > 0) { gshTotalChangeCount+=attributeAssignSave.getChangesCount();  System.out.println("Made " + attributeAssignSave.getChangesCount() + " changes for attribute assign: " + attributeAssign.toString()); } }
boolean problemWithAttributeAssign = false;
AttributeAssignSave attributeAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignSave.assignAttributeAssignType(AttributeAssignType.imm_mem);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("etc:attribute:userData:grouperUserData", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: etc:attribute:userData:grouperUserData");  problemWithAttributeAssign = true; }
attributeAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
Group ownerGroup = GroupFinder.findByName(grouperSession, "etc:grouperUi:grouperUiUserData", false);
if (ownerGroup == null) { gshTotalErrorCount++; System.out.println("Error: cant find group: etc:grouperUi:grouperUiUserData"); problemWithAttributeAssign = true;  }
attributeAssignSave.assignOwnerGroup(ownerGroup);
Subject ownerSubject = SubjectFinder.findByIdAndSource("GrouperSystem", "g:isa", false);
if (ownerSubject == null) { gshTotalErrorCount++; System.out.println("Error: cant find subject: g:isa: GrouperSystem"); problemWithAttributeAssign = true; }
if (ownerSubject != null) { Member ownerMember = MemberFinder.findBySubject(grouperSession, ownerSubject, true); attributeAssignSave.assignOwnerMember(ownerMember); }
AttributeAssignSave attributeAssignOnAssignSave = new AttributeAssignSave(grouperSession);
attributeAssignOnAssignSave.assignAttributeAssignIdsToNotUse(attributeAssignIdsAlreadyUsed);
attributeAssignOnAssignSave.assignAttributeAssignType(AttributeAssignType.imm_mem_asgn);
AttributeDefName attributeDefName = AttributeDefNameFinder.findByName("etc:attribute:userData:grouperUserDataRecentGroups", false);
if (attributeDefName == null) { gshTotalErrorCount++;  System.out.println("Error: cant find attributeDefName: etc:attribute:userData:grouperUserDataRecentGroups");  problemWithAttributeAssign = true; }
attributeAssignOnAssignSave.assignAttributeDefName(attributeDefName);
attributeAssignOnAssignSave.assignPutAttributeAssignIdsToNotUseSet(true);
AttributeAssignValue attributeAssignValue = new AttributeAssignValue();
attributeAssignValue.setValueString("{"list":[{"timestamp":1455216205366,"uuid":"c83ddd154675459bbd95ed1bf084ee4f"},{"timestamp":1455216205195,"uuid":"55b7f1fa2e4b4681bec6672a27f8f6f6"},{"timestamp":1455216205026,"uuid":"902f390b8bb140dcb457d73e93629bd8"}]}");
attributeAssignOnAssignSave.addAttributeAssignValue(attributeAssignValue);
attributeAssignSave.addAttributeAssignOnThisAssignment(attributeAssignOnAssignSave);
gshTotalObjectCount += 3;
if (!problemWithAttributeAssign) { AttributeAssign attributeAssign = attributeAssignSave.save(); if (attributeAssignSave.getChangesCount() > 0) { gshTotalChangeCount+=attributeAssignSave.getChangesCount();  System.out.println("Made " + attributeAssignSave.getChangesCount() + " changes for attribute assign: " + attributeAssign.toString()); } }
System.out.println("Script complete: total objects: " + gshTotalObjectCount + ", expected approx total: 243, changes: " + gshTotalChangeCount + ", known errors (view output for full list): " + gshTotalErrorCount);

  • No labels