Class WebHookManager

java.lang.Object
org.gitlab4j.api.webhook.WebHookManager
All Implemented Interfaces:
HookManager

public class WebHookManager
extends Object
implements HookManager
This class provides a handler for processing GitLab WebHook callouts.
  • Constructor Details

    • WebHookManager

      public WebHookManager()
      Create a HookManager to handle GitLab webhook events.
    • WebHookManager

      public WebHookManager​(String secretToken)
      Create a HookManager to handle GitLab webhook 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 Event 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 Event handleRequest​(javax.servlet.http.HttpServletRequest request) throws GitLabApiException
      Parses and verifies an Event 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 Event instance that was read from the request body, null if the request not contain a webhook event
      Throws:
      GitLabApiException - if the parsed event is not supported
    • handleEvent

      public void handleEvent​(Event 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​(WebHookListener listener)
      Adds a WebHook event listener.
      Parameters:
      listener - the SystemHookListener to add
    • removeListener

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

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

      protected void fireBuildEvent​(BuildEvent buildEvent)
    • fireIssueEvent

      protected void fireIssueEvent​(IssueEvent issueEvent)
    • fireJobEvent

      protected void fireJobEvent​(JobEvent jobEvent)
    • fireMergeRequestEvent

      protected void fireMergeRequestEvent​(MergeRequestEvent mergeRequestEvent)
    • fireNoteEvent

      protected void fireNoteEvent​(NoteEvent noteEvent)
    • firePipelineEvent

      protected void firePipelineEvent​(PipelineEvent pipelineEvent)
    • firePushEvent

      protected void firePushEvent​(PushEvent pushEvent)
    • fireTagPushEvent

      protected void fireTagPushEvent​(TagPushEvent tagPushEvent)
    • fireWikiPageEvent

      protected void fireWikiPageEvent​(WikiPageEvent wikiPageEvent)
    • fireDeploymentEvent

      protected void fireDeploymentEvent​(DeploymentEvent deploymentEvent)
    • fireReleaseEvent

      protected void fireReleaseEvent​(ReleaseEvent releaseEvent)