use of com.hazelcast.map.impl.MapServiceContext in project hazelcast by hazelcast.
the class BasicMapStoreContext method create.
static MapStoreContext create(MapContainer mapContainer) {
final BasicMapStoreContext context = new BasicMapStoreContext();
final String mapName = mapContainer.getName();
final MapServiceContext mapServiceContext = mapContainer.getMapServiceContext();
final NodeEngine nodeEngine = mapServiceContext.getNodeEngine();
final PartitioningStrategy partitioningStrategy = mapContainer.getPartitioningStrategy();
final MapConfig mapConfig = mapContainer.getMapConfig();
final MapStoreConfig mapStoreConfig = mapConfig.getMapStoreConfig();
final ClassLoader configClassLoader = nodeEngine.getConfigClassLoader();
// create store.
final Object store = createStore(mapName, mapStoreConfig, configClassLoader);
final MapStoreWrapper storeWrapper = new MapStoreWrapper(mapName, store);
storeWrapper.instrument(nodeEngine);
setStoreImplToWritableMapStoreConfig(nodeEngine, mapName, store);
context.setMapName(mapName);
context.setMapStoreConfig(mapStoreConfig);
context.setPartitioningStrategy(partitioningStrategy);
context.setMapServiceContext(mapServiceContext);
context.setStoreWrapper(storeWrapper);
final MapStoreManager mapStoreManager = createMapStoreManager(context);
context.setMapStoreManager(mapStoreManager);
// todo this is user code. it may also block map store creation.
callLifecycleSupportInit(context);
return context;
}
use of com.hazelcast.map.impl.MapServiceContext in project hazelcast by hazelcast.
the class MapDataStores method createWriteBehindStore.
/**
* Creates a write behind data store.
*
* @param mapStoreContext context for map store operations.
* @param partitionId partition id of partition.
* @param writeBehindProcessor the {@link WriteBehindProcessor}
* @param <K> type of key to store.
* @param <V> type of value to store.
* @return new write behind store manager.
*/
public static <K, V> MapDataStore<K, V> createWriteBehindStore(MapStoreContext mapStoreContext, int partitionId, WriteBehindProcessor writeBehindProcessor) {
MapServiceContext mapServiceContext = mapStoreContext.getMapServiceContext();
MapStoreConfig mapStoreConfig = mapStoreContext.getMapStoreConfig();
WriteBehindStore mapDataStore = new WriteBehindStore(mapStoreContext, partitionId);
mapDataStore.setWriteBehindQueue(newWriteBehindQueue(mapServiceContext, mapStoreConfig.isWriteCoalescing()));
mapDataStore.setWriteBehindProcessor(writeBehindProcessor);
return (MapDataStore<K, V>) mapDataStore;
}
use of com.hazelcast.map.impl.MapServiceContext in project hazelcast by hazelcast.
the class MapDataStores method createWriteThroughStore.
/**
* Creates a write through data store.
*
* @param mapStoreContext context for map store operations.
* @param <K> type of key to store.
* @param <V> type of value to store.
* @return new write through store manager.
*/
public static <K, V> MapDataStore<K, V> createWriteThroughStore(MapStoreContext mapStoreContext) {
final MapStoreWrapper store = mapStoreContext.getMapStoreWrapper();
final MapServiceContext mapServiceContext = mapStoreContext.getMapServiceContext();
final NodeEngine nodeEngine = mapServiceContext.getNodeEngine();
final SerializationService serializationService = nodeEngine.getSerializationService();
return (MapDataStore<K, V>) new WriteThroughStore(store, serializationService);
}
use of com.hazelcast.map.impl.MapServiceContext in project hazelcast by hazelcast.
the class MapNearCacheStateHolder method getPartitionMetaDataGenerator.
private MetaDataGenerator getPartitionMetaDataGenerator(MapService mapService) {
MapServiceContext mapServiceContext = mapService.getMapServiceContext();
MapNearCacheManager mapNearCacheManager = mapServiceContext.getMapNearCacheManager();
Invalidator invalidator = mapNearCacheManager.getInvalidator();
return invalidator.getMetaDataGenerator();
}
use of com.hazelcast.map.impl.MapServiceContext in project hazelcast by hazelcast.
the class ClearExpiredOperation method afterRun.
@Override
public void afterRun() throws Exception {
final MapService mapService = getService();
MapServiceContext mapServiceContext = mapService.getMapServiceContext();
final PartitionContainer partitionContainer = mapServiceContext.getPartitionContainer(getPartitionId());
partitionContainer.setHasRunningCleanup(false);
partitionContainer.setLastCleanupTime(Clock.currentTimeMillis());
}
Aggregations