public class MultiMapService extends Object implements ManagedService, RemoteService, MigrationAwareService, EventPublishingService<EventData,EntryListener>, TransactionalService, StatisticsAwareService
Modifier and Type | Field and Description |
---|---|
static String |
SERVICE_NAME |
Constructor and Description |
---|
MultiMapService(NodeEngine nodeEngine) |
Modifier and Type | Method and Description |
---|---|
String |
addListener(String name,
EventListener listener,
Data key,
boolean includeValue,
boolean local) |
void |
beforeMigration(PartitionMigrationEvent partitionMigrationEvent)
Called before migration process starts, on both source and destination members.
|
void |
commitMigration(PartitionMigrationEvent event)
Commits the migration process for this service, on both source and destination members.
|
DistributedObject |
createDistributedObject(String name)
Creates a distributed object.
|
LocalMultiMapStats |
createStats(String name) |
<T extends TransactionalObject> |
createTransactionalObject(String name,
Transaction transaction) |
void |
destroyDistributedObject(String name)
Destroys a distributed object.
|
void |
dispatchEvent(EventData event,
EntryListener listener) |
LocalMultiMapStatsImpl |
getLocalMultiMapStatsImpl(String name) |
NodeEngine |
getNodeEngine() |
MultiMapContainer |
getOrCreateCollectionContainer(int partitionId,
String name) |
MultiMapPartitionContainer |
getPartitionContainer(int partitionId) |
SerializationService |
getSerializationService() |
Map<String,LocalMultiMapStats> |
getStats() |
void |
init(NodeEngine nodeEngine,
Properties properties)
Initializes this ManagedService
|
void |
insertMigratedData(int partitionId,
Map<String,Map> map) |
Set<Data> |
localKeySet(String name) |
Operation |
prepareReplicationOperation(PartitionReplicationEvent event)
Returns an operation to replicate service data and/or state for a specific partition replica
on another cluster member.
|
void |
publishEntryEvent(String multiMapName,
EntryEventType eventType,
Data key,
Object newValue,
Object oldValue) |
void |
publishMultiMapEvent(String mapName,
EntryEventType eventType,
int numberOfEntriesAffected) |
boolean |
removeListener(String name,
String registrationId) |
void |
reset()
reset this ManagedService back to initial state.
|
void |
rollbackMigration(PartitionMigrationEvent event)
Rollback the migration process for this service, on both source and destination members.
|
void |
rollbackTransaction(String transactionId) |
void |
shutdown(boolean terminate)
Shuts down this ManagedService.
|
public static final String SERVICE_NAME
public MultiMapService(NodeEngine nodeEngine)
public void init(NodeEngine nodeEngine, Properties properties)
ManagedService
init
in interface ManagedService
nodeEngine
- the NodeEngine that this ManagedService belongs to.properties
- the Properties. Can be used to pass settings to the service.public void reset()
ManagedService
reset
in interface ManagedService
public void shutdown(boolean terminate)
ManagedService
shutdown
in interface ManagedService
terminate
- true to shut down the ManagedServicepublic MultiMapContainer getOrCreateCollectionContainer(int partitionId, String name)
public MultiMapPartitionContainer getPartitionContainer(int partitionId)
public DistributedObject createDistributedObject(String name)
RemoteService
createDistributedObject
in interface RemoteService
name
- the name for the created distributed objectpublic void destroyDistributedObject(String name)
RemoteService
destroyDistributedObject
in interface RemoteService
name
- the name of the distributed object to destroypublic SerializationService getSerializationService()
public NodeEngine getNodeEngine()
public void publishMultiMapEvent(String mapName, EntryEventType eventType, int numberOfEntriesAffected)
public final void publishEntryEvent(String multiMapName, EntryEventType eventType, Data key, Object newValue, Object oldValue)
public String addListener(String name, EventListener listener, Data key, boolean includeValue, boolean local)
public void beforeMigration(PartitionMigrationEvent partitionMigrationEvent)
MigrationAwareService
Service can take actions required before migration. Migration process will block until this method returns. If this method fails by throwing an exception, migration process for specific partition will fail and will be rolled back.
beforeMigration
in interface MigrationAwareService
partitionMigrationEvent
- migration eventpublic Operation prepareReplicationOperation(PartitionReplicationEvent event)
MigrationAwareService
This method will be called on source member whenever partitioning system requires to copy/replicate a partition replica. Returned operation will be executed on destination member. If operation fails by throwing exception, migration process will fail and will be rolled back.
Returning null is allowed and means service does not have anything to replicate.
prepareReplicationOperation
in interface MigrationAwareService
event
- replicationpublic void commitMigration(PartitionMigrationEvent event)
MigrationAwareService
Commit is not expected to fail at this point, all exceptions will be suppressed and logged.
commitMigration
in interface MigrationAwareService
event
- migration eventpublic void rollbackMigration(PartitionMigrationEvent event)
MigrationAwareService
Rollback is not expected to fail at this point, all exceptions will be suppressed and logged.
rollbackMigration
in interface MigrationAwareService
event
- migration eventpublic LocalMultiMapStats createStats(String name)
public LocalMultiMapStatsImpl getLocalMultiMapStatsImpl(String name)
public <T extends TransactionalObject> T createTransactionalObject(String name, Transaction transaction)
createTransactionalObject
in interface TransactionalService
public void rollbackTransaction(String transactionId)
rollbackTransaction
in interface TransactionalService
public void dispatchEvent(EventData event, EntryListener listener)
dispatchEvent
in interface EventPublishingService<EventData,EntryListener>
public Map<String,LocalMultiMapStats> getStats()
getStats
in interface StatisticsAwareService
Copyright © 2016 Hazelcast, Inc.. All Rights Reserved.