Source:
private void initializeRedis() { synchronized (this.cache) { Region<ByteArrayWrapper, ByteArrayWrapper> stringsRegion; Region<ByteArrayWrapper, HyperLogLogPlus> hLLRegion; Region<String, RedisDataType> redisMetaData; InternalCache gemFireCache = (InternalCache) cache; try { if ((stringsRegion = cache.getRegion(STRING_REGION)) == null) { RegionFactory<ByteArrayWrapper, ByteArrayWrapper> regionFactory = gemFireCache.createRegionFactory(this.DEFAULT_REGION_TYPE); stringsRegion = regionFactory.create(STRING_REGION); } if ((hLLRegion = cache.getRegion(HLL_REGION)) == null) { RegionFactory<ByteArrayWrapper, HyperLogLogPlus> regionFactory = gemFireCache.createRegionFactory(this.DEFAULT_REGION_TYPE); hLLRegion = regionFactory.create(HLL_REGION); } if ((redisMetaData = cache.getRegion(REDIS_META_DATA_REGION)) == null) { RegionAttributesCreation regionAttributesCreation = new RegionAttributesCreation(); regionAttributesCreation.addCacheListener(metaListener); regionAttributesCreation.setDataPolicy(DataPolicy.REPLICATE); InternalRegionArguments ira = new InternalRegionArguments().setInternalRegion(true).setIsUsedForMetaRegion(true); redisMetaData = gemFireCache.createVMRegion(REDIS_META_DATA_REGION, regionAttributesCreation, ira); } } catch (IOException | ClassNotFoundException e) { InternalGemFireError assErr = new InternalGemFireError( "unexpected exception"); assErr.initCause(e); throw assErr; } this.keyRegistrar = new KeyRegistrar(redisMetaData); this.pubSub = createPubSub(); this.regionCache = new RegionProvider(stringsRegion, hLLRegion, this.keyRegistrar, expirationFutures, expirationExecutor, this.DEFAULT_REGION_TYPE); redisMetaData.put(REDIS_META_DATA_REGION, RedisDataType.REDIS_PROTECTED); redisMetaData.put(HLL_REGION, RedisDataType.REDIS_PROTECTED); redisMetaData.put(STRING_REGION, RedisDataType.REDIS_PROTECTED); } checkForRegions(); }

Target:
private void initializeRedis() { synchronized (this.cache) { Region<ByteArrayWrapper, ByteArrayWrapper> stringsRegion; Region<ByteArrayWrapper, HyperLogLogPlus> hLLRegion; Region<String, RedisDataType> redisMetaData; InternalCache gemFireCache = (InternalCache) cache; try { if ((stringsRegion = cache.getRegion(STRING_REGION)) == null) { RegionFactory<ByteArrayWrapper, ByteArrayWrapper> regionFactory = gemFireCache.createRegionFactory(this.DEFAULT_REGION_TYPE); stringsRegion = regionFactory.create(STRING_REGION); } if ((hLLRegion = cache.getRegion(HLL_REGION)) == null) { RegionFactory<ByteArrayWrapper, HyperLogLogPlus> regionFactory = gemFireCache.createRegionFactory(this.DEFAULT_REGION_TYPE); hLLRegion = regionFactory.create(HLL_REGION); } if ((redisMetaData = cache.getRegion(REDIS_META_DATA_REGION)) == null) { RegionAttributesCreation regionAttributesCreation = new RegionAttributesCreation(); regionAttributesCreation.addCacheListener(metaListener); regionAttributesCreation.setDataPolicy(DataPolicy.REPLICATE); InternalRegionArguments ira = new InternalRegionArguments().setInternalRegion(true).setIsUsedForMetaRegion(true); redisMetaData = gemFireCache.createVMRegion(REDIS_META_DATA_REGION, regionAttributesCreation, ira); } } catch (IOException | ClassNotFoundException e) { InternalGemFireError assErr = new InternalGemFireError( "unexpected exception"); assErr.initCause(e); throw assErr; } this.keyRegistrar = new KeyRegistrar(redisMetaData); this.pubSub = new PubSubImpl(); this.regionCache = new RegionProvider(stringsRegion, hLLRegion, this.keyRegistrar, expirationFutures, expirationExecutor, this.DEFAULT_REGION_TYPE); redisMetaData.put(REDIS_META_DATA_REGION, RedisDataType.REDIS_PROTECTED); redisMetaData.put(HLL_REGION, RedisDataType.REDIS_PROTECTED); redisMetaData.put(STRING_REGION, RedisDataType.REDIS_PROTECTED); } checkForRegions(); }