Class GrouperAttestationJob

java.lang.Object
edu.internet2.middleware.grouper.app.loader.OtherJobBase
edu.internet2.middleware.grouper.app.attestation.GrouperAttestationJob
All Implemented Interfaces:
org.quartz.Job

@DisallowConcurrentExecution public class GrouperAttestationJob extends OtherJobBase
attestation daemon
  • Field Details

  • Constructor Details

    • GrouperAttestationJob

      public GrouperAttestationJob()
  • Method Details

    • stemAttestationProcess

      public static boolean stemAttestationProcess(Stem stem, AttributeAssign markerAssignment, boolean isDelete, String newDateCertified, boolean useThreadToPropagate)
      process attestation for a stem or its ancestor
      Parameters:
      stem -
      markerAssignment -
      isDelete -
      Returns:
      true if finished, false if thread still running
    • retrieveAttributeDefNameEmailedDate

      public static AttributeDefName retrieveAttributeDefNameEmailedDate()
      last emailed attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameMinCertifiedDate

      public static AttributeDefName retrieveAttributeDefNameMinCertifiedDate()
      min certified date attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameCalculatedDaysLeft

      public static AttributeDefName retrieveAttributeDefNameCalculatedDaysLeft()
      calculated days left attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDef

      public static AttributeDef retrieveAttributeDef()
      Returns:
      the def
    • retrieveAttributeDefNameSendEmail

      public static AttributeDefName retrieveAttributeDefNameSendEmail()
      send email attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameType

      public static AttributeDefName retrieveAttributeDefNameType()
      type of attestation (group or report)
      Returns:
      the attribute def name
    • retrieveAttributeDefNameReportConfigurationId

      public static AttributeDefName retrieveAttributeDefNameReportConfigurationId()
      report id
      Returns:
      the attribute def name
    • retrieveAttributeDefNameAuthorizedGroupId

      public static AttributeDefName retrieveAttributeDefNameAuthorizedGroupId()
      authorized group id
      Returns:
      the attribute def name
    • retrieveAttributeDefNameEmailGroupId

      public static AttributeDefName retrieveAttributeDefNameEmailGroupId()
      email group id
      Returns:
      the attribute def name
    • retrieveAttributeDefNameHasAttestation

      public static AttributeDefName retrieveAttributeDefNameHasAttestation()
      if this object has attestation assigned (either in group or stem)
      Returns:
      the attribute def name
    • retrieveAttributeDefNameByName

      public static AttributeDefName retrieveAttributeDefNameByName(String nameOfAttributeDefName)
      Parameters:
      nameOfAttributeDefName -
      Returns:
      the attribute def name
    • retrieveAttributeDefNameDateCertified

      public static AttributeDefName retrieveAttributeDefNameDateCertified()
      date certified attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameDaysUntilRecertify

      public static AttributeDefName retrieveAttributeDefNameDaysUntilRecertify()
      days until recertify attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameDaysBeforeToRemind

      public static AttributeDefName retrieveAttributeDefNameDaysBeforeToRemind()
      days before remind attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameEmailAddresses

      public static AttributeDefName retrieveAttributeDefNameEmailAddresses()
      email addresses attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameDirectAssignment

      public static AttributeDefName retrieveAttributeDefNameDirectAssignment()
      direct assignment attribute def name
      Returns:
      the attribute def name
    • retrieveAttributeDefNameValueDef

      public static AttributeDefName retrieveAttributeDefNameValueDef()
      attribute def name assigned to stem or group
      Returns:
      the attribute def name
    • retrieveAttributeDefNameStemScope

      public static AttributeDefName retrieveAttributeDefNameStemScope()
      attribute def name of which scope when assigned to stem
      Returns:
      the attribute def name
    • attestationStemName

      public static String attestationStemName()
      Returns:
      the stem name
    • updateObjectAttributesToPatch81

      public static void updateObjectAttributesToPatch81(Group group, AttributeAssign groupAttributeAssign)
      Parameters:
      groupAttributeAssign -
      group -
    • findParentFolderAssign

      public static AttributeAssign findParentFolderAssign(Stem stem)
      Parameters:
      stem -
      Returns:
      attribute assign
    • updateAttestationMetadataForSingleObject

      public static void updateAttestationMetadataForSingleObject(Group group, boolean resetCalculatedDaysLeft)
      Parameters:
      group -
      resetCalculatedDaysLeft -
    • updateCalculatedDaysLeft

      public static int updateCalculatedDaysLeft(AttributeAssign attributeAssign, String attestationDateCertified, String configuredAttestationDaysUntilRecertify, boolean resetDateCertified, boolean[] madeChange)
      Parameters:
      attributeAssign -
      attestationDateCertified -
      configuredAttestationDaysUntilRecertify -
      resetDateCertified -
      Returns:
      days needed until recertify
    • updateObjectAttributesToPatch81

      public static void updateObjectAttributesToPatch81(Group group, AttributeAssign groupAttributeAssign, boolean updateLastCertified)
      Parameters:
      groupAttributeAssign -
      group -
      updateLastCertified -
    • updateObjectAttributesToPatch81

      public static void updateObjectAttributesToPatch81(Stem stem, AttributeAssign stemAttributeAssign)
      Parameters:
      stemAttributeAssign -
      stem -
    • updateCalculatedDaysUntilRecertify

      public static void updateCalculatedDaysUntilRecertify(Stem stem)
      update the calculated days until recertify (i.e. if the stem has a report based attestation)
      Parameters:
      stem - stem to calculate
    • updateCalculatedDaysUntilRecertify

      public static void updateCalculatedDaysUntilRecertify(Group group, AttributeAssign attributeAssign)
      update the calculated days until recertify
      Parameters:
      group - group to calculate
      attributeAssign - that has the settings, stem or group
    • buildAttestationGroupEmails

      protected static Map<String,Set<EmailObject>> buildAttestationGroupEmails(AttributeAssign stemAttributeAssign, Set<AttributeAssign> groupAttributeAssigns)
      get map of email addresses to email objects for group attributes
      Parameters:
      stemAttributeAssign -
      groupAttributeAssigns -
      Returns:
      the map of email objects
    • main

      public static void main(String[] args)
      run the daemon
      Parameters:
      args -
    • runDaemonStandalone

      public static void runDaemonStandalone()
      run standalone
    • run

      Description copied from class: OtherJobBase
      implement this method for the logic of the OtherJob
      Specified by:
      run in class OtherJobBase
      Returns:
      the output
      See Also:
    • stemAttestationProcessHelper

      public static Map<String,Set<EmailObject>> stemAttestationProcessHelper(Stem stem, AttributeAssign stemAttributeAssign, String stemNameNewDateCertified, String newDateCertified)
      take a stem attribute assign and process it
      Parameters:
      stem - is the stem the attribute is on
      stemAttributeAssign -
      Returns:
      the email objects
    • removeDirectGroupAttestation

      public static void removeDirectGroupAttestation(Group group)
      remove direct group assignment in favor of stem assignment
      Parameters:
      group -
    • removeDirectGroupAttestation

      public static void removeDirectGroupAttestation(Group group, boolean changeToIndirect)
      remove direct group assignment in favor of stem assignment
      Parameters:
      group -
      changeToIndirect - means keep the indirect attributes
    • clearCache

      public static void clearCache()