Class XSiteStateProviderImpl
- java.lang.Object
-
- org.infinispan.xsite.statetransfer.XSiteStateProviderImpl
-
- All Implemented Interfaces:
XSiteStateProvider
public class XSiteStateProviderImpl extends Object implements XSiteStateProvider
It contains the logic to send state to another site.- Since:
- 7.0
- Author:
- Pedro Ruivo
-
-
Constructor Summary
Constructors Constructor Description XSiteStateProviderImpl(Configuration configuration)
-
Method Summary
-
-
-
Constructor Detail
-
XSiteStateProviderImpl
public XSiteStateProviderImpl(Configuration configuration)
-
-
Method Detail
-
start
public void start()
-
startStateTransfer
public void startStateTransfer(String siteName, Address origin, int minTopologyId)
Description copied from interface:XSiteStateProvider
It notifies this node to start sending state to the remote site. Also, it should keep information about which node requested the state transfer in order to send back the notification when finishes.- Specified by:
startStateTransfer
in interfaceXSiteStateProvider
- Parameters:
siteName
- the remote site name.origin
- the requestor.minTopologyId
- the topology id to wait before start sending the state.
-
cancelStateTransfer
public void cancelStateTransfer(String siteName)
Description copied from interface:XSiteStateProvider
It cancels the state transfer for the remote site. If no state transfer is available, it should do nothing.- Specified by:
cancelStateTransfer
in interfaceXSiteStateProvider
- Parameters:
siteName
- the remote site name.
-
getCurrentStateSending
public Collection<String> getCurrentStateSending()
- Specified by:
getCurrentStateSending
in interfaceXSiteStateProvider
- Returns:
- a site name collection with the sites in which this cache is sending state.
-
getSitesMissingCoordinator
public Collection<String> getSitesMissingCoordinator(Collection<Address> currentMembers)
- Specified by:
getSitesMissingCoordinator
in interfaceXSiteStateProvider
- Returns:
- a site name collection with sites in which the coordinator is not in the
currentMembers
.
-
notifyStateTransferEnd
public void notifyStateTransferEnd(String siteName, Address origin, boolean statusOk)
Description copied from interface:XSiteStateProvider
NotifiesXSiteStatePushTask
has completed the send.- Specified by:
notifyStateTransferEnd
in interfaceXSiteStateProvider
- Parameters:
siteName
- The remote site name.origin
- The originatorAddress
.statusOk
-true
if completed successfully,false
if it failed.
-
getCommandsFactory
public CommandsFactory getCommandsFactory()
Description copied from interface:XSiteStateProvider
ExposesCommandsFactory
toXSiteStatePushTask
.- Specified by:
getCommandsFactory
in interfaceXSiteStateProvider
-
getRpcManager
public RpcManager getRpcManager()
Description copied from interface:XSiteStateProvider
ExposesRpcManager
toXSiteStatePushTask
.- Specified by:
getRpcManager
in interfaceXSiteStateProvider
-
getIracManager
public IracManager getIracManager()
Description copied from interface:XSiteStateProvider
ExposesIracManager
toXSiteStatePushTask
.- Specified by:
getIracManager
in interfaceXSiteStateProvider
-
getScheduledExecutorService
public ScheduledExecutorService getScheduledExecutorService()
Description copied from interface:XSiteStateProvider
Exposes timeoutScheduledExecutorService
toXSiteStatePushTask
.- Specified by:
getScheduledExecutorService
in interfaceXSiteStateProvider
-
getExecutor
public Executor getExecutor()
Description copied from interface:XSiteStateProvider
Exposes non-blockingExecutor
toXSiteStatePushTask
.- Specified by:
getExecutor
in interfaceXSiteStateProvider
-
-