public interface PullRequestLock
pull request while an operation is
performed.
Separate instances of this interface are not related. Locking a pull request in one
instance does not lock it in any other. The intention is to allow grouping operations that
perform similar processing, or rely on the same pull request data, so that only one is running on a given pull
request at a time, using multiple locks when different bands of processing can be performed concurrently.
Note: When used by plugin developers, no instance of this lock can ever prevent the host application from performing any of its own processing on any aspect of a pull request.
RepositoryLock,
UncheckedOperation| Modifier and Type | Method and Description |
|---|---|
<T,E extends Exception> |
withLock(int repositoryId,
long pullRequestId,
Operation<T,E> operation)
Performs the provided
operation while holding a lock on the specified pull request. |
<T,E extends Exception> |
withLock(PullRequest pullRequest,
Operation<T,E> operation)
Performs the provided
operation while holding a lock on the specified pull request. |
<T,E extends Exception> T withLock(int repositoryId, long pullRequestId, @Nonnull Operation<T,E> operation) throws E extends Exception
operation while holding a lock on the specified pull request.
Note: Locking a pull request by ID or by PullRequest instance acquires the same underlying lock.
T - the return type of the perform operationE - the type of Throwable that can be thrown from perform.repositoryId - the ID of the repository to lockpullRequestId - the ID of the pull request to lock in the specified repositoryoperation - the operation to perform while holding the lockperforming the operationE - if the operation failsE extends Exception<T,E extends Exception> T withLock(@Nonnull PullRequest pullRequest, @Nonnull Operation<T,E> operation) throws E extends Exception
operation while holding a lock on the specified pull request.
Note: Locking a pull request by ID or by PullRequest instance acquires the same underlying lock.
T - the return type of the perform operationE - the type of Throwable that can be thrown from perform.pullRequest - the pull request to lockoperation - the operation to perform while holding the lockperforming the operationE - if the operation failsE extends ExceptionCopyright © 2019 Atlassian. All rights reserved.