diff --git a/src/org/redkale/convert/ConvertFactory.java b/src/org/redkale/convert/ConvertFactory.java index 5883be176..9f83668b9 100644 --- a/src/org/redkale/convert/ConvertFactory.java +++ b/src/org/redkale/convert/ConvertFactory.java @@ -615,6 +615,7 @@ public abstract class ConvertFactory { decoder = od; } else if (!clazz.getName().startsWith("java.") || java.net.HttpCookie.class == clazz + || java.util.AbstractMap.SimpleEntry.class == clazz || clazz.getName().startsWith("java.awt.geom.Point2D")) { Decodeable simpleCoder = null; for (final Method method : clazz.getDeclaredMethods()) { @@ -698,7 +699,7 @@ public abstract class ConvertFactory { encoder = new OptionalCoder(this, type); } else if (clazz == Object.class) { return (Encodeable) this.anyEncoder; - } else if (!clazz.getName().startsWith("java.") || java.net.HttpCookie.class == clazz) { + } else if (!clazz.getName().startsWith("java.") || java.net.HttpCookie.class == clazz || java.util.AbstractMap.SimpleEntry.class == clazz) { Encodeable simpleCoder = null; for (final Method method : clazz.getDeclaredMethods()) { if (!Modifier.isStatic(method.getModifiers())) continue; diff --git a/src/org/redkale/service/RetResult.java b/src/org/redkale/service/RetResult.java index 98fcb46b1..5187ab47b 100644 --- a/src/org/redkale/service/RetResult.java +++ b/src/org/redkale/service/RetResult.java @@ -54,11 +54,11 @@ public class RetResult { this.result = result; } - public static RetResult success() { - return new RetResult(); + public static RetResult success() { + return new RetResult<>(); } - public static RetResult success(V result) { + public static RetResult success(V result) { return new RetResult().result(result); } diff --git a/src/org/redkale/util/Creator.java b/src/org/redkale/util/Creator.java index 563ee4c2a..e798b67f2 100644 --- a/src/org/redkale/util/Creator.java +++ b/src/org/redkale/util/Creator.java @@ -85,6 +85,13 @@ public interface Creator { creatorCacheMap.put(Stream.class, (params) -> new ArrayList<>().stream()); creatorCacheMap.put(ConcurrentHashMap.class, (params) -> new ConcurrentHashMap<>()); creatorCacheMap.put(CompletableFuture.class, (params) -> new CompletableFuture<>()); + creatorCacheMap.put(AbstractMap.SimpleEntry.class, new Creator() { + @Override + @ConstructorParameters({"key", "value"}) + public AbstractMap.SimpleEntry create(Object... params) { + return new AbstractMap.SimpleEntry(params[0], params[1]); + } + }); } static class SimpleClassVisitor extends ClassVisitor {