Package sonia.scm.repository
Interface RepositoryExportingCheck
- All Superinterfaces:
ReadOnlyCheck
- All Known Implementing Classes:
DefaultRepositoryExportingCheck
Implementations of this class can be used to check whether a repository is currently being exported.
- Since:
- 2.14.0
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidThrows aReadOnlyExceptionif the repository with th id is read only.default StringReturns the reason for the write protection.booleanisExporting(String repositoryId) Checks whether the repository with the given id is currently (that is, at this moment) being exported or not.default booleanisExporting(Repository repository) Checks whether the given repository is currently (that is, at this moment) being exported or not.default booleanisReadOnly(String repositoryId) Returnstrueif the repository with the given id is read only.<T> TwithExportingLock(Repository repository, Supplier<T> callback) Asserts that the given repository is marked as being exported during the execution of the given callback.Methods inherited from interface sonia.scm.repository.ReadOnlyCheck
check, isForbidden, isReadOnly, isReadOnly
-
Method Details
-
isExporting
Checks whether the repository with the given id is currently (that is, at this moment) being exported or not.- Parameters:
repositoryId- The id of the repository to check.- Returns:
truewhen the repository with the given id is currently being exported,falseotherwise.
-
isExporting
Checks whether the given repository is currently (that is, at this moment) being exported or not. This checks the status on behalf of the id of the repository, not by the exporting flag provided by the repository itself.- Parameters:
repository- The repository to check.- Returns:
truewhen the given repository is currently being exported,falseotherwise.
-
withExportingLock
Asserts that the given repository is marked as being exported during the execution of the given callback.- Type Parameters:
T- The return type of the callback.- Parameters:
repository- The repository that will be marked as being exported.callback- This callback will be executed.- Returns:
- The result of the callback.
-
isReadOnly
Description copied from interface:ReadOnlyCheckReturnstrueif the repository with the given id is read only. If this is the case, all permissions not marked "read only" will be denied fot this repository, stores for this repository cannot be written, and calling modifying commands will be prevented. If only special permissions should be forbidden without blocking stores and commands, useReadOnlyCheck.isForbidden(String, String)instead.- Specified by:
isReadOnlyin interfaceReadOnlyCheck- Parameters:
repositoryId- repository id- Returns:
trueif repository is read only- See Also:
-
getReason
Description copied from interface:ReadOnlyCheckReturns the reason for the write protection.- Specified by:
getReasonin interfaceReadOnlyCheck
-
check
Description copied from interface:ReadOnlyCheckThrows aReadOnlyExceptionif the repository with th id is read only.- Specified by:
checkin interfaceReadOnlyCheck- Parameters:
repositoryId- The id of the repository to check for.
-