Class EsbListenerBase

java.lang.Object
edu.internet2.middleware.grouper.esb.listener.EsbListenerBase
Direct Known Subclasses:
CompositeMembershipsChangeLogConsumer, DigitalMarketplaceEsbPublisher, EsbHttpPublisher, EsbMessagingPublisher, EsbPublisherChangeLogScript, EsbXmppPublisher, GrouperAttestationEsbListener, GrouperDeprovisioningEsbListener, GrouperObjectTypesEsbListener, GrouperRecentMembershipsChangeLogConsumer, MembershipRequireEsbListener, ProvisioningSyncConsumer, RemedyEsbPublisher, StemViewPrivilegeEsbListener, ZoomEsbPublisher

public abstract class EsbListenerBase extends Object
extend this to make an ESB processor
  • Constructor Details

    • EsbListenerBase

      public EsbListenerBase()
  • Method Details

    • getEsbConsumer

      public EsbConsumer getEsbConsumer()
      ref to consumer
      Returns:
      consumer
    • setEsbConsumer

      public void setEsbConsumer(EsbConsumer esbConsumer1)
      ref to consumer
      Parameters:
      esbConsumer1 -
    • getChangeLogProcessorMetadata

      public ChangeLogProcessorMetadata getChangeLogProcessorMetadata()
      get stuff like hib3 loader log
      Returns:
      metadata
    • setChangeLogProcessorMetadata

      public void setChangeLogProcessorMetadata(ChangeLogProcessorMetadata changeLogProcessorMetadata1)
      get stuff like hib3 loader log
      Parameters:
      changeLogProcessorMetadata1 -
    • dispatchEvent

      public abstract boolean dispatchEvent(String eventJsonString, String consumerName)
      Parameters:
      eventJsonString -
      consumerName -
      Returns:
      true if ok, false if not
    • dispatchEventList

      @Deprecated public ProvisioningSyncConsumerResult dispatchEventList(List<EsbEventContainer> esbEventContainers, GrouperProvisioningProcessingResult grouperProvisioningProcessingResult)
      Deprecated.
      implement this instead of dispatchEvent if you want objects instead of json string
      Parameters:
      esbEventContainers -
      grouperProvisioningProcessingResult -
      consumerName -
      Returns:
      true if ok, false if not
    • dispatchEventList

      public ProvisioningSyncConsumerResult dispatchEventList(List<EsbEventContainer> esbEventContainers)
      implement this instead of dispatchEvent if you want objects instead of json string
      Parameters:
      esbEventContainers -
      grouperProvisioningProcessingResult -
      consumerName -
      Returns:
      true if ok, false if not
    • encryptMessage

      public String encryptMessage(String message, Class<GcEncryptionInterface> encryptionImplClass, String encryptionKey, boolean dontSendFirst4)
    • convertEventsToNoSensitiveData

      public EsbEvents convertEventsToNoSensitiveData(EsbEvents events, boolean noSensitiveData)
      convert events to events with no sensitive data
      Parameters:
      esbEvents -
      noSensitiveData -
      Returns:
    • convertEventsToString

      public String convertEventsToString(EsbEvents events)
      convert events to json. optionally indent
      Parameters:
      events -
      Returns:
      the json
    • disconnect

      public abstract void disconnect()
      disconnect if needed
    • isProcessObjectsInsteadOfJson

      protected boolean isProcessObjectsInsteadOfJson()
      return true if you want objects instead of json
      Returns:
    • getBatchSize

      public Integer getBatchSize()
      override the batch size configured in config file
      Returns:
    • callAtLeastOnce

      public boolean callAtLeastOnce()
      some change log consumers might want to be called even if nothing happened in change log e.g. check messages in provisioners
      Returns: