Package com.morpheusdata.core.backup
Interface MorpheusReplicationGroupService
-
public interface MorpheusReplicationGroupService
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description io.reactivex.Single<java.lang.Boolean>
create(java.util.List<ReplicationGroup> addList)
Creates new Backup Domains from cache / sync implementationsio.reactivex.Observable<ReplicationGroupIdentityProjection>
listById(java.util.Collection<java.lang.Long> ids)
Lists allReplicationGroup
objects by a list of Identifiers.io.reactivex.Observable<ReplicationGroupIdentityProjection>
listIdentityProjections(BackupProvider backupProvider)
Lists all backup projection objects for a specified replication group id.io.reactivex.Observable<ReplicationGroupIdentityProjection>
listIdentityProjections(Cloud cloud)
Lists all backup projection objects for a specified cloud.io.reactivex.Single<java.lang.Boolean>
remove(java.util.List<ReplicationGroupIdentityProjection> removeList)
Removes Missing Backup on the Morpheus side.io.reactivex.Single<ReplicationGroup>
save(ReplicationGroup replicationGroup)
Saves aReplicationGroup
object.io.reactivex.Single<java.lang.Boolean>
save(java.util.List<ReplicationGroup> saveList)
Saves a list ofReplicationGroup
objects.
-
-
-
Method Detail
-
listIdentityProjections
io.reactivex.Observable<ReplicationGroupIdentityProjection> listIdentityProjections(BackupProvider backupProvider)
Lists all backup projection objects for a specified replication group id. The projection is a subset of the properties on a fullReplicationGroup
object for sync matching.- Parameters:
backupProvider
- theAbstractBackupProvider
identifier associated to the replication groups to be listed.- Returns:
- an RxJava Observable stream of result projection objects.
-
listIdentityProjections
io.reactivex.Observable<ReplicationGroupIdentityProjection> listIdentityProjections(Cloud cloud)
Lists all backup projection objects for a specified cloud. The projection is a subset of the properties on a fullReplicationGroup
object for sync matching.- Parameters:
cloud
- theCloud
identifier associated to the domains to be listed.- Returns:
- an RxJava Observable stream of result projection objects.
-
listById
io.reactivex.Observable<ReplicationGroupIdentityProjection> listById(java.util.Collection<java.lang.Long> ids)
Lists allReplicationGroup
objects by a list of Identifiers. This is commonly used in sync / caching logic.- Parameters:
ids
- list ofReplicationGroup
ids to fetch.- Returns:
- an RxJava Observable stream of
ReplicationGroup
objects for subscription.
-
remove
io.reactivex.Single<java.lang.Boolean> remove(java.util.List<ReplicationGroupIdentityProjection> removeList)
Removes Missing Backup on the Morpheus side. This accepts the Projection Object instead of the main Object. It is important to note this is a Observer pattern and must be subscribed to in order for the action to occurExample:
morpheusContext.getBackup().remove(removeItems).blockingGet()
- Parameters:
removeList
- a list of backup projections to be removed- Returns:
- a Single
Observable
returning the success status of the operation.
-
create
io.reactivex.Single<java.lang.Boolean> create(java.util.List<ReplicationGroup> addList)
Creates new Backup Domains from cache / sync implementations- Parameters:
addList
- List of newReplicationGroup
objects to be inserted into the database- Returns:
- notification of completion
-
save
io.reactivex.Single<java.lang.Boolean> save(java.util.List<ReplicationGroup> saveList)
Saves a list ofReplicationGroup
objects. Be mindful this is an RxJava implementation and must be subscribed to for any action to actually take place.- Parameters:
saveList
- a List of Replication Group objects that need to be updated in the database.- Returns:
- the Single Observable stating the success state of the save attempt
-
save
io.reactivex.Single<ReplicationGroup> save(ReplicationGroup replicationGroup)
Saves aReplicationGroup
object. Be mindful this is an RxJava implementation and must be subscribed to for any action to actually take place.- Parameters:
replicationGroup
- a Replication Group Object to be updated in the database.- Returns:
- the Single Observable containing the resulting Backup Object
-
-