@AsynchronousPreferred public class

PullRequestMergedEvent

extends PullRequestEvent
implements RepositoryRefsChangedEvent
java.lang.Object
   ↳ java.util.EventObject
     ↳ com.atlassian.bitbucket.event.ApplicationEvent
       ↳ com.atlassian.bitbucket.event.pull.PullRequestEvent
         ↳ com.atlassian.bitbucket.event.pull.PullRequestMergedEvent

Class Overview

Event raised when a pull request is merged via the web UI or REST, or when a remote merge is detected.

If the pull request was merged by the system, the commit resulting from the merge (which may or may not be a literal merge commit, depending on the configured merge strategy) will be included. Otherwise, if the pull request was merged remotely, meaning a commit which is a descendant of the from ref was pushed to the to ref, the commit will not be provided.

Listeners that are interested in all repository changes (and not just pull request merges) should listen for RepositoryRefsChangedEvents.

Summary

[Expand]
Inherited Fields
From class java.util.EventObject
Public Constructors
PullRequestMergedEvent(Object source, PullRequest pullRequest)
Constructs a new PullRequestMergedEvent.
PullRequestMergedEvent(Object source, PullRequest pullRequest, MinimalCommit commit, String message, Map<StringObject> context)
Constructs a new PullRequestMergedEvent.
PullRequestMergedEvent(Object source, PullRequest pullRequest, MinimalCommit commit, String message, String strategyId, Map<StringObject> context)
Constructs a new PullRequestMergedEvent.
Public Methods
@Nullable MinimalCommit getCommit()
@Nonnull Map<StringObject> getContext()
@Nullable String getMessage()
@Nonnull Collection<RefChange> getRefChanges()
Retrieves a collection of the changed refs.
@Nonnull Repository getRepository()
Retrieves the repository in which refs were changed.
@Nullable String getStrategyId()
boolean isMergedRemotely()
[Expand]
Inherited Methods
From class com.atlassian.bitbucket.event.pull.PullRequestEvent
From class com.atlassian.bitbucket.event.ApplicationEvent
From class java.util.EventObject
From class java.lang.Object
From interface com.atlassian.bitbucket.event.repository.RepositoryRefsChangedEvent

Public Constructors

public PullRequestMergedEvent (Object source, PullRequest pullRequest)

Constructs a new PullRequestMergedEvent. This is a convenience constructor for remotely-merged pull requests, where the merge commit is not known.

Parameters
source the entity raising the event
pullRequest the pull request that was merged

public PullRequestMergedEvent (Object source, PullRequest pullRequest, MinimalCommit commit, String message, Map<StringObject> context)

Constructs a new PullRequestMergedEvent. The merge commit should be provided if the pull request was merged by the system, and should be left null if the merge was pushed by a user.

Parameters
source the entity raising the event
pullRequest the pull request that was merged
commit the commit that resulted from the merging the pull request via the web UI or REST, which may by null if the pull request was merged remotely and pushed up
message the commit message, which may be null
context additional context provided when merging the pull request, intended to allow plugins to add their own functionality around the merge operation

public PullRequestMergedEvent (Object source, PullRequest pullRequest, MinimalCommit commit, String message, String strategyId, Map<StringObject> context)

Constructs a new PullRequestMergedEvent. The merge commit should be provided if the pull request was merged by the system, and should be left null if the merge was pushed by a user.

Parameters
source the entity raising the event
pullRequest the pull request that was merged
commit the commit that resulted from the merging the pull request via the web UI or REST, which may by null if the pull request was merged remotely and pushed up
message the commit message, which may be null
strategyId the strategy used to merge the pull request
context additional context provided when merging the pull request, intended to allow plugins to add their own functionality around the merge operation

Public Methods

@Nullable public MinimalCommit getCommit ()

Returns
  • the merge commit, which may be null if the pull request was merged remotely

@Nonnull public Map<StringObject> getContext ()

Returns
  • additional context provided when the merge was requested

@Nullable public String getMessage ()

Returns
  • the proposed commit message, which may be null

@Nonnull public Collection<RefChange> getRefChanges ()

Retrieves a collection of the changed refs.

Note: While the returned collection will never be null, it may be empty. For example, a remotely merged pull request will have an empty set of changes.

Returns
  • a collection of updated refs which may be empty, if the pull request was merged remotely, or contain a single updated ref for the pull request's target branch, if the pull request was merged via the web UI or REST

@Nonnull public Repository getRepository ()

Retrieves the repository in which refs were changed. All of the changed refs for a single event will always be in the same repository.

Returns
  • the repository into which the pull request was merged

@Nullable public String getStrategyId ()

Returns
  • the ID of the strategy used to merge the pull request

public boolean isMergedRemotely ()

Returns
  • true if the pull request was merged remotely and pushed up; otherwise, false if the pull request was merged via the web UI or REST