protected AbstractClientCacheProxyBase(CacheConfig<K, V> cacheConfig, ClientContext context) { super(ICacheService.SERVICE_NAME, cacheConfig.getName(), context); this.name = cacheConfig.getName(); this.nameWithPrefix = cacheConfig.getNameWithPrefix(); this.cacheConfig = cacheConfig; this.statisticsEnabled = cacheConfig.isStatisticsEnabled(); }
public void instrument(NodeEngine nodeEngine) { StoreLatencyPlugin plugin = ((NodeEngineImpl) nodeEngine).getDiagnostics().getPlugin(StoreLatencyPlugin.class); if (plugin == null) { return; } if (cacheLoader != null) { cacheLoader = new LatencyTrackingCacheLoader(cacheLoader, plugin, cacheConfig.getName()); } if (cacheWriter != null) { cacheWriter = new LatencyTrackingCacheWriter(cacheWriter, plugin, cacheConfig.getName()); } }
public void instrument(NodeEngine nodeEngine) { StoreLatencyPlugin plugin = ((NodeEngineImpl) nodeEngine).getDiagnostics().getPlugin(StoreLatencyPlugin.class); if (plugin == null) { return; } if (cacheLoader != null) { cacheLoader = new LatencyTrackingCacheLoader(cacheLoader, plugin, cacheConfig.getName()); } if (cacheWriter != null) { cacheWriter = new LatencyTrackingCacheWriter(cacheWriter, plugin, cacheConfig.getName()); } }
protected AbstractClientCacheProxyBase(CacheConfig<K, V> cacheConfig, ClientContext context) { super(ICacheService.SERVICE_NAME, cacheConfig.getName(), context); this.name = cacheConfig.getName(); this.nameWithPrefix = cacheConfig.getNameWithPrefix(); this.cacheConfig = cacheConfig; this.statisticsEnabled = cacheConfig.isStatisticsEnabled(); }
@Override public void setManagementEnabled(CacheConfig cacheConfig, String cacheNameWithPrefix, boolean enabled) { cacheConfig = cacheConfig != null ? cacheConfig : configs.get(cacheNameWithPrefix); if (cacheConfig != null) { String cacheManagerName = cacheConfig.getUriString(); cacheConfig.setManagementEnabled(enabled); if (enabled) { CacheMXBeanImpl mxBean = new CacheMXBeanImpl(cacheConfig); MXBeanUtil.registerCacheObject(mxBean, cacheManagerName, cacheConfig.getName(), false); } else { MXBeanUtil.unregisterCacheObject(cacheManagerName, cacheConfig.getName(), false); deleteCacheStat(cacheNameWithPrefix); } } }
AbstractCacheProxyBase(CacheConfig<K, V> cacheConfig, NodeEngine nodeEngine, ICacheService cacheService) { super(nodeEngine, cacheService); this.name = cacheConfig.getName(); this.nameWithPrefix = cacheConfig.getNameWithPrefix(); this.cacheConfig = cacheConfig; this.nodeEngine = nodeEngine; this.logger = nodeEngine.getLogger(getClass()); this.partitionService = nodeEngine.getPartitionService(); this.cacheService = cacheService; this.serializationService = nodeEngine.getSerializationService(); this.operationProvider = cacheService.getCacheOperationProvider(nameWithPrefix, cacheConfig.getInMemoryFormat()); }
@Override public void setManagementEnabled(CacheConfig cacheConfig, String cacheNameWithPrefix, boolean enabled) { cacheConfig = cacheConfig != null ? cacheConfig : configs.get(cacheNameWithPrefix); if (cacheConfig != null) { String cacheManagerName = cacheConfig.getUriString(); cacheConfig.setManagementEnabled(enabled); if (enabled) { CacheMXBeanImpl mxBean = new CacheMXBeanImpl(cacheConfig); MXBeanUtil.registerCacheObject(mxBean, cacheManagerName, cacheConfig.getName(), false); } else { MXBeanUtil.unregisterCacheObject(cacheManagerName, cacheConfig.getName(), false); deleteCacheStat(cacheNameWithPrefix); } } }
AbstractCacheProxyBase(CacheConfig<K, V> cacheConfig, NodeEngine nodeEngine, ICacheService cacheService) { super(nodeEngine, cacheService); this.name = cacheConfig.getName(); this.nameWithPrefix = cacheConfig.getNameWithPrefix(); this.cacheConfig = cacheConfig; this.nodeEngine = nodeEngine; this.logger = nodeEngine.getLogger(getClass()); this.partitionService = nodeEngine.getPartitionService(); this.cacheService = cacheService; this.serializationService = nodeEngine.getSerializationService(); this.operationProvider = cacheService.getCacheOperationProvider(nameWithPrefix, cacheConfig.getInMemoryFormat()); }
@Override public void setStatisticsEnabled(CacheConfig cacheConfig, String cacheNameWithPrefix, boolean enabled) { cacheConfig = cacheConfig != null ? cacheConfig : configs.get(cacheNameWithPrefix); if (cacheConfig != null) { String cacheManagerName = cacheConfig.getUriString(); cacheConfig.setStatisticsEnabled(enabled); if (enabled) { CacheStatisticsImpl cacheStatistics = createCacheStatIfAbsent(cacheNameWithPrefix); CacheStatisticsMXBeanImpl mxBean = new CacheStatisticsMXBeanImpl(cacheStatistics); MXBeanUtil.registerCacheObject(mxBean, cacheManagerName, cacheConfig.getName(), true); } else { MXBeanUtil.unregisterCacheObject(cacheManagerName, cacheConfig.getName(), true); deleteCacheStat(cacheNameWithPrefix); } } }
@Override public void setStatisticsEnabled(CacheConfig cacheConfig, String cacheNameWithPrefix, boolean enabled) { cacheConfig = cacheConfig != null ? cacheConfig : configs.get(cacheNameWithPrefix); if (cacheConfig != null) { String cacheManagerName = cacheConfig.getUriString(); cacheConfig.setStatisticsEnabled(enabled); if (enabled) { CacheStatisticsImpl cacheStatistics = createCacheStatIfAbsent(cacheNameWithPrefix); CacheStatisticsMXBeanImpl mxBean = new CacheStatisticsMXBeanImpl(cacheStatistics); MXBeanUtil.registerCacheObject(mxBean, cacheManagerName, cacheConfig.getName(), true); } else { MXBeanUtil.unregisterCacheObject(cacheManagerName, cacheConfig.getName(), true); deleteCacheStat(cacheNameWithPrefix); } } }
@Override public void onPartitionLost(IPartitionLostEvent partitionLostEvent) { int partitionId = partitionLostEvent.getPartitionId(); for (CacheConfig config : getCacheConfigs()) { final String cacheName = config.getName(); if (config.getTotalBackupCount() <= partitionLostEvent.getLostReplicaIndex()) { publishCachePartitionLostEvent(cacheName, partitionId); } } }
@Override public void onPartitionLost(IPartitionLostEvent partitionLostEvent) { int partitionId = partitionLostEvent.getPartitionId(); for (CacheConfig config : getCacheConfigs()) { final String cacheName = config.getName(); if (config.getTotalBackupCount() <= partitionLostEvent.getLostReplicaIndex()) { publishCachePartitionLostEvent(cacheName, partitionId); } } }
@Override public ClientProxy create(String id, ClientContext context) { CacheConfig cacheConfig = findCacheConfig(id); if (cacheConfig == null) { throw new CacheNotExistsException("Cache " + id + " is already destroyed or not created yet"); } NearCacheConfig nearCacheConfig = client.getClientConfig().getNearCacheConfig(cacheConfig.getName()); if (nearCacheConfig != null) { return new NearCachedClientCacheProxy(cacheConfig, context); } return new ClientCacheProxy(cacheConfig, context); }
@Override public ClientProxy create(String id, ClientContext context) { CacheConfig cacheConfig = findCacheConfig(id); if (cacheConfig == null) { throw new CacheNotExistsException("Cache " + id + " is already destroyed or not created yet"); } NearCacheConfig nearCacheConfig = client.getClientConfig().getNearCacheConfig(cacheConfig.getName()); if (nearCacheConfig != null) { return new NearCachedClientCacheProxy(cacheConfig, context); } return new ClientCacheProxy(cacheConfig, context); }
@Override protected <K, V> void validateCacheConfig(CacheConfig<K, V> cacheConfig) { CacheMergePolicyProvider mergePolicyProvider = cacheService.getMergePolicyProvider(); checkCacheConfig(cacheConfig, mergePolicyProvider); Object mergePolicy = mergePolicyProvider.getMergePolicy(cacheConfig.getMergePolicy()); checkMergePolicySupportsInMemoryFormat(cacheConfig.getName(), mergePolicy, cacheConfig.getInMemoryFormat(), true, nodeEngine.getLogger(HazelcastCacheManager.class)); }
@Override protected <K, V> void validateCacheConfig(CacheConfig<K, V> cacheConfig) { CacheMergePolicyProvider mergePolicyProvider = cacheService.getMergePolicyProvider(); checkCacheConfig(cacheConfig, mergePolicyProvider); Object mergePolicy = mergePolicyProvider.getMergePolicy(cacheConfig.getMergePolicy()); checkMergePolicySupportsInMemoryFormat(cacheConfig.getName(), mergePolicy, cacheConfig.getInMemoryFormat(), nodeEngine.getClusterService().getClusterVersion(), true, nodeEngine.getLogger(HazelcastCacheManager.class)); }
/** * {@inheritDoc} * * @throws CacheNotExistsException if the cache configuration was not found */ @Override public EventJournalConfig getEventJournalConfig(ObjectNamespace namespace) { String name = namespace.getObjectName(); CacheConfig cacheConfig = getCacheService().getCacheConfig(name); if (cacheConfig == null) { throw new CacheNotExistsException("Cache " + name + " is already destroyed or not created yet, on " + nodeEngine.getLocalMember()); } String cacheSimpleName = cacheConfig.getName(); EventJournalConfig config = nodeEngine.getConfig().findCacheEventJournalConfig(cacheSimpleName); if (config == null || !config.isEnabled()) { return null; } return config; }
/** * {@inheritDoc} * * @throws CacheNotExistsException if the cache configuration was not found */ @Override public EventJournalConfig getEventJournalConfig(ObjectNamespace namespace) { String name = namespace.getObjectName(); CacheConfig cacheConfig = getCacheService().getCacheConfig(name); if (cacheConfig == null) { throw new CacheNotExistsException("Cache " + name + " is already destroyed or not created yet, on " + nodeEngine.getLocalMember()); } String cacheSimpleName = cacheConfig.getName(); EventJournalConfig config = nodeEngine.getConfig().findCacheEventJournalConfig(cacheSimpleName); if (config == null || !config.isEnabled()) { return null; } return config; }
@Override protected void processMessage() { CacheConfig cacheConfig = extractCacheConfigFromMessage(); CacheService cacheService = getService(CacheService.SERVICE_NAME); if (cacheConfig != null) { CacheMergePolicyProvider mergePolicyProvider = cacheService.getMergePolicyProvider(); checkCacheConfig(cacheConfig, mergePolicyProvider); Object mergePolicy = mergePolicyProvider.getMergePolicy(cacheConfig.getMergePolicy()); checkMergePolicySupportsInMemoryFormat(cacheConfig.getName(), mergePolicy, cacheConfig.getInMemoryFormat(), true, logger); ICompletableFuture future = cacheService.createCacheConfigOnAllMembersAsync(PreJoinCacheConfig.of(cacheConfig)); future.andThen(this); } else { sendResponse(null); } }
@Override protected void processMessage() { CacheConfig cacheConfig = extractCacheConfigFromMessage(); CacheService cacheService = getService(CacheService.SERVICE_NAME); if (cacheConfig != null) { CacheMergePolicyProvider mergePolicyProvider = cacheService.getMergePolicyProvider(); checkCacheConfig(cacheConfig, mergePolicyProvider); Object mergePolicy = mergePolicyProvider.getMergePolicy(cacheConfig.getMergePolicy()); checkMergePolicySupportsInMemoryFormat(cacheConfig.getName(), mergePolicy, cacheConfig.getInMemoryFormat(), nodeEngine.getClusterService().getClusterVersion(), true, logger); ICompletableFuture future = cacheService.createCacheConfigOnAllMembersAsync(PreJoinCacheConfig.of(cacheConfig)); future.andThen(this); } else { sendResponse(null); } }