Interface RepositoryManagementMBean
-
- All Known Implementing Classes:
RepositoryManager
@ProviderType public interface RepositoryManagementMBean
This interface exposes repository management operations and the status of such operations. This interface only provides high level functionality for starting certain management operations and monitoring their outcomes. Parametrisation and configuration of the operations is beyond the scope of this interface and must be achieved by other means. For example through a dedicated MBean of the specific service providing the respective functionality. Furthermore not all operations might be available in all deployments or at all times. However the status should give a clear indication for this case.The status of an operation is represented by a
CompositeData
instance consisting at least of the itemscode
,id
, andmessage
. Implementations are free to add further items.The
code
item is an integer encoding the current status of the respective operation. Valid values and its semantics are:0
: Operation not available. For example because the system does not implement the operation or the system is in a state where it does not allow the operation to be carried out (e.g. the operation is already running). Themessage
should give further indication of the exact reason.1
: Status not available. Usually because there was no prior attempt to start the operation. Themessage
should give further indication of the exact reason.2
: Operation initiated. Themessage
should give further information of when the operation was initiated. This status mean that the operation will be performed some time in the future without impacting overall system behaviour and that no further status updates will be available until this operation is performed next time.3
: Operation running.4
: Operation succeeded. Themessage
should give further information on how long the operation took to complete.5
: Operation failed. Themessage
should give further information on the reason for the failure.
In all cases the
message
may provide additional information that might be useful in the context of the operation.The
id
is an identifier for the invocation of an operation. It is reported as a part of the status for clients to relate the status to invocation.-1
is returned when not available.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
RepositoryManagementMBean.StatusCode
Enum whose ordinals correspond to the status codes.
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method Description @NotNull CompositeData
cancelRevisionGC()
Cancel a running revision garbage collection operation.@NotNull CompositeData
cancelRevisionGCForRole(String role)
Cancel a running revision garbage collection operation for a given role.@Nullable String
checkpoint(long lifetime)
Deprecated.UseCheckpointMBean
instead@NotNull CompositeData
getBackupStatus()
Backup status@NotNull CompositeData
getDataStoreGCStatus()
Data store garbage collection status@NotNull CompositeData
getPropertyIndexAsyncReindexStatus()
Asynchronous Property Index reindexing status@NotNull CompositeData
getRestoreStatus()
Restore status@NotNull CompositeData
getRevisionGCStatus()
Revision garbage collection status@NotNull CompositeData
getRevisionGCStatusForRole(String role)
Revision garbage collection status for a given role.@NotNull TabularData
refreshAllSessions()
Refresh all currently open sessions.@NotNull CompositeData
startBackup()
Initiate a backup operation.@NotNull CompositeData
startDataStoreGC(boolean markOnly)
Initiate a data store garbage collection operation@NotNull CompositeData
startPropertyIndexAsyncReindex()
Initiate a reindex operation for the property indexes marked for reindexing@NotNull CompositeData
startRestore()
Initiate a restore operation.@NotNull CompositeData
startRevisionGC()
Initiate a revision garbage collection operation@NotNull CompositeData
startRevisionGCForRole(String role)
Initiate a revision garbage collection operation
-
-
-
Field Detail
-
TYPE
static final String TYPE
- See Also:
- Constant Field Values
-
-
Method Detail
-
startBackup
@NotNull @Description("Creates a backup of the persistent state of the repository") @NotNull CompositeData startBackup()
Initiate a backup operation.- Returns:
- the status of the operation right after it was initiated
-
getBackupStatus
@NotNull @Description("The status of the ongoing operation, or the terminal status of the last completed backup operation") @NotNull CompositeData getBackupStatus()
Backup status- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
startRestore
@NotNull @Description("Restores the repository from a backup") @NotNull CompositeData startRestore()
Initiate a restore operation.- Returns:
- the status of the operation right after it was initiated
-
getRestoreStatus
@NotNull @Description("The status of the ongoing operation, or the terminal status of the last completed restore operation") @NotNull CompositeData getRestoreStatus()
Restore status- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
startDataStoreGC
@NotNull @Description("Initiates a data store garbage collection operation") @NotNull CompositeData startDataStoreGC(@Name("markOnly") @Description("Set to true to only mark references and not sweep in the mark and sweep operation. This mode is to be used when the underlying BlobStore is shared between multiple different repositories. For all other cases set it to false to perform full garbage collection") boolean markOnly)
Initiate a data store garbage collection operation- Parameters:
markOnly
- whether to only mark references and not sweep in the mark and sweep operation.- Returns:
- the status of the operation right after it was initiated
-
getDataStoreGCStatus
@NotNull @Description("Data store garbage collection status") @NotNull CompositeData getDataStoreGCStatus()
Data store garbage collection status- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
startRevisionGC
@NotNull @Description("Initiates a revision garbage collection operation") @NotNull CompositeData startRevisionGC()
Initiate a revision garbage collection operation- Returns:
- the status of the operation right after it was initiated
-
startRevisionGCForRole
@NotNull @Description("Initiates a revision garbage collection operation for a given role") @NotNull CompositeData startRevisionGCForRole(String role)
Initiate a revision garbage collection operation- Returns:
- the status of the operation right after it was initiated
-
cancelRevisionGC
@NotNull @Description("Cancel a running revision garbage collection operation. Does nothing if revision garbage collection is not running.") @NotNull CompositeData cancelRevisionGC()
Cancel a running revision garbage collection operation. Does nothing if revision garbage collection is not running.- Returns:
- the status of the operation right after it was initiated
-
cancelRevisionGCForRole
@NotNull @Description("Cancel a running revision garbage collection operation. Does nothing if revision garbage collection is not running.") @NotNull CompositeData cancelRevisionGCForRole(String role)
Cancel a running revision garbage collection operation for a given role. Does nothing if revision garbage collection is not running.- Returns:
- the status of the operation right after it was initiated
-
getRevisionGCStatus
@NotNull @Description("Revision garbage collection status") @NotNull CompositeData getRevisionGCStatus()
Revision garbage collection status- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
getRevisionGCStatusForRole
@NotNull @Description("Revision garbage collection status for a given role") @NotNull CompositeData getRevisionGCStatusForRole(String role)
Revision garbage collection status for a given role.- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
checkpoint
@Deprecated @Nullable @Nullable String checkpoint(long lifetime)
Deprecated.UseCheckpointMBean
insteadCreates a new checkpoint of the latest root of the tree. The checkpoint remains valid for at least as long as requested and allows that state of the repository to be retrieved using the returned opaque string reference.- Parameters:
lifetime
- time (in milliseconds, > 0) that the checkpoint should remain available- Returns:
- string reference of this checkpoint or
null
if the checkpoint could not be set.
-
startPropertyIndexAsyncReindex
@NotNull @Description("Initiates a reindex operation for the property indexes marked for reindexing") @NotNull CompositeData startPropertyIndexAsyncReindex()
Initiate a reindex operation for the property indexes marked for reindexing- Returns:
- the status of the operation right after it was initiated
-
getPropertyIndexAsyncReindexStatus
@NotNull @Description("Asynchronous Property Index reindexing status") @NotNull CompositeData getPropertyIndexAsyncReindexStatus()
Asynchronous Property Index reindexing status- Returns:
- the status of the ongoing operation or if none the terminal status of the last operation or Status not available if none.
-
refreshAllSessions
@NotNull @Description("Refresh all currently open sessions") @NotNull TabularData refreshAllSessions()
Refresh all currently open sessions. Warning: this operation might be disruptive to the owner of the affected sessions
-
-