Compilation fixed

pull/574/merge
Nikita 9 years ago
parent a39e9939f1
commit ce0be05cc9

@ -24,6 +24,7 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.UUID;
import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.TimeUnit;
import org.redisson.api.ClusterNodesGroup;
@ -95,8 +96,7 @@ public class Redisson implements RedissonClient {
protected final CommandExecutor commandExecutor;
protected final ConnectionManager connectionManager;
protected final Map<Class, Class> liveObjectClassCache
= PlatformDependent.<Class, Class>newConcurrentHashMap();
protected final ConcurrentMap<Class<?>, Class<?>> liveObjectClassCache = PlatformDependent.newConcurrentHashMap();
protected final CodecProvider liveObjectDefaultCodecProvider = new DefaultCodecProvider();
protected final ResolverProvider liveObjectDefaultResolverProvider = new DefaultResolverProvider();
protected final Config config;

@ -17,7 +17,7 @@ package org.redisson;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.util.Map;
import java.util.concurrent.ConcurrentMap;
import org.redisson.api.RLiveObject;
import org.redisson.api.RLiveObjectService;
@ -45,12 +45,12 @@ import net.bytebuddy.matcher.ElementMatchers;
public class RedissonLiveObjectService implements RLiveObjectService {
private final Map<Class, Class> classCache;
private final ConcurrentMap<Class<?>, Class<?>> classCache;
private final RedissonClient redisson;
private final CodecProvider codecProvider;
private final ResolverProvider resolverProvider;
public RedissonLiveObjectService(RedissonClient redisson, Map<Class, Class> classCache, CodecProvider codecProvider, ResolverProvider resolverProvider) {
public RedissonLiveObjectService(RedissonClient redisson, ConcurrentMap<Class<?>, Class<?>> classCache, CodecProvider codecProvider, ResolverProvider resolverProvider) {
this.redisson = redisson;
this.classCache = classCache;
this.codecProvider = codecProvider;
@ -228,7 +228,7 @@ public class RedissonLiveObjectService implements RLiveObjectService {
return cls.newInstance();
} catch (Exception exception) {
for (Constructor<?> ctor : classCache.containsKey(cls) ? cls.getConstructors() : cls.getDeclaredConstructors()) {
if (ctor.getParameterCount() == 1 && ctor.getParameterTypes()[0].isAssignableFrom(id.getClass())) {
if (ctor.getParameterTypes().length == 1 && ctor.getParameterTypes()[0].isAssignableFrom(id.getClass())) {
return (T) ctor.newInstance(id);
}
}
@ -238,7 +238,7 @@ public class RedissonLiveObjectService implements RLiveObjectService {
private <T> Class<? extends T> getProxyClass(Class<T> entityClass) {
registerClass(entityClass);
return classCache.get(entityClass);
return (Class<? extends T>) classCache.get(entityClass);
}
private <T> void validateClass(Class<T> entityClass) {

@ -50,10 +50,10 @@ public class RedissonObjectFactory {
&& method.getReturnType().isAssignableFrom(type)
&& expected.isAssignableFrom(method.getReturnType())
&& interfaces.contains(method.getReturnType())) {
if ((rr.isDefaultCodec() || RBitSet.class.isAssignableFrom(method.getReturnType())) && method.getParameterCount() == 1) {
if ((rr.isDefaultCodec() || RBitSet.class.isAssignableFrom(method.getReturnType())) && method.getParameterTypes().length == 1) {
return (T) method.invoke(redisson, rr.getKeyName());
} else if (!rr.isDefaultCodec()
&& method.getParameterCount() == 2
&& method.getParameterTypes().length == 2
&& String.class.equals(method.getParameterTypes()[0])
&& Codec.class.equals(method.getParameterTypes()[1])) {
return (T) method.invoke(redisson, rr.getKeyName(), codecProvider.getCodec(rr.getCodecType()));
@ -70,10 +70,10 @@ public class RedissonObjectFactory {
if (method.getName().startsWith("get")
&& method.getReturnType().isAssignableFrom(expectedType)
&& interfaces.contains(method.getReturnType())) {
if ((codec == null || RBitSet.class.isAssignableFrom(method.getReturnType())) && method.getParameterCount() == 1) {
if ((codec == null || RBitSet.class.isAssignableFrom(method.getReturnType())) && method.getParameterTypes().length == 1) {
return (T) method.invoke(redisson, name);
} else if (codec != null
&& method.getParameterCount() == 2
&& method.getParameterTypes().length == 2
&& String.class.equals(method.getParameterTypes()[0])
&& Codec.class.equals(method.getParameterTypes()[1])) {
return (T) method.invoke(redisson, name, codec);

Loading…
Cancel
Save