/** * {@inheritDoc} */ public NaturalIdRegionAccessStrategy createNaturalIdRegionAccessStrategy(RedisNaturalIdRegion naturalIdRegion, AccessType accessType) { switch (accessType) { case READ_ONLY: if (naturalIdRegion.getCacheDataDescription().isMutable()) { log.warn("read-only cache configured for mutable entity naturalIdRegion=[{}]", naturalIdRegion.getName()); } return new ReadOnlyRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case READ_WRITE: return new ReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case NONSTRICT_READ_WRITE: return new NonStrictReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case TRANSACTIONAL: return new TransactionalRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); default: throw new IllegalArgumentException("unrecognized access strategy type [" + accessType + "]"); } } }
/** * {@inheritDoc} */ public NaturalIdRegionAccessStrategy createNaturalIdRegionAccessStrategy(RedisNaturalIdRegion naturalIdRegion, AccessType accessType) { switch (accessType) { case READ_ONLY: if (naturalIdRegion.getCacheDataDescription().isMutable()) { log.warn("read-only cache configured for mutable entity naturalIdRegion=[{}]", naturalIdRegion.getName()); } return new ReadOnlyRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case READ_WRITE: return new ReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case NONSTRICT_READ_WRITE: return new NonStrictReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case TRANSACTIONAL: return new TransactionalRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); default: throw new IllegalArgumentException("unrecognized access strategy type [" + accessType + "]"); } } }
/** * {@inheritDoc} */ public NaturalIdRegionAccessStrategy createNaturalIdRegionAccessStrategy(RedisNaturalIdRegion naturalIdRegion, AccessType accessType) { switch (accessType) { case READ_ONLY: if (naturalIdRegion.getCacheDataDescription().isMutable()) { log.warn("read-only cache configured for mutable entity naturalIdRegion=[{}]", naturalIdRegion.getName()); } return new ReadOnlyRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case READ_WRITE: return new ReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case NONSTRICT_READ_WRITE: return new NonStrictReadWriteRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); case TRANSACTIONAL: return new TransactionalRedisNaturalIdRegionAccessStrategy(naturalIdRegion, naturalIdRegion.getOptions()); default: throw new IllegalArgumentException("unrecognized access strategy type [" + accessType + "]"); } } }