Class SystemHookManager

java.lang.Object
org.gitlab4j.api.systemhooks.SystemHookManager
All Implemented Interfaces:
HookManager

public class SystemHookManager
extends Object
implements HookManager
This class provides a handler for processing GitLab System Hook callouts.
  • Field Details

  • Constructor Details

    • SystemHookManager

      public SystemHookManager()
      Create a HookManager to handle GitLab system hook events.
    • SystemHookManager

      public SystemHookManager​(String secretToken)
      Create a HookManager to handle GitLab system hook events which will be verified against the specified secretToken.
      Parameters:
      secretToken - the secret token to verify against
  • Method Details

    • getSecretToken

      public String getSecretToken()
      Get the secret token that received hook events should be validated against.
      Specified by:
      getSecretToken in interface HookManager
      Returns:
      the secret token that received hook events should be validated against
    • setSecretToken

      public void setSecretToken​(String secretToken)
      Set the secret token that received hook events should be validated against.
      Specified by:
      setSecretToken in interface HookManager
      Parameters:
      secretToken - the secret token to verify against
    • handleEvent

      public void handleEvent​(javax.servlet.http.HttpServletRequest request) throws GitLabApiException
      Parses and verifies an SystemHookEvent instance from the HTTP request and fires it off to the registered listeners.
      Specified by:
      handleEvent in interface HookManager
      Parameters:
      request - the HttpServletRequest to read the Event instance from
      Throws:
      GitLabApiException - if the parsed event is not supported
    • handleRequest

      public SystemHookEvent handleRequest​(javax.servlet.http.HttpServletRequest request) throws GitLabApiException
      Parses and verifies an SystemHookEvent instance from the HTTP request and fires it off to the registered listeners.
      Parameters:
      request - the HttpServletRequest to read the Event instance from
      Returns:
      the processed SystemHookEvent instance read from the request,null if the request not contain a system hook event
      Throws:
      GitLabApiException - if the parsed event is not supported
    • handleEvent

      public void handleEvent​(SystemHookEvent event) throws GitLabApiException
      Verifies the provided Event and fires it off to the registered listeners.
      Parameters:
      event - the Event instance to handle
      Throws:
      GitLabApiException - if the event is not supported
    • addListener

      public void addListener​(SystemHookListener listener)
      Adds a System Hook event listener.
      Parameters:
      listener - the SystemHookListener to add
    • removeListener

      public void removeListener​(SystemHookListener listener)
      Removes a System Hook event listener.
      Parameters:
      listener - the SystemHookListener to remove
    • fireEvent

      public void fireEvent​(SystemHookEvent event) throws GitLabApiException
      Fire the event to the registered listeners.
      Parameters:
      event - the SystemHookEvent instance to fire to the registered event listeners
      Throws:
      GitLabApiException - if the event is not supported
    • fireProjectEvent

      protected void fireProjectEvent​(ProjectSystemHookEvent event)
    • fireTeamMemberEvent

      protected void fireTeamMemberEvent​(TeamMemberSystemHookEvent event)
    • fireUserEvent

      protected void fireUserEvent​(UserSystemHookEvent event)
    • fireKeyEvent

      protected void fireKeyEvent​(KeySystemHookEvent event)
    • fireGroupEvent

      protected void fireGroupEvent​(GroupSystemHookEvent event)
    • fireGroupMemberEvent

      protected void fireGroupMemberEvent​(GroupMemberSystemHookEvent event)
    • firePushEvent

      protected void firePushEvent​(PushSystemHookEvent event)
    • fireTagPushEvent

      protected void fireTagPushEvent​(TagPushSystemHookEvent event)
    • fireRepositoryEvent

      protected void fireRepositoryEvent​(RepositorySystemHookEvent event)
    • fireMergeRequestEvent

      protected void fireMergeRequestEvent​(MergeRequestSystemHookEvent event)