Renamed codecProvider and redissonReferenceEnabled Config properties

pull/1204/head
Nikita
parent 9b5fb39a4b
commit e7bc7904ed

@ -70,7 +70,7 @@ import org.redisson.api.RTopic;
import org.redisson.api.RedissonClient;
import org.redisson.api.RedissonReactiveClient;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.command.CommandExecutor;
import org.redisson.config.Config;
import org.redisson.config.ConfigSupport;
@ -102,7 +102,7 @@ public class Redisson implements RedissonClient {
protected final ConnectionManager connectionManager;
protected final ConcurrentMap<Class<?>, Class<?>> liveObjectClassCache = PlatformDependent.newConcurrentHashMap();
protected final CodecProvider codecProvider;
protected final ReferenceCodecProvider codecProvider;
protected final ResolverProvider resolverProvider;
protected final Config config;
protected final SemaphorePubSub semaphorePubSub = new SemaphorePubSub();
@ -116,7 +116,7 @@ public class Redisson implements RedissonClient {
connectionManager = ConfigSupport.createConnectionManager(configCopy);
evictionScheduler = new EvictionScheduler(connectionManager.getCommandExecutor());
codecProvider = configCopy.getCodecProvider();
codecProvider = configCopy.getReferenceCodecProvider();
resolverProvider = configCopy.getResolverProvider();
}
@ -154,7 +154,7 @@ public class Redisson implements RedissonClient {
*/
public static RedissonClient create(Config config) {
Redisson redisson = new Redisson(config);
if (config.isRedissonReferenceEnabled()) {
if (config.isReferenceEnabled()) {
redisson.enableRedissonReferenceSupport();
}
return redisson;
@ -182,7 +182,7 @@ public class Redisson implements RedissonClient {
*/
public static RedissonReactiveClient createReactive(Config config) {
RedissonReactive react = new RedissonReactive(config);
if (config.isRedissonReferenceEnabled()) {
if (config.isReferenceEnabled()) {
react.enableRedissonReferenceSupport();
}
return react;
@ -566,7 +566,7 @@ public class Redisson implements RedissonClient {
@Override
public RBatch createBatch() {
RedissonBatch batch = new RedissonBatch(id, evictionScheduler, connectionManager);
if (config.isRedissonReferenceEnabled()) {
if (config.isReferenceEnabled()) {
batch.enableRedissonReferenceSupport(this);
}
return batch;
@ -594,7 +594,7 @@ public class Redisson implements RedissonClient {
}
@Override
public CodecProvider getCodecProvider() {
public ReferenceCodecProvider getCodecProvider() {
return codecProvider;
}

@ -53,7 +53,7 @@ import org.redisson.api.annotation.RCascade;
import org.redisson.api.annotation.REntity;
import org.redisson.api.annotation.RFieldAccessor;
import org.redisson.api.annotation.RId;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.liveobject.LiveObjectTemplate;
import org.redisson.liveobject.core.AccessorInterceptor;
import org.redisson.liveobject.core.FieldAccessorInterceptor;
@ -83,11 +83,11 @@ public class RedissonLiveObjectService implements RLiveObjectService {
private final ConcurrentMap<Class<?>, Class<?>> classCache;
private final RedissonClient redisson;
private final CodecProvider codecProvider;
private final ReferenceCodecProvider codecProvider;
private final ResolverProvider resolverProvider;
private final RedissonObjectBuilder objectBuilder;
public RedissonLiveObjectService(RedissonClient redisson, ConcurrentMap<Class<?>, Class<?>> classCache, CodecProvider codecProvider, ResolverProvider resolverProvider) {
public RedissonLiveObjectService(RedissonClient redisson, ConcurrentMap<Class<?>, Class<?>> classCache, ReferenceCodecProvider codecProvider, ResolverProvider resolverProvider) {
this.redisson = redisson;
this.classCache = classCache;
this.codecProvider = codecProvider;

@ -52,7 +52,7 @@ import org.redisson.api.RTopicReactive;
import org.redisson.api.RedissonReactiveClient;
import org.redisson.client.codec.Codec;
import org.redisson.client.protocol.RedisCommands;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.command.CommandReactiveService;
import org.redisson.config.Config;
import org.redisson.config.ConfigSupport;
@ -97,7 +97,7 @@ public class RedissonReactive implements RedissonReactiveClient {
protected final CommandReactiveService commandExecutor;
protected final ConnectionManager connectionManager;
protected final Config config;
protected final CodecProvider codecProvider;
protected final ReferenceCodecProvider codecProvider;
protected final UUID id = UUID.randomUUID();
protected final SemaphorePubSub semaphorePubSub = new SemaphorePubSub();
@ -109,7 +109,7 @@ public class RedissonReactive implements RedissonReactiveClient {
connectionManager = ConfigSupport.createConnectionManager(configCopy);
commandExecutor = new CommandReactiveService(connectionManager);
evictionScheduler = new EvictionScheduler(commandExecutor);
codecProvider = config.getCodecProvider();
codecProvider = config.getReferenceCodecProvider();
}
@Override
@ -316,7 +316,7 @@ public class RedissonReactive implements RedissonReactiveClient {
@Override
public RBatchReactive createBatch() {
RedissonBatchReactive batch = new RedissonBatchReactive(evictionScheduler, connectionManager);
if (config.isRedissonReferenceEnabled()) {
if (config.isReferenceEnabled()) {
batch.enableRedissonReferenceSupport(this);
}
return batch;
@ -333,7 +333,7 @@ public class RedissonReactive implements RedissonReactiveClient {
}
@Override
public CodecProvider getCodecProvider() {
public ReferenceCodecProvider getCodecProvider() {
return codecProvider;
}

@ -18,7 +18,7 @@ package org.redisson.api;
import java.util.concurrent.TimeUnit;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.config.Config;
import org.redisson.liveobject.provider.ResolverProvider;
@ -902,7 +902,7 @@ public interface RedissonClient {
*
* @return CodecProvider object
*/
public CodecProvider getCodecProvider();
public ReferenceCodecProvider getCodecProvider();
/**
* Returns the ResolverProvider instance

@ -18,7 +18,7 @@ package org.redisson.api;
import java.util.List;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.config.Config;
/**
@ -521,7 +521,7 @@ public interface RedissonReactiveClient {
*
* @return CodecProvider object
*/
CodecProvider getCodecProvider();
ReferenceCodecProvider getCodecProvider();
/**
* Get Redis nodes group for server operations

@ -27,7 +27,7 @@ import org.redisson.liveobject.misc.ClassUtils;
*
* @author Rui Gu (https://github.com/jackygurui)
*/
public class DefaultCodecProvider implements CodecProvider {
public class DefaultReferenceCodecProvider implements ReferenceCodecProvider {
public transient final ConcurrentMap<Class<? extends Codec>, Codec> codecCache = PlatformDependent.newConcurrentHashMap();

@ -24,7 +24,7 @@ import org.redisson.api.annotation.RObjectField;
*
* @author Rui Gu (https://github.com/jackygurui)
*/
public interface CodecProvider {
public interface ReferenceCodecProvider {
/**
* Get codec instance by its class.

@ -23,8 +23,8 @@ import java.net.URL;
import java.util.concurrent.ExecutorService;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.DefaultCodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.codec.DefaultReferenceCodecProvider;
import org.redisson.codec.JsonJacksonCodec;
import org.redisson.connection.ConnectionManager;
import org.redisson.connection.ReplicatedConnectionManager;
@ -70,7 +70,7 @@ public class Config {
/**
* For codec registry and look up. DefaultCodecProvider used by default
*/
private CodecProvider codecProvider = new DefaultCodecProvider();
private ReferenceCodecProvider referenceCodecProvider = new DefaultReferenceCodecProvider();
/**
* For resolver registry and look up. DefaultResolverProvider used by default
@ -83,7 +83,7 @@ public class Config {
* Config option for enabling Redisson Reference feature.
* Default value is TRUE
*/
private boolean redissonReferenceEnabled = true;
private boolean referenceEnabled = true;
private boolean useLinuxNativeEpoll;
@ -110,9 +110,9 @@ public class Config {
setNettyThreads(oldConf.getNettyThreads());
setThreads(oldConf.getThreads());
setCodec(oldConf.getCodec());
setCodecProvider(oldConf.getCodecProvider());
setReferenceCodecProvider(oldConf.getReferenceCodecProvider());
setResolverProvider(oldConf.getResolverProvider());
setRedissonReferenceEnabled(oldConf.redissonReferenceEnabled);
setReferenceEnabled(oldConf.isReferenceEnabled());
setEventLoopGroup(oldConf.getEventLoopGroup());
if (oldConf.getSingleServerConfig() != null) {
setSingleServerConfig(new SingleServerConfig(oldConf.getSingleServerConfig()));
@ -156,14 +156,15 @@ public class Config {
}
/**
* For codec registry and look up. DefaultCodecProvider used by default.
* Reference objects codec provider used for codec registry and look up.
* <code>org.redisson.codec.DefaultReferenceCodecProvider</code> used by default.
*
* @param codecProvider object
* @return config
* @see org.redisson.codec.CodecProvider
* @see org.redisson.codec.ReferenceCodecProvider
*/
public Config setCodecProvider(CodecProvider codecProvider) {
this.codecProvider = codecProvider;
public Config setReferenceCodecProvider(ReferenceCodecProvider codecProvider) {
this.referenceCodecProvider = codecProvider;
return this;
}
@ -172,8 +173,8 @@ public class Config {
*
* @return CodecProvider
*/
public CodecProvider getCodecProvider() {
return codecProvider;
public ReferenceCodecProvider getReferenceCodecProvider() {
return referenceCodecProvider;
}
/**
@ -203,8 +204,8 @@ public class Config {
*
* @return <code>true</code> if Redisson Reference feature enabled
*/
public boolean isRedissonReferenceEnabled() {
return redissonReferenceEnabled;
public boolean isReferenceEnabled() {
return referenceEnabled;
}
/**
@ -214,8 +215,8 @@ public class Config {
*
* @param redissonReferenceEnabled flag
*/
public void setRedissonReferenceEnabled(boolean redissonReferenceEnabled) {
this.redissonReferenceEnabled = redissonReferenceEnabled;
public void setReferenceEnabled(boolean redissonReferenceEnabled) {
this.referenceEnabled = redissonReferenceEnabled;
}
/**

@ -29,7 +29,7 @@ import java.util.List;
import org.redisson.api.RedissonNodeInitializer;
import org.redisson.client.codec.Codec;
import org.redisson.cluster.ClusterConnectionManager;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.connection.ConnectionManager;
import org.redisson.connection.ElasticacheConnectionManager;
import org.redisson.connection.MasterSlaveConnectionManager;
@ -271,7 +271,7 @@ public class ConfigSupport {
mapper.addMixIn(MasterSlaveServersConfig.class, MasterSlaveServersConfigMixIn.class);
mapper.addMixIn(SingleServerConfig.class, SingleSeverConfigMixIn.class);
mapper.addMixIn(Config.class, ConfigMixIn.class);
mapper.addMixIn(CodecProvider.class, ClassMixIn.class);
mapper.addMixIn(ReferenceCodecProvider.class, ClassMixIn.class);
mapper.addMixIn(ResolverProvider.class, ClassMixIn.class);
mapper.addMixIn(Codec.class, ClassMixIn.class);
mapper.addMixIn(RedissonNodeInitializer.class, ClassMixIn.class);

@ -29,7 +29,7 @@ import org.redisson.api.annotation.REntity;
import org.redisson.api.annotation.REntity.TransformationMode;
import org.redisson.api.annotation.RId;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.liveobject.misc.ClassUtils;
import org.redisson.liveobject.misc.Introspectior;
import org.redisson.liveobject.resolver.NamingScheme;
@ -52,7 +52,7 @@ import net.bytebuddy.implementation.bind.annotation.This;
public class AccessorInterceptor {
private final RedissonClient redisson;
private final CodecProvider codecProvider;
private final ReferenceCodecProvider codecProvider;
private final RedissonObjectBuilder objectBuilder;
public AccessorInterceptor(RedissonClient redisson, RedissonObjectBuilder objectBuilder) {

@ -29,7 +29,7 @@ import org.redisson.client.codec.Codec;
import org.redisson.api.RMap;
import org.redisson.api.RedissonClient;
import org.redisson.api.annotation.REntity;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.liveobject.misc.ClassUtils;
import org.redisson.liveobject.resolver.NamingScheme;
@ -50,14 +50,14 @@ public class LiveObjectInterceptor {
}
private final RedissonClient redisson;
private final CodecProvider codecProvider;
private final ReferenceCodecProvider codecProvider;
private final Class<?> originalClass;
private final String idFieldName;
private final Class<?> idFieldType;
private final NamingScheme namingScheme;
private final Class<? extends Codec> codecClass;
public LiveObjectInterceptor(RedissonClient redisson, CodecProvider codecProvider, Class<?> entityClass, String idFieldName) {
public LiveObjectInterceptor(RedissonClient redisson, ReferenceCodecProvider codecProvider, Class<?> entityClass, String idFieldName) {
this.redisson = redisson;
this.codecProvider = codecProvider;
this.originalClass = entityClass;

@ -43,7 +43,7 @@ import org.redisson.api.RedissonClient;
import org.redisson.api.annotation.REntity;
import org.redisson.api.annotation.RObjectField;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.liveobject.misc.ClassUtils;
import org.redisson.liveobject.resolver.NamingScheme;
import org.redisson.misc.RedissonObjectFactory;
@ -74,9 +74,9 @@ public class RedissonObjectBuilder {
}
private final RedissonClient redisson;
private final CodecProvider codecProvider;
private final ReferenceCodecProvider codecProvider;
public RedissonObjectBuilder(RedissonClient redisson, CodecProvider codecProvider) {
public RedissonObjectBuilder(RedissonClient redisson, ReferenceCodecProvider codecProvider) {
super();
this.redisson = redisson;
this.codecProvider = codecProvider;

@ -32,7 +32,7 @@ import org.redisson.api.RedissonReactiveClient;
import org.redisson.api.annotation.REntity;
import org.redisson.api.annotation.RId;
import org.redisson.client.codec.Codec;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.config.Config;
import org.redisson.liveobject.misc.ClassUtils;
import org.redisson.liveobject.misc.Introspectior;
@ -103,7 +103,7 @@ public class RedissonObjectFactory {
public static <T> T fromReference(RedissonClient redisson, RedissonReference rr) throws Exception {
Class<? extends Object> type = rr.getType();
CodecProvider codecProvider = redisson.getConfig().getCodecProvider();
ReferenceCodecProvider codecProvider = redisson.getConfig().getReferenceCodecProvider();
if (type != null) {
if (ClassUtils.isAnnotationPresent(type, REntity.class)) {
RLiveObjectService liveObjectService = redisson.getLiveObjectService();
@ -133,7 +133,7 @@ public class RedissonObjectFactory {
public static <T> T fromReference(RedissonReactiveClient redisson, RedissonReference rr) throws Exception {
Class<? extends Object> type = rr.getReactiveType();
CodecProvider codecProvider = redisson.getConfig().getCodecProvider();
ReferenceCodecProvider codecProvider = redisson.getConfig().getReferenceCodecProvider();
/**
* Live Object from reference in reactive client is not supported yet.
*/
@ -158,12 +158,12 @@ public class RedissonObjectFactory {
if (object instanceof RObject && !(object instanceof RLiveObject)) {
RObject rObject = ((RObject) object);
config.getCodecProvider().registerCodec((Class) rObject.getCodec().getClass(), (Class) rObject.getClass(), rObject.getName(), rObject.getCodec());
config.getReferenceCodecProvider().registerCodec((Class) rObject.getCodec().getClass(), (Class) rObject.getClass(), rObject.getName(), rObject.getCodec());
return new RedissonReference(object.getClass(), ((RObject) object).getName(), ((RObject) object).getCodec());
}
if (object instanceof RObjectReactive && !(object instanceof RLiveObject)) {
RObjectReactive rObject = ((RObjectReactive) object);
config.getCodecProvider().registerCodec((Class) rObject.getCodec().getClass(), (Class) rObject.getClass(), rObject.getName(), rObject.getCodec());
config.getReferenceCodecProvider().registerCodec((Class) rObject.getCodec().getClass(), (Class) rObject.getClass(), rObject.getName(), rObject.getCodec());
return new RedissonReference(object.getClass(), ((RObjectReactive) object).getName(), ((RObjectReactive) object).getCodec());
}
@ -173,7 +173,7 @@ public class RedissonObjectFactory {
REntity anno = ClassUtils.getAnnotation(rEntity, REntity.class);
NamingScheme ns = anno.namingScheme()
.getDeclaredConstructor(Codec.class)
.newInstance(config.getCodecProvider().getCodec(anno, (Class) rEntity));
.newInstance(config.getReferenceCodecProvider().getCodec(anno, (Class) rEntity));
String name = Introspectior
.getFieldsWithAnnotation(rEntity, RId.class)
.getOnly().getName();

@ -17,7 +17,7 @@ import org.redisson.client.RedisClient;
import org.redisson.client.RedisConnection;
import org.redisson.client.codec.Codec;
import org.redisson.client.protocol.RedisCommands;
import org.redisson.codec.CodecProvider;
import org.redisson.codec.ReferenceCodecProvider;
import org.redisson.config.SingleServerConfig;
import org.redisson.liveobject.provider.ResolverProvider;
@ -116,8 +116,8 @@ public class SpringNamespaceWikiTest {
assertEquals(2, config.getNettyThreads());
assertSame(context.getBean("myCodec", Codec.class), config.getCodec());
assertEquals(false, config.isUseLinuxNativeEpoll());
assertEquals(false, config.isRedissonReferenceEnabled());
assertSame(context.getBean("myCodecProvider", CodecProvider.class), config.getCodecProvider());
assertEquals(false, config.isReferenceEnabled());
assertSame(context.getBean("myCodecProvider", ReferenceCodecProvider.class), config.getReferenceCodecProvider());
assertSame(context.getBean("myResolverProvider", ResolverProvider.class), config.getResolverProvider());
assertSame(context.getBean("myExecutor", Executor.class), config.getExecutor());
assertSame(context.getBean("myEventLoopGroup", EventLoopGroup.class), config.getEventLoopGroup());

Loading…
Cancel
Save