Package org.infinispan.xsite
Interface BackupReceiver
- All Known Implementing Classes:
ClusteredCacheBackupReceiver
public interface BackupReceiver
Component present on a backup site that manages the backup information and logic.
- Since:
- 5.2
- Author:
- Mircea Markus
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionClears the cache.<O> CompletionStage<O> handleRemoteCommand(VisitableCommand command) handleStateTransferControl(String originSite, boolean startReceiving) It handles starting or finishing, base onstartReceiving, of the state transfer from a remote site.handleStateTransferState(XSiteState[] chunk, long timeoutMs) It handles the state transfer state from a remote site.putKeyValue(Object key, Object value, Metadata metadata, IracMetadata iracMetadata) Updates the key with the value from a remote site.removeKey(Object key, IracMetadata iracMetadata, boolean expiration) Deletes the key.touchEntry(Object key) Touches an entry and returns if it was able to or not.
-
Method Details
-
handleRemoteCommand
-
putKeyValue
CompletionStage<Void> putKeyValue(Object key, Object value, Metadata metadata, IracMetadata iracMetadata) Updates the key with the value from a remote site.If a conflict occurs, the update can be discarded.
- Parameters:
key- The key to update.value- The new value.metadata- The newMetadata.iracMetadata- TheIracMetadatafor conflict resolution.- Returns:
- A
CompletionStagethat is completed when the update is apply in the cluster or is discarded.
-
removeKey
Deletes the key.This is a request from the remote site and the removal can be discarded if a conflict happens.
- Parameters:
key- The key to delete.iracMetadata- TheIracMetadatafor conflict resolution.expiration-trueif it is to remove an expired key.- Returns:
- A
CompletionStagethat is completed when the key is deleted or it is discarded.
-
clearKeys
CompletionStage<Void> clearKeys()Clears the cache.This is not safe and it doesn't perform any conflict resolution.
- Returns:
- A
CompletionStagethat is completed when the cache is cleared.
-
touchEntry
Touches an entry and returns if it was able to or not.- Parameters:
key- the key of the entry to touch- Returns:
- if the entry was touched
-
handleStateTransferState
It handles the state transfer state from a remote site. It is possible to have a single node applying the state or forward the state to respective primary owners. -
handleStateTransferControl
It handles starting or finishing, base onstartReceiving, of the state transfer from a remote site.The command must be broadcast to the entire cluster in which the cache exists.
- Parameters:
originSite- The remote site which is starting or finishing sending the state transfer.startReceiving-trueif theoriginSitewants to start sending state.
-