From 7b6fa126d4943f1595dc661325bd2667e09e3cd1 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 9 Jul 2011 22:19:38 +0900 Subject: [PATCH 001/409] fixed bug in reflection-based template builder --- src/main/java/org/msgpack/template/DefaultTemplate.java | 5 +++-- .../msgpack/template/builder/ReflectionTemplateBuilder.java | 4 +--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index 349424193..3fef4938d 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -30,7 +30,8 @@ public class DefaultTemplate implements Template { private TemplateRegistry registry; - private Class targetClass; + // this field should be deleted? + //private Class targetClass; private Type lookupType; @@ -42,7 +43,7 @@ public DefaultTemplate(TemplateRegistry registry, Class targetClass) { public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type lookupType) { this.registry = registry; - this.targetClass = targetClass; + //this.targetClass = targetClass; this.lookupType = lookupType; this.messagePackable = MessagePackable.class.isAssignableFrom(targetClass); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 9e456883f..b52096f28 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -341,9 +341,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { } else if (t.equals(double.class)) { res[i] = new DoubleFieldEntry(e); } else { - Template tmpl = registry.lookup((Class) e.getGenericType()); - // TODO #MN - //Template tmpl = msgpack.lookup(e.getGenericType(), true); + Template tmpl = registry.lookup((Class) e.getGenericType(), true); res[i] = new ObjectFieldEntry(e, tmpl); } } From 6fa800d6bb8f875c77a61a1de8f606ad06347bca Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 9 Jul 2011 22:20:53 +0900 Subject: [PATCH 002/409] added test programs for template builder --- .../msgpack/testclasses/AbstractClass.java | 10 +++ .../testclasses/EnumTypeFieldsClass.java | 19 ++++++ .../EnumTypeFieldsClassNotNullable.java | 22 +++++++ .../org/msgpack/testclasses/FinalClass.java | 10 +++ .../msgpack/testclasses/InheritanceClass.java | 13 ++++ .../InheritanceClassNotNullable.java | 16 +++++ .../org/msgpack/testclasses/Interface.java | 10 +++ .../testclasses/ListTypeFieldsClass.java | 29 ++++++++ .../ListTypeFieldsClassNotNullable.java | 38 +++++++++++ .../testclasses/MapTypeFieldsClass.java | 25 +++++++ .../MapTypeFieldsClassNotNullable.java | 31 +++++++++ .../MessagePackableTypeFieldsClass.java | 63 ++++++++++++++++++ ...agePackableTypeFieldsClassNotNullable.java | 66 +++++++++++++++++++ .../testclasses/ModifiersFieldsClass.java | 16 +++++ .../ModifiersFieldsClassNotNullable.java | 22 +++++++ .../testclasses/PrimitiveTypeFieldsClass.java | 18 +++++ .../PrimitiveTypeFieldsClassNotNullable.java | 26 ++++++++ .../testclasses/ReferenceTypeFieldsClass.java | 25 +++++++ .../ReferenceTypeFieldsClassNotNullable.java | 37 +++++++++++ .../org/msgpack/testclasses/SuperClass.java | 13 ++++ .../testclasses/SuperClassNotNullable.java | 16 +++++ .../UserDefinedTypeFieldsClass.java | 29 ++++++++ ...UserDefinedTypeFieldsClassNotNullable.java | 36 ++++++++++ 23 files changed, 590 insertions(+) create mode 100644 src/test/java/org/msgpack/testclasses/AbstractClass.java create mode 100644 src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/FinalClass.java create mode 100644 src/test/java/org/msgpack/testclasses/InheritanceClass.java create mode 100644 src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/Interface.java create mode 100644 src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/SuperClass.java create mode 100644 src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java create mode 100644 src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java diff --git a/src/test/java/org/msgpack/testclasses/AbstractClass.java b/src/test/java/org/msgpack/testclasses/AbstractClass.java new file mode 100644 index 000000000..412854378 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/AbstractClass.java @@ -0,0 +1,10 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public abstract class AbstractClass { + +} diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java new file mode 100644 index 000000000..d72de1bc5 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java @@ -0,0 +1,19 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.OrdinalEnum; + + +@Ignore @Message +public class EnumTypeFieldsClass { + public int f0; + public SampleEnum f1; + + public EnumTypeFieldsClass() {} + + @Ignore @OrdinalEnum + public static enum SampleEnum { + ONE, TWO, THREE; + } +} diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..ae50112b9 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java @@ -0,0 +1,22 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; +import org.msgpack.annotation.OrdinalEnum; + + +@Ignore @Message +public class EnumTypeFieldsClassNotNullable { + @NotNullable + public int f0; + @NotNullable + public SampleEnum f1; + + public EnumTypeFieldsClassNotNullable() {} + + @Ignore @OrdinalEnum + public static enum SampleEnum { + ONE, TWO, THREE; + } +} diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java new file mode 100644 index 000000000..8f3b2b17f --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -0,0 +1,10 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public final class FinalClass { + +} diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java new file mode 100644 index 000000000..949374c03 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -0,0 +1,13 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class InheritanceClass extends SuperClass { + public String f2; + public int f3; + + public InheritanceClass() {} +} diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java new file mode 100644 index 000000000..8aa55e198 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -0,0 +1,16 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class InheritanceClassNotNullable extends SuperClass { + @NotNullable + public String f2; + @NotNullable + public int f3; + + public InheritanceClassNotNullable() {} +} diff --git a/src/test/java/org/msgpack/testclasses/Interface.java b/src/test/java/org/msgpack/testclasses/Interface.java new file mode 100644 index 000000000..9ada6dac2 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/Interface.java @@ -0,0 +1,10 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public interface Interface { + +} diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java new file mode 100644 index 000000000..c95499dbb --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -0,0 +1,29 @@ +package org.msgpack.testclasses; + +import java.nio.ByteBuffer; +import java.util.List; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class ListTypeFieldsClass { + public List f0; + public List f1; + public List f2; + public List> f3; + public List f4; + public List f5; + + public ListTypeFieldsClass() { + } + + @Ignore @Message + public static class NestedClass { + public byte[] f0; + public String f1; + + public NestedClass() {} + } +} diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..4140a02e8 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -0,0 +1,38 @@ +package org.msgpack.testclasses; + +import java.nio.ByteBuffer; +import java.util.List; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class ListTypeFieldsClassNotNullable { + @NotNullable + public List f0; + @NotNullable + public List f1; + @NotNullable + public List f2; + @NotNullable + public List> f3; + @NotNullable + public List f4; + @NotNullable + public List f5; + + public ListTypeFieldsClassNotNullable() { + } + + @Ignore @Message + public static class NestedClass { + @NotNullable + public byte[] f0; + @NotNullable + public String f1; + + public NestedClass() {} + } +} diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java new file mode 100644 index 000000000..005b8073c --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -0,0 +1,25 @@ +package org.msgpack.testclasses; + +import java.util.Map; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class MapTypeFieldsClass { + public Map f0; + public Map f1; + public Map f2; + public Map f3; + + public MapTypeFieldsClass() { + } + + @Ignore @Message + public static class NestedClass { + public String f0; + + public NestedClass() {} + } +} diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..cb241f022 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -0,0 +1,31 @@ +package org.msgpack.testclasses; + +import java.util.Map; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class MapTypeFieldsClassNotNullable { + @NotNullable + public Map f0; + @NotNullable + public Map f1; + @NotNullable + public Map f2; + @NotNullable + public Map f3; + + public MapTypeFieldsClassNotNullable() { + } + + @Ignore @Message + public static class NestedClass { + @NotNullable + public String f0; + + public NestedClass() {} + } +} diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java new file mode 100644 index 000000000..70e3cbcec --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -0,0 +1,63 @@ +package org.msgpack.testclasses; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import org.junit.Ignore; +import org.msgpack.MessagePackable; +import org.msgpack.annotation.Message; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +@Ignore @Message +public class MessagePackableTypeFieldsClass { + public String f0; + public NestedClass f1; + + public MessagePackableTypeFieldsClass() {} + + @Ignore + public static class NestedClass implements MessagePackable { + public String f0; + public int[] f1; + public List f2; + + public NestedClass() { } + + public void writeTo(Packer packer) throws IOException { + packer.writeArrayBegin(3); + packer.writeString(f0); + packer.writeArrayBegin(f1.length); + for(int e : f1) { + packer.writeInt(e); + } + packer.writeArrayEnd(); + packer.writeArrayBegin(f2.size()); + for(String e : f2) { + packer.writeString(e); + } + packer.writeArrayEnd(); + packer.writeArrayEnd(); + } + + public void readFrom(Unpacker uunpacker) throws IOException { + uunpacker.readArrayBegin(); + f0 = uunpacker.readString(); + int nf1 = uunpacker.readArrayBegin(); + f1 = new int[nf1]; + for(int i=0; i < nf1; i++) { + f1[i] = uunpacker.readInt(); + } + uunpacker.readArrayEnd(); + int nf2 = uunpacker.readArrayBegin(); + f2 = new ArrayList(nf2); + for(int i=0; i < nf2; i++) { + f2.add(uunpacker.readString()); + } + uunpacker.readArrayEnd(); + uunpacker.readArrayEnd(); + } + } +} diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..6118c448f --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -0,0 +1,66 @@ +package org.msgpack.testclasses; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import org.junit.Ignore; +import org.msgpack.MessagePackable; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +@Ignore @Message +public class MessagePackableTypeFieldsClassNotNullable { + @NotNullable + public String f0; + @NotNullable + public NestedClass f1; + + public MessagePackableTypeFieldsClassNotNullable() {} + + @Ignore + public static class NestedClass implements MessagePackable { + public String f0; + public int[] f1; + public List f2; + + public NestedClass() { } + + public void writeTo(Packer packer) throws IOException { + packer.writeArrayBegin(3); + packer.writeString(f0); + packer.writeArrayBegin(f1.length); + for(int e : f1) { + packer.writeInt(e); + } + packer.writeArrayEnd(); + packer.writeArrayBegin(f2.size()); + for(String e : f2) { + packer.writeString(e); + } + packer.writeArrayEnd(); + packer.writeArrayEnd(); + } + + public void readFrom(Unpacker uunpacker) throws IOException { + uunpacker.readArrayBegin(); + f0 = uunpacker.readString(); + int nf1 = uunpacker.readArrayBegin(); + f1 = new int[nf1]; + for(int i=0; i < nf1; i++) { + f1[i] = uunpacker.readInt(); + } + uunpacker.readArrayEnd(); + int nf2 = uunpacker.readArrayBegin(); + f2 = new ArrayList(nf2); + for(int i=0; i < nf2; i++) { + f2.add(uunpacker.readString()); + } + uunpacker.readArrayEnd(); + uunpacker.readArrayEnd(); + } + } +} diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java new file mode 100644 index 000000000..c98e4eca6 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -0,0 +1,16 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class ModifiersFieldsClass { + public int f0; + public final int f1 = 1; + private int f2; + protected int f3; + int f4; + + public ModifiersFieldsClass() {} +} diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java new file mode 100644 index 000000000..d9d5d4d32 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -0,0 +1,22 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class ModifiersFieldsClassNotNullable { + @NotNullable + public int f0; + @NotNullable + public final int f1 = 1; + @NotNullable + private int f2; + @NotNullable + protected int f3; + @NotNullable + int f4; + + public ModifiersFieldsClassNotNullable() {} +} diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java new file mode 100644 index 000000000..cde1602c5 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java @@ -0,0 +1,18 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class PrimitiveTypeFieldsClass { + public byte f0; + public short f1; + public int f2; + public long f3; + public float f4; + public double f5; + public boolean f6; + + public PrimitiveTypeFieldsClass() {} +} diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..3546dc8d6 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java @@ -0,0 +1,26 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class PrimitiveTypeFieldsClassNotNullable { + @NotNullable + public byte f0; + @NotNullable + public short f1; + @NotNullable + public int f2; + @NotNullable + public long f3; + @NotNullable + public float f4; + @NotNullable + public double f5; + @NotNullable + public boolean f6; + + public PrimitiveTypeFieldsClassNotNullable() {} +} diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java new file mode 100644 index 000000000..6b1173e36 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java @@ -0,0 +1,25 @@ +package org.msgpack.testclasses; + +import java.math.BigInteger; +import java.nio.ByteBuffer; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class ReferenceTypeFieldsClass { + public Byte f0; + public Short f1; + public Integer f2; + public Long f3; + public Float f4; + public Double f5; + public Boolean f6; + public BigInteger f7; + public String f8; + public byte[] f9; + public ByteBuffer f10; + + public ReferenceTypeFieldsClass() {} +} diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..bd5ed9dfa --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java @@ -0,0 +1,37 @@ +package org.msgpack.testclasses; + +import java.math.BigInteger; +import java.nio.ByteBuffer; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class ReferenceTypeFieldsClassNotNullable { + @NotNullable + public Byte f0; + @NotNullable + public Short f1; + @NotNullable + public Integer f2; + @NotNullable + public Long f3; + @NotNullable + public Float f4; + @NotNullable + public Double f5; + @NotNullable + public Boolean f6; + @NotNullable + public BigInteger f7; + @NotNullable + public String f8; + @NotNullable + public byte[] f9; + @NotNullable + public ByteBuffer f10; + + public ReferenceTypeFieldsClassNotNullable() {} +} diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java new file mode 100644 index 000000000..124a4997c --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -0,0 +1,13 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class SuperClass { + public String f0; + protected int f1; + + public SuperClass() {} +} diff --git a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java new file mode 100644 index 000000000..21e664480 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java @@ -0,0 +1,16 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class SuperClassNotNullable { + @NotNullable + public String f0; + @NotNullable + protected int f1; + + public SuperClassNotNullable() {} +} diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java new file mode 100644 index 000000000..8e53d25e8 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java @@ -0,0 +1,29 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; + + +@Ignore @Message +public class UserDefinedTypeFieldsClass { + public NestedClass1 f0; + public NestedClass2 f1; + + public UserDefinedTypeFieldsClass () {} + + @Ignore @Message + public static class NestedClass1 { + public int f0; + public String f1; + + public NestedClass1() {} + } + + @Ignore @Message + public static class NestedClass2 { + public int f0; + public String f1; + + public NestedClass2() {} + } +} diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..11021560d --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -0,0 +1,36 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message +public class UserDefinedTypeFieldsClassNotNullable { + @NotNullable + public NestedClass1 f0; + @NotNullable + public NestedClass2 f1; + + public UserDefinedTypeFieldsClassNotNullable () {} + + @Ignore @Message + public static class NestedClass1 { + @NotNullable + public int f0; + @NotNullable + public String f1; + + public NestedClass1() {} + } + + @Ignore @Message + public static class NestedClass2 { + @NotNullable + public int f0; + @NotNullable + public String f1; + + public NestedClass2() {} + } +} From 81279cf32653f32f81c81bc6473cb78518653da1 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 00:55:21 +0900 Subject: [PATCH 003/409] modified packers and unpackers for parameter passing of MessagePack object --- src/main/java/org/msgpack/MessagePack.java | 55 +++++++++---------- .../packer/AbstractMessagePackPacker.java | 7 ++- .../java/org/msgpack/packer/BufferPacker.java | 15 ++++- src/main/java/org/msgpack/packer/Packer.java | 9 ++- .../java/org/msgpack/packer/StreamPacker.java | 9 ++- .../java/org/msgpack/packer/Unconverter.java | 9 ++- .../unpacker/AbstractMessagePackUnpacker.java | 8 ++- .../org/msgpack/unpacker/BufferUnpacker.java | 20 +++++-- .../java/org/msgpack/unpacker/Converter.java | 8 +++ .../org/msgpack/unpacker/StreamUnpacker.java | 9 ++- .../java/org/msgpack/unpacker/Unpacker.java | 21 +++---- .../msgpack/unpacker/UnpackerIterator.java | 4 +- 12 files changed, 116 insertions(+), 58 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 57ebf8dde..e0fb84e59 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -48,7 +48,7 @@ public byte[] write(Object v) throws IOException { } public byte[] write(Object v, Template tmpl) throws IOException { // TODO IOException - BufferPacker pk = new BufferPacker(); + BufferPacker pk = new BufferPacker(this); tmpl.write(pk, v); return pk.toByteArray(); } @@ -58,13 +58,13 @@ public void write(OutputStream out, Object v) throws IOException { } public void write(OutputStream out, Object v, Template tmpl) throws IOException { - StreamPacker pk = new StreamPacker(out); + StreamPacker pk = new StreamPacker(this, out); tmpl.write(pk, v); } public byte[] write(Value v) throws IOException { // TODO IOException // FIXME ValueTemplate should do this - BufferPacker pk = new BufferPacker(); + BufferPacker pk = new BufferPacker(this); pk.write(v); return pk.toByteArray(); } @@ -74,45 +74,45 @@ public Value read(byte[] b) throws IOException { // TODO IOException } public Value read(byte[] b, int off, int len) throws IOException { // TODO IOException - return new BufferUnpacker().wrap(b, off, len).readValue(); + return new BufferUnpacker(this).wrap(b, off, len).readValue(); } public Value read(ByteBuffer buf) throws IOException { // TODO IOException - return new BufferUnpacker().wrap(buf).readValue(); + return new BufferUnpacker(this).wrap(buf).readValue(); } public Value read(InputStream in) throws IOException { - return new StreamUnpacker(in).readValue(); + return new StreamUnpacker(this, in).readValue(); } public T read(byte[] b, T v) throws IOException { // TODO IOException // TODO Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); - return (T)tmpl.read(u, v); + return (T) tmpl.read(u, v); } public T read(byte[] b, Class c) throws IOException { // TODO IOException // TODO Template tmpl = registry.lookup(c); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); - return (T)tmpl.read(u, null); + return (T) tmpl.read(u, null); } public T read(ByteBuffer b, T v) throws IOException { // TODO IOException // TODO Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); - return (T)tmpl.read(u, v); + return (T) tmpl.read(u, v); } public T read(ByteBuffer b, Class c) { // TODO IOException // TODO Template tmpl = registry.lookup(c); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); return null; } @@ -120,29 +120,29 @@ public T read(ByteBuffer b, Class c) { // TODO IOException public T read(InputStream in, T v) throws IOException { // TODO Template tmpl = registry.lookup(v.getClass()); - return (T)tmpl.read(new StreamUnpacker(in), v); + return (T) tmpl.read(new StreamUnpacker(this, in), v); } public T read(InputStream in, Class c) throws IOException { // TODO Template tmpl = registry.lookup(c); - return (T)tmpl.read(new StreamUnpacker(in), null); + return (T) tmpl.read(new StreamUnpacker(this, in), null); } public T convert(Value v, T to) throws IOException { // TODO IOException // TODO Template tmpl = registry.lookup(to.getClass()); - return (T)tmpl.read(new Converter(v), to); + return (T) tmpl.read(new Converter(this, v), to); } public T convert(Value v, Class c) throws IOException { Template tmpl = registry.lookup(c); - return (T) tmpl.read(new Converter(v), null); + return (T) tmpl.read(new Converter(this, v), null); } public Value unconvert(Object v) throws IOException { Template tmpl = registry.lookup(v.getClass()); - Unconverter pk = new Unconverter(); + Unconverter pk = new Unconverter(this); tmpl.write(pk, v); return pk.getResult(); } @@ -175,15 +175,12 @@ public static void pack(OutputStream out, Object obj) throws IOException { @Deprecated public static byte[] pack(Object obj, Template tmpl) throws IOException { // TODO IOException - BufferPacker pk = new BufferPacker(); - tmpl.write(pk, obj); - return pk.toByteArray(); + return globalMessagePack.write(obj, tmpl); } @Deprecated public static void pack(OutputStream out, Object obj, Template tmpl) throws IOException { - StreamPacker pk = new StreamPacker(out); - tmpl.write(pk, obj); + globalMessagePack.write(out, obj, tmpl); } @Deprecated @@ -193,14 +190,14 @@ public static Value unpack(byte[] buffer) throws IOException { @Deprecated public static T unpack(byte[] buffer, Template tmpl) throws IOException { - BufferUnpacker u = new BufferUnpacker().wrap(buffer); - return (T)tmpl.read(u, null); + BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); + return (T) tmpl.read(u, null); } @Deprecated public static T unpack(byte[] buffer, Template tmpl, T to) throws IOException { - BufferUnpacker u = new BufferUnpacker().wrap(buffer); - return (T)tmpl.read(u, to); + BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); + return (T) tmpl.read(u, to); } @Deprecated @@ -220,12 +217,12 @@ public static Value unpack(InputStream in) throws IOException { @Deprecated public static Object unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { - return tmpl.read(new StreamUnpacker(in), null); + return tmpl.read(new StreamUnpacker(globalMessagePack, in), null); } @Deprecated public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { - return (T)tmpl.read(new StreamUnpacker(in), to); + return (T) tmpl.read(new StreamUnpacker(globalMessagePack, in), to); } @Deprecated diff --git a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java index 720958161..d5dfb3f47 100644 --- a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java @@ -21,15 +21,18 @@ import java.io.UnsupportedEncodingException; import java.math.BigInteger; import org.msgpack.io.Output; +import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; + abstract class AbstractMessagePackPacker extends Packer { protected final Output out; private PackerStack stack = new PackerStack(); - protected AbstractMessagePackPacker(Output out) { - this.out = out; + protected AbstractMessagePackPacker(MessagePack msgpack, Output out) { + super(msgpack); + this.out = out; } @Override diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index 87cae8e47..6938f9d30 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -17,15 +17,26 @@ // package org.msgpack.packer; +import org.msgpack.MessagePack; import org.msgpack.io.LinkedBufferOutput; + public class BufferPacker extends AbstractMessagePackPacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size public BufferPacker() { - this(512); // TODO default buffer size + this(DEFAULT_BUFFER_SIZE); } public BufferPacker(int bufferSize) { - super(new LinkedBufferOutput(bufferSize)); + this(new MessagePack(), bufferSize); + } + + public BufferPacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); + } + + public BufferPacker(MessagePack msgpack, int bufferSize) { + super(msgpack, new LinkedBufferOutput(bufferSize)); } public byte[] toByteArray() { diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 1d482c359..44d019c9c 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -19,13 +19,16 @@ import java.math.BigInteger; import java.io.IOException; -import java.nio.ByteBuffer; import org.msgpack.value.Value; import org.msgpack.MessagePack; -import org.msgpack.MessagePackable; + public abstract class Packer { - protected MessagePack msgpack = new MessagePack(); // TODO initialize + protected MessagePack msgpack; + + protected Packer(MessagePack msgpack) { + this.msgpack = msgpack; + } public abstract void writeNil() throws IOException; diff --git a/src/main/java/org/msgpack/packer/StreamPacker.java b/src/main/java/org/msgpack/packer/StreamPacker.java index c5c003f98..58e756196 100644 --- a/src/main/java/org/msgpack/packer/StreamPacker.java +++ b/src/main/java/org/msgpack/packer/StreamPacker.java @@ -18,11 +18,18 @@ package org.msgpack.packer; import java.io.OutputStream; + +import org.msgpack.MessagePack; import org.msgpack.io.StreamOutput; + public class StreamPacker extends AbstractMessagePackPacker { public StreamPacker(OutputStream stream) { - super(new StreamOutput(stream)); + this(new MessagePack(), stream); + } + + public StreamPacker(MessagePack msgpack, OutputStream stream) { + super(msgpack, new StreamOutput(stream)); } } diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index aa49a99bf..74f946a92 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -18,11 +18,13 @@ package org.msgpack.packer; import java.math.BigInteger; -import java.io.IOException; + +import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.value.Value; import org.msgpack.value.ValueFactory; + public class Unconverter extends Packer { private PackerStack stack; private Object[] values; @@ -30,6 +32,11 @@ public class Unconverter extends Packer { private Value topContainer; public Unconverter() { + this(new MessagePack()); + } + + public Unconverter(MessagePack msgpack) { + super(msgpack); this.stack = new PackerStack(); this.values = new Object[PackerStack.MAX_STACK_SIZE]; } diff --git a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java index 74abf09ba..1dca5ed29 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java @@ -20,10 +20,13 @@ import java.io.IOException; import java.io.EOFException; import java.math.BigInteger; + +import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; import org.msgpack.io.Input; + abstract class AbstractMessagePackUnpacker extends Unpacker { protected final Input in; @@ -46,8 +49,9 @@ abstract class AbstractMessagePackUnpacker extends Unpacker { private final ValueAccept valueAccept = new ValueAccept(); private final SkipAccept skipAccept = new SkipAccept(); - protected AbstractMessagePackUnpacker(Input in) { - this.in = in; + protected AbstractMessagePackUnpacker(MessagePack msgpack, Input in) { + super(msgpack); + this.in = in; } private byte getHeadByte() throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 0aef7f9f0..78aad7c3a 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -17,19 +17,29 @@ // package org.msgpack.unpacker; -import java.io.EOFException; -import java.util.List; -import java.util.LinkedList; import java.nio.ByteBuffer; + +import org.msgpack.MessagePack; import org.msgpack.io.LinkedBufferInput; + public class BufferUnpacker extends AbstractMessagePackUnpacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + public BufferUnpacker() { - this(512); // TODO default buffer size + this(DEFAULT_BUFFER_SIZE); } public BufferUnpacker(int bufferSize) { - super(new LinkedBufferInput(bufferSize)); + this(new MessagePack(), bufferSize); + } + + public BufferUnpacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); + } + + public BufferUnpacker(MessagePack msgpack, int bufferSize) { + super(msgpack, new LinkedBufferInput(bufferSize)); } public BufferUnpacker wrap(byte[] b) { diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 3d137b0c6..ae47e080b 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -19,18 +19,26 @@ import java.io.EOFException; import java.math.BigInteger; + +import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; import org.msgpack.value.Value; import org.msgpack.value.ArrayValue; import org.msgpack.value.MapValue; + public class Converter extends Unpacker { private final UnpackerStack stack; private Object[] values; private Value value; public Converter(Value value) { + this(new MessagePack(), value); + } + + public Converter(MessagePack msgpack, Value value) { + super(msgpack); this.stack = new UnpackerStack(); this.values = new Object[UnpackerStack.MAX_STACK_SIZE]; this.values[0] = value; diff --git a/src/main/java/org/msgpack/unpacker/StreamUnpacker.java b/src/main/java/org/msgpack/unpacker/StreamUnpacker.java index 5a4854b37..ecaf1bac2 100644 --- a/src/main/java/org/msgpack/unpacker/StreamUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/StreamUnpacker.java @@ -18,11 +18,18 @@ package org.msgpack.unpacker; import java.io.InputStream; + +import org.msgpack.MessagePack; import org.msgpack.io.StreamInput; + public class StreamUnpacker extends AbstractMessagePackUnpacker { public StreamUnpacker(InputStream stream) { - super(new StreamInput(stream)); + this(new MessagePack(), stream); + } + + public StreamUnpacker(MessagePack msgpack, InputStream stream) { + super(msgpack, new StreamInput(stream)); } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 96d392758..bc225afe9 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -17,19 +17,20 @@ // package org.msgpack.unpacker; -import java.io.InputStream; import java.io.IOException; -import java.io.EOFException; -import java.nio.ByteBuffer; import java.math.BigInteger; -import java.util.NoSuchElementException; import java.lang.Iterable; import org.msgpack.value.Value; import org.msgpack.MessagePack; import org.msgpack.packer.Unconverter; + public abstract class Unpacker implements Iterable { - protected MessagePack msgpack = new MessagePack(); // TODO initialize + protected MessagePack msgpack; + + protected Unpacker(MessagePack msgpack) { + this.msgpack = msgpack; + } public abstract boolean tryReadNil() throws IOException; @@ -90,32 +91,32 @@ public UnpackerIterator iterator() { protected abstract void readValue(Unconverter uc) throws IOException; public Value readValue() throws IOException { - Unconverter uc = new Unconverter(); + Unconverter uc = new Unconverter(msgpack); readValue(uc); return uc.getResult(); } public T read(T to) throws IOException { - return (T)msgpack.getTemplate(to.getClass()).read(this, to); + return (T) msgpack.getTemplate(to.getClass()).read(this, to); } public T read(Class klass) throws IOException { - return (T)msgpack.getTemplate(klass).read(this, null); + return (T) msgpack.getTemplate(klass).read(this, null); } public T readOptional(Class klass, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T)msgpack.getTemplate(klass).read(this, null); + return (T) msgpack.getTemplate(klass).read(this, null); } public T readOptional(T to, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T)msgpack.getTemplate(to.getClass()).read(this, to); + return (T) msgpack.getTemplate(to.getClass()).read(this, to); } public T readOptional(Class klass) throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index 37d31f0a2..b33874ebc 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -18,13 +18,13 @@ package org.msgpack.unpacker; import java.io.IOException; -import java.io.EOFException; import java.util.Iterator; import java.util.NoSuchElementException; import org.msgpack.value.Value; import org.msgpack.packer.Unconverter; import org.msgpack.io.EndOfBufferException; + public class UnpackerIterator implements Iterator { private final Unpacker u; private final Unconverter uc; @@ -32,7 +32,7 @@ public class UnpackerIterator implements Iterator { public UnpackerIterator(Unpacker u) { this.u = u; - this.uc = new Unconverter(); + this.uc = new Unconverter(u.msgpack); } public boolean hasNext() { From 81733926a4b67e2a79996aa763833376be5f967e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 02:20:52 +0900 Subject: [PATCH 004/409] fixed NPE bug in TemplateRegistry.java --- .../java/org/msgpack/TemplateRegistry.java | 40 ++++++++++++------- 1 file changed, 26 insertions(+), 14 deletions(-) diff --git a/src/main/java/org/msgpack/TemplateRegistry.java b/src/main/java/org/msgpack/TemplateRegistry.java index 090bc25a7..11deea250 100644 --- a/src/main/java/org/msgpack/TemplateRegistry.java +++ b/src/main/java/org/msgpack/TemplateRegistry.java @@ -174,9 +174,12 @@ private synchronized Template lookupImpl(Type targetType, if (tmpl != null) { return tmpl; } - tmpl = parent.lookupGenericImpl(pType); - if (tmpl != null) { - return tmpl; + try { + tmpl = parent.lookupGenericImpl(pType); + if (tmpl != null) { + return tmpl; + } + } catch (NullPointerException e) { // ignore } targetType = pType.getRawType(); } @@ -185,9 +188,12 @@ private synchronized Template lookupImpl(Type targetType, if (tmpl != null) { return tmpl; } - tmpl = parent.cache.get(targetType); - if (tmpl != null) { - return tmpl; + try { + tmpl = parent.cache.get(targetType); + if (tmpl != null) { + return tmpl; + } + } catch (NullPointerException e) { // ignore } // TODO #MN builder -> selector @@ -218,10 +224,13 @@ private synchronized Template lookupImpl(Type targetType, register(targetClass, tmpl); return tmpl; } else { - tmpl = parent.cache.get(infType); - if (tmpl != null) { - parent.register(targetClass, tmpl); - return tmpl; + try { + tmpl = parent.cache.get(infType); + if (tmpl != null) { + parent.register(targetClass, tmpl); + return tmpl; + } + } catch (NullPointerException e) { // ignore } } } @@ -235,10 +244,13 @@ private synchronized Template lookupImpl(Type targetType, register(targetClass, tmpl); return tmpl; } else { - tmpl = parent.cache.get(superClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; + try { + tmpl = parent.cache.get(superClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } + } catch (NullPointerException e) { // ignore } } } From 41d9087d79292eeb9d4e081fd437b48806ca873d Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 10:58:21 +0900 Subject: [PATCH 005/409] org.msgpack.value -> org.msgpack.type --- src/main/java/org/msgpack/MessagePack.java | 2 +- src/main/java/org/msgpack/TemplateRegistry.java | 2 +- src/main/java/org/msgpack/packer/Packer.java | 2 +- src/main/java/org/msgpack/packer/Unconverter.java | 4 ++-- src/main/java/org/msgpack/template/ValueTemplate.java | 2 +- .../org/msgpack/{value => type}/AbstractArrayValue.java | 2 +- .../org/msgpack/{value => type}/AbstractBooleanValue.java | 2 +- .../java/org/msgpack/{value => type}/AbstractMapValue.java | 2 +- .../java/org/msgpack/{value => type}/AbstractRawValue.java | 2 +- .../java/org/msgpack/{value => type}/AbstractValue.java | 2 +- src/main/java/org/msgpack/{value => type}/ArrayValue.java | 2 +- .../java/org/msgpack/{value => type}/ArrayValueImpl.java | 2 +- .../org/msgpack/{value => type}/BigIntegerValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/BooleanValue.java | 2 +- .../org/msgpack/{value => type}/ByteArrayRawValueImpl.java | 2 +- .../java/org/msgpack/{value => type}/DoubleValueImpl.java | 2 +- .../java/org/msgpack/{value => type}/FalseValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/FloatValue.java | 2 +- .../java/org/msgpack/{value => type}/FloatValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/IntValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/IntegerValue.java | 2 +- .../java/org/msgpack/{value => type}/LongValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/MapValue.java | 2 +- src/main/java/org/msgpack/{value => type}/NilValue.java | 2 +- src/main/java/org/msgpack/{value => type}/NumberValue.java | 2 +- src/main/java/org/msgpack/{value => type}/RawValue.java | 2 +- .../org/msgpack/{value => type}/SequentialMapValueImpl.java | 2 +- .../org/msgpack/{value => type}/StringRawValueImpl.java | 2 +- .../java/org/msgpack/{value => type}/TrueValueImpl.java | 2 +- src/main/java/org/msgpack/{value => type}/Value.java | 2 +- src/main/java/org/msgpack/{value => type}/ValueFactory.java | 2 +- src/main/java/org/msgpack/{value => type}/ValueType.java | 2 +- src/main/java/org/msgpack/unpacker/Converter.java | 6 +++--- src/main/java/org/msgpack/unpacker/Unpacker.java | 2 +- src/main/java/org/msgpack/unpacker/UnpackerIterator.java | 2 +- src/main/java/org/msgpack/unpacker/UnpackerStack.java | 4 ++-- src/main/java/org/msgpack/unpacker/ValueAccept.java | 4 ++-- src/test/java/org/msgpack/TestBufferPackConvert.java | 2 +- src/test/java/org/msgpack/TestCrossLang.java | 2 +- src/test/java/org/msgpack/TestSimpleConvertUnconvert.java | 2 +- src/test/java/org/msgpack/TestSimplePackUnpack.java | 2 +- src/test/java/org/msgpack/TestSimplePackable.java | 2 +- src/test/java/org/msgpack/TestStreamPackConvert.java | 2 +- src/test/java/org/msgpack/io/TestLinkedBufferInput.java | 2 +- src/test/java/org/msgpack/io/TestLinkedBufferOutput.java | 2 +- src/test/java/org/msgpack/{value => type}/TestHashCode.java | 2 +- 46 files changed, 51 insertions(+), 51 deletions(-) rename src/main/java/org/msgpack/{value => type}/AbstractArrayValue.java (98%) rename src/main/java/org/msgpack/{value => type}/AbstractBooleanValue.java (97%) rename src/main/java/org/msgpack/{value => type}/AbstractMapValue.java (98%) rename src/main/java/org/msgpack/{value => type}/AbstractRawValue.java (99%) rename src/main/java/org/msgpack/{value => type}/AbstractValue.java (98%) rename src/main/java/org/msgpack/{value => type}/ArrayValue.java (96%) rename src/main/java/org/msgpack/{value => type}/ArrayValueImpl.java (99%) rename src/main/java/org/msgpack/{value => type}/BigIntegerValueImpl.java (99%) rename src/main/java/org/msgpack/{value => type}/BooleanValue.java (96%) rename src/main/java/org/msgpack/{value => type}/ByteArrayRawValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/DoubleValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/FalseValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/FloatValue.java (97%) rename src/main/java/org/msgpack/{value => type}/FloatValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/IntValueImpl.java (99%) rename src/main/java/org/msgpack/{value => type}/IntegerValue.java (97%) rename src/main/java/org/msgpack/{value => type}/LongValueImpl.java (99%) rename src/main/java/org/msgpack/{value => type}/MapValue.java (96%) rename src/main/java/org/msgpack/{value => type}/NilValue.java (98%) rename src/main/java/org/msgpack/{value => type}/NumberValue.java (98%) rename src/main/java/org/msgpack/{value => type}/RawValue.java (96%) rename src/main/java/org/msgpack/{value => type}/SequentialMapValueImpl.java (99%) rename src/main/java/org/msgpack/{value => type}/StringRawValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/TrueValueImpl.java (98%) rename src/main/java/org/msgpack/{value => type}/Value.java (98%) rename src/main/java/org/msgpack/{value => type}/ValueFactory.java (99%) rename src/main/java/org/msgpack/{value => type}/ValueType.java (96%) rename src/test/java/org/msgpack/{value => type}/TestHashCode.java (99%) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index e0fb84e59..7547e0249 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -29,7 +29,7 @@ import org.msgpack.unpacker.StreamUnpacker; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; -import org.msgpack.value.Value; +import org.msgpack.type.Value; public class MessagePack { diff --git a/src/main/java/org/msgpack/TemplateRegistry.java b/src/main/java/org/msgpack/TemplateRegistry.java index 11deea250..6044b78c0 100644 --- a/src/main/java/org/msgpack/TemplateRegistry.java +++ b/src/main/java/org/msgpack/TemplateRegistry.java @@ -46,7 +46,7 @@ import org.msgpack.template.builder.AbstractTemplateBuilder; import org.msgpack.template.builder.ReflectionTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; -import org.msgpack.value.Value; +import org.msgpack.type.Value; public class TemplateRegistry { diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 44d019c9c..ccc5a2efa 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -19,7 +19,7 @@ import java.math.BigInteger; import java.io.IOException; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.MessagePack; diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 74f946a92..5e4c4df20 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -21,8 +21,8 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; -import org.msgpack.value.Value; -import org.msgpack.value.ValueFactory; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; public class Unconverter extends Packer { diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 7084711b0..962cbe854 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -21,7 +21,7 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; -import org.msgpack.value.Value; +import org.msgpack.type.Value; public class ValueTemplate implements Template { diff --git a/src/main/java/org/msgpack/value/AbstractArrayValue.java b/src/main/java/org/msgpack/type/AbstractArrayValue.java similarity index 98% rename from src/main/java/org/msgpack/value/AbstractArrayValue.java rename to src/main/java/org/msgpack/type/AbstractArrayValue.java index 31da4fd24..da059b2a7 100644 --- a/src/main/java/org/msgpack/value/AbstractArrayValue.java +++ b/src/main/java/org/msgpack/type/AbstractArrayValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.AbstractList; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/value/AbstractBooleanValue.java b/src/main/java/org/msgpack/type/AbstractBooleanValue.java similarity index 97% rename from src/main/java/org/msgpack/value/AbstractBooleanValue.java rename to src/main/java/org/msgpack/type/AbstractBooleanValue.java index 74ef95088..e339e7c9f 100644 --- a/src/main/java/org/msgpack/value/AbstractBooleanValue.java +++ b/src/main/java/org/msgpack/type/AbstractBooleanValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; abstract class AbstractBooleanValue extends AbstractValue implements BooleanValue { public ValueType getType() { diff --git a/src/main/java/org/msgpack/value/AbstractMapValue.java b/src/main/java/org/msgpack/type/AbstractMapValue.java similarity index 98% rename from src/main/java/org/msgpack/value/AbstractMapValue.java rename to src/main/java/org/msgpack/type/AbstractMapValue.java index 590ead32c..b2bee07f3 100644 --- a/src/main/java/org/msgpack/value/AbstractMapValue.java +++ b/src/main/java/org/msgpack/type/AbstractMapValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.AbstractMap; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/value/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java similarity index 99% rename from src/main/java/org/msgpack/value/AbstractRawValue.java rename to src/main/java/org/msgpack/type/AbstractRawValue.java index d69cd0503..13d3fd8d4 100644 --- a/src/main/java/org/msgpack/value/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.Arrays; diff --git a/src/main/java/org/msgpack/value/AbstractValue.java b/src/main/java/org/msgpack/type/AbstractValue.java similarity index 98% rename from src/main/java/org/msgpack/value/AbstractValue.java rename to src/main/java/org/msgpack/type/AbstractValue.java index 6894a24a7..f98d0bd15 100644 --- a/src/main/java/org/msgpack/value/AbstractValue.java +++ b/src/main/java/org/msgpack/type/AbstractValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.List; import java.util.Map; diff --git a/src/main/java/org/msgpack/value/ArrayValue.java b/src/main/java/org/msgpack/type/ArrayValue.java similarity index 96% rename from src/main/java/org/msgpack/value/ArrayValue.java rename to src/main/java/org/msgpack/type/ArrayValue.java index 544bb8af7..efafc571d 100644 --- a/src/main/java/org/msgpack/value/ArrayValue.java +++ b/src/main/java/org/msgpack/type/ArrayValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.List; diff --git a/src/main/java/org/msgpack/value/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java similarity index 99% rename from src/main/java/org/msgpack/value/ArrayValueImpl.java rename to src/main/java/org/msgpack/type/ArrayValueImpl.java index e8c4c60f2..1dd515ce5 100644 --- a/src/main/java/org/msgpack/value/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.List; import java.util.Iterator; diff --git a/src/main/java/org/msgpack/value/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java similarity index 99% rename from src/main/java/org/msgpack/value/BigIntegerValueImpl.java rename to src/main/java/org/msgpack/type/BigIntegerValueImpl.java index 5ed5f7743..dc9d1ce2f 100644 --- a/src/main/java/org/msgpack/value/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import java.io.IOException; diff --git a/src/main/java/org/msgpack/value/BooleanValue.java b/src/main/java/org/msgpack/type/BooleanValue.java similarity index 96% rename from src/main/java/org/msgpack/value/BooleanValue.java rename to src/main/java/org/msgpack/type/BooleanValue.java index 2471ccde8..27a2ab240 100644 --- a/src/main/java/org/msgpack/value/BooleanValue.java +++ b/src/main/java/org/msgpack/type/BooleanValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; public interface BooleanValue extends Value { public boolean getBoolean(); diff --git a/src/main/java/org/msgpack/value/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/ByteArrayRawValueImpl.java rename to src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 664701a55..1643282f1 100644 --- a/src/main/java/org/msgpack/value/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.Arrays; import java.io.UnsupportedEncodingException; diff --git a/src/main/java/org/msgpack/value/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/DoubleValueImpl.java rename to src/main/java/org/msgpack/type/DoubleValueImpl.java index 7f0be6bab..be06cd29c 100644 --- a/src/main/java/org/msgpack/value/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import java.math.BigDecimal; diff --git a/src/main/java/org/msgpack/value/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/FalseValueImpl.java rename to src/main/java/org/msgpack/type/FalseValueImpl.java index 4074c310f..5a3f88be2 100644 --- a/src/main/java/org/msgpack/value/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.io.IOException; import org.msgpack.packer.Packer; diff --git a/src/main/java/org/msgpack/value/FloatValue.java b/src/main/java/org/msgpack/type/FloatValue.java similarity index 97% rename from src/main/java/org/msgpack/value/FloatValue.java rename to src/main/java/org/msgpack/type/FloatValue.java index 5345d182a..4c2c51f3e 100644 --- a/src/main/java/org/msgpack/value/FloatValue.java +++ b/src/main/java/org/msgpack/type/FloatValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; public abstract class FloatValue extends NumberValue { public ValueType getType() { diff --git a/src/main/java/org/msgpack/value/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/FloatValueImpl.java rename to src/main/java/org/msgpack/type/FloatValueImpl.java index 96610ed3d..da9fd3474 100644 --- a/src/main/java/org/msgpack/value/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import java.math.BigDecimal; diff --git a/src/main/java/org/msgpack/value/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java similarity index 99% rename from src/main/java/org/msgpack/value/IntValueImpl.java rename to src/main/java/org/msgpack/type/IntValueImpl.java index 26fb49a49..55c3b011c 100644 --- a/src/main/java/org/msgpack/value/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import java.io.IOException; diff --git a/src/main/java/org/msgpack/value/IntegerValue.java b/src/main/java/org/msgpack/type/IntegerValue.java similarity index 97% rename from src/main/java/org/msgpack/value/IntegerValue.java rename to src/main/java/org/msgpack/type/IntegerValue.java index 23e904d3f..cb3eba385 100644 --- a/src/main/java/org/msgpack/value/IntegerValue.java +++ b/src/main/java/org/msgpack/type/IntegerValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/value/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java similarity index 99% rename from src/main/java/org/msgpack/value/LongValueImpl.java rename to src/main/java/org/msgpack/type/LongValueImpl.java index 12232af2c..0de31d551 100644 --- a/src/main/java/org/msgpack/value/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import java.io.IOException; diff --git a/src/main/java/org/msgpack/value/MapValue.java b/src/main/java/org/msgpack/type/MapValue.java similarity index 96% rename from src/main/java/org/msgpack/value/MapValue.java rename to src/main/java/org/msgpack/type/MapValue.java index 90dba38c8..bb9ed3e76 100644 --- a/src/main/java/org/msgpack/value/MapValue.java +++ b/src/main/java/org/msgpack/type/MapValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.Map; diff --git a/src/main/java/org/msgpack/value/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java similarity index 98% rename from src/main/java/org/msgpack/value/NilValue.java rename to src/main/java/org/msgpack/type/NilValue.java index 2ab7f5f2c..a6363ef66 100644 --- a/src/main/java/org/msgpack/value/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.io.IOException; import org.msgpack.packer.Packer; diff --git a/src/main/java/org/msgpack/value/NumberValue.java b/src/main/java/org/msgpack/type/NumberValue.java similarity index 98% rename from src/main/java/org/msgpack/value/NumberValue.java rename to src/main/java/org/msgpack/type/NumberValue.java index c5b359e5e..94974d691 100644 --- a/src/main/java/org/msgpack/value/NumberValue.java +++ b/src/main/java/org/msgpack/type/NumberValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/value/RawValue.java b/src/main/java/org/msgpack/type/RawValue.java similarity index 96% rename from src/main/java/org/msgpack/value/RawValue.java rename to src/main/java/org/msgpack/type/RawValue.java index 3e92e39ad..be47d7743 100644 --- a/src/main/java/org/msgpack/value/RawValue.java +++ b/src/main/java/org/msgpack/type/RawValue.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; public interface RawValue extends Value { public byte[] getByteArray(); diff --git a/src/main/java/org/msgpack/value/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java similarity index 99% rename from src/main/java/org/msgpack/value/SequentialMapValueImpl.java rename to src/main/java/org/msgpack/type/SequentialMapValueImpl.java index e4815aa4a..2340b746b 100644 --- a/src/main/java/org/msgpack/value/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.Map; import java.util.Set; diff --git a/src/main/java/org/msgpack/value/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/StringRawValueImpl.java rename to src/main/java/org/msgpack/type/StringRawValueImpl.java index 11e35aac5..fb32aca08 100644 --- a/src/main/java/org/msgpack/value/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.util.Arrays; import java.io.UnsupportedEncodingException; diff --git a/src/main/java/org/msgpack/value/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java similarity index 98% rename from src/main/java/org/msgpack/value/TrueValueImpl.java rename to src/main/java/org/msgpack/type/TrueValueImpl.java index b1fe923f7..cbcd7c805 100644 --- a/src/main/java/org/msgpack/value/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.io.IOException; import org.msgpack.packer.Packer; diff --git a/src/main/java/org/msgpack/value/Value.java b/src/main/java/org/msgpack/type/Value.java similarity index 98% rename from src/main/java/org/msgpack/value/Value.java rename to src/main/java/org/msgpack/type/Value.java index 7bd01015b..41bf8dab5 100644 --- a/src/main/java/org/msgpack/value/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.io.IOException; import org.msgpack.packer.Packer; diff --git a/src/main/java/org/msgpack/value/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java similarity index 99% rename from src/main/java/org/msgpack/value/ValueFactory.java rename to src/main/java/org/msgpack/type/ValueFactory.java index faa6df1d6..6ad41c858 100644 --- a/src/main/java/org/msgpack/value/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; import java.math.BigInteger; diff --git a/src/main/java/org/msgpack/value/ValueType.java b/src/main/java/org/msgpack/type/ValueType.java similarity index 96% rename from src/main/java/org/msgpack/value/ValueType.java rename to src/main/java/org/msgpack/type/ValueType.java index 0ffc3eda7..fc0864c00 100644 --- a/src/main/java/org/msgpack/value/ValueType.java +++ b/src/main/java/org/msgpack/type/ValueType.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.value; +package org.msgpack.type; public enum ValueType { NIL, diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index ae47e080b..725b5db7a 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -23,9 +23,9 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; -import org.msgpack.value.Value; -import org.msgpack.value.ArrayValue; -import org.msgpack.value.MapValue; +import org.msgpack.type.Value; +import org.msgpack.type.ArrayValue; +import org.msgpack.type.MapValue; public class Converter extends Unpacker { diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index bc225afe9..a6076b05f 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -20,7 +20,7 @@ import java.io.IOException; import java.math.BigInteger; import java.lang.Iterable; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.MessagePack; import org.msgpack.packer.Unconverter; diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index b33874ebc..2eef1ef72 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -20,7 +20,7 @@ import java.io.IOException; import java.util.Iterator; import java.util.NoSuchElementException; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.packer.Unconverter; import org.msgpack.io.EndOfBufferException; diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index 67c951430..af28aab42 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -18,8 +18,8 @@ package org.msgpack.unpacker; import org.msgpack.MessageTypeException; -import org.msgpack.value.Value; -import org.msgpack.value.ValueFactory; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; final class UnpackerStack { private int top; diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index e2135565b..9356d15f1 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -18,8 +18,8 @@ package org.msgpack.unpacker; import java.math.BigInteger; -import org.msgpack.value.Value; -import org.msgpack.value.ValueFactory; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; import org.msgpack.packer.Unconverter; final class ValueAccept extends Accept { diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index 0d1f232c2..dc5ee2ecf 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -10,7 +10,7 @@ import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; -import org.msgpack.value.Value; +import org.msgpack.type.Value; public class TestBufferPackConvert extends TestSet { diff --git a/src/test/java/org/msgpack/TestCrossLang.java b/src/test/java/org/msgpack/TestCrossLang.java index 2305b388c..a7172b548 100644 --- a/src/test/java/org/msgpack/TestCrossLang.java +++ b/src/test/java/org/msgpack/TestCrossLang.java @@ -17,7 +17,7 @@ import java.util.Map; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.packer.StreamPacker; import org.msgpack.unpacker.BufferUnpacker; diff --git a/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java b/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java index f74a4bab5..78de49137 100644 --- a/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java +++ b/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java @@ -14,7 +14,7 @@ import java.util.Map; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.unpacker.Converter; import org.msgpack.packer.Unconverter; diff --git a/src/test/java/org/msgpack/TestSimplePackUnpack.java b/src/test/java/org/msgpack/TestSimplePackUnpack.java index 054ceb01e..595d259f8 100644 --- a/src/test/java/org/msgpack/TestSimplePackUnpack.java +++ b/src/test/java/org/msgpack/TestSimplePackUnpack.java @@ -14,7 +14,7 @@ import org.junit.Test; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.junit.Test; diff --git a/src/test/java/org/msgpack/TestSimplePackable.java b/src/test/java/org/msgpack/TestSimplePackable.java index 24b6a7531..aa44267af 100644 --- a/src/test/java/org/msgpack/TestSimplePackable.java +++ b/src/test/java/org/msgpack/TestSimplePackable.java @@ -14,7 +14,7 @@ import java.util.Map; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index f2e6b8fea..3e205e304 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -11,7 +11,7 @@ import org.msgpack.packer.StreamPacker; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; -import org.msgpack.value.Value; +import org.msgpack.type.Value; public class TestStreamPackConvert extends TestSet { diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java index 06dad3cf7..2c7dbfde7 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java @@ -20,7 +20,7 @@ import java.util.Arrays; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.junit.Test; diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java b/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java index 0b9b42642..25731a310 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java @@ -16,7 +16,7 @@ import java.util.Arrays; import org.msgpack.MessagePack; -import org.msgpack.value.Value; +import org.msgpack.type.Value; import org.junit.Test; diff --git a/src/test/java/org/msgpack/value/TestHashCode.java b/src/test/java/org/msgpack/type/TestHashCode.java similarity index 99% rename from src/test/java/org/msgpack/value/TestHashCode.java rename to src/test/java/org/msgpack/type/TestHashCode.java index aa26c50ad..52be27fe0 100644 --- a/src/test/java/org/msgpack/value/TestHashCode.java +++ b/src/test/java/org/msgpack/type/TestHashCode.java @@ -1,4 +1,4 @@ -package org.msgpack.value; +package org.msgpack.type; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; From 2b17479af6106867ec9bf635e3cf442173fa4839 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 11:02:09 +0900 Subject: [PATCH 006/409] org.msgpack.TempalteRegistry -> org.msgpack.template.TempalteRegistry --- src/main/java/org/msgpack/MessagePack.java | 1 + src/main/java/org/msgpack/template/DefaultTemplate.java | 1 - .../java/org/msgpack/{ => template}/TemplateRegistry.java | 6 ++++-- .../msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) rename src/main/java/org/msgpack/{ => template}/TemplateRegistry.java (98%) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 7547e0249..ef6b7b5c0 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -23,6 +23,7 @@ import java.nio.ByteBuffer; import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; import org.msgpack.packer.StreamPacker; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.Unconverter; diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index 3fef4938d..d0ce2f3f2 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -22,7 +22,6 @@ import org.msgpack.MessagePackable; import org.msgpack.MessageTypeException; -import org.msgpack.TemplateRegistry; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; diff --git a/src/main/java/org/msgpack/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java similarity index 98% rename from src/main/java/org/msgpack/TemplateRegistry.java rename to src/main/java/org/msgpack/template/TemplateRegistry.java index 6044b78c0..3fb813dec 100644 --- a/src/main/java/org/msgpack/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack; +package org.msgpack.template; import java.util.Map; import java.util.HashMap; @@ -23,6 +23,8 @@ import java.lang.reflect.Type; import java.math.BigInteger; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; import org.msgpack.template.BigIntegerTemplate; import org.msgpack.template.BooleanTemplate; import org.msgpack.template.ByteArrayTemplate; @@ -60,7 +62,7 @@ public class TemplateRegistry { private Map genericCache; - TemplateRegistry() { + public TemplateRegistry() { this(null); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index b52096f28..cf4851ba1 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -23,10 +23,10 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; -import org.msgpack.TemplateRegistry; import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; From e9c479a493c526eb57c6d92b08bd2b930ae7a158 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 11:27:57 +0900 Subject: [PATCH 007/409] added Packer#writeByteBuffer(ByteBuffer) --- .../java/org/msgpack/io/BufferedOutput.java | 39 +++++++++++++++++++ .../java/org/msgpack/io/ByteBufferOutput.java | 5 +++ .../org/msgpack/io/LinkedBufferOutput.java | 4 +- src/main/java/org/msgpack/io/Output.java | 3 ++ .../java/org/msgpack/io/StreamOutput.java | 15 +++++++ .../packer/AbstractMessagePackPacker.java | 20 ++++++++++ src/main/java/org/msgpack/packer/Packer.java | 3 +- .../java/org/msgpack/packer/Unconverter.java | 6 +++ .../msgpack/template/ByteBufferTemplate.java | 9 ++--- .../java/org/msgpack/type/ValueFactory.java | 12 ++++++ .../java/org/msgpack/unpacker/Unpacker.java | 5 +++ 11 files changed, 112 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index c9e76cb60..9a9235630 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -73,6 +73,32 @@ public void write(byte[] b, int off, int len) throws IOException { } } + public void write(ByteBuffer bb) throws IOException { + int len = bb.remaining(); + if(buffer == null) { + if(bufferSize < len) { + flushByteBuffer(bb); + return; + } + buffer = new byte[bufferSize]; + castByteBuffer = ByteBuffer.wrap(buffer); + } + if(len <= bufferSize - filled) { + bb.get(buffer, filled, len); + filled += len; + } else if(len < bufferSize) { + if(!flushBuffer(buffer, 0, filled)) { + buffer = new byte[bufferSize]; + } + filled = 0; + bb.get(buffer, 0, len); + filled = len; + } else { + flush(); + flushByteBuffer(bb); + } + } + public void writeByte(byte v) throws IOException { reserve(1); buffer[filled++] = v; @@ -158,6 +184,19 @@ public void flush() throws IOException { } } + protected void flushByteBuffer(ByteBuffer bb) throws IOException { + if(bb.hasArray()) { + byte[] array = bb.array(); + int offset = bb.arrayOffset(); + flushBuffer(array, offset+bb.position(), bb.remaining()); + bb.position(bb.limit()); + } else { + byte[] buf = new byte[bb.remaining()]; + bb.get(buf); + flushBuffer(buf, 0, buf.length); + } + } + protected abstract boolean flushBuffer(byte[] buffer, int off, int len) throws IOException; } diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index 60e7509f3..05679cbc8 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -53,6 +53,11 @@ public void write(byte[] b, int off, int len) throws IOException { buffer.put(b, off, len); } + public void write(ByteBuffer bb) throws IOException { + reserve(bb.remaining()); + buffer.put(bb); + } + public void writeByte(byte v) throws IOException { reserve(1); buffer.put(v); diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 76dfbd12c..4120b6cc6 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -58,8 +58,8 @@ public int getSize() { return size + filled; } - protected boolean flushBuffer(byte[] buffer, int off, int len) { - link.add(new Link(buffer, off, len)); + protected boolean flushBuffer(byte[] b, int off, int len) { + link.add(new Link(b, off, len)); size += len; return false; } diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index a2502a062..ffb426db2 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -18,10 +18,13 @@ package org.msgpack.io; import java.io.IOException; +import java.nio.ByteBuffer; public interface Output { public void write(byte[] b, int off, int len) throws IOException; + public void write(ByteBuffer bb) throws IOException; + public void writeByte(byte v) throws IOException; public void writeShort(short v) throws IOException; diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index 194c05c9b..0b9b27e49 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -20,6 +20,7 @@ import java.io.IOException; import java.io.OutputStream; import java.io.DataOutputStream; +import java.nio.ByteBuffer; public class StreamOutput implements Output { private DataOutputStream out; @@ -32,6 +33,20 @@ public void write(byte[] b, int off, int len) throws IOException { out.write(b, off, len); } + public void write(ByteBuffer bb) throws IOException { + if(bb.hasArray()) { + byte[] array = bb.array(); + int offset = bb.arrayOffset(); + out.write(array, offset, bb.remaining()); + bb.position(bb.limit()); + } else { + int pos = bb.position(); + byte[] buf = new byte[bb.remaining()]; + bb.get(buf); + out.write(buf); + } + } + public void writeByte(byte v) throws IOException { out.write(v); } diff --git a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java index d5dfb3f47..c5521b800 100644 --- a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java @@ -19,6 +19,7 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.nio.ByteBuffer; import java.math.BigInteger; import org.msgpack.io.Output; import org.msgpack.MessagePack; @@ -203,6 +204,25 @@ public void writeByteArray(byte[] b, int off, int len) throws IOException { stack.reduceCount(); } + @Override + public void writeByteBuffer(ByteBuffer bb) throws IOException { + int len = bb.remaining(); + if(len < 32) { + out.writeByte((byte)(0xa0 | len)); + } else if(len < 65536) { + out.writeByteAndShort((byte)0xda, (short)len); + } else { + out.writeByteAndInt((byte)0xdb, len); + } + int pos = bb.position(); + try { + out.write(bb); + } finally { + bb.position(pos); + } + stack.reduceCount(); + } + @Override public void writeString(String s) throws IOException { // TODO encoding error diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index ccc5a2efa..8cbff8188 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -19,6 +19,7 @@ import java.math.BigInteger; import java.io.IOException; +import java.nio.ByteBuffer; import org.msgpack.type.Value; import org.msgpack.MessagePack; @@ -54,7 +55,7 @@ public void writeByteArray(byte[] b) throws IOException { public abstract void writeByteArray(byte[] b, int off, int len) throws IOException; - //public abstract void writeByteArray(ByteBuffer b) throws IOException; + public abstract void writeByteBuffer(ByteBuffer bb) throws IOException; public abstract void writeString(String s) throws IOException; diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 5e4c4df20..0f0529c49 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -18,6 +18,7 @@ package org.msgpack.packer; import java.math.BigInteger; +import java.nio.ByteBuffer; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; @@ -99,6 +100,11 @@ public void writeByteArray(byte[] b, int off, int len) { put(ValueFactory.rawValue(b, off, len)); } + @Override + public void writeByteBuffer(ByteBuffer bb) { + put(ValueFactory.rawValue(bb)); + } + @Override public void writeString(String s) { put(ValueFactory.rawValue(s)); diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index 22131e70c..a8d189ec1 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -32,15 +32,12 @@ public void write(Packer pk, Object target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - ByteBuffer buf = (ByteBuffer) target; - byte[] bytes = buf.array(); - pk.writeByteArray(bytes); + ByteBuffer bb = (ByteBuffer) target; + pk.writeByteBuffer(bb); } public Object read(Unpacker u, Object to) throws IOException { - byte[] bytes = u.readByteArray(); // TODO read to 'to' obj - ByteBuffer buf = ByteBuffer.wrap(bytes); - return buf; + return u.readByteBuffer(); // TODO read to 'to' obj? } static public ByteBufferTemplate getInstance() { diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index 6ad41c858..294e99d2f 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -18,6 +18,7 @@ package org.msgpack.type; import java.math.BigInteger; +import java.nio.ByteBuffer; public final class ValueFactory { public static NilValue nilValue() { @@ -80,6 +81,17 @@ public static RawValue rawValue(String s) { return new StringRawValueImpl(s); } + public static RawValue rawValue(ByteBuffer bb) { + int pos = bb.position(); + try { + byte[] buf = new byte[bb.remaining()]; + bb.get(buf); + return new ByteArrayRawValueImpl(buf, true); + } finally { + bb.position(pos); + } + } + public static ArrayValue arrayValue() { return ArrayValueImpl.getEmptyInstance(); } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index a6076b05f..930bf49ea 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -18,6 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.nio.ByteBuffer; import java.math.BigInteger; import java.lang.Iterable; import org.msgpack.type.Value; @@ -57,6 +58,10 @@ protected Unpacker(MessagePack msgpack) { public abstract byte[] readByteArray() throws IOException; + public ByteBuffer readByteBuffer() throws IOException { + return ByteBuffer.wrap(readByteArray()); + } + public abstract int readArrayBegin() throws IOException; From 4dbcc00186fc8e584843b940fb8e5ef5e57cf55b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 12:57:57 +0900 Subject: [PATCH 008/409] changed modifiers of TemplateRegistry() constructor to public --- src/main/java/org/msgpack/TemplateRegistry.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/TemplateRegistry.java b/src/main/java/org/msgpack/TemplateRegistry.java index 11deea250..4a6b2b274 100644 --- a/src/main/java/org/msgpack/TemplateRegistry.java +++ b/src/main/java/org/msgpack/TemplateRegistry.java @@ -60,7 +60,7 @@ public class TemplateRegistry { private Map genericCache; - TemplateRegistry() { + public TemplateRegistry() { this(null); } From 02182a5cf2246f9846a1033ae522601225d13200 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 18:21:46 +0900 Subject: [PATCH 009/409] added test programs for pack/unpacking List, Map objects with BufferPacker and BufferUnpacker --- .../msgpack/TestBufferPackBufferUnpack.java | 68 ++++++++++++++++++- src/test/java/org/msgpack/TestSet.java | 36 ++++++---- 2 files changed, 90 insertions(+), 14 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 564c9ebf0..2f33ef523 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -4,7 +4,11 @@ import static org.junit.Assert.assertEquals; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.BufferPacker; @@ -189,7 +193,67 @@ public void testList() throws Exception { } @Override - public void testList(List v) throws Exception { - // TODO + public void testList(List v, Class elementClass) throws Exception { + BufferPacker packer = new BufferPacker(); + // TODO #MN + System.out.println("## v.size: " + v.size()); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + int size = unpacker.readArrayBegin(); + // TODO #MN + System.out.println("## ret.size: " + size); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + BufferPacker packer = new BufferPacker(); + // TODO #MN + System.out.println("## v.size: " + v.size()); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + int size = unpacker.readMapBegin(); + // TODO #MN + System.out.println("## ret.size: " + size); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } } } diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index 887f2f785..c356ceda8 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -342,43 +342,55 @@ public void testByteBuffer(ByteBuffer v) throws Exception { public void testList() throws Exception { // FIXME testList(null); List list0 = new ArrayList(); - testList(list0); + testList(list0, Integer.class); List list1 = new ArrayList(); Random rand1 = new Random(); - for (int i = 0; i < 1000; ++i) { + for (int i = 0; i < 10; ++i) { list1.add(rand1.nextInt()); } - testList(list1); + testList(list1, Integer.class); List list2 = new ArrayList(); Random rand2 = new Random(); - for (int i = 0; i < 1000; ++i) { + for (int i = 0; i < 100; ++i) { list2.add("xx" + rand2.nextInt()); } - testList(list2); + testList(list2, String.class); + List list3 = new ArrayList(); + Random rand3 = new Random(); + for (int i = 0; i < 1000; ++i) { + list3.add("xx" + rand3.nextInt()); + } + testList(list3, String.class); } - public void testList(List v) throws Exception { + public void testList(List v, Class elementClass) throws Exception { } public void testMap() throws Exception { // FIXME testMap(null); Map map0 = new HashMap(); - testMap(map0); + testMap(map0, Integer.class, Integer.class); Map map1 = new HashMap(); Random rand1 = new Random(); - for (int i = 0; i < 1000; ++i) { + for (int i = 0; i < 10; ++i) { map1.put(rand1.nextInt(), rand1.nextInt()); } - testMap(map1); + testMap(map1, Integer.class, Integer.class); Map map2 = new HashMap(); Random rand2 = new Random(); - for (int i = 0; i < 1000; ++i) { + for (int i = 0; i < 100; ++i) { map2.put("xx" + rand2.nextInt(), rand2.nextInt()); } - testMap(map2); + testMap(map2, String.class, Integer.class); + Map map3 = new HashMap(); + Random rand3= new Random(); + for (int i = 0; i < 1000; ++i) { + map3.put("xx" + rand3.nextInt(), rand3.nextInt()); + } + testMap(map3, String.class, Integer.class); } - public void testMap(Map v) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { } public void testBigInteger() throws Exception { From b28c11da732ae27c2c502fa951bef725ea2c64eb Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 18:41:24 +0900 Subject: [PATCH 010/409] add test programs for pack/unpacking List, Map object --- .../msgpack/TestBufferPackBufferUnpack.java | 138 +++++++++--------- .../org/msgpack/TestBufferPackConvert.java | 78 ++++++++++ .../msgpack/TestBufferPackStreamUnpack.java | 73 +++++++++ .../msgpack/TestStreamPackBufferUnpack.java | 77 ++++++++++ .../org/msgpack/TestStreamPackConvert.java | 80 ++++++++++ .../msgpack/TestStreamPackStreamUnpack.java | 75 ++++++++++ 6 files changed, 452 insertions(+), 69 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 2f33ef523..db2c0811c 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -187,73 +187,73 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } - @Test @Override - public void testList() throws Exception { - super.testList(); - } - - @Override - public void testList(List v, Class elementClass) throws Exception { - BufferPacker packer = new BufferPacker(); - // TODO #MN - System.out.println("## v.size: " + v.size()); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); - int size = unpacker.readArrayBegin(); - // TODO #MN - System.out.println("## ret.size: " + size); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } - } - - @Test @Override - public void testMap() throws Exception { - super.testMap(); - } - - @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - BufferPacker packer = new BufferPacker(); - // TODO #MN - System.out.println("## v.size: " + v.size()); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); - int size = unpacker.readMapBegin(); - // TODO #MN - System.out.println("## ret.size: " + size); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } - } +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// byte[] bytes = packer.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// ret.add(unpacker.read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// byte[] bytes = packer.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Object key = unpacker.read(keyElementClass); +// Object value = unpacker.read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index dc5ee2ecf..3f991938f 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -5,6 +5,11 @@ import static org.junit.Assert.assertTrue; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.BufferPacker; @@ -206,4 +211,77 @@ public void testByteArray(byte[] v) throws Exception { byte[] ret = new Converter(value).readByteArray(); assertArrayEquals(v, ret); } + +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// byte[] bytes = packer.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// Value value = unpacker.readValue(); +// ret.add(new Converter(value).read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// byte[] bytes = packer.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Value keyValue = unpacker.readValue(); +// Object key = new Converter(keyValue).read(keyElementClass); +// Value valueValue = unpacker.readValue(); +// Object value = new Converter(valueValue).read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index c5622a682..e8d0ba624 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -5,6 +5,11 @@ import java.io.ByteArrayInputStream; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.BufferPacker; @@ -171,4 +176,72 @@ public void testByteArray(byte[] v) throws Exception { byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } + +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// byte[] bytes = packer.toByteArray(); +// StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// ret.add(unpacker.read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// BufferPacker packer = new BufferPacker(); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// byte[] bytes = packer.toByteArray(); +// StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Object key = unpacker.read(keyElementClass); +// Object value = unpacker.read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index c463dc06f..cebebd658 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -5,6 +5,11 @@ import java.io.ByteArrayOutputStream; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.StreamPacker; @@ -193,4 +198,76 @@ public void testByteArray(byte[] v) throws Exception { byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } + +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// byte[] bytes = out.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// ret.add(unpacker.read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// byte[] bytes = out.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Object key = unpacker.read(keyElementClass); +// Object value = unpacker.read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index 3e205e304..59c1a02a4 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -6,6 +6,11 @@ import java.io.ByteArrayOutputStream; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.StreamPacker; @@ -218,4 +223,79 @@ public void testByteArray(byte[] v) throws Exception { byte[] ret = new Converter(value).readByteArray(); assertArrayEquals(v, ret); } + +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// byte[] bytes = out.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// Value value = unpacker.readValue(); +// ret.add(new Converter(value).read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// byte[] bytes = out.toByteArray(); +// BufferUnpacker unpacker = new BufferUnpacker(); +// unpacker.wrap(bytes); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Value keyValue = unpacker.readValue(); +// Object key = new Converter(keyValue).read(keyElementClass); +// Value valueValue = unpacker.readValue(); +// Object value = new Converter(valueValue).read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index 51b69bb2d..149ebda79 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -6,6 +6,11 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; import org.junit.Test; import org.msgpack.packer.StreamPacker; @@ -178,4 +183,74 @@ public void testByteArray(byte[] v) throws Exception { byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } + +// @Test @Override +// public void testList() throws Exception { +// super.testList(); +// } +// +// @Override +// public void testList(List v, Class elementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeArrayBegin(v.size()); +// for (Object o : v) { +// packer.write(o); +// } +// packer.writeArrayEnd(); +// ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); +// StreamUnpacker unpacker = new StreamUnpacker(in); +// int size = unpacker.readArrayBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// List ret = new ArrayList(size); +// for (int i = 0; i < size; ++i) { +// ret.add(unpacker.read(elementClass)); +// } +// unpacker.readArrayEnd(); +// assertEquals(v.size(), ret.size()); +// Iterator v_iter = v.iterator(); +// Iterator ret_iter = ret.iterator(); +// while (v_iter.hasNext()) { +// assertEquals(v_iter.next(), ret_iter.next()); +// } +// } +// +// @Test @Override +// public void testMap() throws Exception { +// super.testMap(); +// } +// +// @Override +// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// ByteArrayOutputStream out = new ByteArrayOutputStream(); +// StreamPacker packer = new StreamPacker(out); +// // TODO #MN +// System.out.println("## v.size: " + v.size()); +// packer.writeMapBegin(v.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// packer.write(e.getKey()); +// packer.write(e.getValue()); +// } +// packer.writeMapEnd(); +// ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); +// StreamUnpacker unpacker = new StreamUnpacker(in); +// int size = unpacker.readMapBegin(); +// // TODO #MN +// System.out.println("## ret.size: " + size); +// Map ret = new HashMap(size); +// for (int i = 0; i < size; ++i) { +// Object key = unpacker.read(keyElementClass); +// Object value = unpacker.read(valueElementClass); +// ret.put(key, value); +// } +// unpacker.readMapEnd(); +// assertEquals(v.size(), ret.size()); +// for (Map.Entry e : ((Map) v).entrySet()) { +// Object value = ret.get(e.getKey()); +// assertEquals(e.getValue(), value); +// } +// } } From 712c1c4b7b5d45e0d11e4ef21f38a2730d37d3a6 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 19:03:03 +0900 Subject: [PATCH 011/409] changed modifiers of each constructor in Collection/List/MapTemplate.java to public --- src/main/java/org/msgpack/template/CollectionTemplate.java | 2 +- src/main/java/org/msgpack/template/ListTemplate.java | 2 +- src/main/java/org/msgpack/template/MapTemplate.java | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index e025f6bc7..a9a1d940f 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -28,7 +28,7 @@ public class CollectionTemplate implements Template { private Template elementTemplate; - private CollectionTemplate(Template elementTemplate) { + public CollectionTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index e403fecf9..3a28f47a6 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -28,7 +28,7 @@ public class ListTemplate implements Template { private Template elementTemplate; - private ListTemplate(Template elementTemplate) { + public ListTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index b7287d99f..20209ec2b 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -29,7 +29,7 @@ public class MapTemplate implements Template { private Template keyTemplate; private Template valueTemplate; - private MapTemplate(Template keyTemplate, Template valueTemplate) { + public MapTemplate(Template keyTemplate, Template valueTemplate) { this.keyTemplate = keyTemplate; this.valueTemplate = valueTemplate; } From e96028865708c1b140397c37d25ae48737c22e59 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 19:04:17 +0900 Subject: [PATCH 012/409] added test programs to check behaviors of List/MapTemplate class --- .../msgpack/template/TestListTemplate.java | 125 +++++++++++++++++ .../org/msgpack/template/TestMapTemplate.java | 130 ++++++++++++++++++ 2 files changed, 255 insertions(+) create mode 100644 src/test/java/org/msgpack/template/TestListTemplate.java create mode 100644 src/test/java/org/msgpack/template/TestMapTemplate.java diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java new file mode 100644 index 000000000..ad50c95ae --- /dev/null +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -0,0 +1,125 @@ +package org.msgpack.template; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.util.List; + +import org.junit.Ignore; +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.StreamPacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.StreamUnpacker; + + +@Ignore +public class TestListTemplate { + + @Test + public void testStreamPackStreamUnpack() throws Exception { + new TestStreamPackStreamUnpack().testList(); + } + + @Test + public void testStreamPackBufferUnpack() throws Exception { + new TestStreamPackBufferUnpack().testList(); + } + + @Test + public void testBufferPackBufferUnpack() throws Exception { + new TestBufferPackBufferUnpack().testList(); + } + + @Test + public void testBufferPackStreamUnpack() throws Exception { + new TestBufferPackStreamUnpack().testList(); + } + + private static class TestStreamPackStreamUnpack extends TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template elementTemplate = msgpack.getTemplate(elementClass); + Template tmpl = new ListTemplate(elementTemplate); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestStreamPackBufferUnpack extends TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template elementTemplate = msgpack.getTemplate(elementClass); + Template tmpl = new ListTemplate(elementTemplate); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackBufferUnpack extends TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template elementTemplate = msgpack.getTemplate(elementClass); + Template tmpl = new ListTemplate(elementTemplate); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackStreamUnpack extends TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template elementTemplate = msgpack.getTemplate(elementClass); + Template tmpl = new ListTemplate(elementTemplate); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } +} diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java new file mode 100644 index 000000000..94589d078 --- /dev/null +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -0,0 +1,130 @@ +package org.msgpack.template; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.util.List; +import java.util.Map; + +import org.junit.Ignore; +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.StreamPacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.StreamUnpacker; + + +@Ignore +public class TestMapTemplate { + + @Test + public void testStreamPackStreamUnpack() throws Exception { + new TestStreamPackStreamUnpack().testMap(); + } + + @Test + public void testStreamPackBufferUnpack() throws Exception { + new TestStreamPackBufferUnpack().testMap(); + } + + @Test + public void testBufferPackBufferUnpack() throws Exception { + new TestBufferPackBufferUnpack().testMap(); + } + + @Test + public void testBufferPackStreamUnpack() throws Exception { + new TestBufferPackStreamUnpack().testMap(); + } + + private static class TestStreamPackStreamUnpack extends TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template keyElementTemplate = msgpack.getTemplate(keyElementClass); + Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestStreamPackBufferUnpack extends TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template keyElementTemplate = msgpack.getTemplate(keyElementClass); + Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackBufferUnpack extends TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template keyElementTemplate = msgpack.getTemplate(keyElementClass); + Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackStreamUnpack extends TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template keyElementTemplate = msgpack.getTemplate(keyElementClass); + Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + String ret = (String) tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } +} From 00632d4b028470d855e805b8900363170d0ee781 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 19:21:03 +0900 Subject: [PATCH 013/409] trivial modifications --- .../msgpack/TestBufferPackBufferUnpack.java | 65 +++++++++++-------- .../org/msgpack/TestBufferPackConvert.java | 65 +++++++++++-------- .../msgpack/TestBufferPackStreamUnpack.java | 65 +++++++++++-------- .../msgpack/TestStreamPackBufferUnpack.java | 65 +++++++++++-------- .../org/msgpack/TestStreamPackConvert.java | 65 +++++++++++-------- .../msgpack/TestStreamPackStreamUnpack.java | 65 +++++++++++-------- 6 files changed, 234 insertions(+), 156 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index db2c0811c..94970324b 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -24,10 +24,11 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); @@ -40,10 +41,11 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); @@ -56,10 +58,11 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); @@ -72,10 +75,11 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); @@ -88,10 +92,11 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); @@ -104,10 +109,11 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); @@ -120,10 +126,11 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); @@ -131,10 +138,11 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeNil(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); unpacker.readNil(); } @@ -146,10 +154,11 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); @@ -162,10 +171,11 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeString(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); String ret = unpacker.readString(); assertEquals(v, ret); @@ -178,10 +188,11 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); @@ -194,7 +205,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -203,7 +215,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readArrayBegin(); // // TODO #MN @@ -228,7 +240,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -238,7 +251,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readMapBegin(); // // TODO #MN diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index 3f991938f..6e99898ee 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -27,10 +27,11 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isBoolean()); @@ -45,10 +46,11 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -63,10 +65,11 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -81,10 +84,11 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -99,10 +103,11 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -117,10 +122,11 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); @@ -135,10 +141,11 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); @@ -148,10 +155,11 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeNil(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isNil()); @@ -165,10 +173,11 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -183,10 +192,11 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeString(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); @@ -201,10 +211,11 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); @@ -219,7 +230,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -228,7 +240,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readArrayBegin(); // // TODO #MN @@ -254,7 +266,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -264,7 +277,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readMapBegin(); // // TODO #MN diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index e8d0ba624..885e4e609 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -25,10 +25,11 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -40,10 +41,11 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -55,10 +57,11 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -70,10 +73,11 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -85,10 +89,11 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -100,10 +105,11 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -115,20 +121,22 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @Test @Override public void testNil() throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeNil(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); unpacker.readNil(); } @@ -139,10 +147,11 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -154,10 +163,11 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeString(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -169,10 +179,11 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -184,7 +195,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -193,7 +205,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // byte[] bytes = packer.toByteArray(); -// StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); +// StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); // int size = unpacker.readArrayBegin(); // // TODO #MN // System.out.println("## ret.size: " + size); @@ -217,7 +229,8 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); +// MessagePack msgpack = new MessagePack(); +// BufferPacker packer = new BufferPacker(msgpack); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -227,7 +240,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // byte[] bytes = packer.toByteArray(); -// StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); +// StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); // int size = unpacker.readMapBegin(); // // TODO #MN // System.out.println("## ret.size: " + size); diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index cebebd658..e8ac711df 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -25,11 +25,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); @@ -42,11 +43,12 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByte(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); @@ -59,11 +61,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeShort(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); @@ -76,11 +79,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeInt(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); @@ -93,11 +97,12 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeLong(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); @@ -110,11 +115,12 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); @@ -127,11 +133,12 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); @@ -139,11 +146,12 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeNil(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); unpacker.readNil(); } @@ -155,11 +163,12 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); @@ -172,11 +181,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeString(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); String ret = unpacker.readString(); assertEquals(v, ret); @@ -189,11 +199,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); @@ -206,8 +217,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -216,7 +228,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readArrayBegin(); // // TODO #MN @@ -241,8 +253,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -252,7 +265,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readMapBegin(); // // TODO #MN diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index 59c1a02a4..709a5437c 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -28,11 +28,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isBoolean()); @@ -47,11 +48,12 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByte(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -66,11 +68,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeShort(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -85,11 +88,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeInt(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -104,11 +108,12 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeLong(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -123,11 +128,12 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); @@ -142,11 +148,12 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); @@ -156,11 +163,12 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeNil(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isNil()); @@ -174,11 +182,12 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); @@ -193,11 +202,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeString(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); @@ -212,11 +222,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); unpacker.wrap(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); @@ -231,8 +242,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -241,7 +253,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readArrayBegin(); // // TODO #MN @@ -267,8 +279,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -278,7 +291,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); +// BufferUnpacker unpacker = new BufferUnpacker(msgpack); // unpacker.wrap(bytes); // int size = unpacker.readMapBegin(); // // TODO #MN diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index 149ebda79..a1a992708 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -26,11 +26,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBoolean(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -42,11 +43,12 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByte(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -58,11 +60,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeShort(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -74,11 +77,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeInt(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -90,22 +94,24 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeLong(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); long ret = unpacker.readLong(); assertEquals(v, ret); } @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeFloat(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -117,22 +123,24 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeDouble(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @Test @Override public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeNil(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); unpacker.readNil(); } @@ -143,11 +151,12 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeBigInteger(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -159,11 +168,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeString(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -175,11 +185,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = new StreamPacker(msgpack, out); packer.writeByteArray(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(in); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -191,8 +202,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testList(List v, Class elementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeArrayBegin(v.size()); @@ -201,7 +213,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeArrayEnd(); // ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); -// StreamUnpacker unpacker = new StreamUnpacker(in); +// StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); // int size = unpacker.readArrayBegin(); // // TODO #MN // System.out.println("## ret.size: " + size); @@ -225,8 +237,9 @@ public void testByteArray(byte[] v) throws Exception { // // @Override // public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { +// MessagePack msgpack = new MessagePack(); // ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(out); +// StreamPacker packer = new StreamPacker(msgpack, out); // // TODO #MN // System.out.println("## v.size: " + v.size()); // packer.writeMapBegin(v.size()); @@ -236,7 +249,7 @@ public void testByteArray(byte[] v) throws Exception { // } // packer.writeMapEnd(); // ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); -// StreamUnpacker unpacker = new StreamUnpacker(in); +// StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); // int size = unpacker.readMapBegin(); // // TODO #MN // System.out.println("## ret.size: " + size); From fa1187c7624257509d28806eba07d3b3eb9b709c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 10 Jul 2011 19:31:52 +0900 Subject: [PATCH 014/409] renamed method name of MessagePack#getTemplate(..) to lookup --- src/main/java/org/msgpack/MessagePack.java | 2 +- src/main/java/org/msgpack/packer/Packer.java | 4 ++-- src/main/java/org/msgpack/unpacker/Unpacker.java | 8 ++++---- .../org/msgpack/template/TestListTemplate.java | 8 ++++---- .../org/msgpack/template/TestMapTemplate.java | 16 ++++++++-------- 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index ef6b7b5c0..a4c113af0 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -159,7 +159,7 @@ public void register(Class type, Template tmpl) { registry.register(type, tmpl); } - public Template getTemplate(Class type) { + public Template lookup(Class type) { return registry.lookup(type); } private static final MessagePack globalMessagePack = new MessagePack(); diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 8cbff8188..3ae2453a2 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -77,7 +77,7 @@ public void writeMapEnd() throws IOException { public Packer write(Object o) throws IOException { - msgpack.getTemplate(o.getClass()).write(this, o); + msgpack.lookup(o.getClass()).write(this, o); return this; } @@ -95,7 +95,7 @@ public Packer write(Value v) throws IOException { } // public Packer write(Object o) throws IOException { -// msgpack.getTemplate(o.getClass()).write(this, o); +// msgpack.lookup(o.getClass()).write(this, o); // return this; // } // diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 930bf49ea..8ca6cff5b 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -103,25 +103,25 @@ public Value readValue() throws IOException { public T read(T to) throws IOException { - return (T) msgpack.getTemplate(to.getClass()).read(this, to); + return (T) msgpack.lookup(to.getClass()).read(this, to); } public T read(Class klass) throws IOException { - return (T) msgpack.getTemplate(klass).read(this, null); + return (T) msgpack.lookup(klass).read(this, null); } public T readOptional(Class klass, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T) msgpack.getTemplate(klass).read(this, null); + return (T) msgpack.lookup(klass).read(this, null); } public T readOptional(T to, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T) msgpack.getTemplate(to.getClass()).read(this, to); + return (T) msgpack.lookup(to.getClass()).read(this, to); } public T readOptional(Class klass) throws IOException { diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index ad50c95ae..dac177c09 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -48,7 +48,7 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.getTemplate(elementClass); + Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); @@ -69,7 +69,7 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.getTemplate(elementClass); + Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); @@ -91,7 +91,7 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.getTemplate(elementClass); + Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); @@ -112,7 +112,7 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.getTemplate(elementClass); + Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index 94589d078..16dd28e3b 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -49,8 +49,8 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.getTemplate(keyElementClass); - Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); @@ -71,8 +71,8 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.getTemplate(keyElementClass); - Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); @@ -94,8 +94,8 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.getTemplate(keyElementClass); - Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); @@ -116,8 +116,8 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.getTemplate(keyElementClass); - Template valueElementTemplate = msgpack.getTemplate(valueElementClass); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); From e572da771f1aedb5857f67e8d9c7a5f78a48f210 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 19:36:26 +0900 Subject: [PATCH 015/409] fixed unpackArray/unpackInt --- .../org/msgpack/unpacker/AbstractMessagePackUnpacker.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java index 1dca5ed29..4c08371ae 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java @@ -228,7 +228,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { } case 0xdc: // array 16 { - int count = in.getShort() & 0xff; + int count = in.getShort() & 0xffff; a.acceptArray(count); stack.reduceCount(); stack.pushArray(count); @@ -251,7 +251,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { } case 0xde: // map 16 { - int count = in.getShort() & 0xff; + int count = in.getShort() & 0xffff; a.acceptMap(count); stack.reduceCount(); stack.pushMap(count); From a76644033c4cd86e15b7168a46805ab480618cb1 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 19:37:11 +0900 Subject: [PATCH 016/409] fixed BufferedOutput.write --- .../java/org/msgpack/io/BufferedOutput.java | 22 +-- .../msgpack/TestBufferPackBufferUnpack.java | 130 ++++++++---------- 2 files changed, 73 insertions(+), 79 deletions(-) diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index 9a9235630..c2e4e7110 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -33,10 +33,14 @@ public BufferedOutput(int bufferSize) { this.bufferSize = bufferSize; } + private void allocateNewBuffer() { + buffer = new byte[bufferSize]; + castByteBuffer = ByteBuffer.wrap(buffer); + } + private void reserve(int len) throws IOException { if(buffer == null) { - buffer = new byte[bufferSize]; - castByteBuffer = ByteBuffer.wrap(buffer); + allocateNewBuffer(); return; } if(bufferSize - filled < len) { @@ -54,15 +58,14 @@ public void write(byte[] b, int off, int len) throws IOException { flushBuffer(b, off, len); return; } - buffer = new byte[bufferSize]; - castByteBuffer = ByteBuffer.wrap(buffer); + allocateNewBuffer(); } if(len <= bufferSize - filled) { System.arraycopy(b, off, buffer, filled, len); filled += len; - } else if(len < bufferSize) { + } else if(len <= bufferSize) { if(!flushBuffer(buffer, 0, filled)) { - buffer = new byte[bufferSize]; + allocateNewBuffer(); } filled = 0; System.arraycopy(b, off, buffer, 0, len); @@ -80,15 +83,14 @@ public void write(ByteBuffer bb) throws IOException { flushByteBuffer(bb); return; } - buffer = new byte[bufferSize]; - castByteBuffer = ByteBuffer.wrap(buffer); + allocateNewBuffer(); } if(len <= bufferSize - filled) { bb.get(buffer, filled, len); filled += len; - } else if(len < bufferSize) { + } else if(len <= bufferSize) { if(!flushBuffer(buffer, 0, filled)) { - buffer = new byte[bufferSize]; + allocateNewBuffer(); } filled = 0; bb.get(buffer, 0, len); diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index db2c0811c..429894c71 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -187,73 +187,65 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); -// unpacker.wrap(bytes); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// ret.add(unpacker.read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// BufferPacker packer = new BufferPacker(); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(); -// unpacker.wrap(bytes); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Object key = unpacker.read(keyElementClass); -// Object value = unpacker.read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + BufferPacker packer = new BufferPacker(); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + BufferPacker packer = new BufferPacker(); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } From 7c810270b1b157fa1ab7c81ce64e28f66c65d2fa Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 10 Jul 2011 19:37:30 +0900 Subject: [PATCH 017/409] Template --- src/main/java/org/msgpack/MessagePack.java | 62 +++++++++---------- src/main/java/org/msgpack/packer/Packer.java | 4 +- .../msgpack/template/BigDecimalTemplate.java | 8 +-- .../msgpack/template/BigIntegerTemplate.java | 6 +- .../template/BooleanArrayTemplate.java | 22 +++---- .../org/msgpack/template/BooleanTemplate.java | 8 +-- .../msgpack/template/ByteArrayTemplate.java | 9 ++- .../msgpack/template/ByteBufferTemplate.java | 9 ++- .../org/msgpack/template/ByteTemplate.java | 8 +-- .../msgpack/template/CollectionTemplate.java | 35 +++++------ .../org/msgpack/template/DateTemplate.java | 8 +-- .../org/msgpack/template/DefaultTemplate.java | 52 ++++++++-------- .../msgpack/template/DoubleArrayTemplate.java | 22 +++---- .../org/msgpack/template/DoubleTemplate.java | 8 +-- .../msgpack/template/FloatArrayTemplate.java | 22 +++---- .../org/msgpack/template/FloatTemplate.java | 8 +-- .../template/IntegerArrayTemplate.java | 15 +++-- .../org/msgpack/template/IntegerTemplate.java | 8 +-- .../org/msgpack/template/ListTemplate.java | 29 ++++----- .../msgpack/template/LongArrayTemplate.java | 22 +++---- .../org/msgpack/template/LongTemplate.java | 8 +-- .../org/msgpack/template/MapTemplate.java | 26 ++++---- .../msgpack/template/ShortArrayTemplate.java | 22 +++---- .../org/msgpack/template/ShortTemplate.java | 8 +-- .../org/msgpack/template/StringTemplate.java | 8 +-- .../java/org/msgpack/template/Template.java | 6 +- .../org/msgpack/template/ValueTemplate.java | 8 +-- .../builder/AbstractTemplateBuilder.java | 6 +- .../builder/ReflectionTemplateBuilder.java | 14 ++--- .../java/org/msgpack/unpacker/Unpacker.java | 17 +++-- 30 files changed, 230 insertions(+), 258 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index ef6b7b5c0..4a6f841ac 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -48,7 +48,7 @@ public byte[] write(Object v) throws IOException { return write(v, registry.lookup(v.getClass())); } - public byte[] write(Object v, Template tmpl) throws IOException { // TODO IOException + public byte[] write(T v, Template tmpl) throws IOException { // TODO IOException BufferPacker pk = new BufferPacker(this); tmpl.write(pk, v); return pk.toByteArray(); @@ -58,7 +58,7 @@ public void write(OutputStream out, Object v) throws IOException { write(out, v, registry.lookup(v.getClass())); } - public void write(OutputStream out, Object v, Template tmpl) throws IOException { + public void write(OutputStream out, T v, Template tmpl) throws IOException { StreamPacker pk = new StreamPacker(this, out); tmpl.write(pk, v); } @@ -95,54 +95,48 @@ public T read(byte[] b, T v) throws IOException { // TODO IOException } public T read(byte[] b, Class c) throws IOException { // TODO IOException - // TODO - Template tmpl = registry.lookup(c); + Template tmpl = registry.lookup(c); BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); - return (T) tmpl.read(u, null); + return tmpl.read(u, null); } public T read(ByteBuffer b, T v) throws IOException { // TODO IOException - // TODO - Template tmpl = registry.lookup(v.getClass()); + Template tmpl = registry.lookup(v.getClass()); BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); - return (T) tmpl.read(u, v); + return tmpl.read(u, v); } public T read(ByteBuffer b, Class c) { // TODO IOException - // TODO - Template tmpl = registry.lookup(c); + Template tmpl = registry.lookup(c); BufferUnpacker u = new BufferUnpacker(this); u.wrap(b); return null; } public T read(InputStream in, T v) throws IOException { - // TODO - Template tmpl = registry.lookup(v.getClass()); - return (T) tmpl.read(new StreamUnpacker(this, in), v); + Template tmpl = registry.lookup(v.getClass()); + return tmpl.read(new StreamUnpacker(this, in), v); } public T read(InputStream in, Class c) throws IOException { - // TODO - Template tmpl = registry.lookup(c); - return (T) tmpl.read(new StreamUnpacker(this, in), null); + Template tmpl = registry.lookup(c); + return tmpl.read(new StreamUnpacker(this, in), null); } public T convert(Value v, T to) throws IOException { // TODO IOException - // TODO - Template tmpl = registry.lookup(to.getClass()); - return (T) tmpl.read(new Converter(this, v), to); + Template tmpl = registry.lookup(to.getClass()); + return tmpl.read(new Converter(this, v), to); } public T convert(Value v, Class c) throws IOException { - Template tmpl = registry.lookup(c); - return (T) tmpl.read(new Converter(this, v), null); + Template tmpl = registry.lookup(c); + return tmpl.read(new Converter(this, v), null); } - public Value unconvert(Object v) throws IOException { - Template tmpl = registry.lookup(v.getClass()); + public Value unconvert(T v) throws IOException { + Template tmpl = registry.lookup(v.getClass()); Unconverter pk = new Unconverter(this); tmpl.write(pk, v); return pk.getResult(); @@ -155,13 +149,15 @@ public void register(Class type) { // TODO #MN // public void forceRegister(Class type); - public void register(Class type, Template tmpl) { + public void register(Class type, Template tmpl) { registry.register(type, tmpl); } - public Template getTemplate(Class type) { + public Template getTemplate(Class type) { return registry.lookup(type); } + + private static final MessagePack globalMessagePack = new MessagePack(); @Deprecated @@ -175,12 +171,12 @@ public static void pack(OutputStream out, Object obj) throws IOException { } @Deprecated - public static byte[] pack(Object obj, Template tmpl) throws IOException { // TODO IOException + public static byte[] pack(T obj, Template tmpl) throws IOException { // TODO IOException return globalMessagePack.write(obj, tmpl); } @Deprecated - public static void pack(OutputStream out, Object obj, Template tmpl) throws IOException { + public static void pack(OutputStream out, T obj, Template tmpl) throws IOException { globalMessagePack.write(out, obj, tmpl); } @@ -190,15 +186,15 @@ public static Value unpack(byte[] buffer) throws IOException { } @Deprecated - public static T unpack(byte[] buffer, Template tmpl) throws IOException { + public static T unpack(byte[] buffer, Template tmpl) throws IOException { BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); - return (T) tmpl.read(u, null); + return tmpl.read(u, null); } @Deprecated - public static T unpack(byte[] buffer, Template tmpl, T to) throws IOException { + public static T unpack(byte[] buffer, Template tmpl, T to) throws IOException { BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); - return (T) tmpl.read(u, to); + return tmpl.read(u, to); } @Deprecated @@ -217,12 +213,12 @@ public static Value unpack(InputStream in) throws IOException { } @Deprecated - public static Object unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { + public static T unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { return tmpl.read(new StreamUnpacker(globalMessagePack, in), null); } @Deprecated - public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { + public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { return (T) tmpl.read(new StreamUnpacker(globalMessagePack, in), to); } diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 8cbff8188..d5db684f1 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -22,6 +22,7 @@ import java.nio.ByteBuffer; import org.msgpack.type.Value; import org.msgpack.MessagePack; +import org.msgpack.template.Template; public abstract class Packer { @@ -77,7 +78,8 @@ public void writeMapEnd() throws IOException { public Packer write(Object o) throws IOException { - msgpack.getTemplate(o.getClass()).write(this, o); + Template tmpl = msgpack.getTemplate(o.getClass()); + tmpl.write(this, o); return this; } diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index d38086afa..a144ea020 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -24,17 +24,17 @@ import org.msgpack.MessageTypeException; -public class BigDecimalTemplate implements Template { +public class BigDecimalTemplate implements Template { private BigDecimalTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, BigDecimal target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeString(((BigDecimal)target).toString()); + pk.writeString(target.toString()); } - public Object read(Unpacker u, Object to) throws IOException { + public BigDecimal read(Unpacker u, BigDecimal to) throws IOException { String temp = u.readString(); return new BigDecimal(temp); } diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index 73d3839db..b83e69d1f 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -24,17 +24,17 @@ import org.msgpack.MessageTypeException; -public class BigIntegerTemplate implements Template { +public class BigIntegerTemplate implements Template { private BigIntegerTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, BigInteger target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } pk.writeBigInteger((BigInteger)target); } - public Object read(Unpacker u, Object to) throws IOException { + public BigInteger read(Unpacker u, BigInteger to) throws IOException { return u.readBigInteger(); } diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index b42e8cbee..693ef01c4 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -23,34 +23,30 @@ import org.msgpack.MessageTypeException; -public class BooleanArrayTemplate implements Template { +public class BooleanArrayTemplate implements Template { private BooleanArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, boolean[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - boolean[] array = (boolean[]) target; - pk.writeArrayBegin(array.length); - for(boolean a : array) { + pk.writeArrayBegin(target.length); + for(boolean a : target) { pk.writeBoolean(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public boolean[] read(Unpacker u, boolean[] to) throws IOException { int n = u.readArrayBegin(); - boolean[] array; - if(to != null && ((boolean[]) to).length == n) { - array = (boolean[]) to; - } else { - array = new boolean[n]; + if(to == null || to.length != n) { + to = new boolean[n]; } for(int i=0; i < n; i++) { - array[i] = u.readBoolean(); + to[i] = u.readBoolean(); } u.readArrayEnd(); - return array; + return to; } static public BooleanArrayTemplate getInstance() { diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index 4806aba76..e9a9b4add 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class BooleanTemplate implements Template { +public class BooleanTemplate implements Template { private BooleanTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Boolean target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeBoolean((Boolean)target); + pk.writeBoolean(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Boolean read(Unpacker u, Boolean to) throws IOException { return u.readBoolean(); } diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index db56dc2e8..10b3c0e63 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -23,18 +23,17 @@ import org.msgpack.MessageTypeException; -public class ByteArrayTemplate implements Template { +public class ByteArrayTemplate implements Template { private ByteArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, byte[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - byte[] array = (byte[]) target; - pk.writeByteArray(array); + pk.writeByteArray(target); } - public Object read(Unpacker u, Object to) throws IOException { + public byte[] read(Unpacker u, byte[] to) throws IOException { return u.readByteArray(); // TODO read to 'to' obj } diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index a8d189ec1..be5167404 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -25,18 +25,17 @@ import org.msgpack.MessageTypeException; -public class ByteBufferTemplate implements Template { +public class ByteBufferTemplate implements Template { private ByteBufferTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, ByteBuffer target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - ByteBuffer bb = (ByteBuffer) target; - pk.writeByteBuffer(bb); + pk.writeByteBuffer(target); } - public Object read(Unpacker u, Object to) throws IOException { + public ByteBuffer read(Unpacker u, ByteBuffer to) throws IOException { return u.readByteBuffer(); // TODO read to 'to' obj? } diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 20c306755..7558614b5 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class ByteTemplate implements Template { +public class ByteTemplate implements Template { private ByteTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Byte target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeByte((Byte)target); + pk.writeByte(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Byte read(Unpacker u, Byte to) throws IOException { return u.readByte(); } diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index e025f6bc7..6956fe140 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -25,43 +25,38 @@ import org.msgpack.MessageTypeException; -public class CollectionTemplate implements Template { - private Template elementTemplate; +public class CollectionTemplate implements Template> { + private Template elementTemplate; - private CollectionTemplate(Template elementTemplate) { + private CollectionTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, Object target) throws IOException { - if(!(target instanceof Collection)) { - if(target == null) { - throw new MessageTypeException("Attempted to write null"); - } - throw new MessageTypeException("Target is not a Collection but "+target.getClass()); + public void write(Packer pk, Collection target) throws IOException { + if(target == null) { + throw new MessageTypeException("Attempted to write null"); } - Collection col = (Collection) target; + Collection col = target; pk.writeArrayBegin(col.size()); - for(Object e : col) { + for(E e : col) { elementTemplate.write(pk, e); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public Collection read(Unpacker u, Collection to) throws IOException { int n = u.readArrayBegin(); - Collection col; - if(to != null) { - col = (Collection) to; - col.clear(); + if(to == null) { + to = new LinkedList(); } else { - col = new LinkedList(); + to.clear(); } for(int i=0; i < n; i++) { - Object e = elementTemplate.read(u, null); - col.add(e); + E e = elementTemplate.read(u, null); + to.add(e); } u.readArrayEnd(); - return col; + return to; } } diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index c7ba19932..5d247581d 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -25,17 +25,17 @@ import org.msgpack.MessageTypeException; -public class DateTemplate implements Template { +public class DateTemplate implements Template { private DateTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Date target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeLong(((Date)target).getTime()); + pk.writeLong(target.getTime()); } - public Object read(Unpacker u, Object to) throws IOException { + public Date read(Unpacker u, Date to) throws IOException { long temp = u.readLong(); return new Date(temp); } diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index d0ce2f3f2..8e5e68d3b 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -26,7 +26,7 @@ import org.msgpack.unpacker.Unpacker; -public class DefaultTemplate implements Template { +public class DefaultTemplate implements Template { private TemplateRegistry registry; // this field should be deleted? @@ -36,38 +36,38 @@ public class DefaultTemplate implements Template { private boolean messagePackable; - public DefaultTemplate(TemplateRegistry registry, Class targetClass) { - this(registry, targetClass, (Type) targetClass); + public DefaultTemplate(TemplateRegistry registry, Class targetClass) { + this(registry, targetClass, (Type) targetClass); } - public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type lookupType) { - this.registry = registry; - //this.targetClass = targetClass; - this.lookupType = lookupType; - this.messagePackable = MessagePackable.class.isAssignableFrom(targetClass); + public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type lookupType) { + this.registry = registry; + //this.targetClass = targetClass; + this.lookupType = lookupType; + this.messagePackable = MessagePackable.class.isAssignableFrom(targetClass); } public void write(Packer pk, Object target) throws IOException { - if (messagePackable) { - if (target == null) { - throw new NullPointerException("target is null"); - } - ((MessagePackable) target).writeTo(pk); - return; - } - Template tmpl = registry.tryLookup(lookupType); - if (tmpl == this || tmpl == null) { - throw new MessageTypeException("Template lookup fail: " + lookupType); - } - tmpl.write(pk, target); + if (messagePackable) { + if (target == null) { + throw new NullPointerException("target is null"); + } + ((MessagePackable) target).writeTo(pk); + return; + } + Template tmpl = registry.tryLookup(lookupType); + if (tmpl == this || tmpl == null) { + throw new MessageTypeException("Template lookup fail: " + lookupType); + } + tmpl.write(pk, target); } public Object read(Unpacker pac, Object to) throws IOException { - // TODO #MN - Template tmpl = registry.tryLookup(lookupType); - if (tmpl == this || tmpl == null) { - throw new MessageTypeException("Template lookup fail: " + lookupType); - } - return tmpl.read(pac, to); + // TODO #MN + Template tmpl = registry.tryLookup(lookupType); + if (tmpl == this || tmpl == null) { + throw new MessageTypeException("Template lookup fail: " + lookupType); + } + return tmpl.read(pac, to); } } diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index 1e333e017..836ee0b3b 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -23,34 +23,30 @@ import org.msgpack.MessageTypeException; -public class DoubleArrayTemplate implements Template { +public class DoubleArrayTemplate implements Template { private DoubleArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, double[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - double[] array = (double[]) target; - pk.writeArrayBegin(array.length); - for(double a : array) { + pk.writeArrayBegin(target.length); + for(double a : target) { pk.writeDouble(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public double[] read(Unpacker u, double[] to) throws IOException { int n = u.readArrayBegin(); - double[] array; - if(to != null && ((double[]) to).length == n) { - array = (double[]) to; - } else { - array = new double[n]; + if(to == null || to.length != n) { + to = new double[n]; } for(int i=0; i < n; i++) { - array[i] = u.readDouble(); + to[i] = u.readDouble(); } u.readArrayEnd(); - return array; + return to; } static public DoubleArrayTemplate getInstance() { diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index d844e9235..a383afa09 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class DoubleTemplate implements Template { +public class DoubleTemplate implements Template { private DoubleTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Double target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeDouble((Double)target); + pk.writeDouble(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Double read(Unpacker u, Double to) throws IOException { return u.readDouble(); } diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index e06f95936..318a702dd 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -23,34 +23,30 @@ import org.msgpack.MessageTypeException; -public class FloatArrayTemplate implements Template { +public class FloatArrayTemplate implements Template { private FloatArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, float[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - float[] array = (float[]) target; - pk.writeArrayBegin(array.length); - for(float a : array) { + pk.writeArrayBegin(target.length); + for(float a : target) { pk.writeFloat(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public float[] read(Unpacker u, float[] to) throws IOException { int n = u.readArrayBegin(); - float[] array; - if(to != null && ((float[]) to).length == n) { - array = (float[]) to; - } else { - array = new float[n]; + if(to == null || to.length != n) { + to = new float[n]; } for(int i=0; i < n; i++) { - array[i] = u.readFloat(); + to[i] = u.readFloat(); } u.readArrayEnd(); - return array; + return to; } static public FloatArrayTemplate getInstance() { diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index 56f99e4bf..94c33048f 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class FloatTemplate implements Template { +public class FloatTemplate implements Template { private FloatTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Float target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeFloat((Float)target); + pk.writeFloat(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Float read(Unpacker u, Float to) throws IOException { return u.readFloat(); } diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 4ac2169f4..4e65026b3 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -23,26 +23,25 @@ import org.msgpack.MessageTypeException; -public class IntegerArrayTemplate implements Template { +public class IntegerArrayTemplate implements Template { private IntegerArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, int[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - int[] array = (int[]) target; - pk.writeArrayBegin(array.length); - for(int a : array) { + pk.writeArrayBegin(target.length); + for(int a : target) { pk.writeInt(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public int[] read(Unpacker u, int[] to) throws IOException { int n = u.readArrayBegin(); int[] array; - if(to != null && ((int[]) to).length == n) { - array = (int[]) to; + if(to != null && to.length == n) { + array = to; } else { array = new int[n]; } diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index e747a2db0..9d5ab68c6 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class IntegerTemplate implements Template { +public class IntegerTemplate implements Template { private IntegerTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Integer target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeInt((Integer)target); + pk.writeInt(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Integer read(Unpacker u, Integer to) throws IOException { return u.readInt(); } diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index e403fecf9..e7e617c99 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -25,43 +25,40 @@ import org.msgpack.MessageTypeException; -public class ListTemplate implements Template { - private Template elementTemplate; +public class ListTemplate implements Template> { + private Template elementTemplate; - private ListTemplate(Template elementTemplate) { + private ListTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, List target) throws IOException { if(!(target instanceof List)) { if(target == null) { throw new MessageTypeException("Attempted to write null"); } throw new MessageTypeException("Target is not a List but "+target.getClass()); } - List list = (List) target; - pk.writeArrayBegin(list.size()); - for(Object e : list) { + pk.writeArrayBegin(target.size()); + for(E e : target) { elementTemplate.write(pk, e); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public List read(Unpacker u, List to) throws IOException { int n = u.readArrayBegin(); - List list; - if(to != null) { - list = (List) to; - list.clear(); + if(to == null) { + to = new ArrayList(n); } else { - list = new ArrayList(n); + to.clear(); } for(int i=0; i < n; i++) { - Object e = elementTemplate.read(u, null); - list.add(e); + E e = elementTemplate.read(u, null); + to.add(e); } u.readArrayEnd(); - return list; + return to; } } diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index 412f7a369..9b82a7403 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -23,34 +23,30 @@ import org.msgpack.MessageTypeException; -public class LongArrayTemplate implements Template { +public class LongArrayTemplate implements Template { private LongArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, long[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - long[] array = (long[]) target; - pk.writeArrayBegin(array.length); - for(long a : array) { + pk.writeArrayBegin(target.length); + for(long a : target) { pk.writeLong(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public long[] read(Unpacker u, long[] to) throws IOException { int n = u.readArrayBegin(); - long[] array; - if(to != null && ((long[]) to).length == n) { - array = (long[]) to; - } else { - array = new long[n]; + if(to == null || to.length != n) { + to = new long[n]; } for(int i=0; i < n; i++) { - array[i] = u.readLong(); + to[i] = u.readLong(); } u.readArrayEnd(); - return array; + return to; } static public LongArrayTemplate getInstance() { diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index dd1c9809a..aab4a0615 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class LongTemplate implements Template { +public class LongTemplate implements Template { private LongTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Long target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeLong((Long)target); + pk.writeLong(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Long read(Unpacker u, Long to) throws IOException { return u.readLong(); } diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index b7287d99f..cf30187ad 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -25,43 +25,43 @@ import org.msgpack.MessageTypeException; -public class MapTemplate implements Template { - private Template keyTemplate; - private Template valueTemplate; +public class MapTemplate implements Template> { + private Template keyTemplate; + private Template valueTemplate; - private MapTemplate(Template keyTemplate, Template valueTemplate) { + private MapTemplate(Template keyTemplate, Template valueTemplate) { this.keyTemplate = keyTemplate; this.valueTemplate = valueTemplate; } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Map target) throws IOException { if(!(target instanceof Map)) { if(target == null) { throw new MessageTypeException("Attempted to write null"); } throw new MessageTypeException("Target is not a Map but "+target.getClass()); } - Map map = (Map) target; + Map map = (Map) target; pk.writeMapBegin(map.size()); - for(Map.Entry pair : map.entrySet()) { + for(Map.Entry pair : map.entrySet()) { keyTemplate.write(pk, pair.getKey()); valueTemplate.write(pk, pair.getValue()); } pk.writeMapEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public Map read(Unpacker u, Map to) throws IOException { int n = u.readMapBegin(); - Map map; + Map map; if(to != null) { - map = (Map) to; + map = (Map) to; map.clear(); } else { - map = new HashMap(n); + map = new HashMap(n); } for(int i=0; i < n; i++) { - Object key = keyTemplate.read(u, null); - Object value = valueTemplate.read(u, null); + K key = keyTemplate.read(u, null); + V value = valueTemplate.read(u, null); map.put(key, value); } u.readMapEnd(); diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index f73d54ad6..85f52c75b 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -23,34 +23,30 @@ import org.msgpack.MessageTypeException; -public class ShortArrayTemplate implements Template { +public class ShortArrayTemplate implements Template { private ShortArrayTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, short[] target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - short[] array = (short[]) target; - pk.writeArrayBegin(array.length); - for(short a : array) { + pk.writeArrayBegin(target.length); + for(short a : target) { pk.writeShort(a); } pk.writeArrayEnd(); } - public Object read(Unpacker u, Object to) throws IOException { + public short[] read(Unpacker u, short[] to) throws IOException { int n = u.readArrayBegin(); - short[] array; - if(to != null && ((short[]) to).length == n) { - array = (short[]) to; - } else { - array = new short[n]; + if(to == null || to.length != n) { + to = new short[n]; } for(int i=0; i < n; i++) { - array[i] = u.readShort(); + to[i] = u.readShort(); } u.readArrayEnd(); - return array; + return to; } static public ShortArrayTemplate getInstance() { diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index 30fa5529e..c0e35ecc2 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class ShortTemplate implements Template { +public class ShortTemplate implements Template { private ShortTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Short target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeShort((Short)target); + pk.writeShort(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Short read(Unpacker u, Short to) throws IOException { return u.readShort(); } diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index d33292b61..97754cbbf 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -23,17 +23,17 @@ import org.msgpack.MessageTypeException; -public class StringTemplate implements Template { +public class StringTemplate implements Template { private StringTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, String target) throws IOException { if(target == null) { throw new MessageTypeException("Attempted to write null"); } - pk.writeString((String)target); + pk.writeString(target); } - public Object read(Unpacker u, Object to) throws IOException { + public String read(Unpacker u, String to) throws IOException { return u.readString(); } diff --git a/src/main/java/org/msgpack/template/Template.java b/src/main/java/org/msgpack/template/Template.java index 98c263958..66c9ad514 100644 --- a/src/main/java/org/msgpack/template/Template.java +++ b/src/main/java/org/msgpack/template/Template.java @@ -22,9 +22,9 @@ import org.msgpack.unpacker.Unpacker; -public interface Template { - public void write(Packer pk, Object v) throws IOException; +public interface Template { + public void write(Packer pk, T v) throws IOException; - public Object read(Unpacker u, Object to) throws IOException; + public T read(Unpacker u, T to) throws IOException; } diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 962cbe854..4956dc8a1 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -24,18 +24,18 @@ import org.msgpack.type.Value; -public class ValueTemplate implements Template { +public class ValueTemplate implements Template { private ValueTemplate() { } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Value target) throws IOException { if(target == null) { // FIXME NullPointerException? throw new MessageTypeException("Attempted to write null."); } - pk.write((Value)target); + pk.write(target); } - public Object read(Unpacker u, Object to) throws IOException { + public Value read(Unpacker u, Value to) throws IOException { return u.readValue(); } diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 33572cf96..4b8df30cf 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -40,7 +40,7 @@ public Template buildTemplate(Type type) throws TemplateBuildException { return buildTemplate(c, entries); } - public Template buildTemplate(Class c, FieldList flist) throws TemplateBuildException { + public Template buildTemplate(Class c, FieldList flist) throws TemplateBuildException { try { checkValidation(c); return buildTemplate(c, getFieldEntryReader().convertFieldEntries(c, flist)); @@ -49,7 +49,7 @@ public Template buildTemplate(Class c, FieldList flist) throws TemplateBuildE } } - public abstract Template buildTemplate(Class type, FieldEntry[] entries); + public abstract Template buildTemplate(Class type, FieldEntry[] entries); protected void checkValidation(Class type) { if (type.isInterface()) { @@ -72,4 +72,4 @@ public void writeTemplate(Type type, String directoryName) { public Template loadTemplate(Type type) { return null; } -} \ No newline at end of file +} diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index cf4851ba1..3a2461f02 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -179,14 +179,14 @@ public void read(Unpacker unpacker, Object target) throws IOException, MessageTy } } - static class ReflectionTemplate implements Template { - private Class targetClass; + static class ReflectionTemplate implements Template { + private Class targetClass; private ReflectionFieldEntry[] entries; private int minimumArrayLength; - ReflectionTemplate(Class targetClass, ReflectionFieldEntry[] entries) { + ReflectionTemplate(Class targetClass, ReflectionFieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; this.minimumArrayLength = 0; @@ -198,7 +198,7 @@ static class ReflectionTemplate implements Template { } } - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, T target) throws IOException { try { packer.writeArrayBegin(entries.length); for (ReflectionFieldEntry e : entries) { @@ -226,7 +226,7 @@ public void write(Packer packer, Object target) throws IOException { } } - public Object read(Unpacker unpacker, Object to) throws IOException, MessageTypeException { + public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException { try { if (to == null) { to = targetClass.newInstance(); @@ -306,7 +306,7 @@ public FieldEntryReader getFieldEntryReader() { } @Override - public Template buildTemplate(Class type, FieldEntry[] entries) { + public Template buildTemplate(Class type, FieldEntry[] entries) { if (entries == null) { throw new NullPointerException("entries is null: " + type); } @@ -341,7 +341,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { } else if (t.equals(double.class)) { res[i] = new DoubleFieldEntry(e); } else { - Template tmpl = registry.lookup((Class) e.getGenericType(), true); + Template tmpl = registry.lookup((Class) e.getGenericType(), true); res[i] = new ObjectFieldEntry(e, tmpl); } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 930bf49ea..b3daf6a3c 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -23,6 +23,7 @@ import java.lang.Iterable; import org.msgpack.type.Value; import org.msgpack.MessagePack; +import org.msgpack.template.Template; import org.msgpack.packer.Unconverter; @@ -103,25 +104,29 @@ public Value readValue() throws IOException { public T read(T to) throws IOException { - return (T) msgpack.getTemplate(to.getClass()).read(this, to); + Template tmpl = msgpack.getTemplate((Class) to.getClass()); // FIXME T -> ? extends T + return (T) tmpl.read(this, to); // FIXME down cast } public T read(Class klass) throws IOException { - return (T) msgpack.getTemplate(klass).read(this, null); + Template tmpl = msgpack.getTemplate(klass); // FIXME T -> ? extends T + return (T) tmpl.read(this, null); // FIXME down cast } - public T readOptional(Class klass, T defaultValue) throws IOException { + public T readOptional(T to, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T) msgpack.getTemplate(klass).read(this, null); + Template tmpl = msgpack.getTemplate((Class) to.getClass()); // FIXME T -> ? extends T + return (T) tmpl.read(this, to); // FIXME down cast } - public T readOptional(T to, T defaultValue) throws IOException { + public T readOptional(Class klass, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - return (T) msgpack.getTemplate(to.getClass()).read(this, to); + Template tmpl = (Template) msgpack.getTemplate(klass); // FIXME T -> ? extends T + return (T) tmpl.read(this, null); // FIXME down cast } public T readOptional(Class klass) throws IOException { From d8e9f6c6805cdca6422ca499f94916243af97ac4 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 11 Jul 2011 00:06:55 +0900 Subject: [PATCH 018/409] trivial modifications --- .../org/msgpack/TestBufferPackConvert.java | 140 ++++++++--------- .../msgpack/TestBufferPackStreamUnpack.java | 130 ++++++++-------- .../msgpack/TestStreamPackBufferUnpack.java | 138 ++++++++--------- .../org/msgpack/TestStreamPackConvert.java | 144 +++++++++--------- .../msgpack/TestStreamPackStreamUnpack.java | 134 ++++++++-------- 5 files changed, 323 insertions(+), 363 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index 6e99898ee..eea147282 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -223,78 +223,70 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// BufferPacker packer = new BufferPacker(msgpack); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// Value value = unpacker.readValue(); -// ret.add(new Converter(value).read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// BufferPacker packer = new BufferPacker(msgpack); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// byte[] bytes = packer.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Value keyValue = unpacker.readValue(); -// Object key = new Converter(keyValue).read(keyElementClass); -// Value valueValue = unpacker.readValue(); -// Object value = new Converter(valueValue).read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + Value value = unpacker.readValue(); + ret.add(new Converter(value).read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Value keyValue = unpacker.readValue(); + Object key = new Converter(keyValue).read(keyElementClass); + Value valueValue = unpacker.readValue(); + Object value = new Converter(valueValue).read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index 885e4e609..b69010ecb 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -188,73 +188,65 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// BufferPacker packer = new BufferPacker(msgpack); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// byte[] bytes = packer.toByteArray(); -// StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// ret.add(unpacker.read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// BufferPacker packer = new BufferPacker(msgpack); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// byte[] bytes = packer.toByteArray(); -// StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Object key = unpacker.read(keyElementClass); -// Object value = unpacker.read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = new BufferPacker(msgpack); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index e8ac711df..431e0111a 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -210,77 +210,69 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// ret.add(unpacker.read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Object key = unpacker.read(keyElementClass); -// Object value = unpacker.read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index 709a5437c..e9125bd3f 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -235,80 +235,72 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// Value value = unpacker.readValue(); -// ret.add(new Converter(value).read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// byte[] bytes = out.toByteArray(); -// BufferUnpacker unpacker = new BufferUnpacker(msgpack); -// unpacker.wrap(bytes); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Value keyValue = unpacker.readValue(); -// Object key = new Converter(keyValue).read(keyElementClass); -// Value valueValue = unpacker.readValue(); -// Object value = new Converter(valueValue).read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + Value value = unpacker.readValue(); + ret.add(new Converter(value).read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(msgpack); + unpacker.wrap(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Value keyValue = unpacker.readValue(); + Object key = new Converter(keyValue).read(keyElementClass); + Value valueValue = unpacker.readValue(); + Object value = new Converter(valueValue).read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index a1a992708..1c85d183c 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -195,75 +195,67 @@ public void testByteArray(byte[] v) throws Exception { assertArrayEquals(v, ret); } -// @Test @Override -// public void testList() throws Exception { -// super.testList(); -// } -// -// @Override -// public void testList(List v, Class elementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeArrayBegin(v.size()); -// for (Object o : v) { -// packer.write(o); -// } -// packer.writeArrayEnd(); -// ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); -// StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); -// int size = unpacker.readArrayBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// List ret = new ArrayList(size); -// for (int i = 0; i < size; ++i) { -// ret.add(unpacker.read(elementClass)); -// } -// unpacker.readArrayEnd(); -// assertEquals(v.size(), ret.size()); -// Iterator v_iter = v.iterator(); -// Iterator ret_iter = ret.iterator(); -// while (v_iter.hasNext()) { -// assertEquals(v_iter.next(), ret_iter.next()); -// } -// } -// -// @Test @Override -// public void testMap() throws Exception { -// super.testMap(); -// } -// -// @Override -// public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { -// MessagePack msgpack = new MessagePack(); -// ByteArrayOutputStream out = new ByteArrayOutputStream(); -// StreamPacker packer = new StreamPacker(msgpack, out); -// // TODO #MN -// System.out.println("## v.size: " + v.size()); -// packer.writeMapBegin(v.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// packer.write(e.getKey()); -// packer.write(e.getValue()); -// } -// packer.writeMapEnd(); -// ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); -// StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); -// int size = unpacker.readMapBegin(); -// // TODO #MN -// System.out.println("## ret.size: " + size); -// Map ret = new HashMap(size); -// for (int i = 0; i < size; ++i) { -// Object key = unpacker.read(keyElementClass); -// Object value = unpacker.read(valueElementClass); -// ret.put(key, value); -// } -// unpacker.readMapEnd(); -// assertEquals(v.size(), ret.size()); -// for (Map.Entry e : ((Map) v).entrySet()) { -// Object value = ret.get(e.getKey()); -// assertEquals(e.getValue(), value); -// } -// } + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(msgpack, out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } } From 09aed21b6d5dd87a9bb3b0f1665a6da793cd92a4 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 11 Jul 2011 20:30:47 +0900 Subject: [PATCH 019/409] appended register(ByteBuffer) to init method in TemplateRegistry class --- src/main/java/org/msgpack/template/TemplateRegistry.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 3fb813dec..7ff6c71fe 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -22,6 +22,7 @@ import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.math.BigInteger; +import java.nio.ByteBuffer; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; @@ -104,6 +105,7 @@ private void registerDefaultTemplates() { register(double[].class, DoubleArrayTemplate.getInstance()); register(String.class, StringTemplate.getInstance()); register(byte[].class, ByteArrayTemplate.getInstance()); + register(ByteBuffer.class, ByteBufferTemplate.getInstance()); register(Value.class, ValueTemplate.getInstance()); } From f534ac753931509f4aa60055c8ae3fb5bca21bbf Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 11 Jul 2011 20:31:57 +0900 Subject: [PATCH 020/409] trivial modifications --- .../msgpack/TestBufferPackBufferUnpack.java | 4 +- .../org/msgpack/TestBufferPackConvert.java | 4 +- .../msgpack/TestBufferPackStreamUnpack.java | 4 +- src/test/java/org/msgpack/TestSet.java | 4 +- .../msgpack/TestStreamPackBufferUnpack.java | 4 +- .../org/msgpack/TestStreamPackConvert.java | 4 +- .../msgpack/TestStreamPackStreamUnpack.java | 4 +- .../template/TestBigDecimalTemplate.java | 16 +++---- .../template/TestBigIntegerTemplate.java | 16 +++---- .../template/TestBooleanArrayTemplate.java | 16 +++---- .../msgpack/template/TestBooleanTemplate.java | 16 +++---- .../template/TestByteArrayTemplate.java | 16 +++---- .../template/TestByteBufferTemplate.java | 46 ++++++------------- .../msgpack/template/TestDateTemplate.java | 16 +++---- .../template/TestDoubleArrayTemplate.java | 16 +++---- .../msgpack/template/TestDoubleTemplate.java | 16 +++---- .../template/TestFloatArrayTemplate.java | 16 +++---- .../msgpack/template/TestFloatTemplate.java | 16 +++---- .../template/TestIntegerArrayTemplate.java | 16 +++---- .../msgpack/template/TestIntegerTemplate.java | 16 +++---- .../msgpack/template/TestListTemplate.java | 8 ++-- .../template/TestLongArrayTemplate.java | 16 +++---- .../msgpack/template/TestLongTemplate.java | 16 +++---- .../org/msgpack/template/TestMapTemplate.java | 8 ++-- .../template/TestShortArrayTemplate.java | 16 +++---- .../msgpack/template/TestShortTemplate.java | 16 +++---- .../msgpack/template/TestStringTemplate.java | 16 +++---- 27 files changed, 171 insertions(+), 191 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 7059438f6..1f13058bf 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -204,7 +204,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { BufferPacker packer = new BufferPacker(); packer.writeArrayBegin(v.size()); for (Object o : v) { @@ -234,7 +234,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { BufferPacker packer = new BufferPacker(); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index eea147282..b2515df2b 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -229,7 +229,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = new BufferPacker(msgpack); packer.writeArrayBegin(v.size()); @@ -261,7 +261,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = new BufferPacker(msgpack); packer.writeMapBegin(v.size()); diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index b69010ecb..e46d91cb5 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -194,7 +194,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = new BufferPacker(msgpack); packer.writeArrayBegin(v.size()); @@ -224,7 +224,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = new BufferPacker(msgpack); packer.writeMapBegin(v.size()); diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index c356ceda8..c4c3dbee8 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -363,7 +363,7 @@ public void testList() throws Exception { testList(list3, String.class); } - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { } public void testMap() throws Exception { @@ -390,7 +390,7 @@ public void testMap() throws Exception { testMap(map3, String.class, Integer.class); } - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { } public void testBigInteger() throws Exception { diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index 431e0111a..f3fb90326 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -216,7 +216,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); @@ -248,7 +248,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index e9125bd3f..59d3aa07a 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -241,7 +241,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); @@ -274,7 +274,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index 1c85d183c..f0d37125c 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -201,7 +201,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); @@ -232,7 +232,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(msgpack, out); diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index 102aa4624..ea2156aad 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -44,13 +44,13 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { - Template tmpl = BigDecimalTemplate.instance; + Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - BigDecimal ret = (BigDecimal) tmpl.read(unpacker, null); + BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -63,14 +63,14 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { - Template tmpl = BigDecimalTemplate.instance; + Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - BigDecimal ret = (BigDecimal) tmpl.read(unpacker, null); + BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -83,13 +83,13 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { - Template tmpl = BigDecimalTemplate.instance; + Template tmpl = BigDecimalTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - BigDecimal ret = (BigDecimal) tmpl.read(unpacker, null); + BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -102,12 +102,12 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { - Template tmpl = BigDecimalTemplate.instance; + Template tmpl = BigDecimalTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - BigDecimal ret = (BigDecimal) tmpl.read(unpacker, null); + BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 378c2f41b..52724eb76 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -44,13 +44,13 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - Template tmpl = BigIntegerTemplate.instance; + Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - BigInteger ret = (BigInteger) tmpl.read(unpacker, null); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -63,14 +63,14 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - Template tmpl = BigIntegerTemplate.instance; + Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - BigInteger ret = (BigInteger) tmpl.read(unpacker, null); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -83,13 +83,13 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - Template tmpl = BigIntegerTemplate.instance; + Template tmpl = BigIntegerTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - BigInteger ret = (BigInteger) tmpl.read(unpacker, null); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -102,12 +102,12 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - Template tmpl = BigIntegerTemplate.instance; + Template tmpl = BigIntegerTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - BigInteger ret = (BigInteger) tmpl.read(unpacker, null); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index ae49a1e19..47634f07c 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -89,7 +89,7 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { - Template tmpl = BooleanArrayTemplate.instance; + Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testBooleanArray(boolean[] v) throws Exception { default: throw new IllegalArgumentException(); } - boolean[] ret = (boolean[]) tmpl.read(unpacker, ret0); + boolean[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -131,7 +131,7 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { - Template tmpl = BooleanArrayTemplate.instance; + Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testBooleanArray(boolean[] v) throws Exception { default: throw new IllegalArgumentException(); } - boolean[] ret = (boolean[]) tmpl.read(unpacker, ret0); + boolean[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -174,7 +174,7 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { - Template tmpl = BooleanArrayTemplate.instance; + Template tmpl = BooleanArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testBooleanArray(boolean[] v) throws Exception { default: throw new IllegalArgumentException(); } - boolean[] ret = (boolean[]) tmpl.read(unpacker, ret0); + boolean[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -216,7 +216,7 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { - Template tmpl = BooleanArrayTemplate.instance; + Template tmpl = BooleanArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testBooleanArray(boolean[] v) throws Exception { default: throw new IllegalArgumentException(); } - boolean[] ret = (boolean[]) tmpl.read(unpacker, ret0); + boolean[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index c75776d94..012e7440f 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -43,13 +43,13 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - Template tmpl = BooleanTemplate.instance; + Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - boolean ret = (Boolean) tmpl.read(unpacker, null); + boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -62,14 +62,14 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - Template tmpl = BooleanTemplate.instance; + Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - boolean ret = (Boolean) tmpl.read(unpacker, null); + boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -82,13 +82,13 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - Template tmpl = BooleanTemplate.instance; + Template tmpl = BooleanTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - boolean ret = (Boolean) tmpl.read(unpacker, null); + boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -101,12 +101,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - Template tmpl = BooleanTemplate.instance; + Template tmpl = BooleanTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - boolean ret = (Boolean) tmpl.read(unpacker, null); + boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index 6378a03ef..d108148a3 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -43,13 +43,13 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - Template tmpl = ByteArrayTemplate.instance; + Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - byte[] ret = (byte[]) tmpl.read(unpacker, null); + byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -65,14 +65,14 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - Template tmpl = ByteArrayTemplate.instance; + Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - byte[] ret = (byte[]) tmpl.read(unpacker, null); + byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -88,13 +88,13 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - Template tmpl = ByteArrayTemplate.instance; + Template tmpl = ByteArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - byte[] ret = (byte[]) tmpl.read(unpacker, null); + byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -110,12 +110,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { - Template tmpl = ByteArrayTemplate.instance; + Template tmpl = ByteArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - byte[] ret = (byte[]) tmpl.read(unpacker, null); + byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 6d9750812..9f10af505 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -1,6 +1,6 @@ package org.msgpack.template; -import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -50,19 +50,14 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { - Template tmpl = ByteBufferTemplate.instance; + Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - ByteBuffer ret = (ByteBuffer) tmpl.read(unpacker, null); - byte[] v2 = toByteArray(v); - byte[] ret2 = toByteArray(ret); - assertEquals(v2.length, ret2.length); - for (int i = 0; i < v2.length; ++i) { - assertEquals(v2[i], ret2[i]); - } + ByteBuffer ret = tmpl.read(unpacker, null); + assertArrayEquals(toByteArray(v), toByteArray(ret)); } } @@ -74,20 +69,15 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { - Template tmpl = ByteBufferTemplate.instance; + Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - ByteBuffer ret = (ByteBuffer) tmpl.read(unpacker, null); - byte[] v2 = toByteArray(v); - byte[] ret2 = toByteArray(ret); - assertEquals(v2.length, ret2.length); - for (int i = 0; i < v2.length; ++i) { - assertEquals(v2[i], ret2[i]); - } + ByteBuffer ret = tmpl.read(unpacker, null); + assertArrayEquals(toByteArray(v), toByteArray(ret)); } } @@ -99,19 +89,14 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { - Template tmpl = ByteBufferTemplate.instance; + Template tmpl = ByteBufferTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - ByteBuffer ret = (ByteBuffer) tmpl.read(unpacker, null); - byte[] v2 = toByteArray(v); - byte[] ret2 = toByteArray(ret); - assertEquals(v2.length, ret2.length); - for (int i = 0; i < v2.length; ++i) { - assertEquals(v2[i], ret2[i]); - } + ByteBuffer ret = tmpl.read(unpacker, null); + assertArrayEquals(toByteArray(v), toByteArray(ret)); } } @@ -123,18 +108,13 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { - Template tmpl = ByteBufferTemplate.instance; + Template tmpl = ByteBufferTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - ByteBuffer ret = (ByteBuffer) tmpl.read(unpacker, null); - byte[] v2 = toByteArray(v); - byte[] ret2 = toByteArray(ret); - assertEquals(v2.length, ret2.length); - for (int i = 0; i < v2.length; ++i) { - assertEquals(v2[i], ret2[i]); - } + ByteBuffer ret = tmpl.read(unpacker, null); + assertArrayEquals(toByteArray(v), toByteArray(ret)); } } } diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index 9658d2997..5b6c0822a 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -44,13 +44,13 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { - Template tmpl = DateTemplate.instance; + Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - Date ret = (Date) tmpl.read(unpacker, null); + Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -63,14 +63,14 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { - Template tmpl = DateTemplate.instance; + Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - Date ret = (Date) tmpl.read(unpacker, null); + Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -83,13 +83,13 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { - Template tmpl = DateTemplate.instance; + Template tmpl = DateTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - Date ret = (Date) tmpl.read(unpacker, null); + Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -102,12 +102,12 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { - Template tmpl = DateTemplate.instance; + Template tmpl = DateTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - Date ret = (Date) tmpl.read(unpacker, null); + Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index 84341d1be..440052fde 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -89,7 +89,7 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { - Template tmpl = DoubleArrayTemplate.instance; + Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testDoubleArray(double[] v) throws Exception { default: throw new IllegalArgumentException(); } - double[] ret = (double[]) tmpl.read(unpacker, ret0); + double[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -131,7 +131,7 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { - Template tmpl = DoubleArrayTemplate.instance; + Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testDoubleArray(double[] v) throws Exception { default: throw new IllegalArgumentException(); } - double[] ret = (double[]) tmpl.read(unpacker, ret0); + double[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -174,7 +174,7 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { - Template tmpl = DoubleArrayTemplate.instance; + Template tmpl = DoubleArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testDoubleArray(double[] v) throws Exception { default: throw new IllegalArgumentException(); } - double[] ret = (double[]) tmpl.read(unpacker, ret0); + double[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -216,7 +216,7 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { - Template tmpl = DoubleArrayTemplate.instance; + Template tmpl = DoubleArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testDoubleArray(double[] v) throws Exception { default: throw new IllegalArgumentException(); } - double[] ret = (double[]) tmpl.read(unpacker, ret0); + double[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index 082cac609..29b8fe320 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -43,13 +43,13 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - Template tmpl = DoubleTemplate.instance; + Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - double ret = (Double) tmpl.read(unpacker, null); + double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -62,14 +62,14 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - Template tmpl = DoubleTemplate.instance; + Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - double ret = (Double) tmpl.read(unpacker, null); + double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -82,13 +82,13 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - Template tmpl = DoubleTemplate.instance; + Template tmpl = DoubleTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - double ret = (Double) tmpl.read(unpacker, null); + double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -101,12 +101,12 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { - Template tmpl = DoubleTemplate.instance; + Template tmpl = DoubleTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - double ret = (Double) tmpl.read(unpacker, null); + double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index 1d3f9b31b..2cf1be876 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -89,7 +89,7 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { - Template tmpl = FloatArrayTemplate.instance; + Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testFloatArray(float[] v) throws Exception { default: throw new IllegalArgumentException(); } - float[] ret = (float[]) tmpl.read(unpacker, ret0); + float[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -131,7 +131,7 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { - Template tmpl = FloatArrayTemplate.instance; + Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testFloatArray(float[] v) throws Exception { default: throw new IllegalArgumentException(); } - float[] ret = (float[]) tmpl.read(unpacker, ret0); + float[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -174,7 +174,7 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { - Template tmpl = FloatArrayTemplate.instance; + Template tmpl = FloatArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testFloatArray(float[] v) throws Exception { default: throw new IllegalArgumentException(); } - float[] ret = (float[]) tmpl.read(unpacker, ret0); + float[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); @@ -216,7 +216,7 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { - Template tmpl = FloatArrayTemplate.instance; + Template tmpl = FloatArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testFloatArray(float[] v) throws Exception { default: throw new IllegalArgumentException(); } - float[] ret = (float[]) tmpl.read(unpacker, ret0); + float[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i], 10e-10); diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index 3886e7ddd..e1615598f 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -43,13 +43,13 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - Template tmpl = FloatTemplate.instance; + Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - Float ret = (Float) tmpl.read(unpacker, null); + Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -62,14 +62,14 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - Template tmpl = FloatTemplate.instance; + Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - Float ret = (Float) tmpl.read(unpacker, null); + Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -82,13 +82,13 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - Template tmpl = FloatTemplate.instance; + Template tmpl = FloatTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - Float ret = (Float) tmpl.read(unpacker, null); + Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } @@ -101,12 +101,12 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { - Template tmpl = FloatTemplate.instance; + Template tmpl = FloatTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - Float ret = (Float) tmpl.read(unpacker, null); + Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 81c93ed38..91960dfc3 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -89,7 +89,7 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { - Template tmpl = IntegerArrayTemplate.instance; + Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testIntegerArray(int[] v) throws Exception { default: throw new IllegalArgumentException(); } - int[] ret = (int[]) tmpl.read(unpacker, ret0); + int[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -131,7 +131,7 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { - Template tmpl = IntegerArrayTemplate.instance; + Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testIntegerArray(int[] v) throws Exception { default: throw new IllegalArgumentException(); } - int[] ret = (int[]) tmpl.read(unpacker, ret0); + int[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -174,7 +174,7 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { - Template tmpl = IntegerArrayTemplate.instance; + Template tmpl = IntegerArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testIntegerArray(int[] v) throws Exception { default: throw new IllegalArgumentException(); } - int[] ret = (int[]) tmpl.read(unpacker, ret0); + int[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -216,7 +216,7 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { - Template tmpl = IntegerArrayTemplate.instance; + Template tmpl = IntegerArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testIntegerArray(int[] v) throws Exception { default: throw new IllegalArgumentException(); } - int[] ret = (int[]) tmpl.read(unpacker, ret0); + int[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index 2a0841c56..3641c47b5 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -43,13 +43,13 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - Template tmpl = IntegerTemplate.instance; + Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - int ret = (Integer) tmpl.read(unpacker, null); + int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -62,14 +62,14 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - Template tmpl = IntegerTemplate.instance; + Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - int ret = (Integer) tmpl.read(unpacker, null); + int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -82,13 +82,13 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - Template tmpl = IntegerTemplate.instance; + Template tmpl = IntegerTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - int ret = (Integer) tmpl.read(unpacker, null); + int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -101,12 +101,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { - Template tmpl = IntegerTemplate.instance; + Template tmpl = IntegerTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - int ret = (Integer) tmpl.read(unpacker, null); + int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index dac177c09..30b50053d 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -46,7 +46,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); @@ -67,7 +67,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); @@ -89,7 +89,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); @@ -110,7 +110,7 @@ public void testList() throws Exception { } @Override - public void testList(List v, Class elementClass) throws Exception { + public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index c5d6a2669..279465296 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -89,7 +89,7 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { - Template tmpl = LongArrayTemplate.instance; + Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testLongArray(long[] v) throws Exception { default: throw new IllegalArgumentException(); } - long[] ret = (long[]) tmpl.read(unpacker, ret0); + long[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -131,7 +131,7 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { - Template tmpl = LongArrayTemplate.instance; + Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testLongArray(long[] v) throws Exception { default: throw new IllegalArgumentException(); } - long[] ret = (long[]) tmpl.read(unpacker, ret0); + long[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -174,7 +174,7 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { - Template tmpl = LongArrayTemplate.instance; + Template tmpl = LongArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testLongArray(long[] v) throws Exception { default: throw new IllegalArgumentException(); } - long[] ret = (long[]) tmpl.read(unpacker, ret0); + long[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -216,7 +216,7 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { - Template tmpl = LongArrayTemplate.instance; + Template tmpl = LongArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testLongArray(long[] v) throws Exception { default: throw new IllegalArgumentException(); } - long[] ret = (long[]) tmpl.read(unpacker, ret0); + long[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index b9ec6e315..d8aa70f6c 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -43,13 +43,13 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - Template tmpl = LongTemplate.instance; + Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - long ret = (Long) tmpl.read(unpacker, null); + long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -62,14 +62,14 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - Template tmpl = LongTemplate.instance; + Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - long ret = (Long) tmpl.read(unpacker, null); + long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -82,13 +82,13 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - Template tmpl = LongTemplate.instance; + Template tmpl = LongTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - long ret = (Long) tmpl.read(unpacker, null); + long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -101,12 +101,12 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { - Template tmpl = LongTemplate.instance; + Template tmpl = LongTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - long ret = (Long) tmpl.read(unpacker, null); + long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index 16dd28e3b..b0b9449bc 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -47,7 +47,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); @@ -69,7 +69,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); @@ -92,7 +92,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); @@ -114,7 +114,7 @@ public void testMap() throws Exception { } @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index cdba74a8d..fa2a158bf 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -89,7 +89,7 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { - Template tmpl = ShortArrayTemplate.instance; + Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -109,7 +109,7 @@ public void testShortArray(short[] v) throws Exception { default: throw new IllegalArgumentException(); } - short[] ret = (short[]) tmpl.read(unpacker, ret0); + short[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -131,7 +131,7 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { - Template tmpl = ShortArrayTemplate.instance; + Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); @@ -152,7 +152,7 @@ public void testShortArray(short[] v) throws Exception { default: throw new IllegalArgumentException(); } - short[] ret = (short[]) tmpl.read(unpacker, ret0); + short[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -174,7 +174,7 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { - Template tmpl = ShortArrayTemplate.instance; + Template tmpl = ShortArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -194,7 +194,7 @@ public void testShortArray(short[] v) throws Exception { default: throw new IllegalArgumentException(); } - short[] ret = (short[]) tmpl.read(unpacker, ret0); + short[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); @@ -216,7 +216,7 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { - Template tmpl = ShortArrayTemplate.instance; + Template tmpl = ShortArrayTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -235,7 +235,7 @@ public void testShortArray(short[] v) throws Exception { default: throw new IllegalArgumentException(); } - short[] ret = (short[]) tmpl.read(unpacker, ret0); + short[] ret = tmpl.read(unpacker, ret0); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { assertEquals(v[i], ret[i]); diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index 0abbfcf5c..9306902b1 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -43,13 +43,13 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - Template tmpl = ShortTemplate.instance; + Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - short ret = (Short) tmpl.read(unpacker, null); + short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -62,14 +62,14 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - Template tmpl = ShortTemplate.instance; + Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - short ret = (Short) tmpl.read(unpacker, null); + short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -82,13 +82,13 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - Template tmpl = ShortTemplate.instance; + Template tmpl = ShortTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - short ret = (Short) tmpl.read(unpacker, null); + short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -101,12 +101,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { - Template tmpl = ShortTemplate.instance; + Template tmpl = ShortTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - short ret = (Short) tmpl.read(unpacker, null); + short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index 4f8d1883f..00b60156a 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -43,13 +43,13 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - Template tmpl = StringTemplate.instance; + Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -62,14 +62,14 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - Template tmpl = StringTemplate.instance; + Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - String ret = (String) tmpl.read(unpacker, null); + String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -82,13 +82,13 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - Template tmpl = StringTemplate.instance; + Template tmpl = StringTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); - String ret = (String) tmpl.read(unpacker, null); + String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -101,12 +101,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { - Template tmpl = StringTemplate.instance; + Template tmpl = StringTemplate.instance; BufferPacker packer = new BufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } From 99df5b2b9995a18460adb01d9fd5b9ecfcb01012 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 12 Jul 2011 20:55:57 +0900 Subject: [PATCH 021/409] changed sample classes for unit testing template builder --- .../msgpack/testclasses/AbstractClass.java | 4 + .../testclasses/EnumTypeFieldsClass.java | 15 ++ .../EnumTypeFieldsClassNotNullable.java | 15 ++ .../org/msgpack/testclasses/FinalClass.java | 4 + .../msgpack/testclasses/InheritanceClass.java | 22 +++ .../InheritanceClassNotNullable.java | 22 +++ .../org/msgpack/testclasses/Interface.java | 1 - .../testclasses/ListTypeFieldsClass.java | 156 ++++++++++++++++++ .../ListTypeFieldsClassNotNullable.java | 156 ++++++++++++++++++ .../testclasses/MapTypeFieldsClass.java | 75 +++++++++ .../MapTypeFieldsClassNotNullable.java | 75 +++++++++ .../MessagePackableTypeFieldsClass.java | 73 ++++++++ ...agePackableTypeFieldsClassNotNullable.java | 73 ++++++++ .../testclasses/ModifiersFieldsClass.java | 24 +++ .../ModifiersFieldsClassNotNullable.java | 24 +++ .../testclasses/PrimitiveTypeFieldsClass.java | 30 ++++ .../PrimitiveTypeFieldsClassNotNullable.java | 30 ++++ .../testclasses/ReferenceTypeFieldsClass.java | 104 ++++++++++++ .../ReferenceTypeFieldsClassNotNullable.java | 104 ++++++++++++ .../org/msgpack/testclasses/SuperClass.java | 20 +++ .../UserDefinedTypeFieldsClass.java | 67 ++++++++ ...UserDefinedTypeFieldsClassNotNullable.java | 67 ++++++++ 22 files changed, 1160 insertions(+), 1 deletion(-) diff --git a/src/test/java/org/msgpack/testclasses/AbstractClass.java b/src/test/java/org/msgpack/testclasses/AbstractClass.java index 412854378..2c34386c9 100644 --- a/src/test/java/org/msgpack/testclasses/AbstractClass.java +++ b/src/test/java/org/msgpack/testclasses/AbstractClass.java @@ -7,4 +7,8 @@ @Ignore @Message public abstract class AbstractClass { + @Override + public boolean equals(Object o) { + return o instanceof AbstractClass; + } } diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java index d72de1bc5..90a14f63a 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java @@ -12,6 +12,21 @@ public class EnumTypeFieldsClass { public EnumTypeFieldsClass() {} + @Override + public boolean equals(Object o) { + if (! (o instanceof EnumTypeFieldsClass)) { + return false; + } + EnumTypeFieldsClass that = (EnumTypeFieldsClass) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + return true; + } + @Ignore @OrdinalEnum public static enum SampleEnum { ONE, TWO, THREE; diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java index ae50112b9..95aef5b57 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java @@ -15,6 +15,21 @@ public class EnumTypeFieldsClassNotNullable { public EnumTypeFieldsClassNotNullable() {} + @Override + public boolean equals(Object o) { + if (! (o instanceof EnumTypeFieldsClassNotNullable)) { + return false; + } + EnumTypeFieldsClassNotNullable that = (EnumTypeFieldsClassNotNullable) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + return true; + } + @Ignore @OrdinalEnum public static enum SampleEnum { ONE, TWO, THREE; diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java index 8f3b2b17f..2427dd219 100644 --- a/src/test/java/org/msgpack/testclasses/FinalClass.java +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -7,4 +7,8 @@ @Ignore @Message public final class FinalClass { + @Override + public boolean equals(Object o) { + return o instanceof FinalClass; + } } diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java index 949374c03..bad85e9b7 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClass.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -10,4 +10,26 @@ public class InheritanceClass extends SuperClass { public int f3; public InheritanceClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof InheritanceClass)) { + return false; + } + InheritanceClass that = (InheritanceClass) o; + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (! f2.equals(that.f2)) { + return false; + } + // f3 + if (f3 != that.f3) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java index 8aa55e198..00f88205d 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -13,4 +13,26 @@ public class InheritanceClassNotNullable extends SuperClass { public int f3; public InheritanceClassNotNullable() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof InheritanceClassNotNullable)) { + return false; + } + InheritanceClassNotNullable that = (InheritanceClassNotNullable) o; + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (! f2.equals(that.f2)) { + return false; + } + // f3 + if (f3 != that.f3) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/Interface.java b/src/test/java/org/msgpack/testclasses/Interface.java index 9ada6dac2..9d0e2bf61 100644 --- a/src/test/java/org/msgpack/testclasses/Interface.java +++ b/src/test/java/org/msgpack/testclasses/Interface.java @@ -6,5 +6,4 @@ @Ignore @Message public interface Interface { - } diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index c95499dbb..ca25f411b 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -1,10 +1,12 @@ package org.msgpack.testclasses; import java.nio.ByteBuffer; +import java.util.Iterator; import java.util.List; import org.junit.Ignore; import org.msgpack.annotation.Message; +import org.msgpack.template.builder.TestSet; @Ignore @Message @@ -19,11 +21,165 @@ public class ListTypeFieldsClass { public ListTypeFieldsClass() { } + @Override + public boolean equals(Object o) { + if (! (o instanceof ListTypeFieldsClass)) { + return false; + } + ListTypeFieldsClass that = (ListTypeFieldsClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (f0.size() != that.f0.size()) { + return false; + } + Iterator this_f0_iter = f0.iterator(); + Iterator that_f0_iter = that.f0.iterator(); + for (; this_f0_iter.hasNext(); ) { + if (! this_f0_iter.next().equals(that_f0_iter.next())) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (f1.size() != that.f1.size()) { + return false; + } + Iterator this_f1_iter = f1.iterator(); + Iterator that_f1_iter = that.f1.iterator(); + for (; this_f1_iter.hasNext(); ) { + if (! this_f1_iter.next().equals(that_f1_iter.next())) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (f2.size() != that.f2.size()) { + return false; + } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } + // f3 + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (f3.size() != that.f3.size()) { + return false; + } + Iterator> this_f3_iter = f3.iterator(); + Iterator> that_f3_iter = that.f3.iterator(); + for (; this_f3_iter.hasNext(); ) { + List l0 = this_f3_iter.next(); + List l1 = that_f3_iter.next(); + if (l0.size() != l1.size()) { + return false; + } + Iterator l0_iter = l0.iterator(); + Iterator l1_iter = l1.iterator(); + for (; l0_iter.hasNext(); ) { + if (! l0_iter.next().equals(l1_iter.next())) { + return false; + } + } + } + // f4 + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (f4.size() != that.f4.size()) { + return false; + } + Iterator this_f4_iter = f4.iterator(); + Iterator that_f4_iter = that.f4.iterator(); + for (; this_f4_iter.hasNext(); ) { + if (! this_f4_iter.next().equals(that_f4_iter.next())) { + return false; + } + } + // f5 + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (f5.size() != that.f5.size()) { + return false; + } + Iterator this_f5_iter = f5.iterator(); + Iterator that_f5_iter = that.f5.iterator(); + for (; this_f5_iter.hasNext(); ) { + byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); + byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); + if (b0.length != b1.length) { + return false; + } + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } + } + return true; + } + @Ignore @Message public static class NestedClass { public byte[] f0; public String f1; public NestedClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + + NestedClass that = (NestedClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (f0.length != that.f0.length) { + return false; + } + for (int i = 0; i < f0.length; ++i) { + if (f0[i] != that.f0[i]) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java index 4140a02e8..9882a641b 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -1,11 +1,13 @@ package org.msgpack.testclasses; import java.nio.ByteBuffer; +import java.util.Iterator; import java.util.List; import org.junit.Ignore; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; +import org.msgpack.template.builder.TestSet; @Ignore @Message @@ -26,6 +28,127 @@ public class ListTypeFieldsClassNotNullable { public ListTypeFieldsClassNotNullable() { } + @Override + public boolean equals(Object o) { + if (! (o instanceof ListTypeFieldsClassNotNullable)) { + return false; + } + ListTypeFieldsClassNotNullable that = (ListTypeFieldsClassNotNullable) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (f0.size() != that.f0.size()) { + return false; + } + Iterator this_f0_iter = f0.iterator(); + Iterator that_f0_iter = that.f0.iterator(); + for (; this_f0_iter.hasNext(); ) { + if (! this_f0_iter.next().equals(that_f0_iter.next())) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (f1.size() != that.f1.size()) { + return false; + } + Iterator this_f1_iter = f1.iterator(); + Iterator that_f1_iter = that.f1.iterator(); + for (; this_f1_iter.hasNext(); ) { + if (! this_f1_iter.next().equals(that_f1_iter.next())) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (f2.size() != that.f2.size()) { + return false; + } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } + // f3 + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (f3.size() != that.f3.size()) { + return false; + } + Iterator> this_f3_iter = f3.iterator(); + Iterator> that_f3_iter = that.f3.iterator(); + for (; this_f3_iter.hasNext(); ) { + List l0 = this_f3_iter.next(); + List l1 = that_f3_iter.next(); + if (l0.size() != l1.size()) { + return false; + } + Iterator l0_iter = l0.iterator(); + Iterator l1_iter = l1.iterator(); + for (; l0_iter.hasNext(); ) { + if (! l0_iter.next().equals(l1_iter.next())) { + return false; + } + } + } + // f4 + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (f4.size() != that.f4.size()) { + return false; + } + Iterator this_f4_iter = f4.iterator(); + Iterator that_f4_iter = that.f4.iterator(); + for (; this_f4_iter.hasNext(); ) { + if (! this_f4_iter.next().equals(that_f4_iter.next())) { + return false; + } + } + // f5 + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (f5.size() != that.f5.size()) { + return false; + } + Iterator this_f5_iter = f5.iterator(); + Iterator that_f5_iter = that.f5.iterator(); + for (; this_f5_iter.hasNext(); ) { + byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); + byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); + if (b0.length != b1.length) { + return false; + } + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } + } + return true; + } + @Ignore @Message public static class NestedClass { @NotNullable @@ -34,5 +157,38 @@ public static class NestedClass { public String f1; public NestedClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + + NestedClass that = (NestedClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (f0.length != that.f0.length) { + return false; + } + for (int i = 0; i < f0.length; ++i) { + if (f0[i] != that.f0[i]) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java index 005b8073c..f6d5b4752 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -16,10 +16,85 @@ public class MapTypeFieldsClass { public MapTypeFieldsClass() { } + @Override + public boolean equals(Object o) { + if (! (o instanceof MapTypeFieldsClass)) { + return false; + } + MapTypeFieldsClass that = (MapTypeFieldsClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + for (Map.Entry e : f0.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f0.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + for (Map.Entry e : f1.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f1.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + for (Map.Entry e : f2.entrySet()) { + String key = e.getKey(); + Integer val = that.f2.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f3 + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + for (Map.Entry e : f3.entrySet()) { + String key = e.getKey(); + NestedClass val = that.f3.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + return true; + } + @Ignore @Message public static class NestedClass { public String f0; public NestedClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + // f0 + if (f0 == null) { + if (this.f0 != null) { + return false; + } + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java index cb241f022..be47ad35f 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -21,11 +21,86 @@ public class MapTypeFieldsClassNotNullable { public MapTypeFieldsClassNotNullable() { } + @Override + public boolean equals(Object o) { + if (! (o instanceof MapTypeFieldsClassNotNullable)) { + return false; + } + MapTypeFieldsClassNotNullable that = (MapTypeFieldsClassNotNullable) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + for (Map.Entry e : f0.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f0.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + for (Map.Entry e : f1.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f1.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + for (Map.Entry e : f2.entrySet()) { + String key = e.getKey(); + Integer val = that.f2.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + // f3 + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + for (Map.Entry e : f3.entrySet()) { + String key = e.getKey(); + NestedClass val = that.f3.get(key); + if (! e.getValue().equals(val)) { + return false; + } + } + return true; + } + @Ignore @Message public static class NestedClass { @NotNullable public String f0; public NestedClass() {} + + @Override + public boolean equals(Object o) { + if (!(o instanceof NestedClass)) { + return false; + } + // f0 + if (f0 == null) { + if (this.f0 != null) { + return false; + } + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index 70e3cbcec..4d4d17d1e 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -2,6 +2,7 @@ import java.io.IOException; import java.util.ArrayList; +import java.util.Iterator; import java.util.List; import org.junit.Ignore; @@ -18,6 +19,33 @@ public class MessagePackableTypeFieldsClass { public MessagePackableTypeFieldsClass() {} + @Override + public boolean equals(Object o) { + if (! (o instanceof MessagePackableTypeFieldsClass)) { + return false; + } + MessagePackableTypeFieldsClass that = new MessagePackableTypeFieldsClass(); + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } + @Ignore public static class NestedClass implements MessagePackable { public String f0; @@ -59,5 +87,50 @@ public void readFrom(Unpacker uunpacker) throws IOException { uunpacker.readArrayEnd(); uunpacker.readArrayEnd(); } + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + NestedClass that = (NestedClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (f1.length != that.f1.length) { + return false; + } + for (int i = 0; i < f1.length; ++i) { + if (f1[i] != that.f1[i]) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index 6118c448f..723eb174b 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -2,6 +2,7 @@ import java.io.IOException; import java.util.ArrayList; +import java.util.Iterator; import java.util.List; import org.junit.Ignore; @@ -19,6 +20,33 @@ public class MessagePackableTypeFieldsClassNotNullable { @NotNullable public NestedClass f1; + @Override + public boolean equals(Object o) { + if (! (o instanceof MessagePackableTypeFieldsClass)) { + return false; + } + MessagePackableTypeFieldsClass that = new MessagePackableTypeFieldsClass(); + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } + public MessagePackableTypeFieldsClassNotNullable() {} @Ignore @@ -62,5 +90,50 @@ public void readFrom(Unpacker uunpacker) throws IOException { uunpacker.readArrayEnd(); uunpacker.readArrayEnd(); } + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + NestedClass that = (NestedClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (f1.length != that.f1.length) { + return false; + } + for (int i = 0; i < f1.length; ++i) { + if (f1[i] != that.f1[i]) { + return false; + } + } + // f2 + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index c98e4eca6..bb58e91bf 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -13,4 +13,28 @@ public class ModifiersFieldsClass { int f4; public ModifiersFieldsClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof ModifiersFieldsClass)) { + return false; + } + ModifiersFieldsClass that = (ModifiersFieldsClass) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + if (f2 != that.f2) { + return false; + } + if (f3 != that.f3) { + return false; + } + if (f4 != that.f4) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index d9d5d4d32..27f7082ef 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -19,4 +19,28 @@ public class ModifiersFieldsClassNotNullable { int f4; public ModifiersFieldsClassNotNullable() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof ModifiersFieldsClassNotNullable)) { + return false; + } + ModifiersFieldsClassNotNullable that = (ModifiersFieldsClassNotNullable) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + if (f2 != that.f2) { + return false; + } + if (f3 != that.f3) { + return false; + } + if (f4 != that.f4) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java index cde1602c5..ecbb285d0 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java @@ -15,4 +15,34 @@ public class PrimitiveTypeFieldsClass { public boolean f6; public PrimitiveTypeFieldsClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof PrimitiveTypeFieldsClass)) { + return false; + } + PrimitiveTypeFieldsClass that = (PrimitiveTypeFieldsClass) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + if (f2 != that.f2) { + return false; + } + if (f3 != that.f3) { + return false; + } + if (f4 != that.f4) { + return false; + } + if (f5 != that.f5) { + return false; + } + if (f6 != that.f6) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java index 3546dc8d6..3bdbe0599 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java @@ -23,4 +23,34 @@ public class PrimitiveTypeFieldsClassNotNullable { public boolean f6; public PrimitiveTypeFieldsClassNotNullable() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof PrimitiveTypeFieldsClassNotNullable)) { + return false; + } + PrimitiveTypeFieldsClassNotNullable that = (PrimitiveTypeFieldsClassNotNullable) o; + if (f0 != that.f0) { + return false; + } + if (f1 != that.f1) { + return false; + } + if (f2 != that.f2) { + return false; + } + if (f3 != that.f3) { + return false; + } + if (f4 != that.f4) { + return false; + } + if (f5 != that.f5) { + return false; + } + if (f6 != that.f6) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java index 6b1173e36..73966a3ba 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java @@ -5,6 +5,7 @@ import org.junit.Ignore; import org.msgpack.annotation.Message; +import org.msgpack.template.builder.TestSet; @Ignore @Message @@ -22,4 +23,107 @@ public class ReferenceTypeFieldsClass { public ByteBuffer f10; public ReferenceTypeFieldsClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof ReferenceTypeFieldsClass)) { + return false; + } + ReferenceTypeFieldsClass that = (ReferenceTypeFieldsClass) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (! f2.equals(that.f2)) { + return false; + } + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (! f3.equals(that.f3)) { + return false; + } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (! f4.equals(that.f4)) { + return false; + } + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (! f5.equals(that.f5)) { + return false; + } + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (! f6.equals(that.f6)) { + return false; + } + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (! f7.equals(that.f7)) { + return false; + } + if (f8 == null) { + if (that.f8 != null) { + return false; + } + } + if (! f8.equals(that.f8)) { + return false; + } + if (f9 == null) { + if (that.f9 != null) { + return false; + } + } + for (int i = 0; i < f9.length; ++i) { + if (f9[i] != that.f9[i]) { + return false; + } + } + if (f10 == null) { + if (that.f10 != null) { + return false; + } + } + byte[] b0 = TestSet.toByteArray(f10); + byte[] b1 = TestSet.toByteArray(that.f10); + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java index bd5ed9dfa..b4f442d47 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java @@ -6,6 +6,7 @@ import org.junit.Ignore; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; +import org.msgpack.template.builder.TestSet; @Ignore @Message @@ -34,4 +35,107 @@ public class ReferenceTypeFieldsClassNotNullable { public ByteBuffer f10; public ReferenceTypeFieldsClassNotNullable() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof ReferenceTypeFieldsClassNotNullable)) { + return false; + } + ReferenceTypeFieldsClassNotNullable that = (ReferenceTypeFieldsClassNotNullable) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (! f2.equals(that.f2)) { + return false; + } + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (! f3.equals(that.f3)) { + return false; + } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (! f4.equals(that.f4)) { + return false; + } + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (! f5.equals(that.f5)) { + return false; + } + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (! f6.equals(that.f6)) { + return false; + } + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (! f7.equals(that.f7)) { + return false; + } + if (f8 == null) { + if (that.f8 != null) { + return false; + } + } + if (! f8.equals(that.f8)) { + return false; + } + if (f9 == null) { + if (that.f9 != null) { + return false; + } + } + for (int i = 0; i < f9.length; ++i) { + if (f9[i] != that.f9[i]) { + return false; + } + } + if (f10 == null) { + if (that.f10 != null) { + return false; + } + } + byte[] b0 = TestSet.toByteArray(f10); + byte[] b1 = TestSet.toByteArray(that.f10); + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java index 124a4997c..929a6b677 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClass.java +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -10,4 +10,24 @@ public class SuperClass { protected int f1; public SuperClass() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof SuperClass)) { + return false; + } + SuperClass that = (SuperClass) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + if (f1 != that.f1) { + return false; + } + return true; + } } diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java index 8e53d25e8..2ff90f2fc 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java @@ -11,12 +11,59 @@ public class UserDefinedTypeFieldsClass { public UserDefinedTypeFieldsClass () {} + @Override + public boolean equals(Object o) { + if (! (o instanceof UserDefinedTypeFieldsClass)) { + return false; + } + UserDefinedTypeFieldsClass that = (UserDefinedTypeFieldsClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } + @Ignore @Message public static class NestedClass1 { public int f0; public String f1; public NestedClass1() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass1)) { + return false; + } + NestedClass1 that = (NestedClass1) o; + if (f0 != that.f0) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } @Ignore @Message @@ -25,5 +72,25 @@ public static class NestedClass2 { public String f1; public NestedClass2() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass2)) { + return false; + } + NestedClass2 that = (NestedClass2) o; + if (f0 != that.f0) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } } diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java index 11021560d..8737fc500 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -14,6 +14,33 @@ public class UserDefinedTypeFieldsClassNotNullable { public UserDefinedTypeFieldsClassNotNullable () {} + @Override + public boolean equals(Object o) { + if (! (o instanceof UserDefinedTypeFieldsClass)) { + return false; + } + UserDefinedTypeFieldsClass that = (UserDefinedTypeFieldsClass) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } + @Ignore @Message public static class NestedClass1 { @NotNullable @@ -22,6 +49,26 @@ public static class NestedClass1 { public String f1; public NestedClass1() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass1)) { + return false; + } + NestedClass1 that = (NestedClass1) o; + if (f0 != that.f0) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } @Ignore @Message @@ -32,5 +79,25 @@ public static class NestedClass2 { public String f1; public NestedClass2() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass2)) { + return false; + } + NestedClass2 that = (NestedClass2) o; + if (f0 != that.f0) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; + } } } From e4e7cc332ecc1080d3bb33a52a01a0db6e4b37dc Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 12 Jul 2011 20:58:15 +0900 Subject: [PATCH 022/409] trivial modifications --- src/main/java/org/msgpack/template/ListTemplate.java | 12 ++++++------ .../template/builder/AbstractTemplateBuilder.java | 7 ++++--- .../template/builder/ReflectionTemplateBuilder.java | 2 +- .../msgpack/template/builder/TemplateBuilder.java | 4 ++-- 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index 4b7c6b0d2..7c0d4ab92 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -33,14 +33,14 @@ public ListTemplate(Template elementTemplate) { } public void write(Packer pk, List target) throws IOException { - if(!(target instanceof List)) { - if(target == null) { + if (! (target instanceof List)) { + if (target == null) { throw new MessageTypeException("Attempted to write null"); } - throw new MessageTypeException("Target is not a List but "+target.getClass()); + throw new MessageTypeException("Target is not a List but " + target.getClass()); } pk.writeArrayBegin(target.size()); - for(E e : target) { + for (E e : target) { elementTemplate.write(pk, e); } pk.writeArrayEnd(); @@ -48,12 +48,12 @@ public void write(Packer pk, List target) throws IOException { public List read(Unpacker u, List to) throws IOException { int n = u.readArrayBegin(); - if(to == null) { + if (to == null) { to = new ArrayList(n); } else { to.clear(); } - for(int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { E e = elementTemplate.read(u, null); to.add(e); } diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 4b8df30cf..97ec2a74b 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -32,8 +32,9 @@ public FieldEntryReader getFieldEntryReader() { } @Override - public Template buildTemplate(Type type) throws TemplateBuildException { - Class c = (Class) type; + public Template buildTemplate(Type type) throws TemplateBuildException { + Class c = (Class) type; + checkValidation(c); FieldEntryReader reader = getFieldEntryReader(); FieldOption implicitOption = reader.readImplicitFieldOption(c); FieldEntry[] entries = reader.readFieldEntries(c, implicitOption); @@ -69,7 +70,7 @@ public void writeTemplate(Type type, String directoryName) { } @Override - public Template loadTemplate(Type type) { + public Template loadTemplate(Type type) { return null; } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 3a2461f02..5b12c57c7 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -341,7 +341,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { } else if (t.equals(double.class)) { res[i] = new DoubleFieldEntry(e); } else { - Template tmpl = registry.lookup((Class) e.getGenericType(), true); + Template tmpl = registry.lookup(e.getGenericType(), true); res[i] = new ObjectFieldEntry(e, tmpl); } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index a9c41620b..33668f841 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -23,10 +23,10 @@ public interface TemplateBuilder { - Template buildTemplate(Type type) throws TemplateBuildException; + Template buildTemplate(Type type) throws TemplateBuildException; void writeTemplate(Type type, String directoryName); - Template loadTemplate(Type type); + Template loadTemplate(Type type); } From cb10152063bad138cb1284513bb0a9592ce14c1f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 12 Jul 2011 21:00:39 +0900 Subject: [PATCH 023/409] added several generic templates --- .../org/msgpack/template/AnyTemplate.java | 56 +++++++++++++++++++ .../msgpack/template/GenericTemplate1.java | 54 ++++++++++++++++++ .../msgpack/template/GenericTemplate2.java | 55 ++++++++++++++++++ .../msgpack/template/TemplateRegistry.java | 14 ++++- 4 files changed, 177 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/msgpack/template/AnyTemplate.java create mode 100644 src/main/java/org/msgpack/template/GenericTemplate1.java create mode 100644 src/main/java/org/msgpack/template/GenericTemplate2.java diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java new file mode 100644 index 000000000..db5be03a5 --- /dev/null +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -0,0 +1,56 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; +import org.msgpack.*; +import org.msgpack.packer.Packer; +import org.msgpack.type.Value; +import org.msgpack.unpacker.Unpacker; + + +public class AnyTemplate implements Template { + private static AnyTemplate INSTANCE = null; + + public static AnyTemplate getInstance(TemplateRegistry registry) { + if (INSTANCE == null) { + INSTANCE = new AnyTemplate(registry); + } + return INSTANCE; + } + + private TemplateRegistry registry; + + private AnyTemplate(TemplateRegistry registry) { + + } + + public void write(Packer pk, T target) throws IOException { + if(target instanceof Value) { + pk.write((Value) target); + } else if(target == null) { + pk.writeNil(); + } else { + registry.lookup(target.getClass()).write(pk, target); + } + } + + public T read(Unpacker u, T to) throws IOException, MessageTypeException { + return u.read(to); + } +} diff --git a/src/main/java/org/msgpack/template/GenericTemplate1.java b/src/main/java/org/msgpack/template/GenericTemplate1.java new file mode 100644 index 000000000..77f32c2a7 --- /dev/null +++ b/src/main/java/org/msgpack/template/GenericTemplate1.java @@ -0,0 +1,54 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + + +public class GenericTemplate1 implements GenericTemplate { + Constructor constructor; + + public GenericTemplate1(TemplateRegistry registry, Class tmpl) { + try { + constructor = tmpl.getConstructor(new Class[]{ Template.class }); + constructor.newInstance(new Object[]{ AnyTemplate.getInstance(registry) }); + } catch (NoSuchMethodException e) { + throw new IllegalArgumentException(e); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } + } + + public Template build(Template[] params) { + try { + return constructor.newInstance(params); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } + } +} + diff --git a/src/main/java/org/msgpack/template/GenericTemplate2.java b/src/main/java/org/msgpack/template/GenericTemplate2.java new file mode 100644 index 000000000..36b2f231b --- /dev/null +++ b/src/main/java/org/msgpack/template/GenericTemplate2.java @@ -0,0 +1,55 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + + +public class GenericTemplate2 implements GenericTemplate { + Constructor constructor; + + public GenericTemplate2(TemplateRegistry registry, Class tmpl) { + try { + constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); + constructor.newInstance(new Object[] { + AnyTemplate.getInstance(registry), AnyTemplate.getInstance(registry)}); + } catch (NoSuchMethodException e) { + throw new IllegalArgumentException(e); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } + } + + public Template build(Template[] params) { + try { + return constructor.newInstance(params); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } + } +} + diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7ff6c71fe..81ba034ce 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -17,6 +17,8 @@ // package org.msgpack.template; +import java.util.Collection; +import java.util.List; import java.util.Map; import java.util.HashMap; import java.lang.reflect.ParameterizedType; @@ -56,7 +58,7 @@ public class TemplateRegistry { private TemplateRegistry parent = null; - private Map cache; + private Map> cache; // TODO #MN current version is reflection-based template builder only, builder -> selector private TemplateBuilder builder; @@ -69,7 +71,7 @@ public TemplateRegistry() { public TemplateRegistry(TemplateRegistry registry) { parent = registry; - cache = new HashMap(); + cache = new HashMap>(); genericCache = new HashMap(); // TODO #MN builder -> selector if (parent == null) { @@ -107,6 +109,14 @@ private void registerDefaultTemplates() { register(byte[].class, ByteArrayTemplate.getInstance()); register(ByteBuffer.class, ByteBufferTemplate.getInstance()); register(Value.class, ValueTemplate.getInstance()); + //register(Value.class, AnyTemplate.getInstance(this)); + register(List.class, new ListTemplate(AnyTemplate.getInstance(this))); + register(Collection.class, new CollectionTemplate(AnyTemplate.getInstance(this))); + register(Map.class, new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); + + registerGeneric(List.class, new GenericTemplate1(this, ListTemplate.class)); + registerGeneric(Collection.class, new GenericTemplate1(this, CollectionTemplate.class)); + registerGeneric(Map.class, new GenericTemplate2(this, MapTemplate.class)); } public void register(Class targetClass) { From 1a2fa71ae58a7066734b126cf929865ff89dcd09 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 12 Jul 2011 22:39:48 +0900 Subject: [PATCH 024/409] added MessagePackableTemplate.java --- .../template/MessagePackableTemplate.java | 55 +++++++++++++++++++ .../msgpack/template/TemplateRegistry.java | 19 +++++-- 2 files changed, 68 insertions(+), 6 deletions(-) create mode 100644 src/main/java/org/msgpack/template/MessagePackableTemplate.java diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java new file mode 100644 index 000000000..dc6abe5ff --- /dev/null +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -0,0 +1,55 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.MessagePackable; +import org.msgpack.MessageTypeException; + + +public class MessagePackableTemplate implements Template { + private Class targetClass; + + MessagePackableTemplate(Class targetClass) { + this.targetClass = targetClass; + } + + public void write(Packer pk, MessagePackable target) throws IOException { + if(target == null) { + throw new MessageTypeException("Attempted to write null"); + } + target.writeTo(pk); + } + + public MessagePackable read(Unpacker u, MessagePackable to) throws IOException { + if (to == null) { + try { + to = (MessagePackable) targetClass.newInstance(); + } catch (InstantiationException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + } + ((MessagePackable) to).readFrom(u); + return to; + } +} + diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 81ba034ce..9d0a8f3b7 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -27,6 +27,7 @@ import java.nio.ByteBuffer; import org.msgpack.MessagePack; +import org.msgpack.MessagePackable; import org.msgpack.MessageTypeException; import org.msgpack.template.BigIntegerTemplate; import org.msgpack.template.BooleanTemplate; @@ -210,26 +211,32 @@ private synchronized Template lookupImpl(Type targetType, } catch (NullPointerException e) { // ignore } + Class targetClass = (Class) targetType; + + if (MessagePackable.class.isAssignableFrom(targetClass)) { + tmpl = new MessagePackableTemplate(targetClass); + register(targetClass, tmpl); + return tmpl; + } + // TODO #MN builder -> selector // find match TemplateBuilder if (builder != null) { if (forceLoad) { - tmpl = builder.loadTemplate(targetType); + tmpl = builder.loadTemplate(targetClass); if (tmpl != null) { - register(targetType, tmpl); + register(targetClass, tmpl); return tmpl; } } - tmpl = builder.buildTemplate(targetType); + tmpl = builder.buildTemplate(targetClass); if (tmpl != null) { - register(targetType, tmpl); + register(targetClass, tmpl); return tmpl; } } - Class targetClass = (Class) targetType; - // lookup template of interface type Class[] infTypes = targetClass.getInterfaces(); for (Class infType : infTypes) { From 77a1cb711c3b70c55c3015994867fed15d021021 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 12 Jul 2011 22:41:09 +0900 Subject: [PATCH 025/409] fixed bug in some test programs --- .../MessagePackableTypeFieldsClass.java | 14 +++++++++++++- .../MessagePackableTypeFieldsClassNotNullable.java | 4 ++-- .../UserDefinedTypeFieldsClassNotNullable.java | 4 ++-- 3 files changed, 17 insertions(+), 5 deletions(-) diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index 4d4d17d1e..bc91a4e7a 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -24,7 +24,7 @@ public boolean equals(Object o) { if (! (o instanceof MessagePackableTypeFieldsClass)) { return false; } - MessagePackableTypeFieldsClass that = new MessagePackableTypeFieldsClass(); + MessagePackableTypeFieldsClass that = (MessagePackableTypeFieldsClass) o; // f0 if (f0 == null) { if (that.f0 != null) { @@ -56,35 +56,47 @@ public NestedClass() { } public void writeTo(Packer packer) throws IOException { packer.writeArrayBegin(3); + { packer.writeString(f0); packer.writeArrayBegin(f1.length); + { for(int e : f1) { packer.writeInt(e); } + } packer.writeArrayEnd(); packer.writeArrayBegin(f2.size()); + { for(String e : f2) { packer.writeString(e); } + } packer.writeArrayEnd(); + } packer.writeArrayEnd(); } public void readFrom(Unpacker uunpacker) throws IOException { uunpacker.readArrayBegin(); + { f0 = uunpacker.readString(); int nf1 = uunpacker.readArrayBegin(); + { f1 = new int[nf1]; for(int i=0; i < nf1; i++) { f1[i] = uunpacker.readInt(); } + } uunpacker.readArrayEnd(); int nf2 = uunpacker.readArrayBegin(); + { f2 = new ArrayList(nf2); for(int i=0; i < nf2; i++) { f2.add(uunpacker.readString()); } + } uunpacker.readArrayEnd(); + } uunpacker.readArrayEnd(); } diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index 723eb174b..f80762e0c 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -22,10 +22,10 @@ public class MessagePackableTypeFieldsClassNotNullable { @Override public boolean equals(Object o) { - if (! (o instanceof MessagePackableTypeFieldsClass)) { + if (! (o instanceof MessagePackableTypeFieldsClassNotNullable)) { return false; } - MessagePackableTypeFieldsClass that = new MessagePackableTypeFieldsClass(); + MessagePackableTypeFieldsClassNotNullable that = (MessagePackableTypeFieldsClassNotNullable) o; // f0 if (f0 == null) { if (that.f0 != null) { diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java index 8737fc500..df62c5d8e 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -16,10 +16,10 @@ public UserDefinedTypeFieldsClassNotNullable () {} @Override public boolean equals(Object o) { - if (! (o instanceof UserDefinedTypeFieldsClass)) { + if (! (o instanceof UserDefinedTypeFieldsClassNotNullable)) { return false; } - UserDefinedTypeFieldsClass that = (UserDefinedTypeFieldsClass) o; + UserDefinedTypeFieldsClassNotNullable that = (UserDefinedTypeFieldsClassNotNullable) o; // f0 if (f0 == null) { if (that.f0 != null) { From eaf52344db2c7b8faad9202ac725eaf40672e561 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 00:02:45 +0900 Subject: [PATCH 026/409] updated version of Javassist to 3.15.0-GA --- pom.xml | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/pom.xml b/pom.xml index 3bd1cb447..a6558370d 100644 --- a/pom.xml +++ b/pom.xml @@ -40,9 +40,9 @@ 1.4.3 - javassist + org.javassist javassist - 3.12.1.GA + 3.15.0-GA compile @@ -132,13 +132,6 @@ MessagePack Maven2 Repository http://msgpack.org/maven2 - - repository.jboss.org - https://repository.jboss.org/nexus/content/groups/public/ - - false - - From 6857111a08904df4e6170815414d723a074a006a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 00:26:00 +0900 Subject: [PATCH 027/409] fixed bugs in test programs for template builder --- .../msgpack/testclasses/InheritanceClass.java | 23 ++++++++++++------- .../InheritanceClassNotNullable.java | 18 +++++++-------- .../org/msgpack/testclasses/SuperClass.java | 4 ---- .../testclasses/SuperClassNotNullable.java | 19 +++++++++++++-- 4 files changed, 41 insertions(+), 23 deletions(-) diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java index bad85e9b7..9ce45cc57 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClass.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -6,8 +6,8 @@ @Ignore @Message public class InheritanceClass extends SuperClass { - public String f2; - public int f3; + public String f1; + public int f2; public InheritanceClass() {} @@ -17,17 +17,24 @@ public boolean equals(Object o) { return false; } InheritanceClass that = (InheritanceClass) o; - // f2 - if (f2 == null) { - if (that.f2 != null) { + // f0 + if (f0 == null) { + if (that.f0 != null) { return false; } } - if (! f2.equals(that.f2)) { + if (! f0.equals(that.f0)) { + return false; + } + // f1 + if (f2 != that.f2) { return false; } - // f3 - if (f3 != that.f3) { + if (! f1.equals(that.f1)) { + return false; + } + // f2 + if (f2 != that.f2) { return false; } return true; diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java index 00f88205d..e1d9d0741 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -6,11 +6,11 @@ @Ignore @Message -public class InheritanceClassNotNullable extends SuperClass { +public class InheritanceClassNotNullable extends SuperClassNotNullable { @NotNullable - public String f2; + public String f1; @NotNullable - public int f3; + public int f2; public InheritanceClassNotNullable() {} @@ -20,17 +20,17 @@ public boolean equals(Object o) { return false; } InheritanceClassNotNullable that = (InheritanceClassNotNullable) o; - // f2 - if (f2 == null) { - if (that.f2 != null) { + // f1 + if (f1 == null) { + if (that.f1 != null) { return false; } } - if (! f2.equals(that.f2)) { + if (! f1.equals(that.f1)) { return false; } - // f3 - if (f3 != that.f3) { + // f2 + if (f2 != that.f2) { return false; } return true; diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java index 929a6b677..4e0cce537 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClass.java +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -7,7 +7,6 @@ @Ignore @Message public class SuperClass { public String f0; - protected int f1; public SuperClass() {} @@ -25,9 +24,6 @@ public boolean equals(Object o) { if (! f0.equals(that.f0)) { return false; } - if (f1 != that.f1) { - return false; - } return true; } } diff --git a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java index 21e664480..bbf761fb8 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java @@ -9,8 +9,23 @@ public class SuperClassNotNullable { @NotNullable public String f0; - @NotNullable - protected int f1; public SuperClassNotNullable() {} + + @Override + public boolean equals(Object o) { + if (! (o instanceof SuperClassNotNullable)) { + return false; + } + SuperClassNotNullable that = (SuperClassNotNullable) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (! f0.equals(that.f0)) { + return false; + } + return true; + } } From 01fd9d72c4492f33bad3b922d917f48e78fe7f23 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 00:42:00 +0900 Subject: [PATCH 028/409] refactored FieldEntryReader class. It was merged into AbstractTemplateBuilder class --- .../builder/AbstractTemplateBuilder.java | 170 ++++++++++++++++- .../template/builder/FieldEntryReader.java | 180 ------------------ .../builder/ReflectionTemplateBuilder.java | 7 - 3 files changed, 162 insertions(+), 195 deletions(-) delete mode 100644 src/main/java/org/msgpack/template/builder/FieldEntryReader.java diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 97ec2a74b..79cdd03dc 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -17,8 +17,21 @@ // package org.msgpack.template.builder; +import java.lang.annotation.Annotation; +import java.lang.reflect.AccessibleObject; +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; +import org.msgpack.annotation.Ignore; +import org.msgpack.annotation.Index; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.MessagePackMessage; +import org.msgpack.annotation.NotNullable; +import org.msgpack.annotation.Optional; +import org.msgpack.annotation.Required; import org.msgpack.template.FieldList; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; @@ -27,24 +40,19 @@ public abstract class AbstractTemplateBuilder implements TemplateBuilder { - public FieldEntryReader getFieldEntryReader() { - throw new UnsupportedOperationException(); - } - @Override public Template buildTemplate(Type type) throws TemplateBuildException { Class c = (Class) type; checkValidation(c); - FieldEntryReader reader = getFieldEntryReader(); - FieldOption implicitOption = reader.readImplicitFieldOption(c); - FieldEntry[] entries = reader.readFieldEntries(c, implicitOption); + FieldOption implicitOption = readImplicitFieldOption(c); + FieldEntry[] entries = readFieldEntries(c, implicitOption); return buildTemplate(c, entries); } public Template buildTemplate(Class c, FieldList flist) throws TemplateBuildException { try { checkValidation(c); - return buildTemplate(c, getFieldEntryReader().convertFieldEntries(c, flist)); + return buildTemplate(c, convertFieldEntries(c, flist)); } catch (NoSuchFieldException e) { throw new TemplateBuildException(e); } @@ -73,4 +81,150 @@ public void writeTemplate(Type type, String directoryName) { public Template loadTemplate(Type type) { return null; } + + private FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) throws NoSuchFieldException { + List src = flist.getList(); + FieldEntry[] result = new FieldEntry[src.size()]; + for(int i=0; i < src.size(); i++) { + FieldList.Entry s = src.get(i); + if(s.isAvailable()) { + result[i] = new FieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); + } else { + result[i] = new FieldEntry(); + } + } + return result; + } + + private FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { + Field[] allFields = readAllFields(targetClass); + + /* index: + * @Index(0) int field_a; // 0 + * int field_b; // 1 + * @Index(3) int field_c; // 3 + * int field_d; // 4 + * @Index(2) int field_e; // 2 + * int field_f; // 5 + */ + List indexed = new ArrayList(); + int maxIndex = -1; + for(Field f : allFields) { + FieldOption opt = readFieldOption(f, implicitOption); + if(opt == FieldOption.IGNORE) { + // skip + continue; + } + + int index = readFieldIndex(f, maxIndex); + if(indexed.size() > index && indexed.get(index) != null) { + throw new TemplateBuildException("duplicated index: "+index); + } + if(index < 0) { + throw new TemplateBuildException("invalid index: "+index); + } + + while(indexed.size() <= index) { + indexed.add(null); + } + indexed.set(index, new FieldEntry(f, opt)); + + if(maxIndex < index) { + maxIndex = index; + } + } + + FieldEntry[] result = new FieldEntry[maxIndex+1]; + for(int i=0; i < indexed.size(); i++) { + FieldEntry e = indexed.get(i); + if(e == null) { + result[i] = new FieldEntry(); + } else { + result[i] = e; + } + } + return result; + } + + private FieldOption readImplicitFieldOption(Class targetClass) { + Message m = targetClass.getAnnotation(Message.class); + if (m == null) { + return FieldOption.DEFAULT; + } + MessagePackMessage mpm = targetClass.getAnnotation(MessagePackMessage.class); + if (mpm == null) { + return FieldOption.DEFAULT; + } + // TODO #MN + return m.value(); + } + + private Field[] readAllFields(Class targetClass) { + // order: [fields of super class, ..., fields of this class] + List succ = new ArrayList(); + int total = 0; + for(Class c = targetClass; c != Object.class; c = c.getSuperclass()) { + Field[] fields = c.getDeclaredFields(); + total += fields.length; + succ.add(fields); + } + Field[] result = new Field[total]; + int off = 0; + for(int i=succ.size()-1; i >= 0; i--) { + Field[] fields = succ.get(i); + System.arraycopy(fields, 0, result, off, fields.length); + off += fields.length; + } + return result; + } + + private static FieldOption readFieldOption(Field field, FieldOption implicitOption) { + int mod = field.getModifiers(); + if(Modifier.isStatic(mod) || Modifier.isFinal(mod)) { + return FieldOption.IGNORE; + } + + if(isAnnotated(field, Ignore.class)) { + return FieldOption.IGNORE; + } else if(isAnnotated(field, Required.class)) { + return FieldOption.REQUIRED; + } else if(isAnnotated(field, Optional.class)) { + return FieldOption.OPTIONAL; + } else if(isAnnotated(field, NotNullable.class)) { + if(field.getDeclaringClass().isPrimitive()) { + return FieldOption.REQUIRED; + } else { + return FieldOption.NOTNULLABLE; + } + } + + if(implicitOption != FieldOption.DEFAULT) { + return implicitOption; + } + + // default mode: + // transient : Ignore + // public : Required + // others : Ignore + if(Modifier.isTransient(mod)) { + return FieldOption.IGNORE; + } else if(Modifier.isPublic(mod)) { + return FieldOption.REQUIRED; + } else { + return FieldOption.IGNORE; + } + } + + private static int readFieldIndex(Field field, int maxIndex) { + Index a = field.getAnnotation(Index.class); + if(a == null) { + return maxIndex + 1; + } else { + return a.value(); + } + } + + private static boolean isAnnotated(AccessibleObject ao, Class with) { + return ao.getAnnotation(with) != null; + } } diff --git a/src/main/java/org/msgpack/template/builder/FieldEntryReader.java b/src/main/java/org/msgpack/template/builder/FieldEntryReader.java deleted file mode 100644 index 9b3c842aa..000000000 --- a/src/main/java/org/msgpack/template/builder/FieldEntryReader.java +++ /dev/null @@ -1,180 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.template.builder; - -import java.lang.annotation.Annotation; -import java.lang.reflect.AccessibleObject; -import java.lang.reflect.Field; -import java.lang.reflect.Modifier; -import java.util.ArrayList; -import java.util.List; - -import org.msgpack.annotation.Ignore; -import org.msgpack.annotation.Index; -import org.msgpack.annotation.MessagePackMessage; -import org.msgpack.annotation.NotNullable; -import org.msgpack.annotation.Optional; -import org.msgpack.annotation.Required; -import org.msgpack.template.FieldList; -import org.msgpack.template.FieldOption; - - -public class FieldEntryReader { - - public FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) throws NoSuchFieldException { - List src = flist.getList(); - FieldEntry[] result = new FieldEntry[src.size()]; - for(int i=0; i < src.size(); i++) { - FieldList.Entry s = src.get(i); - if(s.isAvailable()) { - result[i] = new FieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); - } else { - result[i] = new FieldEntry(); - } - } - return result; - } - - public FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { - Field[] allFields = readAllFields(targetClass); - - /* index: - * @Index(0) int field_a; // 0 - * int field_b; // 1 - * @Index(3) int field_c; // 3 - * int field_d; // 4 - * @Index(2) int field_e; // 2 - * int field_f; // 5 - */ - List indexed = new ArrayList(); - int maxIndex = -1; - for(Field f : allFields) { - FieldOption opt = readFieldOption(f, implicitOption); - if(opt == FieldOption.IGNORE) { - // skip - continue; - } - - int index = readFieldIndex(f, maxIndex); - if(indexed.size() > index && indexed.get(index) != null) { - throw new TemplateBuildException("duplicated index: "+index); - } - if(index < 0) { - throw new TemplateBuildException("invalid index: "+index); - } - - while(indexed.size() <= index) { - indexed.add(null); - } - indexed.set(index, new FieldEntry(f, opt)); - - if(maxIndex < index) { - maxIndex = index; - } - } - - FieldEntry[] result = new FieldEntry[maxIndex+1]; - for(int i=0; i < indexed.size(); i++) { - FieldEntry e = indexed.get(i); - if(e == null) { - result[i] = new FieldEntry(); - } else { - result[i] = e; - } - } - return result; - } - - public FieldOption readImplicitFieldOption(Class targetClass) { - MessagePackMessage a = targetClass.getAnnotation(MessagePackMessage.class); - if(a == null) { - return FieldOption.DEFAULT; - } - return a.value(); - } - - private Field[] readAllFields(Class targetClass) { - // order: [fields of super class, ..., fields of this class] - List succ = new ArrayList(); - int total = 0; - for(Class c = targetClass; c != Object.class; c = c.getSuperclass()) { - Field[] fields = c.getDeclaredFields(); - total += fields.length; - succ.add(fields); - } - Field[] result = new Field[total]; - int off = 0; - for(int i=succ.size()-1; i >= 0; i--) { - Field[] fields = succ.get(i); - System.arraycopy(fields, 0, result, off, fields.length); - off += fields.length; - } - return result; - } - - private static FieldOption readFieldOption(Field field, FieldOption implicitOption) { - int mod = field.getModifiers(); - if(Modifier.isStatic(mod) || Modifier.isFinal(mod)) { - return FieldOption.IGNORE; - } - - if(isAnnotated(field, Ignore.class)) { - return FieldOption.IGNORE; - } else if(isAnnotated(field, Required.class)) { - return FieldOption.REQUIRED; - } else if(isAnnotated(field, Optional.class)) { - return FieldOption.OPTIONAL; - } else if(isAnnotated(field, NotNullable.class)) { - if(field.getDeclaringClass().isPrimitive()) { - return FieldOption.REQUIRED; - } else { - return FieldOption.NOTNULLABLE; - } - } - - if(implicitOption != FieldOption.DEFAULT) { - return implicitOption; - } - - // default mode: - // transient : Ignore - // public : Required - // others : Ignore - if(Modifier.isTransient(mod)) { - return FieldOption.IGNORE; - } else if(Modifier.isPublic(mod)) { - return FieldOption.REQUIRED; - } else { - return FieldOption.IGNORE; - } - } - - private static int readFieldIndex(Field field, int maxIndex) { - Index a = field.getAnnotation(Index.class); - if(a == null) { - return maxIndex + 1; - } else { - return a.value(); - } - } - - private static boolean isAnnotated(AccessibleObject ao, Class with) { - return ao.getAnnotation(with) != null; - } - -} diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 5b12c57c7..b82a75924 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -294,17 +294,10 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException private TemplateRegistry registry; - private FieldEntryReader reader = new FieldEntryReader(); - public ReflectionTemplateBuilder(TemplateRegistry registry) { this.registry = registry; } - @Override - public FieldEntryReader getFieldEntryReader() { - return reader; - } - @Override public Template buildTemplate(Class type, FieldEntry[] entries) { if (entries == null) { From a2f24bc896f9f7ec4bd162ebdb00dfa380b39e76 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 00:42:55 +0900 Subject: [PATCH 029/409] added test programs for reflection based template builder --- .../TestReflectionStreamPackStreamUnpack.java | 437 ++++++++++++++++++ .../org/msgpack/template/builder/TestSet.java | 388 ++++++++++++++++ 2 files changed, 825 insertions(+) create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestSet.java diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java new file mode 100644 index 000000000..997ccf5a8 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java @@ -0,0 +1,437 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestReflectionStreamPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + // TODO #MN + Template tmpl = builder.buildTemplate(FinalClass.class); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java new file mode 100644 index 000000000..c495844f7 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -0,0 +1,388 @@ +package org.msgpack.template.builder; + +import java.math.BigInteger; +import java.nio.ByteBuffer; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +import org.junit.Ignore; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; + + +@Ignore +public class TestSet { + public static byte[] toByteArray(ByteBuffer from) { + byte[] bytes = new byte[from.remaining()]; + from.get(bytes, from.arrayOffset() + from.position(), from.remaining()); + return bytes; + } + + public void testPrimitiveTypeFieldsClass() throws Exception { + // TODO #MN + //testPrimitiveTypeFieldsClass(null); + testPrimitiveTypeFieldsClass(new PrimitiveTypeFieldsClass()); + PrimitiveTypeFieldsClass v = new PrimitiveTypeFieldsClass(); + v.f0 = (byte) 0; + v.f1 = 1; + v.f2 = 2; + v.f3 = 3; + v.f4 = 4; + v.f5 = 5; + v.f6 = false; + testPrimitiveTypeFieldsClass(v); + } + + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + } + + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testPrimitiveTypeFieldsClassNotNullable(null); + testPrimitiveTypeFieldsClassNotNullable(new PrimitiveTypeFieldsClassNotNullable()); + PrimitiveTypeFieldsClassNotNullable v = new PrimitiveTypeFieldsClassNotNullable(); + v.f0 = (byte) 0; + v.f1 = 1; + v.f2 = 2; + v.f3 = 3; + v.f4 = 4; + v.f5 = 5; + v.f6 = false; + testPrimitiveTypeFieldsClassNotNullable(v); + } + + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + } + + public void testReferenceTypeFieldsClass() throws Exception { + // TODO #MN + //testReferenceTypeFieldsClass(null); + //testReferenceTypeFieldsClass(new ReferenceTypeFieldsClass()); + ReferenceTypeFieldsClass v = new ReferenceTypeFieldsClass(); + v.f0 = 0; + v.f1 = 1; + v.f2 = 2; + v.f3 = (long) 3; + v.f4 = (float) 4; + v.f5 = (double) 5; + v.f6 = false; + v.f7 = new BigInteger("7"); + v.f8 = "8"; + v.f9 = new byte[] { 0x01, 0x02 }; + v.f10 = ByteBuffer.wrap("muga".getBytes()); + testReferenceTypeFieldsClass(v); + } + + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + } + + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testReferenceTypeFieldsClassNotNullable(null); + //testReferenceTypeFieldsClassNotNullable(new ReferenceTypeFieldsClassNotNullable()); + ReferenceTypeFieldsClassNotNullable v = new ReferenceTypeFieldsClassNotNullable(); + v.f0 = 0; + v.f1 = 1; + v.f2 = 2; + v.f3 = (long) 3; + v.f4 = (float) 4; + v.f5 = (double) 5; + v.f6 = false; + v.f7 = new BigInteger("7"); + v.f8 = "8"; + v.f9 = new byte[] { 0x01, 0x02 }; + v.f10 = ByteBuffer.wrap("muga".getBytes()); + testReferenceTypeFieldsClassNotNullable(v); + } + + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + } + + public void testListTypeFieldsClass() throws Exception { + // TODO #MN + //testListTypeFieldsClass(null); + //testListTypeFieldsClass(new ListTypeFieldsClass()); + ListTypeFieldsClass v = new ListTypeFieldsClass(); + v.f0 = new ArrayList(); + v.f1 = new ArrayList(); + v.f1.add(1); + v.f1.add(2); + v.f1.add(3); + v.f2 = new ArrayList(); + v.f2.add("e1"); + v.f2.add("e2"); + v.f2.add("e3"); + v.f3 = new ArrayList>(); + v.f3.add(v.f2); + v.f4 = new ArrayList(); + ListTypeFieldsClass.NestedClass nested = new ListTypeFieldsClass.NestedClass(); + nested.f0 = new byte[] { 0x01, 0x02 }; + nested.f1 = "muga"; + v.f4.add(nested); + v.f5 = new ArrayList(); + v.f5.add(ByteBuffer.wrap("e1".getBytes())); + v.f5.add(ByteBuffer.wrap("e2".getBytes())); + v.f5.add(ByteBuffer.wrap("e3".getBytes())); + testListTypeFieldsClass(v); + } + + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + } + + public void testListTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testListTypeFieldsClassNotNullable(null); + //testListTypeFieldsClassNotNullable(new ListTypeFieldsClassNotNullable()); + ListTypeFieldsClassNotNullable v = new ListTypeFieldsClassNotNullable(); + v.f0 = new ArrayList(); + v.f1 = new ArrayList(); + v.f1.add(1); + v.f1.add(2); + v.f1.add(3); + v.f2 = new ArrayList(); + v.f2.add("e1"); + v.f2.add("e2"); + v.f2.add("e3"); + v.f3 = new ArrayList>(); + v.f3.add(v.f2); + v.f4 = new ArrayList(); + ListTypeFieldsClassNotNullable.NestedClass nested = new ListTypeFieldsClassNotNullable.NestedClass(); + nested.f0 = new byte[] { 0x01, 0x02 }; + nested.f1 = "muga"; + v.f4.add(nested); + v.f5 = new ArrayList(); + v.f5.add(ByteBuffer.wrap("e1".getBytes())); + v.f5.add(ByteBuffer.wrap("e2".getBytes())); + v.f5.add(ByteBuffer.wrap("e3".getBytes())); + testListTypeFieldsClassNotNullable(v); + } + + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + } + + public void testMapTypeFieldsClass() throws Exception { + // TODO #MN + //testMapTypeFieldsClass(null); + //testMapTypeFieldsClass(new MapTypeFieldsClass()); + MapTypeFieldsClass v = new MapTypeFieldsClass(); + v.f0 = new HashMap(); + v.f1 = new HashMap(); + v.f1.put(1, 1); + v.f1.put(2, 2); + v.f1.put(3, 3); + v.f2 = new HashMap(); + v.f2.put("k1", 1); + v.f2.put("k2", 2); + v.f2.put("k3", 3); + v.f3 = new HashMap(); + MapTypeFieldsClass.NestedClass nested = new MapTypeFieldsClass.NestedClass(); + nested.f0 = "muga"; + v.f3.put("muga", nested); + testMapTypeFieldsClass(v); + } + + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + } + + public void testMapTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testMapTypeFieldsClass(null); + //testMapTypeFieldsClassNotNullable(new MapTypeFieldsClassNotNullable()); + MapTypeFieldsClassNotNullable v = new MapTypeFieldsClassNotNullable(); + v.f0 = new HashMap(); + v.f1 = new HashMap(); + v.f1.put(1, 1); + v.f1.put(2, 2); + v.f1.put(3, 3); + v.f2 = new HashMap(); + v.f2.put("k1", 1); + v.f2.put("k2", 2); + v.f2.put("k3", 3); + v.f3 = new HashMap(); + MapTypeFieldsClassNotNullable.NestedClass nested = new MapTypeFieldsClassNotNullable.NestedClass(); + nested.f0 = "muga"; + v.f3.put("muga", nested); + testMapTypeFieldsClassNotNullable(v); + } + + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + } + + public void testFinalClass() throws Exception { + } + + public void testAbstractClass() throws Exception { + } + + public void testInterface() throws Exception { + } + + public void testEnumTypeFieldsClass() throws Exception { + // TODO #MN + //testEnumTypeFieldsClass(null); + //testEnumTypeFieldsClass(new EnumTypeFieldsClass()); + EnumTypeFieldsClass v = new EnumTypeFieldsClass(); + v.f0 = 0; + v.f1 = EnumTypeFieldsClass.SampleEnum.ONE; + testEnumTypeFieldsClass(v); + } + + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + } + + public void testEnumTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testEnumTypeFieldsClassNotNullable(null); + //testEnumTypeFieldsClassNotNullable(new EnumTypeFieldsClassNotNullable()); + EnumTypeFieldsClassNotNullable v = new EnumTypeFieldsClassNotNullable(); + v.f0 = 0; + v.f1 = EnumTypeFieldsClassNotNullable.SampleEnum.ONE; + testEnumTypeFieldsClassNotNullable(v); + } + + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + } + + public void testModifiersFieldsClass() throws Exception { + // TODO #MN + //testModifiersFieldsClass(null); + //testModifiersFieldsClass(new ModifiersFieldsClass()); + ModifiersFieldsClass v = new ModifiersFieldsClass(); + v.f0 = 0; + testModifiersFieldsClass(v); + } + + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + } + + public void testModifiersFieldsClassNotNullable() throws Exception { + // TODO #MN + //testModifiersFieldsClassNotNullable(null); + //testModifiersFieldsClassNotNullable(new ModifiersFieldsClassNotNullable()); + ModifiersFieldsClassNotNullable v = new ModifiersFieldsClassNotNullable(); + v.f0 = 0; + testModifiersFieldsClassNotNullable(v); + } + + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + } + + public void testUserDefinedTypeFieldsClass() throws Exception { + // TODO #MN + //testUserDefinedTypeFieldsClass(null); + //testUserDefinedTypeFieldsClass(new UserDefinedTypeFieldsClass()); + UserDefinedTypeFieldsClass v = new UserDefinedTypeFieldsClass(); + v.f0 = new UserDefinedTypeFieldsClass.NestedClass1(); + v.f0.f0 = 0; + v.f0.f1 = "muga"; + v.f1 = new UserDefinedTypeFieldsClass.NestedClass2(); + v.f1.f0 = 0; + v.f1.f1 = "nishizawa"; + testUserDefinedTypeFieldsClass(v); + } + + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + } + + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testUserDefinedTypeFieldsClassNotNullable(null); + //testUserDefinedTypeFieldsClassNotNullable(new UserDefinedTypeFieldsClassNotNullable()); + UserDefinedTypeFieldsClassNotNullable v = new UserDefinedTypeFieldsClassNotNullable(); + v.f0 = new UserDefinedTypeFieldsClassNotNullable.NestedClass1(); + v.f0.f0 = 0; + v.f0.f1 = "muga"; + v.f1 = new UserDefinedTypeFieldsClassNotNullable.NestedClass2(); + v.f1.f0 = 0; + v.f1.f1 = "nishizawa"; + testUserDefinedTypeFieldsClassNotNullable(v); + } + + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + } + + public void testInheritanceClass() throws Exception { + // TOOD #MN + //testInheritanceClass(null); + //testInheritanceClass(new InheritanceClass()); + InheritanceClass v = new InheritanceClass(); + v.f0 = "muga"; + v.f1 = "furuhashi"; + v.f2 = 10; + testInheritanceClass(v); + } + + public void testInheritanceClass(InheritanceClass v) throws Exception { + } + + public void testInheritanceClassNotNullable() throws Exception { + // TOOD #MN + //testInheritanceClassNotNullable(null); + //testInheritanceClassNotNullable(new InheritanceClassNotNullable()); + InheritanceClassNotNullable v = new InheritanceClassNotNullable(); + v.f0 = "muga"; + v.f1 = "furuhashi"; + v.f2 = 10; + testInheritanceClassNotNullable(v); + } + + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + } + + public void testMessagePackableTypeFieldsClass() throws Exception { + // TODO #MN + //testMessagePackableTypeFieldsClass(null); + //testMessagePackableTypeFieldsClass(new MessagePackableTypeFieldsClass()); + MessagePackableTypeFieldsClass v = new MessagePackableTypeFieldsClass(); + v.f0 = "muga"; + v.f1 = new MessagePackableTypeFieldsClass.NestedClass(); + v.f1.f0 = "nishizawa"; + v.f1.f1 = new int[] { 1, 2, 3 }; + v.f1.f2 = new ArrayList(); + v.f1.f2.add("muga"); + v.f1.f2.add("frsyuki"); + v.f1.f2.add("msgpack"); + testMessagePackableTypeFieldsClass(v); + } + + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + } + + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + // TODO #MN + //testMessagePackableTypeFieldsClassNotNullable(null); + //testMessagePackableTypeFieldsClassNotNullable(new MessagePackableTypeFieldsClassNotNullable()); + MessagePackableTypeFieldsClassNotNullable v = new MessagePackableTypeFieldsClassNotNullable(); + v.f0 = "muga"; + v.f1 = new MessagePackableTypeFieldsClassNotNullable.NestedClass(); + v.f1.f0 = "nishizawa"; + v.f1.f1 = new int[] { 1, 2, 3 }; + v.f1.f2 = new ArrayList(); + v.f1.f2.add("muga"); + v.f1.f2.add("frsyuki"); + v.f1.f2.add("msgpack"); + testMessagePackableTypeFieldsClassNotNullable(v); + } + + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + } +} From 3ac4d8258074500f98146af749a0e8359abbf9c7 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 09:37:48 +0900 Subject: [PATCH 030/409] added test program for reflection-based template builder --- .../TestReflectionStreamPackStreamUnpack.java | 17 +++++++++++++- .../org/msgpack/template/builder/TestSet.java | 10 +++++++++ .../org/msgpack/testclasses/FinalClass.java | 22 ++++++++++++++++++- 3 files changed, 47 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java index 997ccf5a8..bf2c248ab 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java @@ -221,10 +221,25 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t @Test @Override public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - // TODO #MN Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index c495844f7..bbd605fb6 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -228,6 +228,16 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t } public void testFinalClass() throws Exception { + // TODO #MN + //testFinalClass(null); + //testFinalClass(new FinalClass()); + FinalClass v = new FinalClass(); + v.f0 = 10; + v.f1 = "muga"; + testFinalClass(v); + } + + public void testFinalClass(FinalClass v) throws Exception { } public void testAbstractClass() throws Exception { diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java index 2427dd219..0e03589d0 100644 --- a/src/test/java/org/msgpack/testclasses/FinalClass.java +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -6,9 +6,29 @@ @Ignore @Message public final class FinalClass { + public int f0; + public String f1; + + public FinalClass() { + } @Override public boolean equals(Object o) { - return o instanceof FinalClass; + if (! (o instanceof FinalClass)) { + return false; + } + FinalClass that = (FinalClass) o; + if (f0 != that.f0) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (! f1.equals(that.f1)) { + return false; + } + return true; } } From ef5fcf37e1ea7bee0ce7ed94ac0f4c05f657c2f7 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 18:32:26 +0900 Subject: [PATCH 031/409] added .gitignore file and deleted msgpack.iml --- .gitignore | 7 +++++++ msgpack.iml | 17 ----------------- 2 files changed, 7 insertions(+), 17 deletions(-) create mode 100755 .gitignore delete mode 100644 msgpack.iml diff --git a/.gitignore b/.gitignore new file mode 100755 index 000000000..cf7b3246e --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.gitignore +target +.project +.classpath +.settings +.iml +*~ diff --git a/msgpack.iml b/msgpack.iml deleted file mode 100644 index 3a6d962d7..000000000 --- a/msgpack.iml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - From 8c2bff8dc01d1f15076a53e94a20e50ca1fcbabd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 18:34:39 +0900 Subject: [PATCH 032/409] trivial modifications --- src/test/java/org/msgpack/template/builder/TestSet.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index bbd605fb6..3840f5dae 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -7,7 +7,6 @@ import java.util.List; import org.junit.Ignore; -import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; import org.msgpack.testclasses.FinalClass; From 09061c871db7a010b1beea241c02f22e858c44a4 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 18:37:07 +0900 Subject: [PATCH 033/409] refactored programs related to template builder --- .../builder/AbstractTemplateBuilder.java | 47 +++++++------ .../msgpack/template/builder/FieldEntry.java | 3 +- .../builder/ReflectionTemplateBuilder.java | 70 +++++++++---------- 3 files changed, 62 insertions(+), 58 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 79cdd03dc..47376c5b5 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -35,50 +35,57 @@ import org.msgpack.template.FieldList; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; public abstract class AbstractTemplateBuilder implements TemplateBuilder { + protected TemplateRegistry registry; + + protected AbstractTemplateBuilder(TemplateRegistry registry) { + this.registry = registry; + } + @Override - public Template buildTemplate(Type type) throws TemplateBuildException { - Class c = (Class) type; - checkValidation(c); - FieldOption implicitOption = readImplicitFieldOption(c); - FieldEntry[] entries = readFieldEntries(c, implicitOption); - return buildTemplate(c, entries); + public Template buildTemplate(Type targetType) throws TemplateBuildException { + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + FieldOption implicitOption = readImplicitFieldOption(targetClass); + FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + return buildTemplate(targetClass, entries); } - public Template buildTemplate(Class c, FieldList flist) throws TemplateBuildException { + public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { try { - checkValidation(c); - return buildTemplate(c, convertFieldEntries(c, flist)); + checkClassValidation(targetClass); + return buildTemplate(targetClass, convertFieldEntries(targetClass, flist)); } catch (NoSuchFieldException e) { throw new TemplateBuildException(e); } } - public abstract Template buildTemplate(Class type, FieldEntry[] entries); + public abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); - protected void checkValidation(Class type) { - if (type.isInterface()) { - throw new TemplateBuildException("Cannot build template for interface: " + type.getName()); + protected void checkClassValidation(Class targetClass) { + if (targetClass.isInterface()) { + throw new TemplateBuildException("Cannot build template for interface: " + targetClass.getName()); } - if (type.isArray()) { - throw new TemplateBuildException("Cannot build template for array class: " + type.getName()); + if (targetClass.isArray()) { + throw new TemplateBuildException("Cannot build template for array class: " + targetClass.getName()); } - if (type.isPrimitive()) { - throw new TemplateBuildException("Cannot build template of primitive type: " + type.getName()); + if (targetClass.isPrimitive()) { + throw new TemplateBuildException("Cannot build template of primitive type: " + targetClass.getName()); } } @Override - public void writeTemplate(Type type, String directoryName) { - throw new UnsupportedOperationException(type.toString()); + public void writeTemplate(Type targetType, String directoryName) { + throw new UnsupportedOperationException(targetType.toString()); } @Override - public Template loadTemplate(Type type) { + public Template loadTemplate(Type targetType) { return null; } diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 8866ceca6..3022bc663 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -23,7 +23,6 @@ import org.msgpack.template.FieldOption; - public class FieldEntry { private Field field; @@ -87,7 +86,7 @@ public boolean isNotNullable() { return option == FieldOption.NOTNULLABLE; } - static String arrayTypeToString(Class type) { + private static String arrayTypeToString(Class type) { int dim = 1; Class baseType = type.getComponentType(); while (baseType.isArray()) { diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index b82a75924..b83f8bc16 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -21,10 +21,8 @@ import java.lang.reflect.Field; import java.lang.reflect.Modifier; -import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; -import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; @@ -37,11 +35,11 @@ static abstract class ReflectionFieldEntry extends FieldEntry { super(e.getField(), e.getOption()); } - public abstract void write(Packer packer, Object target) throws IOException; + abstract void write(Packer packer, Object target) throws IOException; - public abstract void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException; + abstract void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException; - public void setNull(Object target) throws IllegalAccessException { + void setNull(Object target) throws IllegalAccessException { getField().set(target, null); } } @@ -51,10 +49,10 @@ static class NullFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { } } @@ -66,11 +64,11 @@ static class ObjectFieldEntry extends ReflectionFieldEntry { this.template = template; } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { template.write(packer, target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { Field f = getField(); Class type = (Class) f.getType(); Object fieldReference = f.get(target); @@ -86,11 +84,11 @@ static class BooleanFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeBoolean((Boolean) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setBoolean(target, unpacker.readBoolean()); } } @@ -100,11 +98,11 @@ static class ByteFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeByte((Byte) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setByte(target, unpacker.readByte()); } } @@ -114,11 +112,11 @@ static class ShortFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeShort((Short) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setShort(target, unpacker.readShort()); } } @@ -128,11 +126,11 @@ static class IntFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeInt((Integer) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setInt(target, unpacker.readInt()); } } @@ -142,11 +140,11 @@ static class LongFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeLong((Long) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setLong(target, unpacker.readLong()); } } @@ -156,11 +154,11 @@ static class FloatFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeFloat((Float) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setFloat(target, unpacker.readFloat()); } } @@ -170,11 +168,11 @@ static class DoubleFieldEntry extends ReflectionFieldEntry { super(e); } - public void write(Packer packer, Object target) throws IOException { + void write(Packer packer, Object target) throws IOException { packer.writeDouble((Double) target); } - public void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { getField().setDouble(target, unpacker.readDouble()); } } @@ -184,20 +182,21 @@ static class ReflectionTemplate implements Template { private ReflectionFieldEntry[] entries; - private int minimumArrayLength; + private int minArrayLength; ReflectionTemplate(Class targetClass, ReflectionFieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; - this.minimumArrayLength = 0; + minArrayLength = 0; for (int i = 0; i < entries.length; i++) { ReflectionFieldEntry e = entries[i]; - if (e.isRequired() || e.isNotNullable()) { - this.minimumArrayLength = i + 1; + if (e.isRequired() || !e.isNotNullable()) { + minArrayLength = i + 1; } } } + @Override public void write(Packer packer, T target) throws IOException { try { packer.writeArrayBegin(entries.length); @@ -208,7 +207,7 @@ public void write(Packer packer, T target) throws IOException { } Object obj = e.getField().get(target); if (obj == null) { - if (!e.isNotNullable() && !e.isOptional()) { + if (e.isNotNullable() && !e.isOptional()) { throw new MessageTypeException(); } packer.writeNil(); @@ -226,6 +225,7 @@ public void write(Packer packer, T target) throws IOException { } } + @Override public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException { try { if (to == null) { @@ -233,12 +233,12 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException } int length = unpacker.readArrayBegin(); - if (length < minimumArrayLength) { + if (length < minArrayLength) { throw new MessageTypeException(); } int i; - for (i = 0; i < minimumArrayLength; ++i) { + for (i = 0; i < minArrayLength; ++i) { ReflectionFieldEntry e = entries[i]; if (!e.isAvailable()) { unpacker.readValue(); // FIXME @@ -251,8 +251,8 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException throw new MessageTypeException(); } else if (e.isOptional()) { // Optional + nil => keep default value - } else { // Nullable - // Nullable + nil => set null + } else { // nullable + // nullable + nil => set null e.setNull(to); } } else { @@ -292,10 +292,8 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException } } - private TemplateRegistry registry; - public ReflectionTemplateBuilder(TemplateRegistry registry) { - this.registry = registry; + super(registry); } @Override @@ -334,7 +332,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { } else if (t.equals(double.class)) { res[i] = new DoubleFieldEntry(e); } else { - Template tmpl = registry.lookup(e.getGenericType(), true); + Template tmpl = registry.lookup(e.getGenericType(), true); res[i] = new ObjectFieldEntry(e, tmpl); } } From 33f3621aa605ca6801ef1f93bbd95d34a039c45a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 19:00:15 +0900 Subject: [PATCH 034/409] added reflaction-based template builder for ordinal enum --- .../msgpack/template/TemplateRegistry.java | 4 +- .../ReflectionOrdinalEnumTemplateBuilder.java | 92 +++++++++++++++++++ ...tionOrdinalEnumStreamPackStreamUnpack.java | 64 +++++++++++++ 3 files changed, 159 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9d0a8f3b7..b79e0ccb4 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -50,6 +50,7 @@ import org.msgpack.template.Template; import org.msgpack.template.ValueTemplate; import org.msgpack.template.builder.AbstractTemplateBuilder; +import org.msgpack.template.builder.ReflectionOrdinalEnumTemplateBuilder; import org.msgpack.template.builder.ReflectionTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; import org.msgpack.type.Value; @@ -78,7 +79,8 @@ public TemplateRegistry(TemplateRegistry registry) { if (parent == null) { registerDefaultTemplates(); // TODO #MN builder -> selector - builder = new ReflectionTemplateBuilder(this); + //builder = new ReflectionTemplateBuilder(this); + builder = new ReflectionOrdinalEnumTemplateBuilder(this); } else { builder = registry.builder; } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java new file mode 100644 index 000000000..c98e11067 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -0,0 +1,92 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.io.IOException; +import java.lang.reflect.Type; +import java.util.HashMap; +import java.util.Map; + +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.TemplateBuildException; +import org.msgpack.unpacker.Unpacker; + + +public class ReflectionOrdinalEnumTemplateBuilder extends ReflectionTemplateBuilder { + + static class ReflectionOrdinalEnumTemplate implements Template { + private T[] entries; + + private Map reverse; + + ReflectionOrdinalEnumTemplate(Class targetClass) { + entries = targetClass.getEnumConstants(); + reverse = new HashMap(); + for (int i = 0; i < entries.length; ++i) { + reverse.put(entries[i], i); + } + } + + @Override + public void write(Packer pk, T target) throws IOException { + Integer ord = reverse.get(target); + if (ord == null) { + throw new MessageTypeException(); + } + pk.writeInt((int) ord); + } + + @Override + public T read(Unpacker pac, T to) throws IOException, MessageTypeException { + int ord = pac.readInt(); + if (entries.length <= ord) { + throw new MessageTypeException(); + } + return entries[ord]; + } + } + + public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { + super(registry); + } + + @Override + public Template buildTemplate(Class targetClass, FieldEntry[] entries) { + return super.buildTemplate(targetClass, entries); + } + + @Override + public Template buildTemplate(Type targetType) { + Class targetClass = (Class) targetType; + if (! targetClass.isEnum()) { + return super.buildTemplate(targetClass); + } + checkOrdinalEnumValidation(targetClass); + return new ReflectionOrdinalEnumTemplate(targetClass); + } + + protected void checkOrdinalEnumValidation(Class targetClass) { + if(! targetClass.isEnum()) { + throw new TemplateBuildException( + "tried to build ordinal enum template of non-enum class: " + targetClass.getName()); + } + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java new file mode 100644 index 000000000..49c0497d9 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java @@ -0,0 +1,64 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestReflectionOrdinalEnumStreamPackStreamUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionOrdinalEnumTemplateBuilder builder = new ReflectionOrdinalEnumTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionOrdinalEnumTemplateBuilder builder = new ReflectionOrdinalEnumTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} From d62f234383fade8a4b30ed8bd88eef7d55e33fb8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 19:29:02 +0900 Subject: [PATCH 035/409] added TemplateBuilderChain --- .../msgpack/template/TemplateRegistry.java | 19 +++++-- .../builder/AbstractTemplateBuilder.java | 5 +- .../ReflectionOrdinalEnumTemplateBuilder.java | 8 +++ .../builder/ReflectionTemplateBuilder.java | 9 ++++ .../template/builder/TemplateBuilder.java | 8 +-- .../builder/TemplateBuilderChain.java | 51 +++++++++++++++++++ 6 files changed, 91 insertions(+), 9 deletions(-) create mode 100644 src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index b79e0ccb4..cce6f9fd3 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -53,6 +53,7 @@ import org.msgpack.template.builder.ReflectionOrdinalEnumTemplateBuilder; import org.msgpack.template.builder.ReflectionTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; +import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; @@ -63,7 +64,8 @@ public class TemplateRegistry { private Map> cache; // TODO #MN current version is reflection-based template builder only, builder -> selector - private TemplateBuilder builder; + //private TemplateBuilder builder; + private TemplateBuilderChain chain; private Map genericCache; @@ -80,9 +82,13 @@ public TemplateRegistry(TemplateRegistry registry) { registerDefaultTemplates(); // TODO #MN builder -> selector //builder = new ReflectionTemplateBuilder(this); - builder = new ReflectionOrdinalEnumTemplateBuilder(this); + //builder = new ReflectionOrdinalEnumTemplateBuilder(this); + chain = new TemplateBuilderChain(); + chain.init(this); } else { - builder = registry.builder; + // TODO #MN + //builder = registry.builder; + chain = registry.chain; } } @@ -124,7 +130,8 @@ private void registerDefaultTemplates() { public void register(Class targetClass) { // TODO #MN builder -> selector - register(targetClass, builder.buildTemplate(targetClass)); + //register(targetClass, builder.buildTemplate(targetClass)); + register(targetClass, chain.select(targetClass).buildTemplate(targetClass)); } public void register(Class targetClass, final FieldList flist) { @@ -132,7 +139,8 @@ public void register(Class targetClass, final FieldList flist) { throw new NullPointerException("FieldList object is null"); } // TODO #MN builder -> selector - register(targetClass, ((AbstractTemplateBuilder) builder).buildTemplate(targetClass, flist)); + //register(targetClass, ((AbstractTemplateBuilder) builder).buildTemplate(targetClass, flist)); + register(targetClass, ((AbstractTemplateBuilder) chain.select(targetClass)).buildTemplate(targetClass, flist)); } public synchronized void register(Type targetType, final Template tmpl) { @@ -223,6 +231,7 @@ private synchronized Template lookupImpl(Type targetType, // TODO #MN builder -> selector // find match TemplateBuilder + TemplateBuilder builder = chain.select(targetClass); if (builder != null) { if (forceLoad) { tmpl = builder.loadTemplate(targetClass); diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 47376c5b5..83f3602ea 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -231,7 +231,10 @@ private static int readFieldIndex(Field field, int maxIndex) { } } - private static boolean isAnnotated(AccessibleObject ao, Class with) { + public static boolean isAnnotated(Class targetClass, Class with) { + return targetClass.getAnnotation(with) != null; + } + public static boolean isAnnotated(AccessibleObject ao, Class with) { return ao.getAnnotation(with) != null; } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index c98e11067..b2f148e86 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -23,6 +23,8 @@ import java.util.Map; import org.msgpack.MessageTypeException; +import org.msgpack.annotation.MessagePackOrdinalEnum; +import org.msgpack.annotation.OrdinalEnum; import org.msgpack.packer.Packer; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; @@ -68,6 +70,12 @@ public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { super(registry); } + @Override + public boolean matchType(Type targetType) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, OrdinalEnum.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackOrdinalEnum.class); + } + @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { return super.buildTemplate(targetClass, entries); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index b83f8bc16..057bff1ed 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -20,8 +20,11 @@ import java.io.IOException; import java.lang.reflect.Field; import java.lang.reflect.Modifier; +import java.lang.reflect.Type; import org.msgpack.MessageTypeException; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.MessagePackMessage; import org.msgpack.packer.Packer; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; @@ -296,6 +299,12 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { super(registry); } + @Override + public boolean matchType(Type targetType) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); + } + @Override public Template buildTemplate(Class type, FieldEntry[] entries) { if (entries == null) { diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 33668f841..3457563c5 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -23,10 +23,12 @@ public interface TemplateBuilder { - Template buildTemplate(Type type) throws TemplateBuildException; + boolean matchType(Type targetType); - void writeTemplate(Type type, String directoryName); + Template buildTemplate(Type targetType) throws TemplateBuildException; - Template loadTemplate(Type type); + void writeTemplate(Type targetType, String directoryName); + + Template loadTemplate(Type targetType); } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java new file mode 100644 index 000000000..1a1c27e84 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -0,0 +1,51 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +import org.msgpack.template.TemplateRegistry; + + +public class TemplateBuilderChain { + + protected List templateBuilders = new ArrayList(); + + protected TemplateBuilder forceTemplateBuilder = null; + + public TemplateBuilderChain() { + } + + public void init(TemplateRegistry registry) { + // TODO #MN + templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + templateBuilders.add(new ReflectionTemplateBuilder(registry)); + forceTemplateBuilder = new ReflectionOrdinalEnumTemplateBuilder(registry); + } + + public TemplateBuilder select(Type targetType) { + for (TemplateBuilder tb : templateBuilders) { + if (tb.matchType(targetType)) { + return tb; + } + } + return forceTemplateBuilder; + } +} From 73f0ee76b43721257cf1bd9f5438e830870315c6 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 21:56:28 +0900 Subject: [PATCH 036/409] refactored template registry --- .../msgpack/template/TemplateRegistry.java | 23 +++---------------- .../ReflectionOrdinalEnumTemplateBuilder.java | 7 ++---- .../builder/TemplateBuilderChain.java | 6 +++-- 3 files changed, 9 insertions(+), 27 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index cce6f9fd3..47994ded2 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -50,8 +50,6 @@ import org.msgpack.template.Template; import org.msgpack.template.ValueTemplate; import org.msgpack.template.builder.AbstractTemplateBuilder; -import org.msgpack.template.builder.ReflectionOrdinalEnumTemplateBuilder; -import org.msgpack.template.builder.ReflectionTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; @@ -63,8 +61,6 @@ public class TemplateRegistry { private Map> cache; - // TODO #MN current version is reflection-based template builder only, builder -> selector - //private TemplateBuilder builder; private TemplateBuilderChain chain; private Map genericCache; @@ -77,22 +73,16 @@ public TemplateRegistry(TemplateRegistry registry) { parent = registry; cache = new HashMap>(); genericCache = new HashMap(); - // TODO #MN builder -> selector if (parent == null) { - registerDefaultTemplates(); - // TODO #MN builder -> selector - //builder = new ReflectionTemplateBuilder(this); - //builder = new ReflectionOrdinalEnumTemplateBuilder(this); + registerTemplates(); chain = new TemplateBuilderChain(); chain.init(this); } else { - // TODO #MN - //builder = registry.builder; chain = registry.chain; } } - private void registerDefaultTemplates() { + private void registerTemplates() { register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); register(byte.class, ByteTemplate.getInstance()); @@ -129,8 +119,6 @@ private void registerDefaultTemplates() { } public void register(Class targetClass) { - // TODO #MN builder -> selector - //register(targetClass, builder.buildTemplate(targetClass)); register(targetClass, chain.select(targetClass).buildTemplate(targetClass)); } @@ -138,8 +126,6 @@ public void register(Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - // TODO #MN builder -> selector - //register(targetClass, ((AbstractTemplateBuilder) builder).buildTemplate(targetClass, flist)); register(targetClass, ((AbstractTemplateBuilder) chain.select(targetClass)).buildTemplate(targetClass, flist)); } @@ -229,7 +215,6 @@ private synchronized Template lookupImpl(Type targetType, return tmpl; } - // TODO #MN builder -> selector // find match TemplateBuilder TemplateBuilder builder = chain.select(targetClass); if (builder != null) { @@ -288,9 +273,7 @@ private synchronized Template lookupImpl(Type targetType, } if (forceBuild) { - // TODO #MN - // tmpl = builderSelectorRegistry.getForceBuilder().buildTemplate(target); - tmpl = builder.buildTemplate(targetClass); + tmpl = chain.select(targetClass).buildTemplate(targetClass); register(targetClass, tmpl); return tmpl; } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index b2f148e86..d94da43cc 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -32,7 +32,7 @@ import org.msgpack.unpacker.Unpacker; -public class ReflectionOrdinalEnumTemplateBuilder extends ReflectionTemplateBuilder { +public class ReflectionOrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { static class ReflectionOrdinalEnumTemplate implements Template { private T[] entries; @@ -78,15 +78,12 @@ public boolean matchType(Type targetType) { @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - return super.buildTemplate(targetClass, entries); + throw new UnsupportedOperationException("fatal error: " + targetClass.getName()); } @Override public Template buildTemplate(Type targetType) { Class targetClass = (Class) targetType; - if (! targetClass.isEnum()) { - return super.buildTemplate(targetClass); - } checkOrdinalEnumValidation(targetClass); return new ReflectionOrdinalEnumTemplate(targetClass); } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 1a1c27e84..36fdc4372 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -35,9 +35,11 @@ public TemplateBuilderChain() { public void init(TemplateRegistry registry) { // TODO #MN - templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + // add javassist-based template builder + // add beans-based template builder templateBuilders.add(new ReflectionTemplateBuilder(registry)); - forceTemplateBuilder = new ReflectionOrdinalEnumTemplateBuilder(registry); + templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + forceTemplateBuilder = new ReflectionTemplateBuilder(registry); } public TemplateBuilder select(Type targetType) { From 22be680f0e3c025040cc761d372c6675c3c079af Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 13 Jul 2011 21:58:10 +0900 Subject: [PATCH 037/409] fixed buf in test program for template builder --- .../TestReflectionOrdinalEnumStreamPackStreamUnpack.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java index 49c0497d9..c3377d392 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java @@ -24,7 +24,9 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); - ReflectionOrdinalEnumTemplateBuilder builder = new ReflectionOrdinalEnumTemplateBuilder(registry); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); @@ -47,7 +49,9 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); - ReflectionOrdinalEnumTemplateBuilder builder = new ReflectionOrdinalEnumTemplateBuilder(registry); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); StreamPacker packer = new StreamPacker(out); From 28f81557e32c8f9c1e86abc8d3972034d96f599f Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 16 Jul 2011 06:15:59 +0900 Subject: [PATCH 038/409] MessagePack.create{Stream,Buffer}{Packer,Unpacker} --- src/main/java/org/msgpack/MessagePack.java | 63 +++++++++++++------ .../java/org/msgpack/packer/BufferPacker.java | 1 + .../java/org/msgpack/unpacker/Unpacker.java | 30 ++++----- 3 files changed, 61 insertions(+), 33 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index bea0b8814..d96fafc05 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -44,12 +44,42 @@ public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } + + public StreamPacker createStreamPacker(OutputStream stream) { + return new StreamPacker(this, stream); + } + + public BufferPacker createBufferPacker() { + return new BufferPacker(this); + } + + public BufferPacker createBufferPacker(int bufferSize) { + return new BufferPacker(this, bufferSize); + } + + public StreamUnpacker createStreamUnpacker(InputStream stream) { + return new StreamUnpacker(this, stream); + } + + public BufferUnpacker createBufferUnpacker(byte[] b) { + return new BufferUnpacker(this).wrap(b); + } + + public BufferUnpacker createBufferUnpacker(byte[] b, int off, int len) { + return new BufferUnpacker(this).wrap(b, off, len); + } + + public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { + return new BufferUnpacker(this).wrap(bb); + } + + public byte[] write(Object v) throws IOException { return write(v, registry.lookup(v.getClass())); } public byte[] write(T v, Template tmpl) throws IOException { // TODO IOException - BufferPacker pk = new BufferPacker(this); + BufferPacker pk = createBufferPacker(); tmpl.write(pk, v); return pk.toByteArray(); } @@ -59,13 +89,13 @@ public void write(OutputStream out, Object v) throws IOException { } public void write(OutputStream out, T v, Template tmpl) throws IOException { - StreamPacker pk = new StreamPacker(this, out); + StreamPacker pk = createStreamPacker(out); tmpl.write(pk, v); } public byte[] write(Value v) throws IOException { // TODO IOException // FIXME ValueTemplate should do this - BufferPacker pk = new BufferPacker(this); + BufferPacker pk = createBufferPacker(); pk.write(v); return pk.toByteArray(); } @@ -75,54 +105,50 @@ public Value read(byte[] b) throws IOException { // TODO IOException } public Value read(byte[] b, int off, int len) throws IOException { // TODO IOException - return new BufferUnpacker(this).wrap(b, off, len).readValue(); + return createBufferUnpacker(b, off, len).readValue(); } public Value read(ByteBuffer buf) throws IOException { // TODO IOException - return new BufferUnpacker(this).wrap(buf).readValue(); + return createBufferUnpacker(buf).readValue(); } public Value read(InputStream in) throws IOException { - return new StreamUnpacker(this, in).readValue(); + return createStreamUnpacker(in).readValue(); } public T read(byte[] b, T v) throws IOException { // TODO IOException // TODO Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = new BufferUnpacker(this); - u.wrap(b); + BufferUnpacker u = createBufferUnpacker(b); return (T) tmpl.read(u, v); } public T read(byte[] b, Class c) throws IOException { // TODO IOException Template tmpl = registry.lookup(c); - BufferUnpacker u = new BufferUnpacker(this); - u.wrap(b); + BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, null); } public T read(ByteBuffer b, T v) throws IOException { // TODO IOException Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = new BufferUnpacker(this); - u.wrap(b); + BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, v); } public T read(ByteBuffer b, Class c) { // TODO IOException Template tmpl = registry.lookup(c); - BufferUnpacker u = new BufferUnpacker(this); - u.wrap(b); + BufferUnpacker u = createBufferUnpacker(b); return null; } public T read(InputStream in, T v) throws IOException { Template tmpl = registry.lookup(v.getClass()); - return tmpl.read(new StreamUnpacker(this, in), v); + return tmpl.read(createStreamUnpacker(in), v); } public T read(InputStream in, Class c) throws IOException { Template tmpl = registry.lookup(c); - return tmpl.read(new StreamUnpacker(this, in), null); + return tmpl.read(createStreamUnpacker(in), null); } public T convert(Value v, T to) throws IOException { // TODO IOException @@ -142,6 +168,7 @@ public Value unconvert(T v) throws IOException { return pk.getResult(); } + public void register(Class type) { registry.register(type); } @@ -149,11 +176,11 @@ public void register(Class type) { // TODO #MN // public void forceRegister(Class type); - public void register(Class type, Template tmpl) { + public void register(Class type, Template tmpl) { registry.register(type, tmpl); } - public Template lookup(Class type) { + public Template lookup(Class type) { return registry.lookup(type); } diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index 6938f9d30..bc9d67c5f 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -23,6 +23,7 @@ public class BufferPacker extends AbstractMessagePackPacker { private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + public BufferPacker() { this(DEFAULT_BUFFER_SIZE); } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 9e5bfd2b1..340384c91 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -103,34 +103,34 @@ public Value readValue() throws IOException { } + public T read(Class klass) throws IOException { + Template tmpl = msgpack.lookup(klass); + return (T) tmpl.read(this, null); + } + public T read(T to) throws IOException { - Template tmpl = msgpack.lookup((Class) to.getClass()); // FIXME T -> ? extends T - return (T) tmpl.read(this, to); // FIXME down cast + Template tmpl = msgpack.lookup((Class) to.getClass()); + return (T) tmpl.read(this, to); } - public T read(Class klass) throws IOException { - Template tmpl = msgpack.lookup(klass); // FIXME T -> ? extends T - return (T) tmpl.read(this, null); // FIXME down cast + public T readOptional(Class klass) throws IOException { + return readOptional(klass, null); } - public T readOptional(T to, T defaultValue) throws IOException { + public T readOptional(Class klass, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - Template tmpl = msgpack.lookup((Class) to.getClass()); // FIXME T -> ? extends T - return (T) tmpl.read(this, to); // FIXME down cast + Template tmpl = (Template) msgpack.lookup(klass); + return (T) tmpl.read(this, null); } - public T readOptional(Class klass, T defaultValue) throws IOException { + public T readOptional(T to, T defaultValue) throws IOException { if(trySkipNil()) { return defaultValue; } - Template tmpl = (Template) msgpack.lookup(klass); // FIXME T -> ? extends T - return (T) tmpl.read(this, null); // FIXME down cast - } - - public T readOptional(Class klass) throws IOException { - return readOptional(klass, null); + Template tmpl = msgpack.lookup((Class) to.getClass()); + return (T) tmpl.read(this, to); } public T readOptional(T to) throws IOException { From 26dcf2239c1bc34413bad97cc3fe6a92d3003adf Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 16 Jul 2011 07:32:51 +0900 Subject: [PATCH 039/409] added experimental JSON packer --- .../msgpack/packer/AbstractJSONPacker.java | 225 ++++++++++++++++++ .../org/msgpack/packer/JSONStreamPacker.java | 35 +++ .../java/org/msgpack/unpacker/Converter.java | 7 + .../org/msgpack/TestSimpleJSONPackUnpack.java | 52 ++++ 4 files changed, 319 insertions(+) create mode 100644 src/main/java/org/msgpack/packer/AbstractJSONPacker.java create mode 100644 src/main/java/org/msgpack/packer/JSONStreamPacker.java create mode 100644 src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java diff --git a/src/main/java/org/msgpack/packer/AbstractJSONPacker.java b/src/main/java/org/msgpack/packer/AbstractJSONPacker.java new file mode 100644 index 000000000..5a554d6b8 --- /dev/null +++ b/src/main/java/org/msgpack/packer/AbstractJSONPacker.java @@ -0,0 +1,225 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.packer; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.math.BigInteger; +import org.msgpack.io.Output; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; + + +public abstract class AbstractJSONPacker extends Packer { + private static final byte[] NULL = new byte[] { 0x6e, 0x75, 0x6c, 0x6c }; + private static final byte[] TRUE = new byte[] { 0x74, 0x72, 0x75, 0x65 }; + private static final byte[] FALSE = new byte[] { 0x66, 0x61, 0x6c, 0x73, 0x65 }; + private static final byte COMMA = 0x2c; + private static final byte COLON = 0x3a; + private static final byte QUOTE = 0x22; + private static final byte LEFT_BR = 0x5b; + private static final byte RIGHT_BR = 0x5d; + private static final byte LEFT_WN = 0x7b; + private static final byte RIGHT_WN = 0x7d; + + private static final int FLAG_FIRST_ELEMENT = 0x01; + private static final int FLAG_MAP_KEY = 0x02; + private static final int FLAG_MAP_VALUE = 0x04; + private static final int FLAG_MAP = FLAG_MAP_KEY | FLAG_MAP_VALUE; + + protected final Output out; + private int[] flags; + + private PackerStack stack = new PackerStack(); + + protected AbstractJSONPacker(MessagePack msgpack, Output out) { + super(msgpack); + this.out = out; + this.stack = new PackerStack(); + this.flags = new int[PackerStack.MAX_STACK_SIZE]; + } + + public void writeNil() throws IOException { + out.write(NULL, 0, NULL.length); + } + + public void writeBoolean(boolean v) throws IOException { + if(v) { + out.write(TRUE, 0, TRUE.length); + } else { + out.write(FALSE, 0, FALSE.length); + } + } + + public void writeByte(byte v) throws IOException { + beginElement(); + byte[] b = Byte.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeShort(short v) throws IOException { + beginElement(); + byte[] b = Short.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeInt(int v) throws IOException { + beginElement(); + byte[] b = Integer.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeLong(long v) throws IOException { + beginElement(); + byte[] b = Long.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeBigInteger(BigInteger v) throws IOException { + beginElement(); + byte[] b = v.toString().getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeFloat(float v) throws IOException { + beginElement(); + byte[] b = Float.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeDouble(double v) throws IOException { + beginElement(); + byte[] b = Double.toString(v).getBytes(); // TODO optimize + out.write(b, 0, b.length); + endElement(); + } + + public void writeByteArray(byte[] b, int off, int len) throws IOException { + beginElement(); + out.writeByte(QUOTE); + out.write(b, off, len); // FIXME escape + out.writeByte(QUOTE); + endElement(); + } + + public void writeByteBuffer(ByteBuffer bb) throws IOException { + beginElement(); + out.writeByte(QUOTE); + int pos = bb.position(); + try { + out.write(bb); // FIXME escape + } finally { + bb.position(pos); + } + out.writeByte(QUOTE); + endElement(); + } + + public void writeString(String s) throws IOException { + beginElement(); + byte[] b = s.getBytes(); + out.writeByte(QUOTE); + out.write(b, 0, b.length); // FIXME escape + out.writeByte(QUOTE); + endElement(); + } + + public void writeArrayBegin(int size) throws IOException { + beginElement(); + out.writeByte(LEFT_BR); + endElement(); + stack.pushArray(size); + flags[stack.getDepth()] = FLAG_FIRST_ELEMENT; + } + + public void writeArrayEnd(boolean check) throws IOException { + if(!stack.topIsArray()) { + throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); + } + + int remain = stack.getTopCount(); + if(remain > 0) { + if(check) { + throw new MessageTypeException("writeArrayEnd(check=true) is called but the array is not end: "+remain); + } + for(int i=0; i < remain; i++) { + writeNil(); + } + } + stack.pop(); + + out.writeByte(RIGHT_BR); + } + + public void writeMapBegin(int size) throws IOException { + beginElement(); + out.writeByte(LEFT_WN); + endElement(); + stack.pushMap(size); + flags[stack.getDepth()] = FLAG_FIRST_ELEMENT | FLAG_MAP_KEY; + } + + public void writeMapEnd(boolean check) throws IOException { + if(!stack.topIsMap()) { + throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); + } + + int remain = stack.getTopCount(); + if(remain > 0) { + if(check) { + throw new MessageTypeException("writeMapEnd(check=true) is called but the map is not end: "+remain); + } + for(int i=0; i < remain; i++) { + writeNil(); + } + } + stack.pop(); + + out.writeByte(RIGHT_WN); + } + + private void beginElement() throws IOException { + int flag = flags[stack.getDepth()]; + if((flag & FLAG_MAP_VALUE) != 0) { + out.writeByte(COLON); + } else if(stack.getDepth() > 0 && (flag & FLAG_FIRST_ELEMENT) == 0) { + out.writeByte(COMMA); + } + } + + private void endElement() throws IOException { + int flag = flags[stack.getDepth()]; + if((flag & FLAG_MAP_KEY) != 0) { + flag &= ~FLAG_MAP_KEY; + flag |= FLAG_MAP_VALUE; + } else if((flag & FLAG_MAP_VALUE) != 0) { + flag &= ~FLAG_MAP_VALUE; + flag |= FLAG_MAP_KEY; + } + flag &= ~FLAG_FIRST_ELEMENT; + flags[stack.getDepth()] = flag; + stack.reduceCount(); + } +} + diff --git a/src/main/java/org/msgpack/packer/JSONStreamPacker.java b/src/main/java/org/msgpack/packer/JSONStreamPacker.java new file mode 100644 index 000000000..4aa501f6b --- /dev/null +++ b/src/main/java/org/msgpack/packer/JSONStreamPacker.java @@ -0,0 +1,35 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.packer; + +import java.io.OutputStream; + +import org.msgpack.MessagePack; +import org.msgpack.io.StreamOutput; + + +public class JSONStreamPacker extends AbstractJSONPacker { + public JSONStreamPacker(OutputStream stream) { + this(new MessagePack(), stream); + } + + public JSONStreamPacker(MessagePack msgpack, OutputStream stream) { + super(msgpack, new StreamOutput(stream)); + } +} + diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 725b5db7a..186a4a6f0 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -140,6 +140,13 @@ public byte[] readByteArray() { return raw; } + @Override + public String readString() { + String str = getTop().asRawValue().getString(); + stack.reduceCount(); + return str; + } + @Override public int readArrayBegin() { Value v = getTop(); diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java new file mode 100644 index 000000000..e6b2999bf --- /dev/null +++ b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java @@ -0,0 +1,52 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.math.BigInteger; +import java.nio.ByteBuffer; +import java.io.IOException; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.JSONStreamPacker; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + +import org.junit.Test; + +public class TestSimpleJSONPackUnpack { + @Test + public void testSimplePackUnpack() throws IOException { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream bo = new ByteArrayOutputStream(); + + JSONStreamPacker pk = new JSONStreamPacker(msgpack, bo); + + pk.write( + ValueFactory.mapValue(new Value[] { + ValueFactory.rawValue("k1"), + ValueFactory.integerValue(1), + ValueFactory.rawValue("k2"), + ValueFactory.arrayValue(new Value[] { + ValueFactory.rawValue("a"), + ValueFactory.rawValue("b"), + ValueFactory.rawValue("c") + }), + ValueFactory.rawValue("k3"), + ValueFactory.floatValue(0.1) + })); + + byte[] raw = bo.toByteArray(); + + String str = new String(raw); + assertEquals("{\"k1\":1,\"k2\":[\"a\",\"b\",\"c\"],\"k3\":0.1}", str); + } +} + From 4d97d86b2d7feb9eedac71e465bd0e4c22a8a945 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 16 Jul 2011 07:43:20 +0900 Subject: [PATCH 040/409] fixed JSON packer --- src/main/java/org/msgpack/packer/AbstractJSONPacker.java | 4 ++++ src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java | 8 ++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/packer/AbstractJSONPacker.java b/src/main/java/org/msgpack/packer/AbstractJSONPacker.java index 5a554d6b8..ea1ba2c16 100644 --- a/src/main/java/org/msgpack/packer/AbstractJSONPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractJSONPacker.java @@ -55,15 +55,19 @@ protected AbstractJSONPacker(MessagePack msgpack, Output out) { } public void writeNil() throws IOException { + beginElement(); out.write(NULL, 0, NULL.length); + endElement(); } public void writeBoolean(boolean v) throws IOException { + beginElement(); if(v) { out.write(TRUE, 0, TRUE.length); } else { out.write(FALSE, 0, FALSE.length); } + endElement(); } public void writeByte(byte v) throws IOException { diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java index e6b2999bf..d60099aaf 100644 --- a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java @@ -35,9 +35,9 @@ public void testSimplePackUnpack() throws IOException { ValueFactory.integerValue(1), ValueFactory.rawValue("k2"), ValueFactory.arrayValue(new Value[] { - ValueFactory.rawValue("a"), - ValueFactory.rawValue("b"), - ValueFactory.rawValue("c") + ValueFactory.nilValue(), + ValueFactory.booleanValue(true), + ValueFactory.booleanValue(false) }), ValueFactory.rawValue("k3"), ValueFactory.floatValue(0.1) @@ -46,7 +46,7 @@ public void testSimplePackUnpack() throws IOException { byte[] raw = bo.toByteArray(); String str = new String(raw); - assertEquals("{\"k1\":1,\"k2\":[\"a\",\"b\",\"c\"],\"k3\":0.1}", str); + assertEquals("{\"k1\":1,\"k2\":[null,true,false],\"k3\":0.1}", str); } } From 16a5966bbde81ba01ac05a01e8a2a731c00610b3 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 16 Jul 2011 11:37:21 +0900 Subject: [PATCH 041/409] fixed Converter --- pom.xml | 5 ++ .../java/org/msgpack/unpacker/Converter.java | 74 ++++++++++++++++++- 2 files changed, 78 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a6558370d..9990ca75e 100644 --- a/pom.xml +++ b/pom.xml @@ -39,6 +39,11 @@ slf4j-log4j12 1.4.3 + + com.googlecode.json-simple + json-simple + 1.1 + org.javassist javassist diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 186a4a6f0..127a8816c 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -31,7 +31,7 @@ public class Converter extends Unpacker { private final UnpackerStack stack; private Object[] values; - private Value value; + protected Value value; public Converter(Value value) { this(new MessagePack(), value); @@ -50,6 +50,9 @@ public boolean tryReadNil() { stack.checkCount(); if(getTop().isNil()) { stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return true; } return false; @@ -57,6 +60,10 @@ public boolean tryReadNil() { @Override public boolean trySkipNil() { + if(value == null) { + value = nextValue(); + } + if(stack.getDepth() > 0 && stack.getTopCount() <= 0) { // end of array or map return true; @@ -64,6 +71,9 @@ public boolean trySkipNil() { if(getTop().isNil()) { stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return true; } return false; @@ -75,6 +85,9 @@ public void readNil() { throw new MessageTypeException("Expected nil but got not nil value"); } stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } } @Override @@ -88,6 +101,9 @@ public boolean readBoolean() { public byte readByte() { byte v = getTop().asIntegerValue().getByte(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -95,6 +111,9 @@ public byte readByte() { public short readShort() { short v = getTop().asIntegerValue().getShort(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -102,6 +121,9 @@ public short readShort() { public int readInt() { int v = getTop().asIntegerValue().getInt(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -109,6 +131,9 @@ public int readInt() { public long readLong() { long v = getTop().asIntegerValue().getLong(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -116,6 +141,9 @@ public long readLong() { public BigInteger readBigInteger() { BigInteger v = getTop().asIntegerValue().getBigInteger(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -123,6 +151,9 @@ public BigInteger readBigInteger() { public float readFloat() { float v = getTop().asFloatValue().getFloat(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -130,6 +161,9 @@ public float readFloat() { public double readDouble() { double v = getTop().asFloatValue().getDouble(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return v; } @@ -137,6 +171,9 @@ public double readDouble() { public byte[] readByteArray() { byte[] raw = getTop().asRawValue().getByteArray(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return raw; } @@ -144,6 +181,9 @@ public byte[] readByteArray() { public String readString() { String str = getTop().asRawValue().getString(); stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return str; } @@ -154,6 +194,7 @@ public int readArrayBegin() { throw new MessageTypeException("Expected array but got not array value"); } ArrayValue a = v.asArrayValue(); + stack.reduceCount(); stack.pushArray(a.size()); values[stack.getDepth()] = a.getElementArray(); return a.size(); @@ -175,6 +216,10 @@ public void readArrayEnd(boolean check) { } } stack.pop(); + + if(stack.getDepth() == 0) { + value = null; + } } @Override @@ -184,6 +229,7 @@ public int readMapBegin() { throw new MessageTypeException("Expected array but got not array value"); } MapValue m = v.asMapValue(); + stack.reduceCount(); stack.pushMap(m.size()); values[stack.getDepth()] = m.getKeyValueArray(); return m.size(); @@ -205,9 +251,23 @@ public void readMapEnd(boolean check) { } } stack.pop(); + + if(stack.getDepth() == 0) { + value = null; + } + } + + // FIXME throws IOException? + protected Value nextValue() { + // FIXME EOFError? + throw new NullPointerException("Value is not set"); } private Value getTop() { + if(value == null) { + this.value = nextValue(); + } + stack.checkCount(); if(stack.getDepth() == 0) { if(stack.getTopCount() < 0) { @@ -230,6 +290,9 @@ protected void readValue(Unconverter uc) { Value v = getTop(); if(!v.isArray() && !v.isMap()) { stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } if(uc.getResult() != null) { return; } @@ -246,6 +309,9 @@ protected void readValue(Unconverter uc) { } else { throw new RuntimeException("invalid stack"); // FIXME error? } + if(stack.getDepth() == 0) { + value = null; + } if(uc.getResult() != null) { return; } @@ -280,12 +346,18 @@ public void skip() { Value v = getTop(); if(!v.isArray() && !v.isMap()) { stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } return; } int targetDepth = stack.getDepth(); while(true) { while(stack.getTopCount() == 0) { stack.pop(); + if(stack.getDepth() == 0) { + value = null; + } if(stack.getDepth() <= targetDepth) { return; } From 8da51ea31c763600dd8d96613bd2ed1316404fec Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 16 Jul 2011 13:17:26 +0900 Subject: [PATCH 042/409] fixed Converter --- src/main/java/org/msgpack/unpacker/Converter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 127a8816c..8330e9c17 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -225,8 +225,8 @@ public void readArrayEnd(boolean check) { @Override public int readMapBegin() { Value v = getTop(); - if(!v.isArray()) { - throw new MessageTypeException("Expected array but got not array value"); + if(!v.isMap()) { + throw new MessageTypeException("Expected map but got not map value"); } MapValue m = v.asMapValue(); stack.reduceCount(); From ee8843b46ef08cf07f435fb42c698e4f6bac1200 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 16 Jul 2011 13:39:09 +0900 Subject: [PATCH 043/409] added test programs for reflection-based template builder --- .../TestReflectionBufferPackBufferUnpack.java | 449 ++++++++++++++++ .../TestReflectionBufferPackConvert.java | 489 +++++++++++++++++ .../TestReflectionBufferPackStreamUnpack.java | 434 +++++++++++++++ .../TestReflectionStreamPackBufferUnpack.java | 468 ++++++++++++++++ .../TestReflectionStreamPackConvert.java | 504 ++++++++++++++++++ .../testclasses/ListTypeFieldsClass.java | 26 + 6 files changed, 2370 insertions(+) create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java new file mode 100644 index 000000000..dadd178f9 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -0,0 +1,449 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java new file mode 100644 index 000000000..f6e3081f1 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -0,0 +1,489 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionBufferPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + System.out.println("v : " + v); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + System.out.println("value: " + value); + System.out.println("value class: " + value.getClass().getName()); + Converter unpacker = new Converter(value); + //ListTypeFieldsClass ret = tmpl.read(unpacker, null); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java new file mode 100644 index 000000000..98bb7057c --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java @@ -0,0 +1,434 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestReflectionBufferPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java new file mode 100644 index 000000000..9ab42cb24 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java @@ -0,0 +1,468 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionStreamPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java new file mode 100644 index 000000000..0b6570d8c --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java @@ -0,0 +1,504 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionStreamPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index ca25f411b..517d58494 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -21,6 +21,21 @@ public class ListTypeFieldsClass { public ListTypeFieldsClass() { } + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(this.getClass().getName()); + sb.append("["); + sb.append("f0 = " + f0 + ", "); // f0 + sb.append("f1 = " + f1 + ", "); // f1 + sb.append("f2 = " + f2 + ", "); // f2 + sb.append("f3 = " + f3 + ", "); // f3 + sb.append("f4 = " + f4 + ", "); // f4 + sb.append("f5 = " + f5); + sb.append("]"); + return sb.toString(); + } + @Override public boolean equals(Object o) { if (! (o instanceof ListTypeFieldsClass)) { @@ -149,6 +164,17 @@ public static class NestedClass { public NestedClass() {} + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(this.getClass().getName()); + sb.append("["); + sb.append("f0 = " + f0 + ", "); // f0 + sb.append("f1 = " + f1); // f1 + sb.append("]"); + return sb.toString(); + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass)) { From 16d8f9cfbf02374a6c6b032c5329a7f01ed3fb5a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 16 Jul 2011 16:52:39 +0900 Subject: [PATCH 044/409] trivial modifications --- pom.xml | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/pom.xml b/pom.xml index 9990ca75e..9b10a166e 100644 --- a/pom.xml +++ b/pom.xml @@ -24,10 +24,15 @@ - junit - junit - 4.8.2 - test + com.googlecode.json-simple + json-simple + 1.1 + + + org.javassist + javassist + 3.15.0-GA + compile org.slf4j @@ -40,15 +45,10 @@ 1.4.3 - com.googlecode.json-simple - json-simple - 1.1 - - - org.javassist - javassist - 3.15.0-GA - compile + junit + junit + 4.8.2 + test @@ -125,8 +125,8 @@ - org.apache.maven.plugins - maven-surefire-report-plugin + org.apache.maven.plugins + maven-surefire-report-plugin From 69bbdba157a7d7850a587176e0105dcc584bd823 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 16 Jul 2011 17:08:52 +0900 Subject: [PATCH 045/409] added test programs for reflaction-based enum template builder --- ...tionOrdinalEnumBufferPackBufferUnpack.java | 65 ++++++++++++++++ ...eflectionOrdinalEnumBufferPackConvert.java | 71 ++++++++++++++++++ ...tionOrdinalEnumBufferPackStreamUnpack.java | 65 ++++++++++++++++ ...tionOrdinalEnumStreamPackBufferUnpack.java | 69 +++++++++++++++++ ...eflectionOrdinalEnumStreamPackConvert.java | 75 +++++++++++++++++++ 5 files changed, 345 insertions(+) create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java new file mode 100644 index 000000000..5c048b779 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java @@ -0,0 +1,65 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionOrdinalEnumBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java new file mode 100644 index 000000000..4a114b0d7 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java @@ -0,0 +1,71 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionOrdinalEnumBufferPackConvert extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java new file mode 100644 index 000000000..d2381173e --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java @@ -0,0 +1,65 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestReflectionOrdinalEnumBufferPackStreamUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java new file mode 100644 index 000000000..a255b8440 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java @@ -0,0 +1,69 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionOrdinalEnumStreamPackBufferUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java new file mode 100644 index 000000000..b49052a92 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java @@ -0,0 +1,75 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionOrdinalEnumStreamPackConvert extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v, ret); + } +} From bf4f5b42a244fae910ceef383e9f63684f9af438 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 20 Jul 2011 18:15:33 +0900 Subject: [PATCH 046/409] trivial modifications --- .../TestReflectionBufferPackBufferUnpack.java | 68 ------------------ .../TestReflectionBufferPackConvert.java | 69 ------------------- .../TestReflectionBufferPackStreamUnpack.java | 68 ------------------ ...tionOrdinalEnumBufferPackBufferUnpack.java | 8 --- ...eflectionOrdinalEnumBufferPackConvert.java | 8 --- ...tionOrdinalEnumBufferPackStreamUnpack.java | 8 --- ...tionOrdinalEnumStreamPackBufferUnpack.java | 8 --- ...eflectionOrdinalEnumStreamPackConvert.java | 8 --- ...tionOrdinalEnumStreamPackStreamUnpack.java | 8 --- .../TestReflectionStreamPackBufferUnpack.java | 68 ------------------ .../TestReflectionStreamPackConvert.java | 68 ------------------ .../TestReflectionStreamPackStreamUnpack.java | 68 ------------------ 12 files changed, 457 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index dadd178f9..fe5c11ffd 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -48,10 +48,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -71,10 +67,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -94,10 +86,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -117,10 +105,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -140,10 +124,6 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -163,10 +143,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -186,10 +162,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -209,10 +181,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -232,10 +200,6 @@ public void testFinalClass(FinalClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -278,10 +242,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -301,10 +261,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -324,10 +280,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -347,10 +299,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -370,10 +318,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -393,10 +337,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -416,10 +356,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -439,10 +375,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index f6e3081f1..ddc95a05e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -52,10 +52,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Value value = u.readValue(); Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -77,10 +73,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Value value = u.readValue(); Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -102,10 +94,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Value value = u.readValue(); Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -127,10 +115,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Value value = u.readValue(); Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -154,12 +138,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { System.out.println("value: " + value); System.out.println("value class: " + value.getClass().getName()); Converter unpacker = new Converter(value); - //ListTypeFieldsClass ret = tmpl.read(unpacker, null); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -181,10 +160,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Value value = u.readValue(); Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -206,10 +181,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -231,10 +202,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Value value = u.readValue(); Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -256,10 +223,6 @@ public void testFinalClass(FinalClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -304,10 +267,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -329,10 +288,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Value value = u.readValue(); Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -354,10 +309,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Value value = u.readValue(); Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -379,10 +330,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Value value = u.readValue(); Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -404,10 +351,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -429,10 +372,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Value value = u.readValue(); Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -454,10 +393,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Value value = u.readValue(); Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -479,10 +414,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Value value = u.readValue(); Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java index 98bb7057c..f242a0bf1 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java @@ -49,10 +49,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -71,10 +67,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -93,10 +85,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -115,10 +103,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -137,10 +121,6 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -159,10 +139,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -181,10 +157,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -203,10 +175,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -225,10 +193,6 @@ public void testFinalClass(FinalClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -270,10 +234,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -292,10 +252,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -314,10 +270,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -336,10 +288,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -358,10 +306,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -380,10 +324,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -402,10 +342,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -424,10 +360,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java index 5c048b779..10ca5b68d 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java @@ -31,10 +31,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -56,10 +52,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java index 4a114b0d7..69b2ae73a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java @@ -35,10 +35,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -62,10 +58,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Value value = u.readValue(); Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java index d2381173e..f2a25a9c2 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java @@ -32,10 +32,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -56,10 +52,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) byte[] bytes = packer.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java index a255b8440..028e491b0 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java @@ -34,10 +34,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -60,10 +56,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java index b49052a92..e744f9f62 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java @@ -38,10 +38,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -66,10 +62,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Value value = u.readValue(); Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java index c3377d392..a5ae407b3 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java @@ -34,10 +34,6 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -59,10 +55,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java index 9ab42cb24..70c9879be 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java @@ -51,10 +51,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -75,10 +71,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -99,10 +91,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -123,10 +111,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -147,10 +131,6 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -171,10 +151,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -195,10 +171,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -219,10 +191,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -243,10 +211,6 @@ public void testFinalClass(FinalClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -290,10 +254,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -314,10 +274,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -338,10 +294,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -362,10 +314,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -386,10 +334,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -410,10 +354,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -434,10 +374,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -458,10 +394,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie BufferUnpacker unpacker = new BufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java index 0b6570d8c..68256cfaf 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java @@ -55,10 +55,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Value value = u.readValue(); Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -81,10 +77,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Value value = u.readValue(); Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -107,10 +99,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Value value = u.readValue(); Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -133,10 +121,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Value value = u.readValue(); Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -159,10 +143,6 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -185,10 +165,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Value value = u.readValue(); Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -211,10 +187,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -237,10 +209,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Value value = u.readValue(); Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -263,10 +231,6 @@ public void testFinalClass(FinalClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -312,10 +276,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -338,10 +298,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Value value = u.readValue(); Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -364,10 +320,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Value value = u.readValue(); Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -390,10 +342,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Value value = u.readValue(); Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -416,10 +364,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Value value = u.readValue(); Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -442,10 +386,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Value value = u.readValue(); Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -468,10 +408,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Value value = u.readValue(); Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -494,10 +430,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Value value = u.readValue(); Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java index bf2c248ab..e034c4f5e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java @@ -51,10 +51,6 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -74,10 +70,6 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -97,10 +89,6 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -120,10 +108,6 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -143,10 +127,6 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -166,10 +146,6 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -189,10 +165,6 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -212,10 +184,6 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -235,10 +203,6 @@ public void testFinalClass(FinalClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -281,10 +245,6 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -304,10 +264,6 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -327,10 +283,6 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -350,10 +302,6 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -373,10 +321,6 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -396,10 +340,6 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -419,10 +359,6 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } @@ -442,10 +378,6 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie byte[] bytes = out.toByteArray(); StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - if (v == null) { - assertEquals(null, ret); - return; - } assertEquals(v, ret); } From eddce405681fd954a805a1bdc2aeb3fcacf77c1a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 20 Jul 2011 18:22:58 +0900 Subject: [PATCH 047/409] added javassist-based template builder and the test programs --- .../builder/AbstractTemplateBuilder.java | 6 +- .../template/builder/BuildContext.java | 217 +++++++++ .../template/builder/BuildContextBase.java | 261 +++++++++++ .../template/builder/BuildContextFactory.java | 23 + .../builder/JavassistTemplateBuilder.java | 178 ++++++++ .../TestJavassistBufferPackBufferUnpack.java | 379 +++++++++++++++ .../TestJavassistBufferPackConvert.java | 413 +++++++++++++++++ .../TestJavassistBufferPackStreamUnpack.java | 365 +++++++++++++++ .../TestJavassistStreamPackBufferUnpack.java | 397 ++++++++++++++++ .../TestJavassistStreamPackConvert.java | 431 ++++++++++++++++++ .../TestJavassistStreamPackStreamUnpack.java | 382 ++++++++++++++++ 11 files changed, 3049 insertions(+), 3 deletions(-) create mode 100644 src/main/java/org/msgpack/template/builder/BuildContext.java create mode 100644 src/main/java/org/msgpack/template/builder/BuildContextBase.java create mode 100644 src/main/java/org/msgpack/template/builder/BuildContextFactory.java create mode 100644 src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 83f3602ea..283559ad6 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -89,7 +89,7 @@ public Template loadTemplate(Type targetType) { return null; } - private FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) throws NoSuchFieldException { + protected FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) throws NoSuchFieldException { List src = flist.getList(); FieldEntry[] result = new FieldEntry[src.size()]; for(int i=0; i < src.size(); i++) { @@ -103,7 +103,7 @@ private FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) return result; } - private FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { + protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { Field[] allFields = readAllFields(targetClass); /* index: @@ -153,7 +153,7 @@ private FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicit return result; } - private FieldOption readImplicitFieldOption(Class targetClass) { + protected FieldOption readImplicitFieldOption(Class targetClass) { Message m = targetClass.getAnnotation(Message.class); if (m == null) { return FieldOption.DEFAULT; diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java new file mode 100644 index 000000000..401dd9a0a --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -0,0 +1,217 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + +import org.msgpack.*; +import org.msgpack.template.*; + +import javassist.CannotCompileException; +import javassist.CtClass; +import javassist.CtConstructor; +import javassist.CtNewConstructor; +import javassist.NotFoundException; + +public class BuildContext extends BuildContextBase { + protected FieldEntry[] entries; + protected Class origClass; + protected String origName; + protected Template[] templates; + protected int minimumArrayLength; + + public BuildContext(JavassistTemplateBuilder director) { + super(director); + } + + public Template buildTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + return build(this.origName); + } + + protected void setSuperClass() throws CannotCompileException, NotFoundException { + tmplCtClass.setSuperclass(director.getCtClass( + JavassistTemplateBuilder.JavassistTemplate.class.getName())); + } + + protected void buildConstructor() throws CannotCompileException, + NotFoundException { + // Constructor(Class targetClass, Template[] templates) + CtConstructor newCtCons = CtNewConstructor.make( + new CtClass[] { + director.getCtClass(Class.class.getName()), + director.getCtClass(Template.class.getName() + "[]") + }, new CtClass[0], tmplCtClass); + tmplCtClass.addConstructor(newCtCons); + } + + protected Template buildInstance(Class c) throws NoSuchMethodException, + InstantiationException, IllegalAccessException, InvocationTargetException { + Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); + Object tmpl = cons.newInstance(new Object[] { this.origClass, this.templates }); + return (Template) tmpl; + } + + protected void buildMethodInit() { + minimumArrayLength = 0; + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + // TODO #MN + if (e.isRequired() || !e.isNotNullable()) { + minimumArrayLength = i + 1; + } + } + } + + protected String buildWriteMethodBody() { + resetStringBuilder(); + buildString("{"); + buildString("%s _$$_t = (%s) $2;", this.origName, this.origName); + buildString("$1.writeArrayBegin(%d);", entries.length); + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.writeNil();"); + continue; + } + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("$1.%s(_$$_t.%s);", primitiveWriteName(type), + e.getName()); + } else { + buildString("if (_$$_t.%s == null) {", e.getName()); + if (e.isNotNullable() && !e.isOptional()) { + buildString("throw new %s();", + MessageTypeException.class.getName()); + } else { + buildString("$1.writeNil();"); + } + buildString("} else {"); + buildString(" this.templates[%d].write($1, _$$_t.%s);", i, e.getName()); + buildString("}"); + } + } + buildString("$1.writeArrayEnd();"); + buildString("}"); + return getBuiltString(); + } + + protected String buildReadMethodBody() { + resetStringBuilder(); + buildString("{ "); + + buildString("%s _$$_t;", origName); + buildString("if ($2 == null) {"); + buildString(" _$$_t = new %s();", origName); + buildString("} else {"); + buildString(" _$$_t = (%s) $2;", origName); + buildString("}"); + + buildString("int length = $1.readArrayBegin();"); + buildString("if(length < %d) {", minimumArrayLength); + buildString(" throw new %s();", MessageTypeException.class.getName()); + buildString("}"); + + int i; + for (i = 0; i < minimumArrayLength; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.skip();"); // TODO #MN + continue; + } + + buildString("if($1.tryReadNil()) {"); + if (e.isRequired()) { + // Required + nil => exception + buildString("throw new %s();", MessageTypeException.class.getName()); + } else if (e.isOptional()) { + // Optional + nil => keep default value + } else { // Nullable + // Nullable + nil => set null + buildString("_$$_t.%s = null;", e.getName()); + } + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); + } else { + buildString( + "_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", + e.getName(), e.getJavaTypeName(), i, e.getName()); + } + buildString("}"); + } + + for (; i < entries.length; i++) { + buildString("if (length <= %d) { return _$$_t; }", i); + + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.skip();"); // TODO #MN + continue; + } + + buildString("if($1.tryReadNil()) {"); + // this is Optional field becaue i >= minimumArrayLength + // Optional + nil => keep default value + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); + } else { + buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", + e.getName(), e.getJavaTypeName(), i, e.getName()); + } + buildString("}"); + } + + // latter entries are all Optional + nil => keep default value + + buildString("for(int i = %d; i < length; i++) {", i); + buildString(" $1.skip();"); // TODO #MN + buildString("}"); + + buildString("$1.readArrayEnd();"); + buildString("return _$$_t;"); + + buildString("}"); + return getBuiltString(); + } + + @Override + public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] templates, String directoryName) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + write(this.origName, directoryName); + } + + @Override + public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + return load(this.origName); + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BuildContextBase.java b/src/main/java/org/msgpack/template/builder/BuildContextBase.java new file mode 100644 index 000000000..6ff3ff5fa --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/BuildContextBase.java @@ -0,0 +1,261 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.io.IOException; +import java.lang.reflect.InvocationTargetException; + +import org.msgpack.*; +import org.msgpack.packer.Packer; +import org.msgpack.template.*; +import org.msgpack.unpacker.Unpacker; + +import javassist.CannotCompileException; +import javassist.CtClass; +import javassist.CtMethod; +import javassist.CtNewMethod; +import javassist.NotFoundException; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public abstract class BuildContextBase { + + private static Logger LOG = LoggerFactory.getLogger(BuildContextBase.class); + + protected JavassistTemplateBuilder director; + + protected String tmplName; + + protected CtClass tmplCtClass; + + protected abstract Template buildTemplate(Class targetClass, T[] entries, Template[] templates); + + protected abstract void setSuperClass() throws CannotCompileException, NotFoundException; + + protected abstract void buildConstructor() throws CannotCompileException, NotFoundException; + + public BuildContextBase(JavassistTemplateBuilder director) { + this.director = director; + } + + protected Template build(final String className) { + try { + reset(className, false); + LOG.debug("started generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + LOG.debug("finished generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + return buildInstance(createClass()); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } + } + + protected void reset(String className, boolean isWritten) { + String tmplName = null; + if (!isWritten) { + tmplName = className + "_$$_Template" + "_" + director.hashCode() + "_" + director.nextSeqId(); + } else { + tmplName = className + "_$$_Template"; + } + tmplCtClass = director.makeCtClass(tmplName); + } + + protected void buildClass() throws CannotCompileException, + NotFoundException { + setSuperClass(); + tmplCtClass.addInterface(director.getCtClass(Template.class.getName())); + } + + protected void buildMethodInit() { + } + + protected abstract Template buildInstance(Class c) throws NoSuchMethodException, + InstantiationException, IllegalAccessException, InvocationTargetException; + + protected void buildWriteMethod() throws CannotCompileException, + NotFoundException { + LOG.debug("started generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildWriteMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = CtClass.voidType; + String mname = "write"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Packer.class.getName()), + director.getCtClass(Object.class.getName()) + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(IOException.class.getName()) + }; + LOG.debug("compiling write method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); + } + + protected abstract String buildWriteMethodBody(); + + protected void buildReadMethod() throws CannotCompileException, + NotFoundException { + LOG.debug("started generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildReadMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = director.getCtClass(Object.class.getName()); + String mname = "read"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Unpacker.class.getName()), + director.getCtClass(Object.class.getName()) + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(MessageTypeException.class.getName()) + }; + LOG.debug("compiling read method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); + } + + protected abstract String buildReadMethodBody(); + + protected Class createClass() throws CannotCompileException { + return (Class) tmplCtClass.toClass(null, null); + } + + protected void saveClass(final String directoryName) + throws CannotCompileException, IOException { + tmplCtClass.writeFile(directoryName); + } + + protected StringBuilder stringBuilder = null; + + protected void resetStringBuilder() { + stringBuilder = new StringBuilder(); + } + + protected void buildString(String str) { + stringBuilder.append(str); + } + + protected void buildString(String format, Object... args) { + stringBuilder.append(String.format(format, args)); + } + + protected String getBuiltString() { + if (stringBuilder == null) { + return null; + } + return stringBuilder.toString(); + } + + protected String primitiveWriteName(Class type) { + if (type == boolean.class) { + return "writeBoolean"; + } else if (type == byte.class) { + return "writeByte"; + } else if (type == short.class) { + return "writeShort"; + } else if (type == int.class) { + return "writeInt"; + } else if (type == long.class) { + return "writeLong"; + } else if (type == float.class) { + return "writeFloat"; + } else if (type == double.class) { + return "writeDouble"; + } + return null; + } + + protected String primitiveReadName(Class type) { + if (type == boolean.class) { + return "readBoolean"; + } else if (type == byte.class) { + return "readByte"; + } else if (type == short.class) { + return "readShort"; + } else if (type == int.class) { + return "readInt"; + } else if (type == long.class) { + return "readLong"; + } else if (type == float.class) { + return "readFloat"; + } else if (type == double.class) { + return "readDouble"; + } + return null; + } + + protected abstract void writeTemplate(Class targetClass, T[] entries, Template[] templates, String directoryName); + + protected void write(final String className, final String directoryName) { + try { + reset(className, true); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + saveClass(directoryName); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } + } + + protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); + + protected Template load(final String className) { + String tmplName = className + "_$$_Template"; + try { + Class tmplClass = getClass().getClassLoader() + .loadClass(tmplName); + return buildInstance(tmplClass); + } catch (ClassNotFoundException e) { + return null; + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BuildContextFactory.java b/src/main/java/org/msgpack/template/builder/BuildContextFactory.java new file mode 100644 index 000000000..8671afdb9 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/BuildContextFactory.java @@ -0,0 +1,23 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + + +public interface BuildContextFactory { + public BuildContextBase createBuildContext(JavassistTemplateBuilder builder); +} diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java new file mode 100644 index 000000000..042cb64e2 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -0,0 +1,178 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.Thread; +import java.lang.reflect.Type; + +import javassist.ClassPool; +import javassist.CtClass; +import javassist.LoaderClassPath; +import javassist.NotFoundException; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.MessagePackMessage; +import org.msgpack.template.FieldOption; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; + + +public class JavassistTemplateBuilder extends AbstractTemplateBuilder { + + private static Logger LOG = LoggerFactory.getLogger(JavassistTemplateBuilder.class); + + public static abstract class JavassistTemplate implements Template { + public Class targetClass; + public Template[] templates; + + public JavassistTemplate(Class targetClass, Template[] templates) { + this.targetClass = targetClass; + this.templates = templates; + } + } + + protected ClassPool pool; + + private int seqId = 0; + + BuildContextFactory buildContextFactory = new BuildContextFactory() { + @Override + public BuildContextBase createBuildContext(JavassistTemplateBuilder builder) { + return new BuildContext(builder); + } + }; + + public JavassistTemplateBuilder(TemplateRegistry registry) { + super(registry); + pool = new ClassPool(); + boolean appended = false; + ClassLoader cl = null; + try { + cl = Thread.currentThread().getContextClassLoader(); + if (cl != null) { + pool.appendClassPath(new LoaderClassPath(cl)); + appended = true; + } + } catch (SecurityException e) { + LOG.debug("Cannot append a search path of context classloader", e); + } + try { + ClassLoader cl2 = getClass().getClassLoader(); + if (cl2 != null && cl2 != cl) { + pool.appendClassPath(new LoaderClassPath(cl2)); + appended = true; + } + } catch (SecurityException e) { + LOG.debug("Cannot append a search path of classloader", e); + } + if (!appended) { + pool.appendSystemPath(); + } + } + + @Override + public boolean matchType(Type targetType) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); + } + + public void addClassLoader(ClassLoader cl) { + pool.appendClassPath(new LoaderClassPath(cl)); + } + + public CtClass makeCtClass(String className) { + return pool.makeClass(className); + } + + public CtClass getCtClass(String className) throws NotFoundException { + return pool.get(className); + } + + public int nextSeqId() { + return seqId++; + } + + public void setBuildContextFactory(BuildContextFactory factory){ + buildContextFactory = factory; + } + + public BuildContextFactory getBuildContextFacotry() { + return buildContextFactory; + } + + @Override + public Template buildTemplate(Class targetClass, FieldEntry[] entries) { + // FIXME private / packagefields + //for(FieldEntry e : entries) { + // Field f = e.getField(); + // int mod = f.getModifiers(); + // if(!Modifier.isPublic(mod)) { + // f.setAccessible(true); + // } + //} + Template[] tmpls = toTemplate(entries); + BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + return bc.buildTemplate(targetClass, entries, tmpls); + } + + private Template[] toTemplate(FieldEntry[] from) { + Template[] tmpls = new Template[from.length]; + for(int i = 0; i < from.length; ++i) { + FieldEntry e = from[i]; + if(!e.isAvailable()) { + tmpls[i] = null; + } else { + Template tmpl = registry.lookup(e.getGenericType(), true); + tmpls[i] = tmpl; + } + } + return tmpls; + } + + @Override + public void writeTemplate(Type targetType, String directoryName) { + Class targetClass = (Class)targetType; + checkClassValidation(targetClass); + FieldOption implicitOption = readImplicitFieldOption(targetClass); + FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + writeTemplate(targetClass, entries, directoryName); + } + + private void writeTemplate(Class targetClass, FieldEntry[] entries, String directoryName) { + Template[] tmpls = toTemplate(entries); + BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + bc.writeTemplate(targetClass, entries, tmpls, directoryName); + } + + @Override + public Template loadTemplate(Type targetType) { + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + FieldOption implicitOption = readImplicitFieldOption(targetClass); + FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + return loadTemplate(targetClass, entries); + } + + private Template loadTemplate(Class targetClass, FieldEntry[] entries) { + Template[] tmpls = toTemplate(entries); + BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + return bc.loadTemplate(targetClass, entries, tmpls); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java new file mode 100644 index 000000000..9642ae24e --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -0,0 +1,379 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestJavassistBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java new file mode 100644 index 000000000..ea324ed2e --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -0,0 +1,413 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestJavassistBufferPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java new file mode 100644 index 000000000..1a946636d --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java @@ -0,0 +1,365 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestJavassistBufferPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java new file mode 100644 index 000000000..353fb4712 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java @@ -0,0 +1,397 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestJavassistStreamPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java new file mode 100644 index 000000000..d809bd66c --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java @@ -0,0 +1,431 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestJavassistStreamPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java new file mode 100644 index 000000000..d8d26d688 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java @@ -0,0 +1,382 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestJavassistStreamPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} From 43465ea0e3d29ce86f92475cc9b891af579467c2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 22 Jul 2011 09:15:22 +0900 Subject: [PATCH 048/409] added settter and getter methods to test classes of org.msgpack.testclasses package for needing to unit-test beans-based template builder --- .../testclasses/EnumTypeFieldsClass.java | 17 ++++ .../EnumTypeFieldsClassNotNullable.java | 17 ++++ .../org/msgpack/testclasses/FinalClass.java | 17 ++++ .../msgpack/testclasses/InheritanceClass.java | 17 ++++ .../InheritanceClassNotNullable.java | 17 ++++ .../testclasses/ListTypeFieldsClass.java | 88 ++++++++++++----- .../ListTypeFieldsClassNotNullable.java | 70 +++++++++++++ .../testclasses/MapTypeFieldsClass.java | 43 ++++++++ .../MapTypeFieldsClassNotNullable.java | 43 ++++++++ .../MessagePackableTypeFieldsClass.java | 45 ++++++++- ...agePackableTypeFieldsClassNotNullable.java | 50 +++++++++- .../testclasses/ModifiersFieldsClass.java | 36 +++++++ .../ModifiersFieldsClassNotNullable.java | 36 +++++++ .../testclasses/PrimitiveTypeFieldsClass.java | 62 ++++++++++++ .../PrimitiveTypeFieldsClassNotNullable.java | 62 ++++++++++++ .../testclasses/ReferenceTypeFieldsClass.java | 98 +++++++++++++++++++ .../ReferenceTypeFieldsClassNotNullable.java | 98 +++++++++++++++++++ .../org/msgpack/testclasses/SuperClass.java | 8 ++ .../testclasses/SuperClassNotNullable.java | 8 ++ .../UserDefinedTypeFieldsClass.java | 51 ++++++++++ ...UserDefinedTypeFieldsClassNotNullable.java | 51 ++++++++++ 21 files changed, 908 insertions(+), 26 deletions(-) diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java index 90a14f63a..13d341441 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java @@ -8,10 +8,27 @@ @Ignore @Message public class EnumTypeFieldsClass { public int f0; + public SampleEnum f1; public EnumTypeFieldsClass() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public SampleEnum getF1() { + return f1; + } + + public void setF1(SampleEnum f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof EnumTypeFieldsClass)) { diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java index 95aef5b57..e833e16fe 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java @@ -10,11 +10,28 @@ public class EnumTypeFieldsClassNotNullable { @NotNullable public int f0; + @NotNullable public SampleEnum f1; public EnumTypeFieldsClassNotNullable() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public SampleEnum getF1() { + return f1; + } + + public void setF1(SampleEnum f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof EnumTypeFieldsClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java index 0e03589d0..71740963f 100644 --- a/src/test/java/org/msgpack/testclasses/FinalClass.java +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -7,11 +7,28 @@ @Ignore @Message public final class FinalClass { public int f0; + public String f1; public FinalClass() { } + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof FinalClass)) { diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java index 9ce45cc57..9a346b69f 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClass.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -7,10 +7,27 @@ @Ignore @Message public class InheritanceClass extends SuperClass { public String f1; + public int f2; public InheritanceClass() {} + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + @Override public boolean equals(Object o) { if (! (o instanceof InheritanceClass)) { diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java index e1d9d0741..e9a555777 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -9,11 +9,28 @@ public class InheritanceClassNotNullable extends SuperClassNotNullable { @NotNullable public String f1; + @NotNullable public int f2; public InheritanceClassNotNullable() {} + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + @Override public boolean equals(Object o) { if (! (o instanceof InheritanceClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index 517d58494..f3be64f36 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -12,28 +12,66 @@ @Ignore @Message public class ListTypeFieldsClass { public List f0; + public List f1; + public List f2; + public List> f3; + public List f4; + public List f5; public ListTypeFieldsClass() { } - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append(this.getClass().getName()); - sb.append("["); - sb.append("f0 = " + f0 + ", "); // f0 - sb.append("f1 = " + f1 + ", "); // f1 - sb.append("f2 = " + f2 + ", "); // f2 - sb.append("f3 = " + f3 + ", "); // f3 - sb.append("f4 = " + f4 + ", "); // f4 - sb.append("f5 = " + f5); - sb.append("]"); - return sb.toString(); + public List getF0() { + return f0; + } + + public void setF0(List f0) { + this.f0 = f0; + } + + public List getF1() { + return f1; + } + + public void setF1(List f1) { + this.f1 = f1; + } + + public List getF2() { + return f2; + } + + public void setF2(List f2) { + this.f2 = f2; + } + + public List> getF3() { + return f3; + } + + public void setF3(List> f3) { + this.f3 = f3; + } + + public List getF4() { + return f4; + } + + public void setF4(List f4) { + this.f4 = f4; + } + + public List getF5() { + return f5; + } + + public void setF5(List f5) { + this.f5 = f5; } @Override @@ -160,19 +198,25 @@ public boolean equals(Object o) { @Ignore @Message public static class NestedClass { public byte[] f0; + public String f1; public NestedClass() {} - @Override - public String toString() { - StringBuilder sb = new StringBuilder(); - sb.append(this.getClass().getName()); - sb.append("["); - sb.append("f0 = " + f0 + ", "); // f0 - sb.append("f1 = " + f1); // f1 - sb.append("]"); - return sb.toString(); + public byte[] getF0() { + return f0; + } + + public void setF0(byte[] f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; } @Override diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java index 9882a641b..e0b9d169b 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -14,20 +14,73 @@ public class ListTypeFieldsClassNotNullable { @NotNullable public List f0; + @NotNullable public List f1; + @NotNullable public List f2; + @NotNullable public List> f3; + @NotNullable public List f4; + @NotNullable public List f5; public ListTypeFieldsClassNotNullable() { } + public List getF0() { + return f0; + } + + public void setF0(List f0) { + this.f0 = f0; + } + + public List getF1() { + return f1; + } + + public void setF1(List f1) { + this.f1 = f1; + } + + public List getF2() { + return f2; + } + + public void setF2(List f2) { + this.f2 = f2; + } + + public List> getF3() { + return f3; + } + + public void setF3(List> f3) { + this.f3 = f3; + } + + public List getF4() { + return f4; + } + + public void setF4(List f4) { + this.f4 = f4; + } + + public List getF5() { + return f5; + } + + public void setF5(List f5) { + this.f5 = f5; + } + @Override public boolean equals(Object o) { if (! (o instanceof ListTypeFieldsClassNotNullable)) { @@ -153,11 +206,28 @@ public boolean equals(Object o) { public static class NestedClass { @NotNullable public byte[] f0; + @NotNullable public String f1; public NestedClass() {} + public byte[] getF0() { + return f0; + } + + public void setF0(byte[] f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass)) { diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java index f6d5b4752..3628595cc 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -9,13 +9,48 @@ @Ignore @Message public class MapTypeFieldsClass { public Map f0; + public Map f1; + public Map f2; + public Map f3; public MapTypeFieldsClass() { } + public Map getF0() { + return f0; + } + + public void setF0(Map f0) { + this.f0 = f0; + } + + public Map getF1() { + return f1; + } + + public void setF1(Map f1) { + this.f1 = f1; + } + + public Map getF2() { + return f2; + } + + public void setF2(Map f2) { + this.f2 = f2; + } + + public Map getF3() { + return f3; + } + + public void setF3(Map f3) { + this.f3 = f3; + } + @Override public boolean equals(Object o) { if (! (o instanceof MapTypeFieldsClass)) { @@ -83,6 +118,14 @@ public static class NestedClass { public NestedClass() {} + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass)) { diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java index be47ad35f..defa8b6f5 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -11,16 +11,51 @@ public class MapTypeFieldsClassNotNullable { @NotNullable public Map f0; + @NotNullable public Map f1; + @NotNullable public Map f2; + @NotNullable public Map f3; public MapTypeFieldsClassNotNullable() { } + public Map getF0() { + return f0; + } + + public void setF0(Map f0) { + this.f0 = f0; + } + + public Map getF1() { + return f1; + } + + public void setF1(Map f1) { + this.f1 = f1; + } + + public Map getF2() { + return f2; + } + + public void setF2(Map f2) { + this.f2 = f2; + } + + public Map getF3() { + return f3; + } + + public void setF3(Map f3) { + this.f3 = f3; + } + @Override public boolean equals(Object o) { if (! (o instanceof MapTypeFieldsClassNotNullable)) { @@ -89,6 +124,14 @@ public static class NestedClass { public NestedClass() {} + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + @Override public boolean equals(Object o) { if (!(o instanceof NestedClass)) { diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index bc91a4e7a..6328da93e 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -15,10 +15,27 @@ @Ignore @Message public class MessagePackableTypeFieldsClass { public String f0; + public NestedClass f1; public MessagePackableTypeFieldsClass() {} + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + + public NestedClass getF1() { + return f1; + } + + public void setF1(NestedClass f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof MessagePackableTypeFieldsClass)) { @@ -49,12 +66,38 @@ public boolean equals(Object o) { @Ignore public static class NestedClass implements MessagePackable { public String f0; + public int[] f1; + public List f2; public NestedClass() { } - public void writeTo(Packer packer) throws IOException { + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + + public int[] getF1() { + return f1; + } + + public void setF1(int[] f1) { + this.f1 = f1; + } + + public List getF2() { + return f2; + } + + public void setF2(List f2) { + this.f2 = f2; + } + + public void writeTo(Packer packer) throws IOException { packer.writeArrayBegin(3); { packer.writeString(f0); diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index f80762e0c..41abc7cda 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -17,9 +17,29 @@ public class MessagePackableTypeFieldsClassNotNullable { @NotNullable public String f0; + @NotNullable public NestedClass f1; + public MessagePackableTypeFieldsClassNotNullable() { + } + + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + + public NestedClass getF1() { + return f1; + } + + public void setF1(NestedClass f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof MessagePackableTypeFieldsClassNotNullable)) { @@ -47,17 +67,41 @@ public boolean equals(Object o) { return true; } - public MessagePackableTypeFieldsClassNotNullable() {} - @Ignore public static class NestedClass implements MessagePackable { public String f0; + public int[] f1; + public List f2; public NestedClass() { } - public void writeTo(Packer packer) throws IOException { + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + + public int[] getF1() { + return f1; + } + + public void setF1(int[] f1) { + this.f1 = f1; + } + + public List getF2() { + return f2; + } + + public void setF2(List f2) { + this.f2 = f2; + } + + public void writeTo(Packer packer) throws IOException { packer.writeArrayBegin(3); packer.writeString(f0); packer.writeArrayBegin(f1.length); diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index bb58e91bf..94c350d2a 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -7,13 +7,49 @@ @Ignore @Message public class ModifiersFieldsClass { public int f0; + public final int f1 = 1; + private int f2; + protected int f3; + int f4; public ModifiersFieldsClass() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + + public int getF3() { + return f3; + } + + public void setF3(int f3) { + this.f3 = f3; + } + + public int getF4() { + return f4; + } + + public void setF4(int f4) { + this.f4 = f4; + } + @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClass)) { diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index 27f7082ef..c4656d74d 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -9,17 +9,53 @@ public class ModifiersFieldsClassNotNullable { @NotNullable public int f0; + @NotNullable public final int f1 = 1; + @NotNullable private int f2; + @NotNullable protected int f3; + @NotNullable int f4; public ModifiersFieldsClassNotNullable() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + + public int getF3() { + return f3; + } + + public void setF3(int f3) { + this.f3 = f3; + } + + public int getF4() { + return f4; + } + + public void setF4(int f4) { + this.f4 = f4; + } + @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java index ecbb285d0..7e765b574 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java @@ -7,15 +7,77 @@ @Ignore @Message public class PrimitiveTypeFieldsClass { public byte f0; + public short f1; + public int f2; + public long f3; + public float f4; + public double f5; + public boolean f6; public PrimitiveTypeFieldsClass() {} + public byte getF0() { + return f0; + } + + public void setF0(byte f0) { + this.f0 = f0; + } + + public short getF1() { + return f1; + } + + public void setF1(short f1) { + this.f1 = f1; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + + public long getF3() { + return f3; + } + + public void setF3(long f3) { + this.f3 = f3; + } + + public float getF4() { + return f4; + } + + public void setF4(float f4) { + this.f4 = f4; + } + + public double getF5() { + return f5; + } + + public void setF5(double f5) { + this.f5 = f5; + } + + public boolean isF6() { + return f6; + } + + public void setF6(boolean f6) { + this.f6 = f6; + } + @Override public boolean equals(Object o) { if (! (o instanceof PrimitiveTypeFieldsClass)) { diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java index 3bdbe0599..55686de34 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java @@ -9,21 +9,83 @@ public class PrimitiveTypeFieldsClassNotNullable { @NotNullable public byte f0; + @NotNullable public short f1; + @NotNullable public int f2; + @NotNullable public long f3; + @NotNullable public float f4; + @NotNullable public double f5; + @NotNullable public boolean f6; public PrimitiveTypeFieldsClassNotNullable() {} + public byte getF0() { + return f0; + } + + public void setF0(byte f0) { + this.f0 = f0; + } + + public short getF1() { + return f1; + } + + public void setF1(short f1) { + this.f1 = f1; + } + + public int getF2() { + return f2; + } + + public void setF2(int f2) { + this.f2 = f2; + } + + public long getF3() { + return f3; + } + + public void setF3(long f3) { + this.f3 = f3; + } + + public float getF4() { + return f4; + } + + public void setF4(float f4) { + this.f4 = f4; + } + + public double getF5() { + return f5; + } + + public void setF5(double f5) { + this.f5 = f5; + } + + public boolean isF6() { + return f6; + } + + public void setF6(boolean f6) { + this.f6 = f6; + } + @Override public boolean equals(Object o) { if (! (o instanceof PrimitiveTypeFieldsClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java index 73966a3ba..164d24e81 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java @@ -11,19 +11,117 @@ @Ignore @Message public class ReferenceTypeFieldsClass { public Byte f0; + public Short f1; + public Integer f2; + public Long f3; + public Float f4; + public Double f5; + public Boolean f6; + public BigInteger f7; + public String f8; + public byte[] f9; + public ByteBuffer f10; public ReferenceTypeFieldsClass() {} + public Byte getF0() { + return f0; + } + + public void setF0(Byte f0) { + this.f0 = f0; + } + + public Short getF1() { + return f1; + } + + public void setF1(Short f1) { + this.f1 = f1; + } + + public Integer getF2() { + return f2; + } + + public void setF2(Integer f2) { + this.f2 = f2; + } + + public Long getF3() { + return f3; + } + + public void setF3(Long f3) { + this.f3 = f3; + } + + public Float getF4() { + return f4; + } + + public void setF4(Float f4) { + this.f4 = f4; + } + + public Double getF5() { + return f5; + } + + public void setF5(Double f5) { + this.f5 = f5; + } + + public Boolean getF6() { + return f6; + } + + public void setF6(Boolean f6) { + this.f6 = f6; + } + + public BigInteger getF7() { + return f7; + } + + public void setF7(BigInteger f7) { + this.f7 = f7; + } + + public String getF8() { + return f8; + } + + public void setF8(String f8) { + this.f8 = f8; + } + + public byte[] getF9() { + return f9; + } + + public void setF9(byte[] f9) { + this.f9 = f9; + } + + public ByteBuffer getF10() { + return f10; + } + + public void setF10(ByteBuffer f10) { + this.f10 = f10; + } + @Override public boolean equals(Object o) { if (! (o instanceof ReferenceTypeFieldsClass)) { diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java index b4f442d47..87d8883ee 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java @@ -13,29 +13,127 @@ public class ReferenceTypeFieldsClassNotNullable { @NotNullable public Byte f0; + @NotNullable public Short f1; + @NotNullable public Integer f2; + @NotNullable public Long f3; + @NotNullable public Float f4; + @NotNullable public Double f5; + @NotNullable public Boolean f6; + @NotNullable public BigInteger f7; + @NotNullable public String f8; + @NotNullable public byte[] f9; + @NotNullable public ByteBuffer f10; public ReferenceTypeFieldsClassNotNullable() {} + public Byte getF0() { + return f0; + } + + public void setF0(Byte f0) { + this.f0 = f0; + } + + public Short getF1() { + return f1; + } + + public void setF1(Short f1) { + this.f1 = f1; + } + + public Integer getF2() { + return f2; + } + + public void setF2(Integer f2) { + this.f2 = f2; + } + + public Long getF3() { + return f3; + } + + public void setF3(Long f3) { + this.f3 = f3; + } + + public Float getF4() { + return f4; + } + + public void setF4(Float f4) { + this.f4 = f4; + } + + public Double getF5() { + return f5; + } + + public void setF5(Double f5) { + this.f5 = f5; + } + + public Boolean getF6() { + return f6; + } + + public void setF6(Boolean f6) { + this.f6 = f6; + } + + public BigInteger getF7() { + return f7; + } + + public void setF7(BigInteger f7) { + this.f7 = f7; + } + + public String getF8() { + return f8; + } + + public void setF8(String f8) { + this.f8 = f8; + } + + public byte[] getF9() { + return f9; + } + + public void setF9(byte[] f9) { + this.f9 = f9; + } + + public ByteBuffer getF10() { + return f10; + } + + public void setF10(ByteBuffer f10) { + this.f10 = f10; + } + @Override public boolean equals(Object o) { if (! (o instanceof ReferenceTypeFieldsClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java index 4e0cce537..648501f2a 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClass.java +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -10,6 +10,14 @@ public class SuperClass { public SuperClass() {} + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + @Override public boolean equals(Object o) { if (! (o instanceof SuperClass)) { diff --git a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java index bbf761fb8..bea1e7683 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java @@ -12,6 +12,14 @@ public class SuperClassNotNullable { public SuperClassNotNullable() {} + public String getF0() { + return f0; + } + + public void setF0(String f0) { + this.f0 = f0; + } + @Override public boolean equals(Object o) { if (! (o instanceof SuperClassNotNullable)) { diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java index 2ff90f2fc..88a506c9b 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java @@ -7,10 +7,27 @@ @Ignore @Message public class UserDefinedTypeFieldsClass { public NestedClass1 f0; + public NestedClass2 f1; public UserDefinedTypeFieldsClass () {} + public NestedClass1 getF0() { + return f0; + } + + public void setF0(NestedClass1 f0) { + this.f0 = f0; + } + + public NestedClass2 getF1() { + return f1; + } + + public void setF1(NestedClass2 f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof UserDefinedTypeFieldsClass)) { @@ -41,10 +58,27 @@ public boolean equals(Object o) { @Ignore @Message public static class NestedClass1 { public int f0; + public String f1; public NestedClass1() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass1)) { @@ -69,10 +103,27 @@ public boolean equals(Object o) { @Ignore @Message public static class NestedClass2 { public int f0; + public String f1; public NestedClass2() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass2)) { diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java index df62c5d8e..6e55f90cd 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -9,11 +9,28 @@ public class UserDefinedTypeFieldsClassNotNullable { @NotNullable public NestedClass1 f0; + @NotNullable public NestedClass2 f1; public UserDefinedTypeFieldsClassNotNullable () {} + public NestedClass1 getF0() { + return f0; + } + + public void setF0(NestedClass1 f0) { + this.f0 = f0; + } + + public NestedClass2 getF1() { + return f1; + } + + public void setF1(NestedClass2 f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof UserDefinedTypeFieldsClassNotNullable)) { @@ -45,11 +62,28 @@ public boolean equals(Object o) { public static class NestedClass1 { @NotNullable public int f0; + @NotNullable public String f1; public NestedClass1() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass1)) { @@ -75,11 +109,28 @@ public boolean equals(Object o) { public static class NestedClass2 { @NotNullable public int f0; + @NotNullable public String f1; public NestedClass2() {} + public int getF0() { + return f0; + } + + public void setF0(int f0) { + this.f0 = f0; + } + + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + @Override public boolean equals(Object o) { if (! (o instanceof NestedClass2)) { From a201303533b2b7b1bd54333f9df19baece803f29 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 22 Jul 2011 20:05:51 +0900 Subject: [PATCH 049/409] appended @Beans to each class in org.msgpack.testclasses package --- src/test/java/org/msgpack/testclasses/AbstractClass.java | 3 ++- .../java/org/msgpack/testclasses/EnumTypeFieldsClass.java | 3 ++- .../testclasses/EnumTypeFieldsClassNotNullable.java | 3 ++- src/test/java/org/msgpack/testclasses/FinalClass.java | 3 ++- .../java/org/msgpack/testclasses/InheritanceClass.java | 3 ++- .../msgpack/testclasses/InheritanceClassNotNullable.java | 3 ++- src/test/java/org/msgpack/testclasses/Interface.java | 3 ++- .../java/org/msgpack/testclasses/ListTypeFieldsClass.java | 5 +++-- .../testclasses/ListTypeFieldsClassNotNullable.java | 5 +++-- .../java/org/msgpack/testclasses/MapTypeFieldsClass.java | 5 +++-- .../msgpack/testclasses/MapTypeFieldsClassNotNullable.java | 5 +++-- .../testclasses/MessagePackableTypeFieldsClass.java | 3 ++- .../MessagePackableTypeFieldsClassNotNullable.java | 3 ++- .../java/org/msgpack/testclasses/ModifiersFieldsClass.java | 3 ++- .../testclasses/ModifiersFieldsClassNotNullable.java | 3 ++- .../org/msgpack/testclasses/PrimitiveTypeFieldsClass.java | 3 ++- .../testclasses/PrimitiveTypeFieldsClassNotNullable.java | 3 ++- .../org/msgpack/testclasses/ReferenceTypeFieldsClass.java | 3 ++- .../testclasses/ReferenceTypeFieldsClassNotNullable.java | 3 ++- src/test/java/org/msgpack/testclasses/SuperClass.java | 3 ++- .../org/msgpack/testclasses/SuperClassNotNullable.java | 3 ++- .../msgpack/testclasses/UserDefinedTypeFieldsClass.java | 7 ++++--- .../testclasses/UserDefinedTypeFieldsClassNotNullable.java | 7 ++++--- 23 files changed, 54 insertions(+), 31 deletions(-) diff --git a/src/test/java/org/msgpack/testclasses/AbstractClass.java b/src/test/java/org/msgpack/testclasses/AbstractClass.java index 2c34386c9..cef711a2e 100644 --- a/src/test/java/org/msgpack/testclasses/AbstractClass.java +++ b/src/test/java/org/msgpack/testclasses/AbstractClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public abstract class AbstractClass { @Override diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java index 13d341441..3b48b592e 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClass.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.OrdinalEnum; -@Ignore @Message +@Ignore @Message @Beans public class EnumTypeFieldsClass { public int f0; diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java index e833e16fe..6a15a9374 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java @@ -1,12 +1,13 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; import org.msgpack.annotation.OrdinalEnum; -@Ignore @Message +@Ignore @Message @Beans public class EnumTypeFieldsClassNotNullable { @NotNullable public int f0; diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java index 71740963f..72eb5b619 100644 --- a/src/test/java/org/msgpack/testclasses/FinalClass.java +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public final class FinalClass { public int f0; diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java index 9a346b69f..d2be7585f 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClass.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class InheritanceClass extends SuperClass { public String f1; diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java index e9a555777..30da464c0 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class InheritanceClassNotNullable extends SuperClassNotNullable { @NotNullable public String f1; diff --git a/src/test/java/org/msgpack/testclasses/Interface.java b/src/test/java/org/msgpack/testclasses/Interface.java index 9d0e2bf61..e221ef0f6 100644 --- a/src/test/java/org/msgpack/testclasses/Interface.java +++ b/src/test/java/org/msgpack/testclasses/Interface.java @@ -1,9 +1,10 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public interface Interface { } diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index f3be64f36..8f4c93b3f 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -5,11 +5,12 @@ import java.util.List; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.template.builder.TestSet; -@Ignore @Message +@Ignore @Message @Beans public class ListTypeFieldsClass { public List f0; @@ -195,7 +196,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass { public byte[] f0; diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java index e0b9d169b..6747ff8a6 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -5,12 +5,13 @@ import java.util.List; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; import org.msgpack.template.builder.TestSet; -@Ignore @Message +@Ignore @Message @Beans public class ListTypeFieldsClassNotNullable { @NotNullable public List f0; @@ -202,7 +203,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass { @NotNullable public byte[] f0; diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java index 3628595cc..db1892d28 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -3,10 +3,11 @@ import java.util.Map; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class MapTypeFieldsClass { public Map f0; @@ -112,7 +113,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass { public String f0; diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java index defa8b6f5..9bf9dea52 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -3,11 +3,12 @@ import java.util.Map; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class MapTypeFieldsClassNotNullable { @NotNullable public Map f0; @@ -117,7 +118,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass { @NotNullable public String f0; diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index 6328da93e..cc3419156 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -7,12 +7,13 @@ import org.junit.Ignore; import org.msgpack.MessagePackable; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; -@Ignore @Message +@Ignore @Message @Beans public class MessagePackableTypeFieldsClass { public String f0; diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index 41abc7cda..4fb953e86 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -7,13 +7,14 @@ import org.junit.Ignore; import org.msgpack.MessagePackable; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; -@Ignore @Message +@Ignore @Message @Beans public class MessagePackableTypeFieldsClassNotNullable { @NotNullable public String f0; diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index 94c350d2a..7557ca3fa 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class ModifiersFieldsClass { public int f0; diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index c4656d74d..2b33518de 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class ModifiersFieldsClassNotNullable { @NotNullable public int f0; diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java index 7e765b574..758ecc8a2 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class PrimitiveTypeFieldsClass { public byte f0; diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java index 55686de34..8877a910f 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class PrimitiveTypeFieldsClassNotNullable { @NotNullable public byte f0; diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java index 164d24e81..38c587aa7 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java @@ -4,11 +4,12 @@ import java.nio.ByteBuffer; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.template.builder.TestSet; -@Ignore @Message +@Ignore @Message @Beans public class ReferenceTypeFieldsClass { public Byte f0; diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java index 87d8883ee..e2c734ec1 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java @@ -4,12 +4,13 @@ import java.nio.ByteBuffer; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; import org.msgpack.template.builder.TestSet; -@Ignore @Message +@Ignore @Message @Beans public class ReferenceTypeFieldsClassNotNullable { @NotNullable public Byte f0; diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java index 648501f2a..eb19ef46e 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClass.java +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class SuperClass { public String f0; diff --git a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java index bea1e7683..ec26b358d 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class SuperClassNotNullable { @NotNullable public String f0; diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java index 88a506c9b..a056cb0fc 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java @@ -1,10 +1,11 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; -@Ignore @Message +@Ignore @Message @Beans public class UserDefinedTypeFieldsClass { public NestedClass1 f0; @@ -55,7 +56,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass1 { public int f0; @@ -100,7 +101,7 @@ public boolean equals(Object o) { } } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass2 { public int f0; diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java index 6e55f90cd..1b4af3ffe 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -1,11 +1,12 @@ package org.msgpack.testclasses; import org.junit.Ignore; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Message; import org.msgpack.annotation.NotNullable; -@Ignore @Message +@Ignore @Message @Beans public class UserDefinedTypeFieldsClassNotNullable { @NotNullable public NestedClass1 f0; @@ -58,7 +59,7 @@ public boolean equals(Object o) { return true; } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass1 { @NotNullable public int f0; @@ -105,7 +106,7 @@ public boolean equals(Object o) { } } - @Ignore @Message + @Ignore @Message @Beans public static class NestedClass2 { @NotNullable public int f0; From 4488c9ff0103982d08b70d8e3c1e20c70be9627e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 22 Jul 2011 20:49:44 +0900 Subject: [PATCH 050/409] refactored several programs related to template builder and added reflection-based beans template builder --- .../builder/AbstractTemplateBuilder.java | 8 +- .../template/builder/BeansBuildContext.java | 208 ++++++++++ .../template/builder/BeansFieldEntry.java | 83 ++++ .../template/builder/DefaultFieldEntry.java | 64 ++++ .../msgpack/template/builder/FieldEntry.java | 59 ++- .../ReflectionBeansTemplateBuilder.java | 359 ++++++++++++++++++ .../builder/ReflectionTemplateBuilder.java | 28 +- .../builder/TemplateBuilderChain.java | 1 + 8 files changed, 757 insertions(+), 53 deletions(-) create mode 100644 src/main/java/org/msgpack/template/builder/BeansBuildContext.java create mode 100644 src/main/java/org/msgpack/template/builder/BeansFieldEntry.java create mode 100644 src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java create mode 100644 src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 283559ad6..ab9ebec90 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -95,9 +95,9 @@ protected FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist for(int i=0; i < src.size(); i++) { FieldList.Entry s = src.get(i); if(s.isAvailable()) { - result[i] = new FieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); + result[i] = new DefaultFieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); } else { - result[i] = new FieldEntry(); + result[i] = new DefaultFieldEntry(); } } return result; @@ -134,7 +134,7 @@ protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implic while(indexed.size() <= index) { indexed.add(null); } - indexed.set(index, new FieldEntry(f, opt)); + indexed.set(index, new DefaultFieldEntry(f, opt)); if(maxIndex < index) { maxIndex = index; @@ -145,7 +145,7 @@ protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implic for(int i=0; i < indexed.size(); i++) { FieldEntry e = indexed.get(i); if(e == null) { - result[i] = new FieldEntry(); + result[i] = new DefaultFieldEntry(); } else { result[i] = e; } diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java new file mode 100644 index 000000000..e837690f5 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -0,0 +1,208 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + +import org.msgpack.*; +import org.msgpack.template.*; + +import javassist.CannotCompileException; +import javassist.CtClass; +import javassist.CtConstructor; +import javassist.CtNewConstructor; +import javassist.NotFoundException; + + +public class BeansBuildContext extends BuildContextBase { + protected BeansFieldEntry[] entries; + protected Class origClass; + protected String origName; + protected Template[] templates; + protected int minimumArrayLength; + + public BeansBuildContext(JavassistTemplateBuilder director) { + super(director); + } + + public Template buildTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + return build(this.origName); + } + + protected void setSuperClass() throws CannotCompileException, NotFoundException { + tmplCtClass.setSuperclass(director.getCtClass( + JavassistTemplateBuilder.JavassistTemplate.class.getName())); + } + + protected void buildConstructor() throws CannotCompileException, + NotFoundException { + // Constructor(Class targetClass, Template[] templates) + CtConstructor newCtCons = CtNewConstructor.make( + new CtClass[] { + director.getCtClass(Class.class.getName()), + director.getCtClass(Template.class.getName() + "[]") + }, + new CtClass[0], this.tmplCtClass); + this.tmplCtClass.addConstructor(newCtCons); + } + + protected Template buildInstance(Class c) throws NoSuchMethodException, + InstantiationException, IllegalAccessException, + InvocationTargetException { + Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); + Object tmpl = cons.newInstance(new Object[] { origClass, templates }); + return (Template) tmpl; + } + + protected void buildMethodInit() { + this.minimumArrayLength = 0; + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + if (e.isRequired() || !e.isNotNullable()) { + this.minimumArrayLength = i + 1; + } + } + } + + @Override + protected String buildWriteMethodBody() { + resetStringBuilder(); + buildString("{"); + buildString("%s _$$_t = (%s)$2;", origName, origName); + buildString("$1.packArray(%d);", entries.length); + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.packNil();"); + continue; + } + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("$1.%s(_$$_t.%s());", primitiveWriteName(type), e.getGetterName()); + } else { + buildString("if(_$$_t.%s() == null) {", e.getGetterName()); + if (e.isNotNullable() && !e.isOptional()) { + buildString("throw new %s();", MessageTypeException.class.getName()); + } else { + buildString("$1.packNil();"); + } + buildString("} else {"); + buildString(" this.templates[%d].pack($1, _$$_t.%s());", i, e.getGetterName()); + buildString("}"); + } + } + buildString("}"); + return getBuiltString(); + } + + @Override + protected String buildReadMethodBody() { + resetStringBuilder(); + buildString("{ "); + + buildString("%s _$$_t;", this.origName); + buildString("if($2 == null) {"); + buildString(" _$$_t = new %s();", this.origName); + buildString("} else {"); + buildString(" _$$_t = (%s)$2;", this.origName); + buildString("}"); + + buildString("int length = $1.unpackArray();"); + buildString("if(length < %d) {", this.minimumArrayLength); + buildString(" throw new %s();", MessageTypeException.class.getName()); + buildString("}"); + + int i; + for (i = 0; i < this.minimumArrayLength; i++) { + BeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.unpackObject();"); + continue; + } + + buildString("if($1.tryUnpackNull()) {"); + if (e.isRequired()) { + // Required + nil => exception + buildString("throw new %s();", MessageTypeException.class.getName()); + } else if (e.isOptional()) { + // Optional + nil => keep default value + } else { // Nullable + // Nullable + nil => set null + buildString("_$$_t.%s(null);", e.getSetterName()); + } + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.set%s( $1.%s() );", e.getName(), primitiveReadName(type)); + } else { + buildString("_$$_t.set%s( (%s)this.templates[%d].unpack($1, _$$_t.get%s()) );", + e.getName(), e.getJavaTypeName(), i, e.getName()); + } + buildString("}"); + } + + for (; i < entries.length; i++) { + buildString("if(length <= %d) { return _$$_t; }", i); + + BeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.unpackObject();"); + continue; + } + + buildString("if($1.tryUnpackNull()) {"); + // this is Optional field becaue i >= minimumArrayLength + // Optional + nil => keep default value + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s( $1.%s() );", e.getSetterName(), primitiveReadName(type)); + } else { + buildString("_$$_t.%s( (%s)this.templates[%d].unpack($1, _$$_t.%s()) );", + e.getSetterName(), e.getJavaTypeName(), i, e.getGetterName()); + } + buildString("}"); + } + + // latter entries are all Optional + nil => keep default value + + buildString("for(int i=%d; i < length; i++) {", i); + buildString(" $1.unpackObject();"); + buildString("}"); + + buildString("return _$$_t;"); + + buildString("}"); + return getBuiltString(); + } + + @Override + public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates, String directoryName) { + throw new UnsupportedOperationException(targetClass.getName()); + } + + @Override + public Template loadTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { + return null; + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java new file mode 100644 index 000000000..ac436c0a4 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java @@ -0,0 +1,83 @@ +package org.msgpack.template.builder; + +import java.beans.PropertyDescriptor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Type; + +import org.msgpack.MessageTypeException; +import org.msgpack.template.FieldOption; + + +public class BeansFieldEntry extends FieldEntry { + + protected PropertyDescriptor desc; + + public BeansFieldEntry() { + super(); + } + + public BeansFieldEntry(final BeansFieldEntry e) { + super(e.option); + this.desc = e.getPropertyDescriptor(); + } + + public BeansFieldEntry(final PropertyDescriptor desc) { + this(desc, FieldOption.DEFAULT); + } + + public BeansFieldEntry(final PropertyDescriptor desc, final FieldOption option) { + super(option); + this.desc = desc; + } + + public String getGetterName() { + return getPropertyDescriptor().getReadMethod().getName(); + } + + public String getSetterName() { + return getPropertyDescriptor().getWriteMethod().getName(); + } + + public PropertyDescriptor getPropertyDescriptor() { + return desc; + } + + @Override + public String getName() { + return getPropertyDescriptor().getDisplayName(); + } + + @Override + public Class getType() { + return getPropertyDescriptor().getPropertyType(); + } + + @Override + public Type getGenericType() { + return getPropertyDescriptor().getReadMethod().getGenericReturnType(); + } + + public Object get(Object target) { + try { + return getPropertyDescriptor().getReadMethod().invoke(target); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } catch (InvocationTargetException e) { + throw new MessageTypeException(e); + } + } + + public void set(Object target, Object value) { + try { + getPropertyDescriptor().getWriteMethod().invoke(target, value); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } catch (InvocationTargetException e) { + throw new MessageTypeException(e); + } + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java new file mode 100644 index 000000000..bb26c8a06 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java @@ -0,0 +1,64 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.reflect.Field; +import java.lang.reflect.Type; + +import org.msgpack.template.FieldOption; + + +public class DefaultFieldEntry extends FieldEntry { + protected Field field; + + public DefaultFieldEntry() { + this(null, FieldOption.IGNORE); + } + + public DefaultFieldEntry(final DefaultFieldEntry e) { + this(e.field, e.option); + } + + public DefaultFieldEntry(final Field field, final FieldOption option) { + super(option); + this.field = field; + } + + public Field getField() { + return field; + } + + public void setField(final Field field) { + this.field = field; + } + + @Override + public String getName() { + return field.getName(); + } + + @Override + public Class getType() { + return field.getType(); + } + + @Override + public Type getGenericType() { + return field.getGenericType(); + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 3022bc663..735a900f0 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -17,59 +17,37 @@ // package org.msgpack.template.builder; -import java.lang.reflect.Field; import java.lang.reflect.Type; import org.msgpack.template.FieldOption; -public class FieldEntry { - private Field field; +public abstract class FieldEntry { - private FieldOption option; + protected FieldOption option; - public FieldEntry() { - this(null, FieldOption.IGNORE); - } - - public FieldEntry(final FieldEntry e) { - this(e.field, e.option); - } + public abstract String getName(); - public FieldEntry(final Field field, final FieldOption option) { - this.field = field; - this.option = option; - } + public abstract Class getType(); - public Field getField() { - return field; - } + public abstract Type getGenericType(); - public String getName() { - return field.getName(); - } - - public Class getType() { - return field.getType(); - } - - public String getJavaTypeName() { - Class type = field.getType(); - if (type.isArray()) { - return arrayTypeToString(type); - } else { - return type.getName(); - } + public FieldEntry() { + this(FieldOption.IGNORE); } - public Type getGenericType() { - return field.getGenericType(); + public FieldEntry(FieldOption option) { + this.option = option; } public FieldOption getOption() { return option; } + public void setOption(FieldOption option) { + this.option = option; + } + public boolean isAvailable() { return option != FieldOption.IGNORE; } @@ -86,7 +64,16 @@ public boolean isNotNullable() { return option == FieldOption.NOTNULLABLE; } - private static String arrayTypeToString(Class type) { + public String getJavaTypeName() { + Class type = getType(); + if (type.isArray()) { + return arrayTypeToString(type); + } else { + return type.getName(); + } + } + + public String arrayTypeToString(Class type) { int dim = 1; Class baseType = type.getComponentType(); while (baseType.isArray()) { diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java new file mode 100644 index 000000000..caeff4e18 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -0,0 +1,359 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.beans.BeanInfo; +import java.beans.IntrospectionException; +import java.beans.Introspector; +import java.beans.PropertyDescriptor; +import java.io.IOException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.lang.reflect.Type; +import java.util.ArrayList; + +import org.msgpack.MessageTypeException; +import org.msgpack.annotation.Beans; +import org.msgpack.annotation.Ignore; +import org.msgpack.annotation.Index; +import org.msgpack.annotation.MessagePackBeans; +import org.msgpack.annotation.NotNullable; +import org.msgpack.annotation.Optional; +import org.msgpack.annotation.Required; +import org.msgpack.packer.Packer; +import org.msgpack.template.FieldOption; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.unpacker.Unpacker; + + +/** + * Class for building java reflection template builder for java beans class. + * + * @author takeshita + * + */ +public class ReflectionBeansTemplateBuilder extends AbstractTemplateBuilder { + + static class ReflectionBeansFieldEntry extends BeansFieldEntry { + ReflectionBeansFieldEntry(final BeansFieldEntry entry) { + super(entry); + } + + void write(Packer packer, Object v) throws IOException { + packer.write(v); + } + + void read(Unpacker unpacker, Object to) throws IOException, MessageTypeException, IllegalAccessException { + set(to, unpacker.read(getType())); + } + + public void setNull(Object target) { + set(target, null); + } + } + + static class ObjectFieldEntry extends ReflectionBeansFieldEntry { + Template template; + + ObjectFieldEntry(final BeansFieldEntry entry, final Template template) { + super(entry); + this.template = template; + } + + @Override + void write(Packer packer, Object v) throws IOException { + template.write(packer, v); + } + + @Override + void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + Class type = (Class) getType(); + Object fieldReference = get(target); + Object valueReference = template.read(unpacker, fieldReference); + if (valueReference != fieldReference) { + set(target, valueReference); + } + } + } + + static class BeansReflectionTemplate implements Template { + private Class targetClass; + + private ReflectionBeansFieldEntry[] entries = null; + + protected int minimumArrayLength; + + BeansReflectionTemplate(Class targetClass, ReflectionBeansFieldEntry[] entries) { + this.targetClass = targetClass; + this.entries = entries; + this.minimumArrayLength = 0; + for (int i = 0; i < entries.length; i++) { + ReflectionBeansFieldEntry e = entries[i]; + if (e.isRequired() || !e.isNotNullable()) { + this.minimumArrayLength = i + 1; + } + } + } + + @Override + public + void write(Packer pk, T v) throws IOException { + pk.writeArrayBegin(entries.length); + for (ReflectionBeansFieldEntry e : entries) { + if (!e.isAvailable()) { + pk.writeNil(); + continue; + } + Object obj = e.get(v); + if (obj == null) { + if (e.isNotNullable() && !e.isOptional()) { + throw new MessageTypeException(); + } + pk.writeNil(); + } else { + e.write(pk, obj); + } + } + pk.writeArrayEnd(); + } + + @Override + public T read(Unpacker u, T to) throws IOException { + try { + if (to == null) { + to = targetClass.newInstance(); + } + + int length = u.readArrayBegin(); + if (length < minimumArrayLength) { + throw new MessageTypeException(); + } + + int i; + for (i = 0; i < minimumArrayLength; i++) { + ReflectionBeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + u.readValue(); // TODO #MN + continue; + } + + if (u.tryReadNil()) { + if (e.isRequired()) { + // Required + nil => exception + throw new MessageTypeException(); + } else if (e.isOptional()) { + // Optional + nil => keep default value + } else { // Nullable + // Nullable + nil => set null + e.setNull(to); + } + } else { + e.read(u, to); + // e.set(to, pac.unpack(e.getType())); + } + } + + int max = length < entries.length ? length : entries.length; + for (; i < max; i++) { + ReflectionBeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + u.readValue(); // TODO #MN + continue; + } + + if (u.tryReadNil()) { + // this is Optional field becaue i >= minimumArrayLength + // Optional + nil => keep default value + } else { + e.read(u, to); + // e.set(to, pac.unpack(e.getType())); + } + } + + // latter entries are all Optional + nil => keep default value + + for (; i < length; i++) { + u.readValue(); + } + + u.readArrayEnd(); + return to; + } catch (MessageTypeException e) { + throw e; + } catch (IOException e) { + throw e; + } catch (Exception e) { + throw new MessageTypeException(e); + } + } + } + + public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { + super(registry); + } + + @Override + public boolean matchType(Type targetType) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); + } + + @Override + public Template buildTemplate(Class targetClass, FieldEntry[] entries) { + ReflectionBeansFieldEntry[] beansEntries = new ReflectionBeansFieldEntry[entries.length]; + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = (BeansFieldEntry) entries[i]; + Class type = e.getType(); + if (type.equals(boolean.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(byte.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(short.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(int.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(long.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(float.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else if (type.equals(double.class)) { + beansEntries[i] = new ReflectionBeansFieldEntry(e); + } else { + Template tmpl = registry.lookup(e.getGenericType(), true); + beansEntries[i] = new ObjectFieldEntry(e, tmpl); + } + } + return new BeansReflectionTemplate(targetClass, beansEntries); + } + + @Override + public FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { + BeanInfo desc; + try { + desc = Introspector.getBeanInfo(targetClass); + } catch (IntrospectionException e1) { + throw new TemplateBuildException("Class must be java beans class:" + targetClass.getName()); + } + + PropertyDescriptor[] props = desc.getPropertyDescriptors(); + ArrayList list = new ArrayList(); + for (int i = 0; i < props.length; i++) { + PropertyDescriptor pd = props[i]; + if (!isIgnoreProp(pd)) { + list.add(pd); + } + } + props = new PropertyDescriptor[list.size()]; + list.toArray(props); + + BeansFieldEntry[] entries = new BeansFieldEntry[props.length]; + for (int i = 0; i < props.length; i++) { + PropertyDescriptor p = props[i]; + int index = readPropIndex(p); + if (index >= 0) { + if (entries[index] != null) { + throw new TemplateBuildException("duplicated index: " + + index); + } + if (index >= entries.length) { + throw new TemplateBuildException("invalid index: " + index); + } + entries[index] = new BeansFieldEntry(p); + props[index] = null; + } + } + int insertIndex = 0; + for (int i = 0; i < props.length; i++) { + PropertyDescriptor p = props[i]; + if (p != null) { + while (entries[insertIndex] != null) { + insertIndex++; + } + entries[insertIndex] = new BeansFieldEntry(p); + } + + } + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = entries[i]; + FieldOption op = readPropOption(e, implicitOption); + e.setOption(op); + } + return entries; + } + + private FieldOption readPropOption(BeansFieldEntry e, FieldOption implicitOption) { + FieldOption forGetter = readMethodOption(e.getPropertyDescriptor().getReadMethod()); + if (forGetter != FieldOption.DEFAULT) { + return forGetter; + } + FieldOption forSetter = readMethodOption(e.getPropertyDescriptor().getWriteMethod()); + if (forSetter != FieldOption.DEFAULT) { + return forSetter; + } else { + return implicitOption; + } + } + + private FieldOption readMethodOption(Method method) { + if (isAnnotated(method, Ignore.class)) { + return FieldOption.IGNORE; + } else if (isAnnotated(method, Required.class)) { + return FieldOption.REQUIRED; + } else if (isAnnotated(method, Optional.class)) { + return FieldOption.OPTIONAL; + } else if (isAnnotated(method, NotNullable.class)) { + if (method.getDeclaringClass().isPrimitive()) { + return FieldOption.REQUIRED; + } else { + return FieldOption.NOTNULLABLE; + } + } + return FieldOption.DEFAULT; + } + + private int readPropIndex(PropertyDescriptor desc) { + int forGetter = readMethodIndex(desc.getReadMethod()); + if (forGetter >= 0) { + return forGetter; + } + int forSetter = readMethodIndex(desc.getWriteMethod()); + return forSetter; + } + + private int readMethodIndex(Method method) { + Index a = method.getAnnotation(Index.class); + if (a == null) { + return -1; + } else { + return a.value(); + } + } + + boolean isIgnoreProp(PropertyDescriptor desc) { + if (desc == null) + return true; + Method getter = desc.getReadMethod(); + Method setter = desc.getWriteMethod(); + return getter == null || setter == null + || !Modifier.isPublic(getter.getModifiers()) + || !Modifier.isPublic(setter.getModifiers()) + || isAnnotated(getter, Ignore.class) + || isAnnotated(setter, Ignore.class); + } +} diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 057bff1ed..df447bea8 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -33,8 +33,8 @@ public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { - static abstract class ReflectionFieldEntry extends FieldEntry { - ReflectionFieldEntry(FieldEntry e) { + static abstract class ReflectionFieldEntry extends DefaultFieldEntry { + ReflectionFieldEntry(final DefaultFieldEntry e) { super(e.getField(), e.getOption()); } @@ -48,7 +48,7 @@ void setNull(Object target) throws IllegalAccessException { } static class NullFieldEntry extends ReflectionFieldEntry { - NullFieldEntry(FieldEntry e) { + NullFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -62,15 +62,17 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep static class ObjectFieldEntry extends ReflectionFieldEntry { private Template template; - ObjectFieldEntry(FieldEntry e, Template template) { + ObjectFieldEntry(final DefaultFieldEntry e, Template template) { super(e); this.template = template; } + @Override void write(Packer packer, Object target) throws IOException { template.write(packer, target); } + @Override void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { Field f = getField(); Class type = (Class) f.getType(); @@ -83,7 +85,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class BooleanFieldEntry extends ReflectionFieldEntry { - BooleanFieldEntry(FieldEntry e) { + BooleanFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -97,7 +99,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class ByteFieldEntry extends ReflectionFieldEntry { - ByteFieldEntry(FieldEntry e) { + ByteFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -111,7 +113,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class ShortFieldEntry extends ReflectionFieldEntry { - ShortFieldEntry(FieldEntry e) { + ShortFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -125,7 +127,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class IntFieldEntry extends ReflectionFieldEntry { - IntFieldEntry(FieldEntry e) { + IntFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -139,7 +141,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class LongFieldEntry extends ReflectionFieldEntry { - LongFieldEntry(FieldEntry e) { + LongFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -153,7 +155,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class FloatFieldEntry extends ReflectionFieldEntry { - FloatFieldEntry(FieldEntry e) { + FloatFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -167,7 +169,7 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class DoubleFieldEntry extends ReflectionFieldEntry { - DoubleFieldEntry(FieldEntry e) { + DoubleFieldEntry(final DefaultFieldEntry e) { super(e); } @@ -313,7 +315,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { // TODO Now it is simply cast. for (FieldEntry e : entries) { - Field f = ((FieldEntry) e).getField(); + Field f = ((DefaultFieldEntry) e).getField(); int mod = f.getModifiers(); if (!Modifier.isPublic(mod)) { f.setAccessible(true); @@ -322,7 +324,7 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { ReflectionFieldEntry[] res = new ReflectionFieldEntry[entries.length]; for (int i = 0; i < entries.length; i++) { - FieldEntry e = (FieldEntry) entries[i]; + DefaultFieldEntry e = (DefaultFieldEntry) entries[i]; Class t = e.getType(); if (!e.isAvailable()) { res[i] = new NullFieldEntry(e); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 36fdc4372..fb87de990 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -37,6 +37,7 @@ public void init(TemplateRegistry registry) { // TODO #MN // add javassist-based template builder // add beans-based template builder + // add reflection-based beans template builder templateBuilders.add(new ReflectionTemplateBuilder(registry)); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); forceTemplateBuilder = new ReflectionTemplateBuilder(registry); From f44caccdd7df0b3ab8b9cf815f4d40bfd7396bc0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 22 Jul 2011 21:42:54 +0900 Subject: [PATCH 051/409] added test programs for reflection-based beans template builder --- ...BeansReflectionBufferPackBufferUnpack.java | 381 +++++++++++++++ .../TestBeansReflectionBufferPackConvert.java | 417 +++++++++++++++++ ...BeansReflectionBufferPackStreamUnpack.java | 366 +++++++++++++++ ...BeansReflectionStreamPackBufferUnpack.java | 400 ++++++++++++++++ .../TestBeansReflectionStreamPackConvert.java | 436 ++++++++++++++++++ ...BeansReflectionStreamPackStreamUnpack.java | 384 +++++++++++++++ 6 files changed, 2384 insertions(+) create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java new file mode 100644 index 000000000..213350477 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java @@ -0,0 +1,381 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestBeansReflectionBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java new file mode 100644 index 000000000..ed3c72eca --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java @@ -0,0 +1,417 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestBeansReflectionBufferPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java new file mode 100644 index 000000000..906c63128 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java @@ -0,0 +1,366 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestBeansReflectionBufferPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new BufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java new file mode 100644 index 000000000..74fdef05e --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java @@ -0,0 +1,400 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestBeansReflectionStreamPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new BufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java new file mode 100644 index 000000000..90160e271 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java @@ -0,0 +1,436 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestBeansReflectionStreamPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new BufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java new file mode 100644 index 000000000..e847c0e12 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java @@ -0,0 +1,384 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.packer.StreamPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.StreamUnpacker; + + +public class TestBeansReflectionStreamPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + StreamPacker packer = new StreamPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} From 2a53012ea1342bfe45294f141b68857e3224f029 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 17:50:03 +0900 Subject: [PATCH 052/409] added javassist-based beans template builder --- .../template/builder/BeansBuildContext.java | 2 +- .../template/builder/BeansFieldEntry.java | 2 + .../template/builder/BuildContext.java | 364 ++++++++++-------- .../template/builder/BuildContextBase.java | 261 ------------- .../template/builder/BuildContextFactory.java | 23 -- .../template/builder/DefaultBuildContext.java | 217 +++++++++++ .../template/builder/DefaultFieldEntry.java | 20 + .../msgpack/template/builder/FieldEntry.java | 17 +- .../JavassistBeansTemplateBuilder.java | 15 + .../builder/JavassistTemplateBuilder.java | 23 +- .../ReflectionBeansTemplateBuilder.java | 34 +- .../builder/ReflectionTemplateBuilder.java | 21 +- 12 files changed, 506 insertions(+), 493 deletions(-) delete mode 100644 src/main/java/org/msgpack/template/builder/BuildContextBase.java delete mode 100644 src/main/java/org/msgpack/template/builder/BuildContextFactory.java create mode 100644 src/main/java/org/msgpack/template/builder/DefaultBuildContext.java create mode 100644 src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index e837690f5..441365988 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -30,7 +30,7 @@ import javassist.NotFoundException; -public class BeansBuildContext extends BuildContextBase { +public class BeansBuildContext extends BuildContext { protected BeansFieldEntry[] entries; protected Class origClass; protected String origName; diff --git a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java index ac436c0a4..32aed5766 100644 --- a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java @@ -57,6 +57,7 @@ public Type getGenericType() { return getPropertyDescriptor().getReadMethod().getGenericReturnType(); } + @Override public Object get(Object target) { try { return getPropertyDescriptor().getReadMethod().invoke(target); @@ -69,6 +70,7 @@ public Object get(Object target) { } } + @Override public void set(Object target, Object value) { try { getPropertyDescriptor().getWriteMethod().invoke(target, value); diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 401dd9a0a..b301eda98 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -17,201 +17,245 @@ // package org.msgpack.template.builder; -import java.lang.reflect.Constructor; +import java.io.IOException; import java.lang.reflect.InvocationTargetException; import org.msgpack.*; +import org.msgpack.packer.Packer; import org.msgpack.template.*; +import org.msgpack.unpacker.Unpacker; import javassist.CannotCompileException; import javassist.CtClass; -import javassist.CtConstructor; -import javassist.CtNewConstructor; +import javassist.CtMethod; +import javassist.CtNewMethod; import javassist.NotFoundException; -public class BuildContext extends BuildContextBase { - protected FieldEntry[] entries; - protected Class origClass; - protected String origName; - protected Template[] templates; - protected int minimumArrayLength; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public abstract class BuildContext { + + private static Logger LOG = LoggerFactory.getLogger(BuildContext.class); + + protected JavassistTemplateBuilder director; + + protected String tmplName; + + protected CtClass tmplCtClass; + + protected abstract Template buildTemplate(Class targetClass, T[] entries, Template[] templates); + + protected abstract void setSuperClass() throws CannotCompileException, NotFoundException; + + protected abstract void buildConstructor() throws CannotCompileException, NotFoundException; public BuildContext(JavassistTemplateBuilder director) { - super(director); + this.director = director; } - public Template buildTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = this.origClass.getName(); - return build(this.origName); + protected Template build(final String className) { + try { + reset(className, false); + LOG.debug("started generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + LOG.debug("finished generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + return buildInstance(createClass()); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } } - protected void setSuperClass() throws CannotCompileException, NotFoundException { - tmplCtClass.setSuperclass(director.getCtClass( - JavassistTemplateBuilder.JavassistTemplate.class.getName())); + protected void reset(String className, boolean isWritten) { + String tmplName = null; + if (!isWritten) { + tmplName = className + "_$$_Template" + "_" + director.hashCode() + "_" + director.nextSeqId(); + } else { + tmplName = className + "_$$_Template"; + } + tmplCtClass = director.makeCtClass(tmplName); } - protected void buildConstructor() throws CannotCompileException, + protected void buildClass() throws CannotCompileException, NotFoundException { - // Constructor(Class targetClass, Template[] templates) - CtConstructor newCtCons = CtNewConstructor.make( - new CtClass[] { - director.getCtClass(Class.class.getName()), - director.getCtClass(Template.class.getName() + "[]") - }, new CtClass[0], tmplCtClass); - tmplCtClass.addConstructor(newCtCons); + setSuperClass(); + tmplCtClass.addInterface(director.getCtClass(Template.class.getName())); } - protected Template buildInstance(Class c) throws NoSuchMethodException, - InstantiationException, IllegalAccessException, InvocationTargetException { - Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); - Object tmpl = cons.newInstance(new Object[] { this.origClass, this.templates }); - return (Template) tmpl; + protected void buildMethodInit() { } - protected void buildMethodInit() { - minimumArrayLength = 0; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - // TODO #MN - if (e.isRequired() || !e.isNotNullable()) { - minimumArrayLength = i + 1; - } - } + protected abstract Template buildInstance(Class c) throws NoSuchMethodException, + InstantiationException, IllegalAccessException, InvocationTargetException; + + protected void buildWriteMethod() throws CannotCompileException, + NotFoundException { + LOG.debug("started generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildWriteMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = CtClass.voidType; + String mname = "write"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Packer.class.getName()), + director.getCtClass(Object.class.getName()) + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(IOException.class.getName()) + }; + LOG.debug("compiling write method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); } - protected String buildWriteMethodBody() { - resetStringBuilder(); - buildString("{"); - buildString("%s _$$_t = (%s) $2;", this.origName, this.origName); - buildString("$1.writeArrayBegin(%d);", entries.length); - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.writeNil();"); - continue; - } - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("$1.%s(_$$_t.%s);", primitiveWriteName(type), - e.getName()); - } else { - buildString("if (_$$_t.%s == null) {", e.getName()); - if (e.isNotNullable() && !e.isOptional()) { - buildString("throw new %s();", - MessageTypeException.class.getName()); - } else { - buildString("$1.writeNil();"); - } - buildString("} else {"); - buildString(" this.templates[%d].write($1, _$$_t.%s);", i, e.getName()); - buildString("}"); - } - } - buildString("$1.writeArrayEnd();"); - buildString("}"); - return getBuiltString(); - } - - protected String buildReadMethodBody() { - resetStringBuilder(); - buildString("{ "); - - buildString("%s _$$_t;", origName); - buildString("if ($2 == null) {"); - buildString(" _$$_t = new %s();", origName); - buildString("} else {"); - buildString(" _$$_t = (%s) $2;", origName); - buildString("}"); - - buildString("int length = $1.readArrayBegin();"); - buildString("if(length < %d) {", minimumArrayLength); - buildString(" throw new %s();", MessageTypeException.class.getName()); - buildString("}"); - - int i; - for (i = 0; i < minimumArrayLength; i++) { - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN - continue; - } + protected abstract String buildWriteMethodBody(); - buildString("if($1.tryReadNil()) {"); - if (e.isRequired()) { - // Required + nil => exception - buildString("throw new %s();", MessageTypeException.class.getName()); - } else if (e.isOptional()) { - // Optional + nil => keep default value - } else { // Nullable - // Nullable + nil => set null - buildString("_$$_t.%s = null;", e.getName()); - } - buildString("} else {"); - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); - } else { - buildString( - "_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", - e.getName(), e.getJavaTypeName(), i, e.getName()); - } - buildString("}"); - } + protected void buildReadMethod() throws CannotCompileException, + NotFoundException { + LOG.debug("started generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildReadMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = director.getCtClass(Object.class.getName()); + String mname = "read"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Unpacker.class.getName()), + director.getCtClass(Object.class.getName()) + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(MessageTypeException.class.getName()) + }; + LOG.debug("compiling read method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); + } - for (; i < entries.length; i++) { - buildString("if (length <= %d) { return _$$_t; }", i); + protected abstract String buildReadMethodBody(); - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN - continue; - } + protected Class createClass() throws CannotCompileException { + return (Class) tmplCtClass.toClass(null, null); + } - buildString("if($1.tryReadNil()) {"); - // this is Optional field becaue i >= minimumArrayLength - // Optional + nil => keep default value - buildString("} else {"); - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); - } else { - buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", - e.getName(), e.getJavaTypeName(), i, e.getName()); - } - buildString("}"); - } + protected void saveClass(final String directoryName) + throws CannotCompileException, IOException { + tmplCtClass.writeFile(directoryName); + } - // latter entries are all Optional + nil => keep default value + protected StringBuilder stringBuilder = null; - buildString("for(int i = %d; i < length; i++) {", i); - buildString(" $1.skip();"); // TODO #MN - buildString("}"); + protected void resetStringBuilder() { + stringBuilder = new StringBuilder(); + } - buildString("$1.readArrayEnd();"); - buildString("return _$$_t;"); + protected void buildString(String str) { + stringBuilder.append(str); + } - buildString("}"); - return getBuiltString(); + protected void buildString(String format, Object... args) { + stringBuilder.append(String.format(format, args)); } - @Override - public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] templates, String directoryName) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = this.origClass.getName(); - write(this.origName, directoryName); + protected String getBuiltString() { + if (stringBuilder == null) { + return null; + } + return stringBuilder.toString(); + } + + protected String primitiveWriteName(Class type) { + if (type == boolean.class) { + return "writeBoolean"; + } else if (type == byte.class) { + return "writeByte"; + } else if (type == short.class) { + return "writeShort"; + } else if (type == int.class) { + return "writeInt"; + } else if (type == long.class) { + return "writeLong"; + } else if (type == float.class) { + return "writeFloat"; + } else if (type == double.class) { + return "writeDouble"; + } + return null; } - @Override - public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = this.origClass.getName(); - return load(this.origName); + protected String primitiveReadName(Class type) { + if (type == boolean.class) { + return "readBoolean"; + } else if (type == byte.class) { + return "readByte"; + } else if (type == short.class) { + return "readShort"; + } else if (type == int.class) { + return "readInt"; + } else if (type == long.class) { + return "readLong"; + } else if (type == float.class) { + return "readFloat"; + } else if (type == double.class) { + return "readDouble"; + } + return null; + } + + protected abstract void writeTemplate(Class targetClass, T[] entries, Template[] templates, String directoryName); + + protected void write(final String className, final String directoryName) { + try { + reset(className, true); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + saveClass(directoryName); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } + } + + protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); + + protected Template load(final String className) { + String tmplName = className + "_$$_Template"; + try { + Class tmplClass = getClass().getClassLoader() + .loadClass(tmplName); + return buildInstance(tmplClass); + } catch (ClassNotFoundException e) { + return null; + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BuildContextBase.java b/src/main/java/org/msgpack/template/builder/BuildContextBase.java deleted file mode 100644 index 6ff3ff5fa..000000000 --- a/src/main/java/org/msgpack/template/builder/BuildContextBase.java +++ /dev/null @@ -1,261 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.template.builder; - -import java.io.IOException; -import java.lang.reflect.InvocationTargetException; - -import org.msgpack.*; -import org.msgpack.packer.Packer; -import org.msgpack.template.*; -import org.msgpack.unpacker.Unpacker; - -import javassist.CannotCompileException; -import javassist.CtClass; -import javassist.CtMethod; -import javassist.CtNewMethod; -import javassist.NotFoundException; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -public abstract class BuildContextBase { - - private static Logger LOG = LoggerFactory.getLogger(BuildContextBase.class); - - protected JavassistTemplateBuilder director; - - protected String tmplName; - - protected CtClass tmplCtClass; - - protected abstract Template buildTemplate(Class targetClass, T[] entries, Template[] templates); - - protected abstract void setSuperClass() throws CannotCompileException, NotFoundException; - - protected abstract void buildConstructor() throws CannotCompileException, NotFoundException; - - public BuildContextBase(JavassistTemplateBuilder director) { - this.director = director; - } - - protected Template build(final String className) { - try { - reset(className, false); - LOG.debug("started generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); - buildClass(); - buildConstructor(); - buildMethodInit(); - buildWriteMethod(); - buildReadMethod(); - LOG.debug("finished generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); - return buildInstance(createClass()); - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } - } - - protected void reset(String className, boolean isWritten) { - String tmplName = null; - if (!isWritten) { - tmplName = className + "_$$_Template" + "_" + director.hashCode() + "_" + director.nextSeqId(); - } else { - tmplName = className + "_$$_Template"; - } - tmplCtClass = director.makeCtClass(tmplName); - } - - protected void buildClass() throws CannotCompileException, - NotFoundException { - setSuperClass(); - tmplCtClass.addInterface(director.getCtClass(Template.class.getName())); - } - - protected void buildMethodInit() { - } - - protected abstract Template buildInstance(Class c) throws NoSuchMethodException, - InstantiationException, IllegalAccessException, InvocationTargetException; - - protected void buildWriteMethod() throws CannotCompileException, - NotFoundException { - LOG.debug("started generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); - String mbody = buildWriteMethodBody(); - int mod = javassist.Modifier.PUBLIC; - CtClass returnType = CtClass.voidType; - String mname = "write"; - CtClass[] paramTypes = new CtClass[] { - director.getCtClass(Packer.class.getName()), - director.getCtClass(Object.class.getName()) - }; - CtClass[] exceptTypes = new CtClass[] { - director.getCtClass(IOException.class.getName()) - }; - LOG.debug("compiling write method body: %s", new Object[] { mbody }); - CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); - tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); - } - - protected abstract String buildWriteMethodBody(); - - protected void buildReadMethod() throws CannotCompileException, - NotFoundException { - LOG.debug("started generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); - String mbody = buildReadMethodBody(); - int mod = javassist.Modifier.PUBLIC; - CtClass returnType = director.getCtClass(Object.class.getName()); - String mname = "read"; - CtClass[] paramTypes = new CtClass[] { - director.getCtClass(Unpacker.class.getName()), - director.getCtClass(Object.class.getName()) - }; - CtClass[] exceptTypes = new CtClass[] { - director.getCtClass(MessageTypeException.class.getName()) - }; - LOG.debug("compiling read method body: %s", new Object[] { mbody }); - CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); - tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); - } - - protected abstract String buildReadMethodBody(); - - protected Class createClass() throws CannotCompileException { - return (Class) tmplCtClass.toClass(null, null); - } - - protected void saveClass(final String directoryName) - throws CannotCompileException, IOException { - tmplCtClass.writeFile(directoryName); - } - - protected StringBuilder stringBuilder = null; - - protected void resetStringBuilder() { - stringBuilder = new StringBuilder(); - } - - protected void buildString(String str) { - stringBuilder.append(str); - } - - protected void buildString(String format, Object... args) { - stringBuilder.append(String.format(format, args)); - } - - protected String getBuiltString() { - if (stringBuilder == null) { - return null; - } - return stringBuilder.toString(); - } - - protected String primitiveWriteName(Class type) { - if (type == boolean.class) { - return "writeBoolean"; - } else if (type == byte.class) { - return "writeByte"; - } else if (type == short.class) { - return "writeShort"; - } else if (type == int.class) { - return "writeInt"; - } else if (type == long.class) { - return "writeLong"; - } else if (type == float.class) { - return "writeFloat"; - } else if (type == double.class) { - return "writeDouble"; - } - return null; - } - - protected String primitiveReadName(Class type) { - if (type == boolean.class) { - return "readBoolean"; - } else if (type == byte.class) { - return "readByte"; - } else if (type == short.class) { - return "readShort"; - } else if (type == int.class) { - return "readInt"; - } else if (type == long.class) { - return "readLong"; - } else if (type == float.class) { - return "readFloat"; - } else if (type == double.class) { - return "readDouble"; - } - return null; - } - - protected abstract void writeTemplate(Class targetClass, T[] entries, Template[] templates, String directoryName); - - protected void write(final String className, final String directoryName) { - try { - reset(className, true); - buildClass(); - buildConstructor(); - buildMethodInit(); - buildWriteMethod(); - buildReadMethod(); - saveClass(directoryName); - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } - } - - protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); - - protected Template load(final String className) { - String tmplName = className + "_$$_Template"; - try { - Class tmplClass = getClass().getClassLoader() - .loadClass(tmplName); - return buildInstance(tmplClass); - } catch (ClassNotFoundException e) { - return null; - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } - } -} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BuildContextFactory.java b/src/main/java/org/msgpack/template/builder/BuildContextFactory.java deleted file mode 100644 index 8671afdb9..000000000 --- a/src/main/java/org/msgpack/template/builder/BuildContextFactory.java +++ /dev/null @@ -1,23 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.template.builder; - - -public interface BuildContextFactory { - public BuildContextBase createBuildContext(JavassistTemplateBuilder builder); -} diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java new file mode 100644 index 000000000..38b9b3bcf --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -0,0 +1,217 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; + +import org.msgpack.*; +import org.msgpack.template.*; + +import javassist.CannotCompileException; +import javassist.CtClass; +import javassist.CtConstructor; +import javassist.CtNewConstructor; +import javassist.NotFoundException; + +public class DefaultBuildContext extends BuildContext { + protected FieldEntry[] entries; + protected Class origClass; + protected String origName; + protected Template[] templates; + protected int minimumArrayLength; + + public DefaultBuildContext(JavassistTemplateBuilder director) { + super(director); + } + + public Template buildTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + return build(this.origName); + } + + protected void setSuperClass() throws CannotCompileException, NotFoundException { + tmplCtClass.setSuperclass(director.getCtClass( + JavassistTemplateBuilder.JavassistTemplate.class.getName())); + } + + protected void buildConstructor() throws CannotCompileException, + NotFoundException { + // Constructor(Class targetClass, Template[] templates) + CtConstructor newCtCons = CtNewConstructor.make( + new CtClass[] { + director.getCtClass(Class.class.getName()), + director.getCtClass(Template.class.getName() + "[]") + }, new CtClass[0], tmplCtClass); + tmplCtClass.addConstructor(newCtCons); + } + + protected Template buildInstance(Class c) throws NoSuchMethodException, + InstantiationException, IllegalAccessException, InvocationTargetException { + Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); + Object tmpl = cons.newInstance(new Object[] { this.origClass, this.templates }); + return (Template) tmpl; + } + + protected void buildMethodInit() { + minimumArrayLength = 0; + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + // TODO #MN + if (e.isRequired() || !e.isNotNullable()) { + minimumArrayLength = i + 1; + } + } + } + + protected String buildWriteMethodBody() { + resetStringBuilder(); + buildString("{"); + buildString("%s _$$_t = (%s) $2;", this.origName, this.origName); + buildString("$1.writeArrayBegin(%d);", entries.length); + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.writeNil();"); + continue; + } + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("$1.%s(_$$_t.%s);", primitiveWriteName(type), + e.getName()); + } else { + buildString("if (_$$_t.%s == null) {", e.getName()); + if (e.isNotNullable() && !e.isOptional()) { + buildString("throw new %s();", + MessageTypeException.class.getName()); + } else { + buildString("$1.writeNil();"); + } + buildString("} else {"); + buildString(" this.templates[%d].write($1, _$$_t.%s);", i, e.getName()); + buildString("}"); + } + } + buildString("$1.writeArrayEnd();"); + buildString("}"); + return getBuiltString(); + } + + protected String buildReadMethodBody() { + resetStringBuilder(); + buildString("{ "); + + buildString("%s _$$_t;", origName); + buildString("if ($2 == null) {"); + buildString(" _$$_t = new %s();", origName); + buildString("} else {"); + buildString(" _$$_t = (%s) $2;", origName); + buildString("}"); + + buildString("int length = $1.readArrayBegin();"); + buildString("if(length < %d) {", minimumArrayLength); + buildString(" throw new %s();", MessageTypeException.class.getName()); + buildString("}"); + + int i; + for (i = 0; i < minimumArrayLength; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.skip();"); // TODO #MN + continue; + } + + buildString("if($1.tryReadNil()) {"); + if (e.isRequired()) { + // Required + nil => exception + buildString("throw new %s();", MessageTypeException.class.getName()); + } else if (e.isOptional()) { + // Optional + nil => keep default value + } else { // Nullable + // Nullable + nil => set null + buildString("_$$_t.%s = null;", e.getName()); + } + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); + } else { + buildString( + "_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", + e.getName(), e.getJavaTypeName(), i, e.getName()); + } + buildString("}"); + } + + for (; i < entries.length; i++) { + buildString("if (length <= %d) { return _$$_t; }", i); + + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.skip();"); // TODO #MN + continue; + } + + buildString("if($1.tryReadNil()) {"); + // this is Optional field becaue i >= minimumArrayLength + // Optional + nil => keep default value + buildString("} else {"); + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); + } else { + buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", + e.getName(), e.getJavaTypeName(), i, e.getName()); + } + buildString("}"); + } + + // latter entries are all Optional + nil => keep default value + + buildString("for(int i = %d; i < length; i++) {", i); + buildString(" $1.skip();"); // TODO #MN + buildString("}"); + + buildString("$1.readArrayEnd();"); + buildString("return _$$_t;"); + + buildString("}"); + return getBuiltString(); + } + + @Override + public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] templates, String directoryName) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + write(this.origName, directoryName); + } + + @Override + public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = this.origClass.getName(); + return load(this.origName); + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java index bb26c8a06..df8b7a12d 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java @@ -17,10 +17,14 @@ // package org.msgpack.template.builder; +import java.io.IOException; import java.lang.reflect.Field; import java.lang.reflect.Type; +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; +import org.msgpack.unpacker.Unpacker; public class DefaultFieldEntry extends FieldEntry { @@ -61,4 +65,20 @@ public Class getType() { public Type getGenericType() { return field.getGenericType(); } + + @Override + public Object get(Object target) { + try { + return getField().get(target); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + } + + @Override + public void set(Object target, Object value) { + throw new UnsupportedOperationException("fatal error"); + } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 735a900f0..4ed97fae0 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -26,12 +26,6 @@ public abstract class FieldEntry { protected FieldOption option; - public abstract String getName(); - - public abstract Class getType(); - - public abstract Type getGenericType(); - public FieldEntry() { this(FieldOption.IGNORE); } @@ -64,6 +58,16 @@ public boolean isNotNullable() { return option == FieldOption.NOTNULLABLE; } + public abstract String getName(); + + public abstract Class getType(); + + public abstract Type getGenericType(); + + public abstract Object get(Object target); + + public abstract void set(Object target, Object value); + public String getJavaTypeName() { Class type = getType(); if (type.isArray()) { @@ -87,4 +91,5 @@ public String arrayTypeToString(Class type) { } return sb.toString(); } + } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java new file mode 100644 index 000000000..e3d9c4bc6 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -0,0 +1,15 @@ +package org.msgpack.template.builder; + +import org.msgpack.template.TemplateRegistry; + +public class JavassistBeansTemplateBuilder extends JavassistTemplateBuilder { + + public JavassistBeansTemplateBuilder(TemplateRegistry registry) { + super(registry); + } + + @Override + public BuildContext createBuildContext() { + return new BeansBuildContext(this); + } +} \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 042cb64e2..35f384c41 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -50,14 +50,7 @@ public JavassistTemplate(Class targetClass, Template[] templates) { protected ClassPool pool; - private int seqId = 0; - - BuildContextFactory buildContextFactory = new BuildContextFactory() { - @Override - public BuildContextBase createBuildContext(JavassistTemplateBuilder builder) { - return new BuildContext(builder); - } - }; + protected int seqId = 0; public JavassistTemplateBuilder(TemplateRegistry registry) { super(registry); @@ -109,12 +102,8 @@ public int nextSeqId() { return seqId++; } - public void setBuildContextFactory(BuildContextFactory factory){ - buildContextFactory = factory; - } - - public BuildContextFactory getBuildContextFacotry() { - return buildContextFactory; + public BuildContext createBuildContext() { + return new DefaultBuildContext(this); } @Override @@ -128,7 +117,7 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries) // } //} Template[] tmpls = toTemplate(entries); - BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + BuildContext bc = createBuildContext(); return bc.buildTemplate(targetClass, entries, tmpls); } @@ -157,7 +146,7 @@ public void writeTemplate(Type targetType, String directoryName) { private void writeTemplate(Class targetClass, FieldEntry[] entries, String directoryName) { Template[] tmpls = toTemplate(entries); - BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + BuildContext bc = createBuildContext(); bc.writeTemplate(targetClass, entries, tmpls, directoryName); } @@ -172,7 +161,7 @@ public Template loadTemplate(Type targetType) { private Template loadTemplate(Class targetClass, FieldEntry[] entries) { Template[] tmpls = toTemplate(entries); - BuildContextBase bc = getBuildContextFacotry().createBuildContext(this); + BuildContext bc = createBuildContext(); return bc.loadTemplate(targetClass, entries, tmpls); } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index caeff4e18..dfec15649 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -39,6 +39,7 @@ import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldEntry; import org.msgpack.unpacker.Unpacker; @@ -68,10 +69,10 @@ public void setNull(Object target) { } } - static class ObjectFieldEntry extends ReflectionBeansFieldEntry { + static class BeansObjectFieldEntry extends ReflectionBeansFieldEntry { Template template; - ObjectFieldEntry(final BeansFieldEntry entry, final Template template) { + BeansObjectFieldEntry(final BeansFieldEntry entry, final Template template) { super(entry); this.template = template; } @@ -92,21 +93,21 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } } - static class BeansReflectionTemplate implements Template { + static class ReflectionBeansTemplate implements Template { private Class targetClass; - private ReflectionBeansFieldEntry[] entries = null; + private FieldEntry[] entries = null; - protected int minimumArrayLength; + protected int minArrayLength; - BeansReflectionTemplate(Class targetClass, ReflectionBeansFieldEntry[] entries) { + ReflectionBeansTemplate(Class targetClass, FieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; - this.minimumArrayLength = 0; + minArrayLength = 0; for (int i = 0; i < entries.length; i++) { - ReflectionBeansFieldEntry e = entries[i]; + FieldEntry e = entries[i]; if (e.isRequired() || !e.isNotNullable()) { - this.minimumArrayLength = i + 1; + minArrayLength = i + 1; } } } @@ -115,7 +116,8 @@ static class BeansReflectionTemplate implements Template { public void write(Packer pk, T v) throws IOException { pk.writeArrayBegin(entries.length); - for (ReflectionBeansFieldEntry e : entries) { + for (FieldEntry entry : entries) { + ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entry; if (!e.isAvailable()) { pk.writeNil(); continue; @@ -141,13 +143,13 @@ public T read(Unpacker u, T to) throws IOException { } int length = u.readArrayBegin(); - if (length < minimumArrayLength) { + if (length < minArrayLength) { throw new MessageTypeException(); } int i; - for (i = 0; i < minimumArrayLength; i++) { - ReflectionBeansFieldEntry e = entries[i]; + for (i = 0; i < minArrayLength; i++) { + ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entries[i]; if (!e.isAvailable()) { u.readValue(); // TODO #MN continue; @@ -171,7 +173,7 @@ public T read(Unpacker u, T to) throws IOException { int max = length < entries.length ? length : entries.length; for (; i < max; i++) { - ReflectionBeansFieldEntry e = entries[i]; + ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entries[i]; if (!e.isAvailable()) { u.readValue(); // TODO #MN continue; @@ -236,10 +238,10 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries) beansEntries[i] = new ReflectionBeansFieldEntry(e); } else { Template tmpl = registry.lookup(e.getGenericType(), true); - beansEntries[i] = new ObjectFieldEntry(e, tmpl); + beansEntries[i] = new BeansObjectFieldEntry(e, tmpl); } } - return new BeansReflectionTemplate(targetClass, beansEntries); + return new ReflectionBeansTemplate(targetClass, beansEntries); } @Override diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index df447bea8..beadb1809 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -52,9 +52,11 @@ static class NullFieldEntry extends ReflectionFieldEntry { super(e); } + @Override void write(Packer packer, Object target) throws IOException { } + @Override void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { } } @@ -183,18 +185,18 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } static class ReflectionTemplate implements Template { - private Class targetClass; + protected Class targetClass; - private ReflectionFieldEntry[] entries; + protected FieldEntry[] entries; - private int minArrayLength; + protected int minArrayLength; - ReflectionTemplate(Class targetClass, ReflectionFieldEntry[] entries) { + ReflectionTemplate(Class targetClass, FieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; minArrayLength = 0; for (int i = 0; i < entries.length; i++) { - ReflectionFieldEntry e = entries[i]; + FieldEntry e = entries[i]; if (e.isRequired() || !e.isNotNullable()) { minArrayLength = i + 1; } @@ -205,12 +207,13 @@ static class ReflectionTemplate implements Template { public void write(Packer packer, T target) throws IOException { try { packer.writeArrayBegin(entries.length); - for (ReflectionFieldEntry e : entries) { + for (FieldEntry entry : entries) { + ReflectionFieldEntry e = (ReflectionFieldEntry) entry; if (!e.isAvailable()) { packer.writeNil(); continue; } - Object obj = e.getField().get(target); + Object obj = e.get(target); if (obj == null) { if (e.isNotNullable() && !e.isOptional()) { throw new MessageTypeException(); @@ -244,7 +247,7 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException int i; for (i = 0; i < minArrayLength; ++i) { - ReflectionFieldEntry e = entries[i]; + ReflectionFieldEntry e = (ReflectionFieldEntry) entries[i]; if (!e.isAvailable()) { unpacker.readValue(); // FIXME continue; @@ -267,7 +270,7 @@ public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException int max = length < entries.length ? length : entries.length; for (; i < max; ++i) { - ReflectionFieldEntry e = entries[i]; + ReflectionFieldEntry e = (ReflectionFieldEntry) entries[i]; if (!e.isAvailable()) { unpacker.readValue(); // FIXME continue; From aa82d6b42953487de1025880a9a44f6beaceed24 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 18:10:55 +0900 Subject: [PATCH 053/409] fixed bug in javassist-based beans template builder --- .../template/builder/BeansBuildContext.java | 56 ++++++++++--------- .../template/builder/DefaultBuildContext.java | 41 +++++++------- 2 files changed, 53 insertions(+), 44 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 441365988..82163bb2b 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -32,10 +32,14 @@ public class BeansBuildContext extends BuildContext { protected BeansFieldEntry[] entries; + protected Class origClass; + protected String origName; - protected Template[] templates; - protected int minimumArrayLength; + + protected Template[] templates; + + protected int minArrayLength; public BeansBuildContext(JavassistTemplateBuilder director) { super(director); @@ -45,8 +49,8 @@ public Template buildTemplate(Class targetClass, BeansFieldEntry[] entries, T this.entries = entries; this.templates = templates; this.origClass = targetClass; - this.origName = this.origClass.getName(); - return build(this.origName); + this.origName = origClass.getName(); + return build(origName); } protected void setSuperClass() throws CannotCompileException, NotFoundException { @@ -62,8 +66,8 @@ protected void buildConstructor() throws CannotCompileException, director.getCtClass(Class.class.getName()), director.getCtClass(Template.class.getName() + "[]") }, - new CtClass[0], this.tmplCtClass); - this.tmplCtClass.addConstructor(newCtCons); + new CtClass[0], tmplCtClass); + tmplCtClass.addConstructor(newCtCons); } protected Template buildInstance(Class c) throws NoSuchMethodException, @@ -75,11 +79,12 @@ protected Template buildInstance(Class c) throws NoSuchMethodException, } protected void buildMethodInit() { - this.minimumArrayLength = 0; + minArrayLength = 0; for (int i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; if (e.isRequired() || !e.isNotNullable()) { - this.minimumArrayLength = i + 1; + // TODO #MN + minArrayLength = i + 1; } } } @@ -89,11 +94,11 @@ protected String buildWriteMethodBody() { resetStringBuilder(); buildString("{"); buildString("%s _$$_t = (%s)$2;", origName, origName); - buildString("$1.packArray(%d);", entries.length); + buildString("$1.writeArrayBegin(%d);", entries.length); for (int i = 0; i < entries.length; i++) { BeansFieldEntry e = entries[i]; if (!e.isAvailable()) { - buildString("$1.packNil();"); + buildString("$1.writeNil();"); continue; } Class type = e.getType(); @@ -104,13 +109,14 @@ protected String buildWriteMethodBody() { if (e.isNotNullable() && !e.isOptional()) { buildString("throw new %s();", MessageTypeException.class.getName()); } else { - buildString("$1.packNil();"); + buildString("$1.writeNil();"); } buildString("} else {"); - buildString(" this.templates[%d].pack($1, _$$_t.%s());", i, e.getGetterName()); + buildString(" this.templates[%d].write($1, _$$_t.%s());", i, e.getGetterName()); buildString("}"); } } + buildString("$1.writeArrayEnd();"); buildString("}"); return getBuiltString(); } @@ -120,27 +126,27 @@ protected String buildReadMethodBody() { resetStringBuilder(); buildString("{ "); - buildString("%s _$$_t;", this.origName); + buildString("%s _$$_t;", origName); buildString("if($2 == null) {"); - buildString(" _$$_t = new %s();", this.origName); + buildString(" _$$_t = new %s();", origName); buildString("} else {"); - buildString(" _$$_t = (%s)$2;", this.origName); + buildString(" _$$_t = (%s)$2;", origName); buildString("}"); - buildString("int length = $1.unpackArray();"); - buildString("if(length < %d) {", this.minimumArrayLength); + buildString("int length = $1.readArrayBegin();"); + buildString("if(length < %d) {", minArrayLength); buildString(" throw new %s();", MessageTypeException.class.getName()); buildString("}"); int i; - for (i = 0; i < this.minimumArrayLength; i++) { + for (i = 0; i < minArrayLength; i++) { BeansFieldEntry e = entries[i]; if (!e.isAvailable()) { - buildString("$1.unpackObject();"); + buildString("$1.skip();"); // TODO #MN continue; } - buildString("if($1.tryUnpackNull()) {"); + buildString("if ($1.tryReadNil()) {"); if (e.isRequired()) { // Required + nil => exception buildString("throw new %s();", MessageTypeException.class.getName()); @@ -155,7 +161,7 @@ protected String buildReadMethodBody() { if (type.isPrimitive()) { buildString("_$$_t.set%s( $1.%s() );", e.getName(), primitiveReadName(type)); } else { - buildString("_$$_t.set%s( (%s)this.templates[%d].unpack($1, _$$_t.get%s()) );", + buildString("_$$_t.set%s( (%s)this.templates[%d].read($1, _$$_t.get%s()) );", e.getName(), e.getJavaTypeName(), i, e.getName()); } buildString("}"); @@ -166,11 +172,11 @@ protected String buildReadMethodBody() { BeansFieldEntry e = entries[i]; if (!e.isAvailable()) { - buildString("$1.unpackObject();"); + buildString("$1.skip();"); // TODO #MN continue; } - buildString("if($1.tryUnpackNull()) {"); + buildString("if($1.tryReadNil()) {"); // this is Optional field becaue i >= minimumArrayLength // Optional + nil => keep default value buildString("} else {"); @@ -178,7 +184,7 @@ protected String buildReadMethodBody() { if (type.isPrimitive()) { buildString("_$$_t.%s( $1.%s() );", e.getSetterName(), primitiveReadName(type)); } else { - buildString("_$$_t.%s( (%s)this.templates[%d].unpack($1, _$$_t.%s()) );", + buildString("_$$_t.%s( (%s)this.templates[%d].read($1, _$$_t.%s()) );", e.getSetterName(), e.getJavaTypeName(), i, e.getGetterName()); } buildString("}"); @@ -187,7 +193,7 @@ protected String buildReadMethodBody() { // latter entries are all Optional + nil => keep default value buildString("for(int i=%d; i < length; i++) {", i); - buildString(" $1.unpackObject();"); + buildString(" $1.skip();"); // TODO #MN buildString("}"); buildString("return _$$_t;"); diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 38b9b3bcf..cb58c01f4 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -31,10 +31,14 @@ public class DefaultBuildContext extends BuildContext { protected FieldEntry[] entries; + protected Class origClass; + protected String origName; + protected Template[] templates; - protected int minimumArrayLength; + + protected int minArrayLength; public DefaultBuildContext(JavassistTemplateBuilder director) { super(director); @@ -44,8 +48,8 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries, Template[ this.entries = entries; this.templates = templates; this.origClass = targetClass; - this.origName = this.origClass.getName(); - return build(this.origName); + this.origName = origClass.getName(); + return build(origName); } protected void setSuperClass() throws CannotCompileException, NotFoundException { @@ -67,17 +71,17 @@ protected void buildConstructor() throws CannotCompileException, protected Template buildInstance(Class c) throws NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException { Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); - Object tmpl = cons.newInstance(new Object[] { this.origClass, this.templates }); + Object tmpl = cons.newInstance(new Object[] { origClass, templates }); return (Template) tmpl; } protected void buildMethodInit() { - minimumArrayLength = 0; + minArrayLength = 0; for (int i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; - // TODO #MN if (e.isRequired() || !e.isNotNullable()) { - minimumArrayLength = i + 1; + // TODO #MN + minArrayLength = i + 1; } } } @@ -85,7 +89,7 @@ protected void buildMethodInit() { protected String buildWriteMethodBody() { resetStringBuilder(); buildString("{"); - buildString("%s _$$_t = (%s) $2;", this.origName, this.origName); + buildString("%s _$$_t = (%s) $2;", origName, origName); buildString("$1.writeArrayBegin(%d);", entries.length); for (int i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; @@ -127,19 +131,19 @@ protected String buildReadMethodBody() { buildString("}"); buildString("int length = $1.readArrayBegin();"); - buildString("if(length < %d) {", minimumArrayLength); + buildString("if (length < %d) {", minArrayLength); buildString(" throw new %s();", MessageTypeException.class.getName()); buildString("}"); int i; - for (i = 0; i < minimumArrayLength; i++) { + for (i = 0; i < minArrayLength; i++) { FieldEntry e = entries[i]; if (!e.isAvailable()) { buildString("$1.skip();"); // TODO #MN continue; } - buildString("if($1.tryReadNil()) {"); + buildString("if ($1.tryReadNil()) {"); if (e.isRequired()) { // Required + nil => exception buildString("throw new %s();", MessageTypeException.class.getName()); @@ -154,8 +158,7 @@ protected String buildReadMethodBody() { if (type.isPrimitive()) { buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); } else { - buildString( - "_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", + buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", e.getName(), e.getJavaTypeName(), i, e.getName()); } buildString("}"); @@ -170,7 +173,7 @@ protected String buildReadMethodBody() { continue; } - buildString("if($1.tryReadNil()) {"); + buildString("if ($1.tryReadNil()) {"); // this is Optional field becaue i >= minimumArrayLength // Optional + nil => keep default value buildString("} else {"); @@ -186,7 +189,7 @@ protected String buildReadMethodBody() { // latter entries are all Optional + nil => keep default value - buildString("for(int i = %d; i < length; i++) {", i); + buildString("for (int i = %d; i < length; i++) {", i); buildString(" $1.skip();"); // TODO #MN buildString("}"); @@ -202,8 +205,8 @@ public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] this.entries = entries; this.templates = templates; this.origClass = targetClass; - this.origName = this.origClass.getName(); - write(this.origName, directoryName); + this.origName = origClass.getName(); + write(origName, directoryName); } @Override @@ -211,7 +214,7 @@ public Template loadTemplate(Class targetClass, FieldEntry[] entries, Templat this.entries = entries; this.templates = templates; this.origClass = targetClass; - this.origName = this.origClass.getName(); - return load(this.origName); + this.origName = origClass.getName(); + return load(origName); } } \ No newline at end of file From 3c3868f811137abba7146190297c55e452250f2c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 18:43:22 +0900 Subject: [PATCH 054/409] modified test programs under org.msgpack package --- .../msgpack/TestBufferPackBufferUnpack.java | 67 ++++++++----------- .../org/msgpack/TestBufferPackConvert.java | 65 +++++++----------- .../msgpack/TestBufferPackStreamUnpack.java | 52 +++++++------- .../msgpack/TestStreamPackBufferUnpack.java | 65 +++++++----------- .../org/msgpack/TestStreamPackConvert.java | 65 +++++++----------- .../msgpack/TestStreamPackStreamUnpack.java | 52 +++++++------- 6 files changed, 158 insertions(+), 208 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 1f13058bf..daee36246 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -25,11 +25,10 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -42,11 +41,10 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -59,11 +57,10 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -76,11 +73,10 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -93,11 +89,10 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -110,11 +105,10 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -127,11 +121,10 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -139,11 +132,10 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeNil(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); } @@ -155,11 +147,10 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -172,11 +163,10 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeString(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -189,11 +179,10 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -205,15 +194,15 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -235,7 +224,8 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -243,8 +233,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index b2515df2b..e40286133 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -28,11 +28,10 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isBoolean()); boolean ret = new Converter(value).readBoolean(); @@ -47,11 +46,10 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); byte ret = new Converter(value).readByte(); @@ -66,11 +64,10 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); short ret = new Converter(value).readShort(); @@ -85,11 +82,10 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); int ret = new Converter(value).readInt(); @@ -104,11 +100,10 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); long ret = new Converter(value).readLong(); @@ -123,11 +118,10 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); float ret = new Converter(value).readFloat(); @@ -142,11 +136,10 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); double ret = new Converter(value).readDouble(); @@ -156,11 +149,10 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeNil(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isNil()); new Converter(value).readNil(); @@ -174,11 +166,10 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); BigInteger ret = new Converter(value).readBigInteger(); @@ -193,11 +184,10 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeString(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); String ret = new Converter(value).readString(); @@ -212,11 +202,10 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); byte[] ret = new Converter(value).readByteArray(); @@ -231,15 +220,14 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -263,7 +251,7 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -271,8 +259,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index e46d91cb5..d813f4403 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -26,10 +26,10 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -42,10 +42,10 @@ public void testByte() throws Exception { @Override public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -58,10 +58,10 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -74,10 +74,10 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -90,10 +90,10 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -106,10 +106,10 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -122,10 +122,10 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -133,10 +133,10 @@ public void testDouble(double v) throws Exception { @Test @Override public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeNil(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); unpacker.readNil(); } @@ -148,10 +148,10 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -164,10 +164,10 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeString(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -180,10 +180,10 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -196,14 +196,14 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -226,7 +226,7 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - BufferPacker packer = new BufferPacker(msgpack); + BufferPacker packer = msgpack.createBufferPacker(); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -234,7 +234,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index f3fb90326..e030a1256 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -27,11 +27,10 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -45,11 +44,10 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByte(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -63,11 +61,10 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeShort(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -81,11 +78,10 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeInt(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -99,11 +95,10 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeLong(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -117,11 +112,10 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -135,11 +129,10 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -148,11 +141,10 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeNil(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); } @@ -165,11 +157,10 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -183,11 +174,10 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeString(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -201,11 +191,10 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -219,15 +208,14 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -251,7 +239,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -259,8 +247,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index 59d3aa07a..19a5b3740 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -30,11 +30,10 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isBoolean()); boolean ret = new Converter(value).readBoolean(); @@ -50,11 +49,10 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByte(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); byte ret = new Converter(value).readByte(); @@ -70,11 +68,10 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeShort(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); short ret = new Converter(value).readShort(); @@ -90,11 +87,10 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeInt(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); int ret = new Converter(value).readInt(); @@ -110,11 +106,10 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeLong(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); long ret = new Converter(value).readLong(); @@ -130,11 +125,10 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); float ret = new Converter(value).readFloat(); @@ -150,11 +144,10 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isFloat()); double ret = new Converter(value).readDouble(); @@ -165,11 +158,10 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeNil(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isNil()); new Converter(value).readNil(); @@ -184,11 +176,10 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isInteger()); BigInteger ret = new Converter(value).readBigInteger(); @@ -204,11 +195,10 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeString(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); String ret = new Converter(value).readString(); @@ -224,11 +214,10 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); assertTrue(value.isRaw()); byte[] ret = new Converter(value).readByteArray(); @@ -244,15 +233,14 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -277,7 +265,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -285,8 +273,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(msgpack); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index f0d37125c..6840ca8f4 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -28,10 +28,10 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBoolean(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -45,10 +45,10 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByte(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -62,10 +62,10 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeShort(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -79,10 +79,10 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeInt(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -96,10 +96,10 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeLong(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -108,10 +108,10 @@ public void testLong(long v) throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeFloat(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -125,10 +125,10 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeDouble(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -137,10 +137,10 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeNil(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); unpacker.readNil(); } @@ -153,10 +153,10 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeBigInteger(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -170,10 +170,10 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeString(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -187,10 +187,10 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeByteArray(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -204,14 +204,14 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -235,7 +235,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(msgpack, out); + StreamPacker packer = msgpack.createStreamPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -243,7 +243,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = new StreamUnpacker(msgpack, in); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { From f6033b79ba360b6e06621dc04533b827a5193c52 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 19:16:46 +0900 Subject: [PATCH 055/409] org.msgpack.template package --- .../template/TestBigDecimalTemplate.java | 23 +++++++++-------- .../template/TestBigIntegerTemplate.java | 25 +++++++++++-------- .../template/TestBooleanArrayTemplate.java | 23 +++++++++-------- .../msgpack/template/TestBooleanTemplate.java | 25 +++++++++++-------- .../template/TestByteArrayTemplate.java | 23 +++++++++-------- .../template/TestByteBufferTemplate.java | 23 +++++++++-------- .../msgpack/template/TestDateTemplate.java | 23 +++++++++-------- .../template/TestDoubleArrayTemplate.java | 23 +++++++++-------- .../msgpack/template/TestDoubleTemplate.java | 23 +++++++++-------- .../template/TestFloatArrayTemplate.java | 22 +++++++++------- .../msgpack/template/TestFloatTemplate.java | 23 +++++++++-------- .../template/TestIntegerArrayTemplate.java | 23 +++++++++-------- .../msgpack/template/TestIntegerTemplate.java | 23 +++++++++-------- .../msgpack/template/TestListTemplate.java | 18 ++++++------- .../template/TestLongArrayTemplate.java | 23 +++++++++-------- .../msgpack/template/TestLongTemplate.java | 23 +++++++++-------- .../org/msgpack/template/TestMapTemplate.java | 18 ++++++------- .../template/TestShortArrayTemplate.java | 23 +++++++++-------- .../msgpack/template/TestShortTemplate.java | 23 +++++++++-------- .../msgpack/template/TestStringTemplate.java | 23 +++++++++-------- 20 files changed, 252 insertions(+), 201 deletions(-) diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index ea2156aad..ba24e41be 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -7,6 +7,7 @@ import java.math.BigDecimal; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -44,12 +45,13 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -63,13 +65,13 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -83,12 +85,12 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -102,11 +104,12 @@ public void testBigDecimal() throws Exception { @Override public void testBigDecimal(BigDecimal v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 52724eb76..00c66debf 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -7,6 +7,7 @@ import java.math.BigInteger; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -44,12 +45,13 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -63,13 +65,13 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -83,13 +85,13 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); - BigInteger ret = tmpl.read(unpacker, null); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -102,11 +104,12 @@ public void testBigInteger() throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index 47634f07c..0cd5b9366 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); boolean[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean[] ret0; switch (index) { case 0: @@ -174,12 +176,12 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean[] ret0; switch (index) { case 0: @@ -216,11 +218,12 @@ public void testBooleanArray() throws Exception { @Override public void testBooleanArray(boolean[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); boolean[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index 012e7440f..52d6d0898 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,13 +64,13 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -82,12 +84,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = BooleanTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -101,11 +103,12 @@ public void testBoolean() throws Exception { @Override public void testBoolean(boolean v) throws Exception { - Template tmpl = BooleanTemplate.instance; - BufferPacker packer = new BufferPacker(); + MessagePack msgpack = new MessagePack(); + Template tmpl = BooleanTemplate.instance; + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index d108148a3..79cfaba9b 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { @@ -65,13 +67,13 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { @@ -88,12 +90,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { @@ -110,11 +112,12 @@ public void testByteArray() throws Exception { @Override public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 9f10af505..a85337a4b 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -7,6 +7,7 @@ import java.nio.ByteBuffer; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -50,12 +51,13 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } @@ -69,13 +71,13 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } @@ -89,12 +91,12 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } @@ -108,11 +110,12 @@ public void testByteBuffer() throws Exception { @Override public void testByteBuffer(ByteBuffer v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index 5b6c0822a..025ee18ed 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -7,6 +7,7 @@ import java.util.Date; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -44,12 +45,13 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -63,13 +65,13 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -83,12 +85,12 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -102,11 +104,12 @@ public void testDate() throws Exception { @Override public void testDate(Date v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index 440052fde..afe41ad1a 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); double[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double[] ret0; switch (index) { case 0: @@ -174,12 +176,12 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double[] ret0; switch (index) { case 0: @@ -216,11 +218,12 @@ public void testDoubleArray() throws Exception { @Override public void testDoubleArray(double[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); double[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index 29b8fe320..a6c43430d 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -62,13 +64,13 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -82,12 +84,12 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -101,11 +103,12 @@ public void testDouble() throws Exception { @Override public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index 2cf1be876..f376c98e0 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); float[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float[] ret0; switch (index) { case 0: @@ -174,11 +176,12 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.wrap(bytes); float[] ret0; switch (index) { @@ -216,11 +219,12 @@ public void testFloatArray() throws Exception { @Override public void testFloatArray(float[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); float[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index e1615598f..d343a4d2b 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -62,13 +64,13 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -82,12 +84,12 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -101,11 +103,12 @@ public void testFloat() throws Exception { @Override public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 91960dfc3..716e42a7a 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int[] ret0; switch (index) { case 0: @@ -174,12 +176,12 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int[] ret0; switch (index) { case 0: @@ -216,11 +218,12 @@ public void testIntegerArray() throws Exception { @Override public void testIntegerArray(int[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index 3641c47b5..07b6d208e 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,13 +64,13 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -82,12 +84,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -101,11 +103,12 @@ public void testInteger() throws Exception { @Override public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 30b50053d..033f58d31 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -51,10 +51,10 @@ public void testList(List v, Class elementClass) throws Exception { Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -72,11 +72,10 @@ public void testList(List v, Class elementClass) throws Exception { Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -93,11 +92,10 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -114,10 +112,10 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index 279465296..505dc4ec5 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); long[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long[] ret0; switch (index) { case 0: @@ -174,12 +176,12 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long[] ret0; switch (index) { case 0: @@ -216,11 +218,12 @@ public void testLongArray() throws Exception { @Override public void testLongArray(long[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); long[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index d8aa70f6c..61f2baa4a 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,13 +64,13 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -82,12 +84,12 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -101,11 +103,12 @@ public void testLong() throws Exception { @Override public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index b0b9449bc..1a8709a19 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -53,10 +53,10 @@ public void testMap(Map v, Class keyElementClass, Class value Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -75,11 +75,10 @@ public void testMap(Map v, Class keyElementClass, Class value Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -97,11 +96,10 @@ public void testMap(Map v, Class keyElementClass, Class value Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -119,10 +117,10 @@ public void testMap(Map v, Class keyElementClass, Class value Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index fa2a158bf..e83fe846d 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -89,12 +90,13 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); short[] ret0; switch (index) { case 0: @@ -131,13 +133,13 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short[] ret0; switch (index) { case 0: @@ -174,12 +176,12 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short[] ret0; switch (index) { case 0: @@ -216,11 +218,12 @@ public void testShortArray() throws Exception { @Override public void testShortArray(short[] v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); short[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index 9306902b1..d2a7e91c9 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,13 +64,13 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -82,12 +84,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -101,11 +103,12 @@ public void testShort() throws Exception { @Override public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index 00b60156a..c8ed1d4dc 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -6,6 +6,7 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.StreamPacker; @@ -43,12 +44,13 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,13 +64,13 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + StreamPacker packer = msgpack.createStreamPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -82,12 +84,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); - unpacker.wrap(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -101,11 +103,12 @@ public void testString() throws Exception { @Override public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; - BufferPacker packer = new BufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } From 6e6b9d1ff2c9f6bb1c763d5d20fa1cfdffe978ae Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 19:33:14 +0900 Subject: [PATCH 056/409] modified TemplateBuilderChain to enable selecting javassist-based template builder --- .../msgpack/template/TemplateRegistry.java | 5 ++-- .../builder/TemplateBuilderChain.java | 29 ++++++++++++++----- 2 files changed, 23 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 47994ded2..0bdfef56c 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -26,7 +26,6 @@ import java.math.BigInteger; import java.nio.ByteBuffer; -import org.msgpack.MessagePack; import org.msgpack.MessagePackable; import org.msgpack.MessageTypeException; import org.msgpack.template.BigIntegerTemplate; @@ -59,10 +58,10 @@ public class TemplateRegistry { private TemplateRegistry parent = null; - private Map> cache; - private TemplateBuilderChain chain; + private Map> cache; + private Map genericCache; public TemplateRegistry() { diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index fb87de990..759af0673 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -26,21 +26,26 @@ public class TemplateBuilderChain { - protected List templateBuilders = new ArrayList(); + protected List templateBuilders; protected TemplateBuilder forceTemplateBuilder = null; public TemplateBuilderChain() { + templateBuilders = new ArrayList(); } public void init(TemplateRegistry registry) { - // TODO #MN - // add javassist-based template builder - // add beans-based template builder - // add reflection-based beans template builder - templateBuilders.add(new ReflectionTemplateBuilder(registry)); - templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); - forceTemplateBuilder = new ReflectionTemplateBuilder(registry); + if (isSupportJavassist()) { + forceTemplateBuilder = new JavassistTemplateBuilder(registry); + templateBuilders.add(forceTemplateBuilder); + templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); + } else { + forceTemplateBuilder = new ReflectionTemplateBuilder(registry); + templateBuilders.add(forceTemplateBuilder); + templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); + } } public TemplateBuilder select(Type targetType) { @@ -51,4 +56,12 @@ public TemplateBuilder select(Type targetType) { } return forceTemplateBuilder; } + + private static boolean isSupportJavassist(){ + try { + return !System.getProperty("java.vm.name").equals("Dalvik"); + } catch (Exception e) { + return true; + } + } } From d09a461d57078b61f704314a60ac9eefae4ce4e5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 20:37:35 +0900 Subject: [PATCH 057/409] refactored template registry --- .../org/msgpack/template/TemplateRegistry.java | 18 +++++++++--------- .../builder/AbstractTemplateBuilder.java | 1 + .../template/builder/TemplateBuilder.java | 3 +++ 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 0bdfef56c..4b01d2b6c 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -60,7 +60,7 @@ public class TemplateRegistry { private TemplateBuilderChain chain; - private Map> cache; + private Map> cache; private Map genericCache; @@ -70,7 +70,7 @@ public TemplateRegistry() { public TemplateRegistry(TemplateRegistry registry) { parent = registry; - cache = new HashMap>(); + cache = new HashMap>(); genericCache = new HashMap(); if (parent == null) { registerTemplates(); @@ -117,18 +117,18 @@ private void registerTemplates() { registerGeneric(Map.class, new GenericTemplate2(this, MapTemplate.class)); } - public void register(Class targetClass) { + public void register(final Class targetClass) { register(targetClass, chain.select(targetClass).buildTemplate(targetClass)); } - public void register(Class targetClass, final FieldList flist) { + public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - register(targetClass, ((AbstractTemplateBuilder) chain.select(targetClass)).buildTemplate(targetClass, flist)); + register(targetClass, chain.select(targetClass).buildTemplate(targetClass, flist)); } - public synchronized void register(Type targetType, final Template tmpl) { + public synchronized void register(final Type targetType, final Template tmpl) { if (targetType instanceof ParameterizedType) { cache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { @@ -136,7 +136,7 @@ public synchronized void register(Type targetType, final Template tmpl) { } } - public synchronized void registerGeneric(Type targetType, final GenericTemplate tmpl) { + public synchronized void registerGeneric(final Type targetType, final GenericTemplate tmpl) { if(targetType instanceof ParameterizedType) { genericCache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { @@ -144,8 +144,8 @@ public synchronized void registerGeneric(Type targetType, final GenericTemplate } } - public boolean unregister(Type targetType) { - Template tmpl = cache.remove(targetType); + public boolean unregister(final Type targetType) { + Template tmpl = cache.remove(targetType); return tmpl != null; } diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index ab9ebec90..35f48fc8c 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -56,6 +56,7 @@ public Template buildTemplate(Type targetType) throws TemplateBuildExcept return buildTemplate(targetClass, entries); } + @Override public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { try { checkClassValidation(targetClass); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 3457563c5..8ea18b423 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -19,6 +19,7 @@ import java.lang.reflect.Type; +import org.msgpack.template.FieldList; import org.msgpack.template.Template; @@ -27,6 +28,8 @@ public interface TemplateBuilder { Template buildTemplate(Type targetType) throws TemplateBuildException; + Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException; + void writeTemplate(Type targetType, String directoryName); Template loadTemplate(Type targetType); From e07240f3e5b27fade09541cdfa44adee550a7178 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 23 Jul 2011 20:46:27 +0900 Subject: [PATCH 058/409] added template pre-compiler --- .../org/msgpack/util/TemplatePrecompiler.java | 137 ++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 src/main/java/org/msgpack/util/TemplatePrecompiler.java diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java new file mode 100644 index 000000000..8e8dcb349 --- /dev/null +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -0,0 +1,137 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.util; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Properties; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import javax.tools.DiagnosticCollector; +import javax.tools.JavaCompiler; +import javax.tools.JavaFileManager; +import javax.tools.JavaFileObject; +import javax.tools.StandardLocation; +import javax.tools.ToolProvider; + +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.JavassistTemplateBuilder; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + + +/** + * This class is a template precompiler, which is used for saving templates + * that TemplateBuilder generated. It saves templates as .class files. + * Application enables to load the .class files and use templates. + * + */ +public class TemplatePrecompiler { + + private static final Logger LOG = LoggerFactory.getLogger(TemplatePrecompiler.class); + + public static final String DEST = "msgpack.template.destdir"; + + public static final String DEFAULT_DEST = "."; + + public static void saveTemplates(final String[] classNames) throws IOException, ClassNotFoundException { + // TODO #MN + TemplateRegistry registry = new TemplateRegistry(); + List ret = new ArrayList(); + for (String className : classNames) { + matchClassNames(ret, className); + } + List> ret0 = toClass(ret); + for (Class c : ret0) { + saveTemplateClass(registry, c); + } + } + + @SuppressWarnings("serial") + private static void matchClassNames(List ret, final String className) throws IOException { + String packageName = className.substring(0, className.lastIndexOf('.')); + String relativedName = className.substring(className.lastIndexOf('.') + 1, className.length()); + String patName = relativedName.replace("*", "(\\w+)"); + Pattern pat = Pattern.compile(patName); + + JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); + JavaFileManager fm = compiler.getStandardFileManager( + new DiagnosticCollector(), null, null); + HashSet kind = new HashSet(){{ + add(JavaFileObject.Kind.CLASS); + }}; + + for (JavaFileObject f : fm.list(StandardLocation.PLATFORM_CLASS_PATH, packageName, kind, false)) { + String relatived0 = f.getName(); + String name0 = relatived0.substring(0, relatived0.length() - ".class".length()); + Matcher m = pat.matcher(name0); + if (m.matches()) { + String name = packageName + '.' + name0; + if (!ret.contains(name)) { + ret.add(name); + } + } + } + } + + private static List> toClass(List classNames) throws ClassNotFoundException { + List> ret = new ArrayList>(classNames.size()); + ClassLoader cl = TemplatePrecompiler.class.getClassLoader(); + for (String className : classNames) { + Class c = cl.loadClass(className); + ret.add(c); + } + return ret; + } + + public static void saveTemplateClasses(TemplateRegistry registry, Class[] targetClasses) throws IOException { + for (Class c : targetClasses) { + saveTemplateClass(registry, c); + } + } + + public static void saveTemplateClass(TemplateRegistry registry, Class targetClass) throws IOException { + LOG.info("Saving template of " + targetClass.getName() + "..."); + Properties props = System.getProperties(); + String distDirName = getDirName(props, DEST, DEFAULT_DEST); + if (targetClass.isEnum()) { + throw new UnsupportedOperationException("Not supported enum type yet: " + targetClass.getName()); + } else { + new JavassistTemplateBuilder(registry).writeTemplate(targetClass, distDirName); + } + LOG.info("Saved .class file of template class of " + targetClass.getName()); + } + + private static String getDirName(Properties props, String dirName, String defaultDirName) + throws IOException { + String dName = props.getProperty(dirName, defaultDirName); + File d = new File(dName); + if (!d.isDirectory() && !d.exists()) { + throw new IOException("Directory not exists: " + dName); + } + return d.getAbsolutePath(); + } + + public static void main(final String[] args) throws Exception { + TemplatePrecompiler.saveTemplates(args); + } +} From e512c7d3bc6eb7112def9254c58d530523874f59 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 24 Jul 2011 00:06:28 +0900 Subject: [PATCH 059/409] renamed GenericTemplate{1,2}.java to Generic{Collection,Map}Template.java --- ...GenericTemplate1.java => GenericCollectionTemplate.java} | 4 ++-- .../{GenericTemplate2.java => GenericMapTemplate.java} | 4 ++-- src/main/java/org/msgpack/template/GenericTemplate.java | 1 - src/main/java/org/msgpack/template/TemplateRegistry.java | 6 +++--- 4 files changed, 7 insertions(+), 8 deletions(-) rename src/main/java/org/msgpack/template/{GenericTemplate1.java => GenericCollectionTemplate.java} (91%) rename src/main/java/org/msgpack/template/{GenericTemplate2.java => GenericMapTemplate.java} (92%) diff --git a/src/main/java/org/msgpack/template/GenericTemplate1.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java similarity index 91% rename from src/main/java/org/msgpack/template/GenericTemplate1.java rename to src/main/java/org/msgpack/template/GenericCollectionTemplate.java index 77f32c2a7..6ea07d75d 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate1.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -21,10 +21,10 @@ import java.lang.reflect.InvocationTargetException; -public class GenericTemplate1 implements GenericTemplate { +public class GenericCollectionTemplate implements GenericTemplate { Constructor constructor; - public GenericTemplate1(TemplateRegistry registry, Class tmpl) { + public GenericCollectionTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[]{ Template.class }); constructor.newInstance(new Object[]{ AnyTemplate.getInstance(registry) }); diff --git a/src/main/java/org/msgpack/template/GenericTemplate2.java b/src/main/java/org/msgpack/template/GenericMapTemplate.java similarity index 92% rename from src/main/java/org/msgpack/template/GenericTemplate2.java rename to src/main/java/org/msgpack/template/GenericMapTemplate.java index 36b2f231b..5caa50094 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate2.java +++ b/src/main/java/org/msgpack/template/GenericMapTemplate.java @@ -21,10 +21,10 @@ import java.lang.reflect.InvocationTargetException; -public class GenericTemplate2 implements GenericTemplate { +public class GenericMapTemplate implements GenericTemplate { Constructor constructor; - public GenericTemplate2(TemplateRegistry registry, Class tmpl) { + public GenericMapTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); constructor.newInstance(new Object[] { diff --git a/src/main/java/org/msgpack/template/GenericTemplate.java b/src/main/java/org/msgpack/template/GenericTemplate.java index 711818129..012eec0e3 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate.java +++ b/src/main/java/org/msgpack/template/GenericTemplate.java @@ -21,4 +21,3 @@ public interface GenericTemplate { public Template build(Template[] params); } - diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 4b01d2b6c..58fe1c503 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -112,9 +112,9 @@ private void registerTemplates() { register(Collection.class, new CollectionTemplate(AnyTemplate.getInstance(this))); register(Map.class, new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - registerGeneric(List.class, new GenericTemplate1(this, ListTemplate.class)); - registerGeneric(Collection.class, new GenericTemplate1(this, CollectionTemplate.class)); - registerGeneric(Map.class, new GenericTemplate2(this, MapTemplate.class)); + registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); + registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); + registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); } public void register(final Class targetClass) { From 98f90e7e63de44e8fe663cb50443bdbb9c281628 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 24 Jul 2011 00:45:11 +0900 Subject: [PATCH 060/409] refactored javassist-based template builder --- .../builder/AbstractTemplateBuilder.java | 71 ++++++++++--------- .../JavassistBeansTemplateBuilder.java | 2 +- .../builder/JavassistTemplateBuilder.java | 8 +-- 3 files changed, 44 insertions(+), 37 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 35f48fc8c..795591f8d 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -37,10 +37,14 @@ import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public abstract class AbstractTemplateBuilder implements TemplateBuilder { + private static Logger LOG = LoggerFactory.getLogger(AbstractTemplateBuilder.class); + protected TemplateRegistry registry; protected AbstractTemplateBuilder(TemplateRegistry registry) { @@ -48,7 +52,7 @@ protected AbstractTemplateBuilder(TemplateRegistry registry) { } @Override - public Template buildTemplate(Type targetType) throws TemplateBuildException { + public Template buildTemplate(final Type targetType) throws TemplateBuildException { Class targetClass = (Class) targetType; checkClassValidation(targetClass); FieldOption implicitOption = readImplicitFieldOption(targetClass); @@ -57,18 +61,14 @@ public Template buildTemplate(Type targetType) throws TemplateBuildExcept } @Override - public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { - try { - checkClassValidation(targetClass); - return buildTemplate(targetClass, convertFieldEntries(targetClass, flist)); - } catch (NoSuchFieldException e) { - throw new TemplateBuildException(e); - } + public Template buildTemplate(final Class targetClass, final FieldList flist) throws TemplateBuildException { + checkClassValidation(targetClass); + return buildTemplate(targetClass, toFieldEntries(targetClass, flist)); } - public abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); + protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); - protected void checkClassValidation(Class targetClass) { + protected void checkClassValidation(final Class targetClass) { if (targetClass.isInterface()) { throw new TemplateBuildException("Cannot build template for interface: " + targetClass.getName()); } @@ -90,18 +90,24 @@ public Template loadTemplate(Type targetType) { return null; } - protected FieldEntry[] convertFieldEntries(Class targetClass, FieldList flist) throws NoSuchFieldException { + private FieldEntry[] toFieldEntries(Class targetClass, FieldList flist) { List src = flist.getList(); - FieldEntry[] result = new FieldEntry[src.size()]; - for(int i=0; i < src.size(); i++) { + FieldEntry[] entries = new FieldEntry[src.size()]; + for (int i = 0; i < src.size(); i++) { FieldList.Entry s = src.get(i); - if(s.isAvailable()) { - result[i] = new DefaultFieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); + if (s.isAvailable()) { + try { + entries[i] = new DefaultFieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); + } catch (SecurityException e) { + throw new TemplateBuildException(e); + } catch (NoSuchFieldException e) { + throw new TemplateBuildException(e); + } } else { - result[i] = new DefaultFieldEntry(); + entries[i] = new DefaultFieldEntry(); } } - return result; + return entries; } protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { @@ -117,35 +123,35 @@ protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implic */ List indexed = new ArrayList(); int maxIndex = -1; - for(Field f : allFields) { + for (Field f : allFields) { FieldOption opt = readFieldOption(f, implicitOption); - if(opt == FieldOption.IGNORE) { + if (opt == FieldOption.IGNORE) { // skip continue; } int index = readFieldIndex(f, maxIndex); - if(indexed.size() > index && indexed.get(index) != null) { + if (indexed.size() > index && indexed.get(index) != null) { throw new TemplateBuildException("duplicated index: "+index); } - if(index < 0) { + if (index < 0) { throw new TemplateBuildException("invalid index: "+index); } - while(indexed.size() <= index) { + while (indexed.size() <= index) { indexed.add(null); } indexed.set(index, new DefaultFieldEntry(f, opt)); - if(maxIndex < index) { + if (maxIndex < index) { maxIndex = index; } } FieldEntry[] result = new FieldEntry[maxIndex+1]; - for(int i=0; i < indexed.size(); i++) { + for (int i=0; i < indexed.size(); i++) { FieldEntry e = indexed.get(i); - if(e == null) { + if (e == null) { result[i] = new DefaultFieldEntry(); } else { result[i] = e; @@ -171,14 +177,14 @@ private Field[] readAllFields(Class targetClass) { // order: [fields of super class, ..., fields of this class] List succ = new ArrayList(); int total = 0; - for(Class c = targetClass; c != Object.class; c = c.getSuperclass()) { + for (Class c = targetClass; c != Object.class; c = c.getSuperclass()) { Field[] fields = c.getDeclaredFields(); total += fields.length; succ.add(fields); } Field[] result = new Field[total]; int off = 0; - for(int i=succ.size()-1; i >= 0; i--) { + for (int i = succ.size()-1; i >= 0; i--) { Field[] fields = succ.get(i); System.arraycopy(fields, 0, result, off, fields.length); off += fields.length; @@ -188,11 +194,11 @@ private Field[] readAllFields(Class targetClass) { private static FieldOption readFieldOption(Field field, FieldOption implicitOption) { int mod = field.getModifiers(); - if(Modifier.isStatic(mod) || Modifier.isFinal(mod)) { + if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) { return FieldOption.IGNORE; } - if(isAnnotated(field, Ignore.class)) { + if (isAnnotated(field, Ignore.class)) { return FieldOption.IGNORE; } else if(isAnnotated(field, Required.class)) { return FieldOption.REQUIRED; @@ -206,7 +212,7 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti } } - if(implicitOption != FieldOption.DEFAULT) { + if (implicitOption != FieldOption.DEFAULT) { return implicitOption; } @@ -214,7 +220,7 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti // transient : Ignore // public : Required // others : Ignore - if(Modifier.isTransient(mod)) { + if (Modifier.isTransient(mod)) { return FieldOption.IGNORE; } else if(Modifier.isPublic(mod)) { return FieldOption.REQUIRED; @@ -225,7 +231,7 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti private static int readFieldIndex(Field field, int maxIndex) { Index a = field.getAnnotation(Index.class); - if(a == null) { + if (a == null) { return maxIndex + 1; } else { return a.value(); @@ -235,6 +241,7 @@ private static int readFieldIndex(Field field, int maxIndex) { public static boolean isAnnotated(Class targetClass, Class with) { return targetClass.getAnnotation(with) != null; } + public static boolean isAnnotated(AccessibleObject ao, Class with) { return ao.getAnnotation(with) != null; } diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index e3d9c4bc6..22c31afbc 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -9,7 +9,7 @@ public JavassistBeansTemplateBuilder(TemplateRegistry registry) { } @Override - public BuildContext createBuildContext() { + protected BuildContext createBuildContext() { return new BeansBuildContext(this); } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 35f384c41..c483a8536 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -90,19 +90,19 @@ public void addClassLoader(ClassLoader cl) { pool.appendClassPath(new LoaderClassPath(cl)); } - public CtClass makeCtClass(String className) { + protected CtClass makeCtClass(String className) { return pool.makeClass(className); } - public CtClass getCtClass(String className) throws NotFoundException { + protected CtClass getCtClass(String className) throws NotFoundException { return pool.get(className); } - public int nextSeqId() { + protected int nextSeqId() { return seqId++; } - public BuildContext createBuildContext() { + protected BuildContext createBuildContext() { return new DefaultBuildContext(this); } From cd5f865a56fbe2528dd2eb185d145493fa0ba070 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 12:05:15 +0900 Subject: [PATCH 061/409] added Template#read(..., boolean optional) and Tempalte#write(..., boolean optional) --- .../msgpack/template/AbstractTemplate.java | 42 +++++++++++++++++++ .../org/msgpack/template/AnyTemplate.java | 2 +- .../msgpack/template/BigDecimalTemplate.java | 2 +- .../msgpack/template/BigIntegerTemplate.java | 2 +- .../template/BooleanArrayTemplate.java | 2 +- .../org/msgpack/template/BooleanTemplate.java | 2 +- .../msgpack/template/ByteArrayTemplate.java | 2 +- .../msgpack/template/ByteBufferTemplate.java | 2 +- .../org/msgpack/template/ByteTemplate.java | 2 +- .../msgpack/template/CollectionTemplate.java | 2 +- .../org/msgpack/template/DateTemplate.java | 2 +- .../org/msgpack/template/DefaultTemplate.java | 2 +- .../msgpack/template/DoubleArrayTemplate.java | 2 +- .../org/msgpack/template/DoubleTemplate.java | 2 +- .../msgpack/template/FloatArrayTemplate.java | 2 +- .../org/msgpack/template/FloatTemplate.java | 2 +- .../template/IntegerArrayTemplate.java | 2 +- .../org/msgpack/template/IntegerTemplate.java | 2 +- .../org/msgpack/template/ListTemplate.java | 2 +- .../msgpack/template/LongArrayTemplate.java | 2 +- .../org/msgpack/template/LongTemplate.java | 2 +- .../org/msgpack/template/MapTemplate.java | 2 +- .../template/MessagePackableTemplate.java | 2 +- .../msgpack/template/ShortArrayTemplate.java | 2 +- .../org/msgpack/template/ShortTemplate.java | 2 +- .../org/msgpack/template/StringTemplate.java | 2 +- .../java/org/msgpack/template/Template.java | 4 ++ .../org/msgpack/template/ValueTemplate.java | 2 +- 28 files changed, 72 insertions(+), 26 deletions(-) create mode 100644 src/main/java/org/msgpack/template/AbstractTemplate.java diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java new file mode 100644 index 000000000..3f1317325 --- /dev/null +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -0,0 +1,42 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public abstract class AbstractTemplate implements Template { + public void write(Packer pk, T v, boolean optional) throws IOException { + if(optional && v == null) { + pk.writeNil(); + } else { + write(pk, v); + } + } + + public T read(Unpacker u, T to, boolean optional) throws IOException { + if(optional && u.trySkipNil()) { + return null; + } else { + return read(u, to); + } + } +} + diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index db5be03a5..4af403290 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -24,7 +24,7 @@ import org.msgpack.unpacker.Unpacker; -public class AnyTemplate implements Template { +public class AnyTemplate extends AbstractTemplate { private static AnyTemplate INSTANCE = null; public static AnyTemplate getInstance(TemplateRegistry registry) { diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index a144ea020..add61ae0b 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -24,7 +24,7 @@ import org.msgpack.MessageTypeException; -public class BigDecimalTemplate implements Template { +public class BigDecimalTemplate extends AbstractTemplate { private BigDecimalTemplate() { } public void write(Packer pk, BigDecimal target) throws IOException { diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index b83e69d1f..3f3831fd9 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -24,7 +24,7 @@ import org.msgpack.MessageTypeException; -public class BigIntegerTemplate implements Template { +public class BigIntegerTemplate extends AbstractTemplate { private BigIntegerTemplate() { } public void write(Packer pk, BigInteger target) throws IOException { diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index 693ef01c4..dafc04076 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class BooleanArrayTemplate implements Template { +public class BooleanArrayTemplate extends AbstractTemplate { private BooleanArrayTemplate() { } public void write(Packer pk, boolean[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index e9a9b4add..cca6c0651 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class BooleanTemplate implements Template { +public class BooleanTemplate extends AbstractTemplate { private BooleanTemplate() { } public void write(Packer pk, Boolean target) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index 10b3c0e63..25fdae5c1 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class ByteArrayTemplate implements Template { +public class ByteArrayTemplate extends AbstractTemplate { private ByteArrayTemplate() { } public void write(Packer pk, byte[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index be5167404..9b7ec2ca3 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -25,7 +25,7 @@ import org.msgpack.MessageTypeException; -public class ByteBufferTemplate implements Template { +public class ByteBufferTemplate extends AbstractTemplate { private ByteBufferTemplate() { } public void write(Packer pk, ByteBuffer target) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 7558614b5..9ae9c10cc 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class ByteTemplate implements Template { +public class ByteTemplate extends AbstractTemplate { private ByteTemplate() { } public void write(Packer pk, Byte target) throws IOException { diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index e517e9e9b..91cd98123 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -25,7 +25,7 @@ import org.msgpack.MessageTypeException; -public class CollectionTemplate implements Template> { +public class CollectionTemplate extends AbstractTemplate> { private Template elementTemplate; public CollectionTemplate(Template elementTemplate) { diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index 5d247581d..3d653aa6a 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -25,7 +25,7 @@ import org.msgpack.MessageTypeException; -public class DateTemplate implements Template { +public class DateTemplate extends AbstractTemplate { private DateTemplate() { } public void write(Packer pk, Date target) throws IOException { diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index 8e5e68d3b..b1d3f2ce7 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -26,7 +26,7 @@ import org.msgpack.unpacker.Unpacker; -public class DefaultTemplate implements Template { +public class DefaultTemplate extends AbstractTemplate { private TemplateRegistry registry; // this field should be deleted? diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index 836ee0b3b..b3de03c9a 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class DoubleArrayTemplate implements Template { +public class DoubleArrayTemplate extends AbstractTemplate { private DoubleArrayTemplate() { } public void write(Packer pk, double[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index a383afa09..e1aee6fca 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class DoubleTemplate implements Template { +public class DoubleTemplate extends AbstractTemplate { private DoubleTemplate() { } public void write(Packer pk, Double target) throws IOException { diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index 318a702dd..a342f5f16 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class FloatArrayTemplate implements Template { +public class FloatArrayTemplate extends AbstractTemplate { private FloatArrayTemplate() { } public void write(Packer pk, float[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index 94c33048f..d1735470c 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class FloatTemplate implements Template { +public class FloatTemplate extends AbstractTemplate { private FloatTemplate() { } public void write(Packer pk, Float target) throws IOException { diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 4e65026b3..75ec7a7c5 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class IntegerArrayTemplate implements Template { +public class IntegerArrayTemplate extends AbstractTemplate { private IntegerArrayTemplate() { } public void write(Packer pk, int[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index 9d5ab68c6..ca8d6d4cd 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class IntegerTemplate implements Template { +public class IntegerTemplate extends AbstractTemplate { private IntegerTemplate() { } public void write(Packer pk, Integer target) throws IOException { diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index 7c0d4ab92..67d48749a 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -25,7 +25,7 @@ import org.msgpack.MessageTypeException; -public class ListTemplate implements Template> { +public class ListTemplate extends AbstractTemplate> { private Template elementTemplate; public ListTemplate(Template elementTemplate) { diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index 9b82a7403..57bc71f3a 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class LongArrayTemplate implements Template { +public class LongArrayTemplate extends AbstractTemplate { private LongArrayTemplate() { } public void write(Packer pk, long[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index aab4a0615..043f28dca 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class LongTemplate implements Template { +public class LongTemplate extends AbstractTemplate { private LongTemplate() { } public void write(Packer pk, Long target) throws IOException { diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index 74a86448c..4c44bd565 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -25,7 +25,7 @@ import org.msgpack.MessageTypeException; -public class MapTemplate implements Template> { +public class MapTemplate extends AbstractTemplate> { private Template keyTemplate; private Template valueTemplate; diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index dc6abe5ff..39eb069b2 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -24,7 +24,7 @@ import org.msgpack.MessageTypeException; -public class MessagePackableTemplate implements Template { +public class MessagePackableTemplate extends AbstractTemplate { private Class targetClass; MessagePackableTemplate(Class targetClass) { diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index 85f52c75b..d371585f2 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class ShortArrayTemplate implements Template { +public class ShortArrayTemplate extends AbstractTemplate { private ShortArrayTemplate() { } public void write(Packer pk, short[] target) throws IOException { diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index c0e35ecc2..2e91b7e26 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class ShortTemplate implements Template { +public class ShortTemplate extends AbstractTemplate { private ShortTemplate() { } public void write(Packer pk, Short target) throws IOException { diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index 97754cbbf..303a162cf 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -23,7 +23,7 @@ import org.msgpack.MessageTypeException; -public class StringTemplate implements Template { +public class StringTemplate extends AbstractTemplate { private StringTemplate() { } public void write(Packer pk, String target) throws IOException { diff --git a/src/main/java/org/msgpack/template/Template.java b/src/main/java/org/msgpack/template/Template.java index 66c9ad514..07496d704 100644 --- a/src/main/java/org/msgpack/template/Template.java +++ b/src/main/java/org/msgpack/template/Template.java @@ -25,6 +25,10 @@ public interface Template { public void write(Packer pk, T v) throws IOException; + public void write(Packer pk, T v, boolean optional) throws IOException; + public T read(Unpacker u, T to) throws IOException; + + public T read(Unpacker u, T to, boolean optional) throws IOException; } diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 4956dc8a1..8a101d0db 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -24,7 +24,7 @@ import org.msgpack.type.Value; -public class ValueTemplate implements Template { +public class ValueTemplate extends AbstractTemplate { private ValueTemplate() { } public void write(Packer pk, Value target) throws IOException { From 513276a16aca568390240cb1ddd0a1d31c393db9 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 24 Jul 2011 13:22:25 +0900 Subject: [PATCH 062/409] upgraded version of slf4j to 1.6.1 --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 9b10a166e..574a1ea6c 100644 --- a/pom.xml +++ b/pom.xml @@ -37,12 +37,12 @@ org.slf4j slf4j-api - 1.4.3 + 1.6.1 org.slf4j slf4j-log4j12 - 1.4.3 + 1.6.1 junit From 9e21556d1ae3ef6921d5cd8e96db2512c0253dd5 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 14:35:20 +0900 Subject: [PATCH 063/409] added Packer#close and Unpacker#close --- src/main/java/org/msgpack/io/ByteBufferOutput.java | 3 +++ src/main/java/org/msgpack/io/Input.java | 3 ++- src/main/java/org/msgpack/io/LinkedBufferInput.java | 3 +++ src/main/java/org/msgpack/io/LinkedBufferOutput.java | 3 +++ src/main/java/org/msgpack/io/Output.java | 3 ++- src/main/java/org/msgpack/io/StreamInput.java | 4 ++++ src/main/java/org/msgpack/io/StreamOutput.java | 4 ++++ .../java/org/msgpack/packer/AbstractMessagePackPacker.java | 4 ++++ src/main/java/org/msgpack/packer/JSONStreamPacker.java | 5 +++++ src/main/java/org/msgpack/packer/Packer.java | 7 ++++++- src/main/java/org/msgpack/packer/StreamPacker.java | 5 +++++ .../org/msgpack/unpacker/AbstractMessagePackUnpacker.java | 4 ++++ src/main/java/org/msgpack/unpacker/Unpacker.java | 7 ++++++- 13 files changed, 51 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index 05679cbc8..0792432eb 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -126,5 +126,8 @@ public void writeByteAndDouble(byte b, double v) throws IOException { public void flush() throws IOException { } + + public void close() { + } } diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 3e394a793..aafaccbb2 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -18,10 +18,11 @@ package org.msgpack.io; import java.io.IOException; +import java.io.Closeable; import java.io.EOFException; import java.nio.ByteBuffer; -public interface Input { +public interface Input extends Closeable { public int read(byte[] b, int off, int len) throws IOException; public byte readByte() throws IOException; diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index b04953469..79a28ef07 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -292,5 +292,8 @@ public void clear() { writable = -1; } } + + public void close() { + } } diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 4120b6cc6..0bcb3154b 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -63,5 +63,8 @@ protected boolean flushBuffer(byte[] b, int off, int len) { size += len; return false; } + + public void close() { + } } diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index ffb426db2..d698909f3 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -18,9 +18,10 @@ package org.msgpack.io; import java.io.IOException; +import java.io.Closeable; import java.nio.ByteBuffer; -public interface Output { +public interface Output extends Closeable { public void write(byte[] b, int off, int len) throws IOException; public void write(ByteBuffer bb) throws IOException; diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index e56365474..dd9067ae6 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -100,5 +100,9 @@ public double getDouble() throws IOException { require(8); return castByteBuffer.getDouble(0); } + + public void close() throws IOException { + in.close(); + } } diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index 0b9b27e49..8d0aadefd 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -103,5 +103,9 @@ public void writeByteAndDouble(byte b, double v) throws IOException { public void flush() throws IOException { } + + public void close() throws IOException { + out.close(); + } } diff --git a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java index c5521b800..79b1e2421 100644 --- a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java @@ -301,5 +301,9 @@ public void writeMapEnd(boolean check) throws IOException { } stack.pop(); } + + public void close() throws IOException { + out.close(); + } } diff --git a/src/main/java/org/msgpack/packer/JSONStreamPacker.java b/src/main/java/org/msgpack/packer/JSONStreamPacker.java index 4aa501f6b..91e77bb33 100644 --- a/src/main/java/org/msgpack/packer/JSONStreamPacker.java +++ b/src/main/java/org/msgpack/packer/JSONStreamPacker.java @@ -18,6 +18,7 @@ package org.msgpack.packer; import java.io.OutputStream; +import java.io.IOException; import org.msgpack.MessagePack; import org.msgpack.io.StreamOutput; @@ -31,5 +32,9 @@ public JSONStreamPacker(OutputStream stream) { public JSONStreamPacker(MessagePack msgpack, OutputStream stream) { super(msgpack, new StreamOutput(stream)); } + + public void close() throws IOException { + out.close(); + } } diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index c73349189..f083e6786 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -19,13 +19,14 @@ import java.math.BigInteger; import java.io.IOException; +import java.io.Closeable; import java.nio.ByteBuffer; import org.msgpack.type.Value; import org.msgpack.MessagePack; import org.msgpack.template.Template; -public abstract class Packer { +public abstract class Packer implements Closeable { protected MessagePack msgpack; protected Packer(MessagePack msgpack) { @@ -96,6 +97,10 @@ public Packer write(Value v) throws IOException { return this; } + + public void close() throws IOException { + } + // public Packer write(Object o) throws IOException { // msgpack.lookup(o.getClass()).write(this, o); // return this; diff --git a/src/main/java/org/msgpack/packer/StreamPacker.java b/src/main/java/org/msgpack/packer/StreamPacker.java index 58e756196..02d909fa6 100644 --- a/src/main/java/org/msgpack/packer/StreamPacker.java +++ b/src/main/java/org/msgpack/packer/StreamPacker.java @@ -18,6 +18,7 @@ package org.msgpack.packer; import java.io.OutputStream; +import java.io.IOException; import org.msgpack.MessagePack; import org.msgpack.io.StreamOutput; @@ -31,5 +32,9 @@ public StreamPacker(OutputStream stream) { public StreamPacker(MessagePack msgpack, OutputStream stream) { super(msgpack, new StreamOutput(stream)); } + + public void close() throws IOException { + out.close(); + } } diff --git a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java index 4c08371ae..dfb8d6944 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java @@ -521,5 +521,9 @@ public void skip() throws IOException { readOne(valueAccept); } } + + public void close() throws IOException { + in.close(); + } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 340384c91..fd9029c62 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -18,6 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.io.Closeable; import java.nio.ByteBuffer; import java.math.BigInteger; import java.lang.Iterable; @@ -27,7 +28,7 @@ import org.msgpack.packer.Unconverter; -public abstract class Unpacker implements Iterable { +public abstract class Unpacker implements Iterable, Closeable { protected MessagePack msgpack; protected Unpacker(MessagePack msgpack) { @@ -136,5 +137,9 @@ public T readOptional(T to, T defaultValue) throws IOException { public T readOptional(T to) throws IOException { return readOptional(to, null); } + + + public void close() throws IOException { + } } From 672c727d5116746b3c2bbf167f50a4e725143a97 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 14:39:27 +0900 Subject: [PATCH 064/409] removed Required option; integrated to NotNullable --- .../java/org/msgpack/annotation/Required.java | 29 ----- .../java/org/msgpack/template/FieldList.java | 16 +-- .../org/msgpack/template/FieldOption.java | 1 - .../builder/AbstractTemplateBuilder.java | 14 +-- .../template/builder/BeansBuildContext.java | 96 +++++------------ .../template/builder/DefaultBuildContext.java | 68 +++--------- .../msgpack/template/builder/FieldEntry.java | 6 +- .../builder/JavassistTemplateBuilder.java | 3 +- .../ReflectionBeansTemplateBuilder.java | 100 ++++-------------- .../ReflectionOrdinalEnumTemplateBuilder.java | 3 +- .../builder/ReflectionTemplateBuilder.java | 71 +++---------- 11 files changed, 87 insertions(+), 320 deletions(-) delete mode 100644 src/main/java/org/msgpack/annotation/Required.java diff --git a/src/main/java/org/msgpack/annotation/Required.java b/src/main/java/org/msgpack/annotation/Required.java deleted file mode 100644 index 40488fb7c..000000000 --- a/src/main/java/org/msgpack/annotation/Required.java +++ /dev/null @@ -1,29 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.annotation; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - - -@Target({ ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) -@Retention(RetentionPolicy.RUNTIME) -public @interface Required { -} diff --git a/src/main/java/org/msgpack/template/FieldList.java b/src/main/java/org/msgpack/template/FieldList.java index ce59e9b47..6da0864ab 100644 --- a/src/main/java/org/msgpack/template/FieldList.java +++ b/src/main/java/org/msgpack/template/FieldList.java @@ -47,18 +47,6 @@ public FieldOption getOption() { public boolean isAvailable() { return option != FieldOption.IGNORE; } - - public boolean isRequired() { - return option == FieldOption.REQUIRED; - } - - public boolean isOptional() { - return option == FieldOption.OPTIONAL; - } - - public boolean isNullable() { - return option == FieldOption.NOTNULLABLE; - } } private ArrayList list; @@ -68,7 +56,7 @@ public FieldList() { } public void add(final String name) { - add(name, FieldOption.REQUIRED); + add(name, FieldOption.DEFAULT); } public void add(final String name, final FieldOption option) { @@ -76,7 +64,7 @@ public void add(final String name, final FieldOption option) { } public void put(final int index, final String name) { - put(index, name, FieldOption.REQUIRED); + put(index, name, FieldOption.DEFAULT); } public void put(final int index, final String name, final FieldOption option) { diff --git a/src/main/java/org/msgpack/template/FieldOption.java b/src/main/java/org/msgpack/template/FieldOption.java index a6bb913c0..58c1ecbb3 100644 --- a/src/main/java/org/msgpack/template/FieldOption.java +++ b/src/main/java/org/msgpack/template/FieldOption.java @@ -19,7 +19,6 @@ public enum FieldOption { IGNORE, - REQUIRED, OPTIONAL, NOTNULLABLE, DEFAULT; diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 795591f8d..40a5ef67b 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -31,7 +31,6 @@ import org.msgpack.annotation.MessagePackMessage; import org.msgpack.annotation.NotNullable; import org.msgpack.annotation.Optional; -import org.msgpack.annotation.Required; import org.msgpack.template.FieldList; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; @@ -200,16 +199,10 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti if (isAnnotated(field, Ignore.class)) { return FieldOption.IGNORE; - } else if(isAnnotated(field, Required.class)) { - return FieldOption.REQUIRED; } else if(isAnnotated(field, Optional.class)) { return FieldOption.OPTIONAL; } else if(isAnnotated(field, NotNullable.class)) { - if(field.getDeclaringClass().isPrimitive()) { - return FieldOption.REQUIRED; - } else { - return FieldOption.NOTNULLABLE; - } + return FieldOption.NOTNULLABLE; } if (implicitOption != FieldOption.DEFAULT) { @@ -218,12 +211,13 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti // default mode: // transient : Ignore - // public : Required + // public : NotNullable // FIXME // others : Ignore if (Modifier.isTransient(mod)) { return FieldOption.IGNORE; } else if(Modifier.isPublic(mod)) { - return FieldOption.REQUIRED; + // FIXME primitive->NOTNULLABLE, otherwise->OPTIONAL + return FieldOption.NOTNULLABLE; } else { return FieldOption.IGNORE; } diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 82163bb2b..8bf8bd963 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -39,8 +39,6 @@ public class BeansBuildContext extends BuildContext { protected Template[] templates; - protected int minArrayLength; - public BeansBuildContext(JavassistTemplateBuilder director) { super(director); } @@ -79,14 +77,6 @@ protected Template buildInstance(Class c) throws NoSuchMethodException, } protected void buildMethodInit() { - minArrayLength = 0; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (e.isRequired() || !e.isNotNullable()) { - // TODO #MN - minArrayLength = i + 1; - } - } } @Override @@ -106,7 +96,7 @@ protected String buildWriteMethodBody() { buildString("$1.%s(_$$_t.%s());", primitiveWriteName(type), e.getGetterName()); } else { buildString("if(_$$_t.%s() == null) {", e.getGetterName()); - if (e.isNotNullable() && !e.isOptional()) { + if (e.isNotNullable()) { buildString("throw new %s();", MessageTypeException.class.getName()); } else { buildString("$1.writeNil();"); @@ -133,72 +123,40 @@ protected String buildReadMethodBody() { buildString(" _$$_t = (%s)$2;", origName); buildString("}"); - buildString("int length = $1.readArrayBegin();"); - buildString("if(length < %d) {", minArrayLength); - buildString(" throw new %s();", MessageTypeException.class.getName()); - buildString("}"); + buildString("$1.readArrayBegin();"); - int i; - for (i = 0; i < minArrayLength; i++) { + for(int i=0; i < entries.length; i++) { BeansFieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN - continue; - } - - buildString("if ($1.tryReadNil()) {"); - if (e.isRequired()) { - // Required + nil => exception - buildString("throw new %s();", MessageTypeException.class.getName()); - } else if (e.isOptional()) { - // Optional + nil => keep default value - } else { // Nullable - // Nullable + nil => set null - buildString("_$$_t.%s(null);", e.getSetterName()); - } - buildString("} else {"); - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("_$$_t.set%s( $1.%s() );", e.getName(), primitiveReadName(type)); - } else { - buildString("_$$_t.set%s( (%s)this.templates[%d].read($1, _$$_t.get%s()) );", - e.getName(), e.getJavaTypeName(), i, e.getName()); - } - buildString("}"); - } - - for (; i < entries.length; i++) { - buildString("if(length <= %d) { return _$$_t; }", i); - BeansFieldEntry e = entries[i]; if (!e.isAvailable()) { buildString("$1.skip();"); // TODO #MN - continue; - } - - buildString("if($1.tryReadNil()) {"); - // this is Optional field becaue i >= minimumArrayLength - // Optional + nil => keep default value - buildString("} else {"); - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("_$$_t.%s( $1.%s() );", e.getSetterName(), primitiveReadName(type)); - } else { - buildString("_$$_t.%s( (%s)this.templates[%d].read($1, _$$_t.%s()) );", - e.getSetterName(), e.getJavaTypeName(), i, e.getGetterName()); - } - buildString("}"); - } - - // latter entries are all Optional + nil => keep default value - - buildString("for(int i=%d; i < length; i++) {", i); - buildString(" $1.skip();"); // TODO #MN - buildString("}"); + continue; + } + if (e.isOptional()) { + buildString("if($1.trySkipNil()) {"); + buildString("_$$_t.%s(null);", e.getSetterName()); + buildString("} else {"); + } + + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("_$$_t.%s( $1.%s() );", e.getSetterName(), primitiveReadName(type)); + } else { + buildString("_$$_t.%s( (%s)this.templates[%d].read($1, _$$_t.%s()) );", + e.getSetterName(), e.getJavaTypeName(), i, e.getGetterName()); + } + + if (e.isOptional()) { + buildString("}"); + } + } + + buildString("$1.readArrayEnd();"); buildString("return _$$_t;"); buildString("}"); + return getBuiltString(); } @@ -211,4 +169,4 @@ public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, Templ public Template loadTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { return null; } -} \ No newline at end of file +} diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index cb58c01f4..fb19b286d 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -38,8 +38,6 @@ public class DefaultBuildContext extends BuildContext { protected Template[] templates; - protected int minArrayLength; - public DefaultBuildContext(JavassistTemplateBuilder director) { super(director); } @@ -76,14 +74,6 @@ protected Template buildInstance(Class c) throws NoSuchMethodException, } protected void buildMethodInit() { - minArrayLength = 0; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (e.isRequired() || !e.isNotNullable()) { - // TODO #MN - minArrayLength = i + 1; - } - } } protected String buildWriteMethodBody() { @@ -103,7 +93,7 @@ protected String buildWriteMethodBody() { e.getName()); } else { buildString("if (_$$_t.%s == null) {", e.getName()); - if (e.isNotNullable() && !e.isOptional()) { + if (e.isNotNullable()) { buildString("throw new %s();", MessageTypeException.class.getName()); } else { @@ -130,53 +120,22 @@ protected String buildReadMethodBody() { buildString(" _$$_t = (%s) $2;", origName); buildString("}"); - buildString("int length = $1.readArrayBegin();"); - buildString("if (length < %d) {", minArrayLength); - buildString(" throw new %s();", MessageTypeException.class.getName()); - buildString("}"); + buildString("$1.readArrayBegin();"); int i; - for (i = 0; i < minArrayLength; i++) { + for (i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; if (!e.isAvailable()) { buildString("$1.skip();"); // TODO #MN continue; } - buildString("if ($1.tryReadNil()) {"); - if (e.isRequired()) { - // Required + nil => exception - buildString("throw new %s();", MessageTypeException.class.getName()); - } else if (e.isOptional()) { - // Optional + nil => keep default value - } else { // Nullable - // Nullable + nil => set null + if (e.isOptional()) { + buildString("if($1.trySkipNil()) {"); buildString("_$$_t.%s = null;", e.getName()); - } - buildString("} else {"); - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); - } else { - buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", - e.getName(), e.getJavaTypeName(), i, e.getName()); - } - buildString("}"); - } + buildString("} else {"); + } - for (; i < entries.length; i++) { - buildString("if (length <= %d) { return _$$_t; }", i); - - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN - continue; - } - - buildString("if ($1.tryReadNil()) {"); - // this is Optional field becaue i >= minimumArrayLength - // Optional + nil => keep default value - buildString("} else {"); Class type = e.getType(); if (type.isPrimitive()) { buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); @@ -184,14 +143,11 @@ protected String buildReadMethodBody() { buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", e.getName(), e.getJavaTypeName(), i, e.getName()); } - buildString("}"); - } - // latter entries are all Optional + nil => keep default value - - buildString("for (int i = %d; i < length; i++) {", i); - buildString(" $1.skip();"); // TODO #MN - buildString("}"); + if (e.isOptional()) { + buildString("}"); + } + } buildString("$1.readArrayEnd();"); buildString("return _$$_t;"); @@ -217,4 +173,4 @@ public Template loadTemplate(Class targetClass, FieldEntry[] entries, Templat this.origName = origClass.getName(); return load(origName); } -} \ No newline at end of file +} diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 4ed97fae0..0e21ec19c 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -46,10 +46,6 @@ public boolean isAvailable() { return option != FieldOption.IGNORE; } - public boolean isRequired() { - return option == FieldOption.REQUIRED; - } - public boolean isOptional() { return option == FieldOption.OPTIONAL; } @@ -92,4 +88,4 @@ public String arrayTypeToString(Class type) { return sb.toString(); } -} \ No newline at end of file +} diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index c483a8536..8b519e2cd 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -31,6 +31,7 @@ import org.msgpack.annotation.MessagePackMessage; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; +import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; @@ -38,7 +39,7 @@ public class JavassistTemplateBuilder extends AbstractTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(JavassistTemplateBuilder.class); - public static abstract class JavassistTemplate implements Template { + public static abstract class JavassistTemplate extends AbstractTemplate { public Class targetClass; public Template[] templates; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index dfec15649..18be961f3 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -34,10 +34,10 @@ import org.msgpack.annotation.MessagePackBeans; import org.msgpack.annotation.NotNullable; import org.msgpack.annotation.Optional; -import org.msgpack.annotation.Required; import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; +import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldEntry; import org.msgpack.unpacker.Unpacker; @@ -93,108 +93,60 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } } - static class ReflectionBeansTemplate implements Template { + static class ReflectionBeansTemplate extends AbstractTemplate { private Class targetClass; private FieldEntry[] entries = null; - protected int minArrayLength; - ReflectionBeansTemplate(Class targetClass, FieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; - minArrayLength = 0; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (e.isRequired() || !e.isNotNullable()) { - minArrayLength = i + 1; - } - } } @Override public - void write(Packer pk, T v) throws IOException { - pk.writeArrayBegin(entries.length); + void write(Packer packer, T v) throws IOException { + packer.writeArrayBegin(entries.length); for (FieldEntry entry : entries) { ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entry; if (!e.isAvailable()) { - pk.writeNil(); + packer.writeNil(); continue; } Object obj = e.get(v); if (obj == null) { - if (e.isNotNullable() && !e.isOptional()) { + if (e.isNotNullable()) { throw new MessageTypeException(); } - pk.writeNil(); + packer.writeNil(); } else { - e.write(pk, obj); + e.write(packer, obj); } } - pk.writeArrayEnd(); + packer.writeArrayEnd(); } @Override - public T read(Unpacker u, T to) throws IOException { + public T read(Unpacker unpacker, T to) throws IOException { try { if (to == null) { to = targetClass.newInstance(); } - int length = u.readArrayBegin(); - if (length < minArrayLength) { - throw new MessageTypeException(); - } - - int i; - for (i = 0; i < minArrayLength; i++) { - ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entries[i]; - if (!e.isAvailable()) { - u.readValue(); // TODO #MN - continue; - } - - if (u.tryReadNil()) { - if (e.isRequired()) { - // Required + nil => exception - throw new MessageTypeException(); - } else if (e.isOptional()) { - // Optional + nil => keep default value - } else { // Nullable - // Nullable + nil => set null - e.setNull(to); - } - } else { - e.read(u, to); - // e.set(to, pac.unpack(e.getType())); - } - } + unpacker.readArrayBegin(); - int max = length < entries.length ? length : entries.length; - for (; i < max; i++) { + for (int i=0; i < entries.length; i++) { ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entries[i]; - if (!e.isAvailable()) { - u.readValue(); // TODO #MN - continue; - } - - if (u.tryReadNil()) { - // this is Optional field becaue i >= minimumArrayLength - // Optional + nil => keep default value - } else { - e.read(u, to); - // e.set(to, pac.unpack(e.getType())); - } - } - - // latter entries are all Optional + nil => keep default value - - for (; i < length; i++) { - u.readValue(); - } - - u.readArrayEnd(); + if(!e.isAvailable()) { + unpacker.skip(); + } else if(e.isOptional() && unpacker.trySkipNil()) { + e.setNull(to); + } else { + e.read(unpacker, to); + } + } + + unpacker.readArrayEnd(); return to; } catch (MessageTypeException e) { throw e; @@ -315,16 +267,10 @@ private FieldOption readPropOption(BeansFieldEntry e, FieldOption implicitOption private FieldOption readMethodOption(Method method) { if (isAnnotated(method, Ignore.class)) { return FieldOption.IGNORE; - } else if (isAnnotated(method, Required.class)) { - return FieldOption.REQUIRED; } else if (isAnnotated(method, Optional.class)) { return FieldOption.OPTIONAL; } else if (isAnnotated(method, NotNullable.class)) { - if (method.getDeclaringClass().isPrimitive()) { - return FieldOption.REQUIRED; - } else { - return FieldOption.NOTNULLABLE; - } + return FieldOption.NOTNULLABLE; } return FieldOption.DEFAULT; } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index d94da43cc..5d724c907 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -27,6 +27,7 @@ import org.msgpack.annotation.OrdinalEnum; import org.msgpack.packer.Packer; import org.msgpack.template.Template; +import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; import org.msgpack.unpacker.Unpacker; @@ -34,7 +35,7 @@ public class ReflectionOrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { - static class ReflectionOrdinalEnumTemplate implements Template { + static class ReflectionOrdinalEnumTemplate extends AbstractTemplate { private T[] entries; private Map reverse; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index beadb1809..fae9b4f70 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -27,6 +27,7 @@ import org.msgpack.annotation.MessagePackMessage; import org.msgpack.packer.Packer; import org.msgpack.template.Template; +import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; @@ -184,23 +185,14 @@ void read(Unpacker unpacker, Object target) throws IOException, MessageTypeExcep } } - static class ReflectionTemplate implements Template { + static class ReflectionTemplate extends AbstractTemplate { protected Class targetClass; protected FieldEntry[] entries; - protected int minArrayLength; - ReflectionTemplate(Class targetClass, FieldEntry[] entries) { this.targetClass = targetClass; this.entries = entries; - minArrayLength = 0; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (e.isRequired() || !e.isNotNullable()) { - minArrayLength = i + 1; - } - } } @Override @@ -215,7 +207,7 @@ public void write(Packer packer, T target) throws IOException { } Object obj = e.get(target); if (obj == null) { - if (e.isNotNullable() && !e.isOptional()) { + if (e.isNotNullable()) { throw new MessageTypeException(); } packer.writeNil(); @@ -234,60 +226,25 @@ public void write(Packer packer, T target) throws IOException { } @Override - public T read(Unpacker unpacker, T to) throws IOException, MessageTypeException { + public T read(Unpacker unpacker, T to) throws IOException { try { if (to == null) { to = targetClass.newInstance(); } - int length = unpacker.readArrayBegin(); - if (length < minArrayLength) { - throw new MessageTypeException(); - } + unpacker.readArrayBegin(); - int i; - for (i = 0; i < minArrayLength; ++i) { + for (int i=0; i < entries.length; i++) { ReflectionFieldEntry e = (ReflectionFieldEntry) entries[i]; - if (!e.isAvailable()) { - unpacker.readValue(); // FIXME - continue; - } + if(!e.isAvailable()) { + unpacker.skip(); + } else if(e.isOptional() && unpacker.trySkipNil()) { + e.setNull(to); + } else { + e.read(unpacker, to); + } + } - if (unpacker.tryReadNil()) { - if (e.isRequired()) { - // Required + nil => exception - throw new MessageTypeException(); - } else if (e.isOptional()) { - // Optional + nil => keep default value - } else { // nullable - // nullable + nil => set null - e.setNull(to); - } - } else { - e.read(unpacker, to); - } - } - - int max = length < entries.length ? length : entries.length; - for (; i < max; ++i) { - ReflectionFieldEntry e = (ReflectionFieldEntry) entries[i]; - if (!e.isAvailable()) { - unpacker.readValue(); // FIXME - continue; - } - - if (unpacker.tryReadNil()) { - // this is Optional field becaue i >= minimumArrayLength - // Optional + nil => keep default value - } else { - e.read(unpacker, to); - } - } - - // latter entries are all Optional + nil => keep default value - for (; i < length; ++i) { - unpacker.readValue(); // FIXME - } unpacker.readArrayEnd(); return to; } catch (MessageTypeException e) { From 733d4e79b2cd70955e47b34b137072be27e1d000 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 24 Jul 2011 14:44:23 +0900 Subject: [PATCH 065/409] modified ivy.xml --- ivy.xml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ivy.xml b/ivy.xml index 18ebe08ed..b2b1b396b 100644 --- a/ivy.xml +++ b/ivy.xml @@ -14,8 +14,10 @@ - - - + + + + + From a5900288a1cf760e44db573e5ff7cf96dea0764a Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 17:56:23 +0900 Subject: [PATCH 066/409] redesigned Packer and Unpacker interfaces --- src/main/java/org/msgpack/MessagePack.java | 47 ++-- .../org/msgpack/packer/AbstractPacker.java | 205 +++++++++++++++++ .../java/org/msgpack/packer/BufferPacker.java | 28 +-- ...treamPacker.java => JSONBufferPacker.java} | 31 ++- ...bstractJSONPacker.java => JSONPacker.java} | 18 +- .../packer/MessagePackBufferPacker.java | 48 ++++ ...PackPacker.java => MessagePackPacker.java} | 18 +- src/main/java/org/msgpack/packer/Packer.java | 209 ++---------------- .../java/org/msgpack/packer/StreamPacker.java | 40 ---- .../java/org/msgpack/packer/Unconverter.java | 2 +- .../msgpack/unpacker/AbstractUnpacker.java | 109 +++++++++ .../org/msgpack/unpacker/BufferUnpacker.java | 42 +--- .../java/org/msgpack/unpacker/Converter.java | 2 +- .../unpacker/MessagePackBufferUnpacker.java | 61 +++++ ...Unpacker.java => MessagePackUnpacker.java} | 21 +- .../org/msgpack/unpacker/StreamUnpacker.java | 35 --- .../java/org/msgpack/unpacker/Unpacker.java | 109 +++------ .../msgpack/unpacker/UnpackerIterator.java | 4 +- .../msgpack/TestBufferPackStreamUnpack.java | 28 +-- src/test/java/org/msgpack/TestCrossLang.java | 13 +- .../org/msgpack/TestSimpleJSONPackUnpack.java | 4 +- .../java/org/msgpack/TestSimplePackable.java | 12 +- .../msgpack/TestStreamPackBufferUnpack.java | 28 +-- .../org/msgpack/TestStreamPackConvert.java | 28 +-- .../msgpack/TestStreamPackStreamUnpack.java | 56 ++--- .../template/TestBigDecimalTemplate.java | 12 +- .../template/TestBigIntegerTemplate.java | 12 +- .../template/TestBooleanArrayTemplate.java | 12 +- .../msgpack/template/TestBooleanTemplate.java | 12 +- .../template/TestByteArrayTemplate.java | 12 +- .../template/TestByteBufferTemplate.java | 12 +- .../msgpack/template/TestDateTemplate.java | 12 +- .../template/TestDoubleArrayTemplate.java | 12 +- .../msgpack/template/TestDoubleTemplate.java | 12 +- .../template/TestFloatArrayTemplate.java | 12 +- .../msgpack/template/TestFloatTemplate.java | 12 +- .../template/TestIntegerArrayTemplate.java | 12 +- .../msgpack/template/TestIntegerTemplate.java | 12 +- .../msgpack/template/TestListTemplate.java | 12 +- .../template/TestLongArrayTemplate.java | 12 +- .../msgpack/template/TestLongTemplate.java | 12 +- .../org/msgpack/template/TestMapTemplate.java | 12 +- .../template/TestShortArrayTemplate.java | 12 +- .../msgpack/template/TestShortTemplate.java | 12 +- .../msgpack/template/TestStringTemplate.java | 12 +- ...BeansReflectionBufferPackBufferUnpack.java | 69 +++--- .../TestBeansReflectionBufferPackConvert.java | 69 +++--- ...BeansReflectionBufferPackStreamUnpack.java | 71 +++--- ...BeansReflectionStreamPackBufferUnpack.java | 71 +++--- .../TestBeansReflectionStreamPackConvert.java | 71 +++--- ...BeansReflectionStreamPackStreamUnpack.java | 73 +++--- .../TestJavassistBufferPackBufferUnpack.java | 65 +++--- .../TestJavassistBufferPackConvert.java | 65 +++--- .../TestJavassistBufferPackStreamUnpack.java | 67 +++--- .../TestJavassistStreamPackBufferUnpack.java | 67 +++--- .../TestJavassistStreamPackConvert.java | 67 +++--- .../TestJavassistStreamPackStreamUnpack.java | 69 +++--- .../TestReflectionBufferPackBufferUnpack.java | 69 +++--- .../TestReflectionBufferPackConvert.java | 69 +++--- .../TestReflectionBufferPackStreamUnpack.java | 71 +++--- ...tionOrdinalEnumBufferPackBufferUnpack.java | 9 +- ...eflectionOrdinalEnumBufferPackConvert.java | 9 +- ...tionOrdinalEnumBufferPackStreamUnpack.java | 11 +- ...tionOrdinalEnumStreamPackBufferUnpack.java | 11 +- ...eflectionOrdinalEnumStreamPackConvert.java | 11 +- ...tionOrdinalEnumStreamPackStreamUnpack.java | 13 +- .../TestReflectionStreamPackBufferUnpack.java | 71 +++--- .../TestReflectionStreamPackConvert.java | 71 +++--- .../TestReflectionStreamPackStreamUnpack.java | 73 +++--- 69 files changed, 1456 insertions(+), 1294 deletions(-) create mode 100644 src/main/java/org/msgpack/packer/AbstractPacker.java rename src/main/java/org/msgpack/packer/{JSONStreamPacker.java => JSONBufferPacker.java} (50%) rename src/main/java/org/msgpack/packer/{AbstractJSONPacker.java => JSONPacker.java} (93%) create mode 100644 src/main/java/org/msgpack/packer/MessagePackBufferPacker.java rename src/main/java/org/msgpack/packer/{AbstractMessagePackPacker.java => MessagePackPacker.java} (95%) delete mode 100644 src/main/java/org/msgpack/packer/StreamPacker.java create mode 100644 src/main/java/org/msgpack/unpacker/AbstractUnpacker.java create mode 100644 src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java rename src/main/java/org/msgpack/unpacker/{AbstractMessagePackUnpacker.java => MessagePackUnpacker.java} (97%) delete mode 100644 src/main/java/org/msgpack/unpacker/StreamUnpacker.java diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index d96fafc05..3b3a4b1ba 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -21,14 +21,17 @@ import java.io.OutputStream; import java.io.IOException; import java.nio.ByteBuffer; - import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.MessagePackPacker; +import org.msgpack.packer.MessagePackBufferPacker; import org.msgpack.packer.Unconverter; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.MessagePackUnpacker; +import org.msgpack.unpacker.MessagePackBufferUnpacker; import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; @@ -45,32 +48,36 @@ public MessagePack(MessagePack msgpack) { } - public StreamPacker createStreamPacker(OutputStream stream) { - return new StreamPacker(this, stream); + public Packer createPacker(OutputStream stream) { + return new MessagePackPacker(this, stream); } public BufferPacker createBufferPacker() { - return new BufferPacker(this); + return new MessagePackBufferPacker(this); } public BufferPacker createBufferPacker(int bufferSize) { - return new BufferPacker(this, bufferSize); + return new MessagePackBufferPacker(this, bufferSize); + } + + public Unpacker createUnpacker(InputStream stream) { + return new MessagePackUnpacker(this, stream); } - public StreamUnpacker createStreamUnpacker(InputStream stream) { - return new StreamUnpacker(this, stream); + public BufferUnpacker createBufferUnpacker() { + return new MessagePackBufferUnpacker(); } public BufferUnpacker createBufferUnpacker(byte[] b) { - return new BufferUnpacker(this).wrap(b); + return createBufferUnpacker().wrap(b); } public BufferUnpacker createBufferUnpacker(byte[] b, int off, int len) { - return new BufferUnpacker(this).wrap(b, off, len); + return createBufferUnpacker().wrap(b, off, len); } public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { - return new BufferUnpacker(this).wrap(bb); + return createBufferUnpacker().wrap(bb); } @@ -89,7 +96,7 @@ public void write(OutputStream out, Object v) throws IOException { } public void write(OutputStream out, T v, Template tmpl) throws IOException { - StreamPacker pk = createStreamPacker(out); + Packer pk = createPacker(out); tmpl.write(pk, v); } @@ -113,7 +120,7 @@ public Value read(ByteBuffer buf) throws IOException { // TODO IOException } public Value read(InputStream in) throws IOException { - return createStreamUnpacker(in).readValue(); + return createUnpacker(in).readValue(); } public T read(byte[] b, T v) throws IOException { // TODO IOException @@ -143,12 +150,12 @@ public T read(ByteBuffer b, Class c) { // TODO IOException public T read(InputStream in, T v) throws IOException { Template tmpl = registry.lookup(v.getClass()); - return tmpl.read(createStreamUnpacker(in), v); + return tmpl.read(createUnpacker(in), v); } public T read(InputStream in, Class c) throws IOException { Template tmpl = registry.lookup(c); - return tmpl.read(createStreamUnpacker(in), null); + return tmpl.read(createUnpacker(in), null); } public T convert(Value v, T to) throws IOException { // TODO IOException @@ -214,13 +221,13 @@ public static Value unpack(byte[] buffer) throws IOException { @Deprecated public static T unpack(byte[] buffer, Template tmpl) throws IOException { - BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(buffer); return tmpl.read(u, null); } @Deprecated public static T unpack(byte[] buffer, Template tmpl, T to) throws IOException { - BufferUnpacker u = new BufferUnpacker(globalMessagePack).wrap(buffer); + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(buffer); return tmpl.read(u, to); } @@ -241,12 +248,12 @@ public static Value unpack(InputStream in) throws IOException { @Deprecated public static T unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { - return tmpl.read(new StreamUnpacker(globalMessagePack, in), null); + return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); } @Deprecated public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { - return (T) tmpl.read(new StreamUnpacker(globalMessagePack, in), to); + return (T) tmpl.read(new MessagePackUnpacker(globalMessagePack, in), to); } @Deprecated diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java new file mode 100644 index 000000000..6ce1d9dfb --- /dev/null +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -0,0 +1,205 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.packer; + +import java.math.BigInteger; +import java.io.IOException; +import java.nio.ByteBuffer; +import org.msgpack.type.Value; +import org.msgpack.MessagePack; +import org.msgpack.template.Template; + + +public abstract class AbstractPacker implements Packer { + protected MessagePack msgpack; + + protected AbstractPacker(MessagePack msgpack) { + this.msgpack = msgpack; + } + + public void writeByteArray(byte[] b) throws IOException { + writeByteArray(b, 0, b.length); + } + + + public void writeArrayEnd() throws IOException { + writeArrayEnd(true); + } + + public void writeMapEnd() throws IOException { + writeMapEnd(true); + } + + + public Packer write(Object o) throws IOException { + Template tmpl = msgpack.lookup(o.getClass()); + tmpl.write(this, o); + return this; + } + + public Packer writeOptional(Object o) throws IOException { + if(o == null) { + writeNil(); + return this; + } + return write(o); + } + + public Packer write(Value v) throws IOException { + v.writeTo(this); + return this; + } + + + public void close() throws IOException { + } + +// public Packer write(Object o) throws IOException { +// msgpack.lookup(o.getClass()).write(this, o); +// return this; +// } +// +// public Packer write(Value v) throws IOException { +// v.writeTo(this); +// return this; +// } +// +// public Packer write(MessagePackable v) throws IOException { +// v.writeTo(this); +// return this; +// } +// +// public Packer write(boolean v) throws IOException { +// writeBoolean(v); +// return this; +// } +// +// public Packer write(byte v) throws IOException { +// writeByte(v); +// return this; +// } +// +// public Packer write(short v) throws IOException { +// writeShort(v); +// return this; +// } +// +// public Packer write(int v) throws IOException { +// writeInt(v); +// return this; +// } +// +// public Packer write(long v) throws IOException { +// writeLong(v); +// return this; +// } +// +// public Packer write(float v) throws IOException { +// writeFloat(v); +// return this; +// } +// +// public Packer write(double v) throws IOException { +// writeDouble(v); +// return this; +// } +// +// public Packer write(Boolean v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeBoolean(v); +// } +// return this; +// } +// +// public Packer write(Byte v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeByte(v); +// } +// return this; +// } +// +// public Packer write(Short v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeShort(v); +// } +// return this; +// } +// +// public Packer write(Integer v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeInt(v); +// } +// return this; +// } +// +// public Packer write(Long v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeLong(v); +// } +// return this; +// } +// +// public Packer write(Float v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeFloat(v); +// } +// return this; +// } +// +// public Packer write(Double v) throws IOException { +// if(v == null) { +// writeNil(); +// } else { +// writeDouble(v); +// } +// return this; +// } +// +// public Packer write(String s) throws IOException { +// writeString(s); +// return this; +// } +// +// public Packer write(byte[] b) throws IOException { +// writeByteArray(b); +// return this; +// } +// +// public Packer write(byte[] b, int off, int len) throws IOException { +// writeByteArray(b, off, len); +// return this; +// } +// +// //public Packer write(ByteBuffer b) throws IOException { +// // writeByteBuffer(b); +// // return this; +// //} +} + diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index bc9d67c5f..aa40d6365 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -17,32 +17,8 @@ // package org.msgpack.packer; -import org.msgpack.MessagePack; -import org.msgpack.io.LinkedBufferOutput; - -public class BufferPacker extends AbstractMessagePackPacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size - - public BufferPacker() { - this(DEFAULT_BUFFER_SIZE); - } - - public BufferPacker(int bufferSize) { - this(new MessagePack(), bufferSize); - } - - public BufferPacker(MessagePack msgpack) { - this(msgpack, DEFAULT_BUFFER_SIZE); - } - - public BufferPacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new LinkedBufferOutput(bufferSize)); - } - - public byte[] toByteArray() { - LinkedBufferOutput bo = (LinkedBufferOutput) out; - return ((LinkedBufferOutput) bo).toByteArray(); - } +public interface BufferPacker extends Packer { + public byte[] toByteArray(); } diff --git a/src/main/java/org/msgpack/packer/JSONStreamPacker.java b/src/main/java/org/msgpack/packer/JSONBufferPacker.java similarity index 50% rename from src/main/java/org/msgpack/packer/JSONStreamPacker.java rename to src/main/java/org/msgpack/packer/JSONBufferPacker.java index 91e77bb33..4802717f2 100644 --- a/src/main/java/org/msgpack/packer/JSONStreamPacker.java +++ b/src/main/java/org/msgpack/packer/JSONBufferPacker.java @@ -17,24 +17,33 @@ // package org.msgpack.packer; -import java.io.OutputStream; -import java.io.IOException; - import org.msgpack.MessagePack; -import org.msgpack.io.StreamOutput; +import org.msgpack.io.Output; +import org.msgpack.io.LinkedBufferOutput; + + +public class JSONBufferPacker extends JSONPacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + public JSONBufferPacker() { + this(DEFAULT_BUFFER_SIZE); + } + + public JSONBufferPacker(int bufferSize) { + this(new MessagePack(), bufferSize); + } -public class JSONStreamPacker extends AbstractJSONPacker { - public JSONStreamPacker(OutputStream stream) { - this(new MessagePack(), stream); + public JSONBufferPacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); } - public JSONStreamPacker(MessagePack msgpack, OutputStream stream) { - super(msgpack, new StreamOutput(stream)); + public JSONBufferPacker(MessagePack msgpack, int bufferSize) { + super(msgpack, new LinkedBufferOutput(bufferSize)); } - public void close() throws IOException { - out.close(); + public byte[] toByteArray() { + LinkedBufferOutput bo = (LinkedBufferOutput) out; + return ((LinkedBufferOutput) bo).toByteArray(); } } diff --git a/src/main/java/org/msgpack/packer/AbstractJSONPacker.java b/src/main/java/org/msgpack/packer/JSONPacker.java similarity index 93% rename from src/main/java/org/msgpack/packer/AbstractJSONPacker.java rename to src/main/java/org/msgpack/packer/JSONPacker.java index ea1ba2c16..adbfe268b 100644 --- a/src/main/java/org/msgpack/packer/AbstractJSONPacker.java +++ b/src/main/java/org/msgpack/packer/JSONPacker.java @@ -18,14 +18,16 @@ package org.msgpack.packer; import java.io.IOException; +import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; import org.msgpack.io.Output; +import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; -public abstract class AbstractJSONPacker extends Packer { +public class JSONPacker extends AbstractPacker { private static final byte[] NULL = new byte[] { 0x6e, 0x75, 0x6c, 0x6c }; private static final byte[] TRUE = new byte[] { 0x74, 0x72, 0x75, 0x65 }; private static final byte[] FALSE = new byte[] { 0x66, 0x61, 0x6c, 0x73, 0x65 }; @@ -47,7 +49,15 @@ public abstract class AbstractJSONPacker extends Packer { private PackerStack stack = new PackerStack(); - protected AbstractJSONPacker(MessagePack msgpack, Output out) { + public JSONPacker(OutputStream stream) { + this(new MessagePack(), stream); + } + + public JSONPacker(MessagePack msgpack, OutputStream stream) { + this(msgpack, new StreamOutput(stream)); + } + + protected JSONPacker(MessagePack msgpack, Output out) { super(msgpack); this.out = out; this.stack = new PackerStack(); @@ -225,5 +235,9 @@ private void endElement() throws IOException { flags[stack.getDepth()] = flag; stack.reduceCount(); } + + public void close() throws IOException { + out.close(); + } } diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java new file mode 100644 index 000000000..9351d00f1 --- /dev/null +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -0,0 +1,48 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.packer; + +import org.msgpack.MessagePack; +import org.msgpack.io.LinkedBufferOutput; + + +public class MessagePackBufferPacker extends MessagePackPacker implements BufferPacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + + public MessagePackBufferPacker() { + this(DEFAULT_BUFFER_SIZE); + } + + public MessagePackBufferPacker(int bufferSize) { + this(new MessagePack(), bufferSize); + } + + public MessagePackBufferPacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); + } + + public MessagePackBufferPacker(MessagePack msgpack, int bufferSize) { + super(msgpack, new LinkedBufferOutput(bufferSize)); + } + + public byte[] toByteArray() { + LinkedBufferOutput bo = (LinkedBufferOutput) out; + return ((LinkedBufferOutput) bo).toByteArray(); + } +} + diff --git a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java similarity index 95% rename from src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java rename to src/main/java/org/msgpack/packer/MessagePackPacker.java index 79b1e2421..e14a1f1bb 100644 --- a/src/main/java/org/msgpack/packer/AbstractMessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -19,21 +19,31 @@ import java.io.IOException; import java.io.UnsupportedEncodingException; +import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; import org.msgpack.io.Output; +import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; -abstract class AbstractMessagePackPacker extends Packer { +public class MessagePackPacker extends AbstractPacker { protected final Output out; private PackerStack stack = new PackerStack(); - protected AbstractMessagePackPacker(MessagePack msgpack, Output out) { - super(msgpack); - this.out = out; + public MessagePackPacker(OutputStream stream) { + this(new MessagePack(), stream); + } + + public MessagePackPacker(MessagePack msgpack, OutputStream stream) { + this(msgpack, new StreamOutput(stream)); + } + + protected MessagePackPacker(MessagePack msgpack, Output out) { + super(msgpack); + this.out = out; } @Override diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index f083e6786..8157f5f6b 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -22,216 +22,53 @@ import java.io.Closeable; import java.nio.ByteBuffer; import org.msgpack.type.Value; -import org.msgpack.MessagePack; -import org.msgpack.template.Template; -public abstract class Packer implements Closeable { - protected MessagePack msgpack; +public interface Packer extends Closeable { + public void writeNil() throws IOException; - protected Packer(MessagePack msgpack) { - this.msgpack = msgpack; - } + public void writeBoolean(boolean v) throws IOException; - public abstract void writeNil() throws IOException; + public void writeByte(byte v) throws IOException; - public abstract void writeBoolean(boolean v) throws IOException; + public void writeShort(short v) throws IOException; - public abstract void writeByte(byte v) throws IOException; + public void writeInt(int v) throws IOException; - public abstract void writeShort(short v) throws IOException; + public void writeLong(long v) throws IOException; - public abstract void writeInt(int v) throws IOException; + public void writeBigInteger(BigInteger v) throws IOException; - public abstract void writeLong(long v) throws IOException; + public void writeFloat(float v) throws IOException; - public abstract void writeBigInteger(BigInteger v) throws IOException; + public void writeDouble(double v) throws IOException; - public abstract void writeFloat(float v) throws IOException; + public void writeByteArray(byte[] b) throws IOException; - public abstract void writeDouble(double v) throws IOException; + public void writeByteArray(byte[] b, int off, int len) throws IOException; - public void writeByteArray(byte[] b) throws IOException { - writeByteArray(b, 0, b.length); - } + public void writeByteBuffer(ByteBuffer bb) throws IOException; - public abstract void writeByteArray(byte[] b, int off, int len) throws IOException; + public void writeString(String s) throws IOException; - public abstract void writeByteBuffer(ByteBuffer bb) throws IOException; - public abstract void writeString(String s) throws IOException; + public void writeArrayBegin(int size) throws IOException; - public abstract void writeArrayBegin(int size) throws IOException; + public void writeArrayEnd(boolean check) throws IOException; - public abstract void writeArrayEnd(boolean check) throws IOException; + public void writeArrayEnd() throws IOException; - public void writeArrayEnd() throws IOException { - writeArrayEnd(true); - } + public void writeMapBegin(int size) throws IOException; - public abstract void writeMapBegin(int size) throws IOException; + public void writeMapEnd(boolean check) throws IOException; - public abstract void writeMapEnd(boolean check) throws IOException; + public void writeMapEnd() throws IOException; - public void writeMapEnd() throws IOException { - writeMapEnd(true); - } + public Packer write(Object o) throws IOException; - public Packer write(Object o) throws IOException { - Template tmpl = msgpack.lookup(o.getClass()); - tmpl.write(this, o); - return this; - } + public Packer writeOptional(Object o) throws IOException; - public Packer writeOptional(Object o) throws IOException { - if(o == null) { - writeNil(); - return this; - } - return write(o); - } - - public Packer write(Value v) throws IOException { - v.writeTo(this); - return this; - } - - - public void close() throws IOException { - } - -// public Packer write(Object o) throws IOException { -// msgpack.lookup(o.getClass()).write(this, o); -// return this; -// } -// -// public Packer write(Value v) throws IOException { -// v.writeTo(this); -// return this; -// } -// -// public Packer write(MessagePackable v) throws IOException { -// v.writeTo(this); -// return this; -// } -// -// public Packer write(boolean v) throws IOException { -// writeBoolean(v); -// return this; -// } -// -// public Packer write(byte v) throws IOException { -// writeByte(v); -// return this; -// } -// -// public Packer write(short v) throws IOException { -// writeShort(v); -// return this; -// } -// -// public Packer write(int v) throws IOException { -// writeInt(v); -// return this; -// } -// -// public Packer write(long v) throws IOException { -// writeLong(v); -// return this; -// } -// -// public Packer write(float v) throws IOException { -// writeFloat(v); -// return this; -// } -// -// public Packer write(double v) throws IOException { -// writeDouble(v); -// return this; -// } -// -// public Packer write(Boolean v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeBoolean(v); -// } -// return this; -// } -// -// public Packer write(Byte v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeByte(v); -// } -// return this; -// } -// -// public Packer write(Short v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeShort(v); -// } -// return this; -// } -// -// public Packer write(Integer v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeInt(v); -// } -// return this; -// } -// -// public Packer write(Long v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeLong(v); -// } -// return this; -// } -// -// public Packer write(Float v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeFloat(v); -// } -// return this; -// } -// -// public Packer write(Double v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeDouble(v); -// } -// return this; -// } -// -// public Packer write(String s) throws IOException { -// writeString(s); -// return this; -// } -// -// public Packer write(byte[] b) throws IOException { -// writeByteArray(b); -// return this; -// } -// -// public Packer write(byte[] b, int off, int len) throws IOException { -// writeByteArray(b, off, len); -// return this; -// } -// -// //public Packer write(ByteBuffer b) throws IOException { -// // writeByteBuffer(b); -// // return this; -// //} + public Packer write(Value v) throws IOException; } diff --git a/src/main/java/org/msgpack/packer/StreamPacker.java b/src/main/java/org/msgpack/packer/StreamPacker.java deleted file mode 100644 index 02d909fa6..000000000 --- a/src/main/java/org/msgpack/packer/StreamPacker.java +++ /dev/null @@ -1,40 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.packer; - -import java.io.OutputStream; -import java.io.IOException; - -import org.msgpack.MessagePack; -import org.msgpack.io.StreamOutput; - - -public class StreamPacker extends AbstractMessagePackPacker { - public StreamPacker(OutputStream stream) { - this(new MessagePack(), stream); - } - - public StreamPacker(MessagePack msgpack, OutputStream stream) { - super(msgpack, new StreamOutput(stream)); - } - - public void close() throws IOException { - out.close(); - } -} - diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 0f0529c49..65426cfc0 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -26,7 +26,7 @@ import org.msgpack.type.ValueFactory; -public class Unconverter extends Packer { +public class Unconverter extends AbstractPacker { private PackerStack stack; private Object[] values; private Value result; diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java new file mode 100644 index 000000000..1fb64a825 --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -0,0 +1,109 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.io.IOException; +import java.io.Closeable; +import java.nio.ByteBuffer; +import java.math.BigInteger; +import java.lang.Iterable; +import org.msgpack.type.Value; +import org.msgpack.MessagePack; +import org.msgpack.template.Template; +import org.msgpack.packer.Unconverter; + + +public abstract class AbstractUnpacker implements Unpacker { + protected MessagePack msgpack; + + protected AbstractUnpacker(MessagePack msgpack) { + this.msgpack = msgpack; + } + + public ByteBuffer readByteBuffer() throws IOException { + return ByteBuffer.wrap(readByteArray()); + } + + + public void readArrayEnd() throws IOException { + readArrayEnd(false); + } + + + public void readMapEnd() throws IOException { + readMapEnd(false); + } + + + public String readString() throws IOException { + // TODO encoding exception + return new String(readByteArray(), "UTF-8"); + } + + public UnpackerIterator iterator() { + return new UnpackerIterator(this); + } + + protected abstract void readValue(Unconverter uc) throws IOException; + + public Value readValue() throws IOException { + Unconverter uc = new Unconverter(msgpack); + readValue(uc); + return uc.getResult(); + } + + + public T read(Class klass) throws IOException { + Template tmpl = msgpack.lookup(klass); + return (T) tmpl.read(this, null); + } + + public T read(T to) throws IOException { + Template tmpl = msgpack.lookup((Class) to.getClass()); + return (T) tmpl.read(this, to); + } + + public T readOptional(Class klass) throws IOException { + return readOptional(klass, null); + } + + public T readOptional(Class klass, T defaultValue) throws IOException { + if(trySkipNil()) { + return defaultValue; + } + Template tmpl = (Template) msgpack.lookup(klass); + return (T) tmpl.read(this, null); + } + + public T readOptional(T to, T defaultValue) throws IOException { + if(trySkipNil()) { + return defaultValue; + } + Template tmpl = msgpack.lookup((Class) to.getClass()); + return (T) tmpl.read(this, to); + } + + public T readOptional(T to) throws IOException { + return readOptional(to, null); + } + + + public void close() throws IOException { + } +} + diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 78aad7c3a..6ecf85e4c 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -23,39 +23,13 @@ import org.msgpack.io.LinkedBufferInput; -public class BufferUnpacker extends AbstractMessagePackUnpacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size - - public BufferUnpacker() { - this(DEFAULT_BUFFER_SIZE); - } - - public BufferUnpacker(int bufferSize) { - this(new MessagePack(), bufferSize); - } - - public BufferUnpacker(MessagePack msgpack) { - this(msgpack, DEFAULT_BUFFER_SIZE); - } - - public BufferUnpacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new LinkedBufferInput(bufferSize)); - } - - public BufferUnpacker wrap(byte[] b) { - return wrap(b, 0, b.length); - } - - public BufferUnpacker wrap(byte[] b, int off, int len) { - ((LinkedBufferInput) in).clear(); - ((LinkedBufferInput) in).feed(b, off, len, true); - return this; - } - - public BufferUnpacker wrap(ByteBuffer buf) { - ((LinkedBufferInput) in).clear(); - ((LinkedBufferInput) in).feed(buf, true); - return this; - } +public interface BufferUnpacker extends Unpacker { + public BufferUnpacker wrap(byte[] b); + + public BufferUnpacker wrap(byte[] b, int off, int len); + + public BufferUnpacker wrap(ByteBuffer buf); + + // TODO feed } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 8330e9c17..be005f97a 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -28,7 +28,7 @@ import org.msgpack.type.MapValue; -public class Converter extends Unpacker { +public class Converter extends AbstractUnpacker { private final UnpackerStack stack; private Object[] values; protected Value value; diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java new file mode 100644 index 000000000..6e5a00d64 --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -0,0 +1,61 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.nio.ByteBuffer; + +import org.msgpack.MessagePack; +import org.msgpack.io.LinkedBufferInput; + + +public class MessagePackBufferUnpacker extends MessagePackUnpacker implements BufferUnpacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + + public MessagePackBufferUnpacker() { + this(DEFAULT_BUFFER_SIZE); + } + + public MessagePackBufferUnpacker(int bufferSize) { + this(new MessagePack(), bufferSize); + } + + public MessagePackBufferUnpacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); + } + + public MessagePackBufferUnpacker(MessagePack msgpack, int bufferSize) { + super(msgpack, new LinkedBufferInput(bufferSize)); + } + + public MessagePackBufferUnpacker wrap(byte[] b) { + return wrap(b, 0, b.length); + } + + public MessagePackBufferUnpacker wrap(byte[] b, int off, int len) { + ((LinkedBufferInput) in).clear(); + ((LinkedBufferInput) in).feed(b, off, len, true); + return this; + } + + public MessagePackBufferUnpacker wrap(ByteBuffer buf) { + ((LinkedBufferInput) in).clear(); + ((LinkedBufferInput) in).feed(buf, true); + return this; + } +} + diff --git a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java similarity index 97% rename from src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java rename to src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index dfb8d6944..dd1f73ced 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractMessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -19,15 +19,16 @@ import java.io.IOException; import java.io.EOFException; +import java.io.InputStream; import java.math.BigInteger; - +import org.msgpack.io.Input; +import org.msgpack.io.StreamInput; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; -import org.msgpack.io.Input; -abstract class AbstractMessagePackUnpacker extends Unpacker { +public class MessagePackUnpacker extends AbstractUnpacker { protected final Input in; private static final byte REQUIRE_TO_READ_HEAD = (byte)0xc6; @@ -49,9 +50,17 @@ abstract class AbstractMessagePackUnpacker extends Unpacker { private final ValueAccept valueAccept = new ValueAccept(); private final SkipAccept skipAccept = new SkipAccept(); - protected AbstractMessagePackUnpacker(MessagePack msgpack, Input in) { - super(msgpack); - this.in = in; + public MessagePackUnpacker(InputStream stream) { + this(new MessagePack(), stream); + } + + public MessagePackUnpacker(MessagePack msgpack, InputStream stream) { + this(msgpack, new StreamInput(stream)); + } + + protected MessagePackUnpacker(MessagePack msgpack, Input in) { + super(msgpack); + this.in = in; } private byte getHeadByte() throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/StreamUnpacker.java b/src/main/java/org/msgpack/unpacker/StreamUnpacker.java deleted file mode 100644 index ecaf1bac2..000000000 --- a/src/main/java/org/msgpack/unpacker/StreamUnpacker.java +++ /dev/null @@ -1,35 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.unpacker; - -import java.io.InputStream; - -import org.msgpack.MessagePack; -import org.msgpack.io.StreamInput; - - -public class StreamUnpacker extends AbstractMessagePackUnpacker { - public StreamUnpacker(InputStream stream) { - this(new MessagePack(), stream); - } - - public StreamUnpacker(MessagePack msgpack, InputStream stream) { - super(msgpack, new StreamInput(stream)); - } -} - diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index fd9029c62..1d042f8c0 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -28,118 +28,69 @@ import org.msgpack.packer.Unconverter; -public abstract class Unpacker implements Iterable, Closeable { - protected MessagePack msgpack; +public interface Unpacker extends Iterable, Closeable { + public boolean tryReadNil() throws IOException; - protected Unpacker(MessagePack msgpack) { - this.msgpack = msgpack; - } + public boolean trySkipNil() throws IOException; - public abstract boolean tryReadNil() throws IOException; + public void readNil() throws IOException; - public abstract boolean trySkipNil() throws IOException; - public abstract void readNil() throws IOException; + public boolean readBoolean() throws IOException; + public byte readByte() throws IOException; - public abstract boolean readBoolean() throws IOException; + public short readShort() throws IOException; - public abstract byte readByte() throws IOException; + public int readInt() throws IOException; - public abstract short readShort() throws IOException; + public long readLong() throws IOException; - public abstract int readInt() throws IOException; + public BigInteger readBigInteger() throws IOException; - public abstract long readLong() throws IOException; + public float readFloat() throws IOException; - public abstract BigInteger readBigInteger() throws IOException; + public double readDouble() throws IOException; - public abstract float readFloat() throws IOException; + public byte[] readByteArray() throws IOException; - public abstract double readDouble() throws IOException; + public ByteBuffer readByteBuffer() throws IOException; - public abstract byte[] readByteArray() throws IOException; - public ByteBuffer readByteBuffer() throws IOException { - return ByteBuffer.wrap(readByteArray()); - } + public int readArrayBegin() throws IOException; + public void readArrayEnd(boolean check) throws IOException; - public abstract int readArrayBegin() throws IOException; + public void readArrayEnd() throws IOException; - public abstract void readArrayEnd(boolean check) throws IOException; - public void readArrayEnd() throws IOException { - readArrayEnd(false); - } + public int readMapBegin() throws IOException; + public void readMapEnd(boolean check) throws IOException; - public abstract int readMapBegin() throws IOException; + public void readMapEnd() throws IOException; - public abstract void readMapEnd(boolean check) throws IOException; - public void readMapEnd() throws IOException { - readMapEnd(false); - } + public String readString() throws IOException; + public UnpackerIterator iterator(); - public String readString() throws IOException { - // TODO encoding exception - return new String(readByteArray(), "UTF-8"); - } + public void skip() throws IOException; - public UnpackerIterator iterator() { - return new UnpackerIterator(this); - } - public abstract void skip() throws IOException; + public Value readValue() throws IOException; - protected abstract void readValue(Unconverter uc) throws IOException; + public T read(Class klass) throws IOException; - public Value readValue() throws IOException { - Unconverter uc = new Unconverter(msgpack); - readValue(uc); - return uc.getResult(); - } + public T read(T to) throws IOException; + public T readOptional(Class klass) throws IOException; - public T read(Class klass) throws IOException { - Template tmpl = msgpack.lookup(klass); - return (T) tmpl.read(this, null); - } + public T readOptional(Class klass, T defaultValue) throws IOException; - public T read(T to) throws IOException { - Template tmpl = msgpack.lookup((Class) to.getClass()); - return (T) tmpl.read(this, to); - } + public T readOptional(T to, T defaultValue) throws IOException; - public T readOptional(Class klass) throws IOException { - return readOptional(klass, null); - } - - public T readOptional(Class klass, T defaultValue) throws IOException { - if(trySkipNil()) { - return defaultValue; - } - Template tmpl = (Template) msgpack.lookup(klass); - return (T) tmpl.read(this, null); - } - - public T readOptional(T to, T defaultValue) throws IOException { - if(trySkipNil()) { - return defaultValue; - } - Template tmpl = msgpack.lookup((Class) to.getClass()); - return (T) tmpl.read(this, to); - } - - public T readOptional(T to) throws IOException { - return readOptional(to, null); - } - - - public void close() throws IOException { - } + public T readOptional(T to) throws IOException; } diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index 2eef1ef72..8519a2274 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -26,11 +26,11 @@ public class UnpackerIterator implements Iterator { - private final Unpacker u; + private final AbstractUnpacker u; // FIXME -> Unpacker private final Unconverter uc; private IOException exception; - public UnpackerIterator(Unpacker u) { + public UnpackerIterator(AbstractUnpacker u) { this.u = u; this.uc = new Unconverter(u.msgpack); } diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java index d813f4403..ab5d01d19 100644 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java @@ -13,7 +13,7 @@ import org.junit.Test; import org.msgpack.packer.BufferPacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBufferPackStreamUnpack extends TestSet { @@ -29,7 +29,7 @@ public void testBoolean(boolean v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeBoolean(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -45,7 +45,7 @@ public void testByte(byte v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeByte(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -61,7 +61,7 @@ public void testShort(short v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeShort(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -77,7 +77,7 @@ public void testInteger(int v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeInt(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -93,7 +93,7 @@ public void testLong(long v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeLong(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -109,7 +109,7 @@ public void testFloat(float v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeFloat(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -125,7 +125,7 @@ public void testDouble(double v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeDouble(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -136,7 +136,7 @@ public void testNil() throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeNil(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); unpacker.readNil(); } @@ -151,7 +151,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeBigInteger(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -167,7 +167,7 @@ public void testString(String v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeString(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -183,7 +183,7 @@ public void testByteArray(byte[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.writeByteArray(v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -203,7 +203,7 @@ public void testList(List v, Class elementClass) throws Exception { } packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -234,7 +234,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestCrossLang.java b/src/test/java/org/msgpack/TestCrossLang.java index a7172b548..b8ccf18dd 100644 --- a/src/test/java/org/msgpack/TestCrossLang.java +++ b/src/test/java/org/msgpack/TestCrossLang.java @@ -18,7 +18,7 @@ import org.msgpack.MessagePack; import org.msgpack.type.Value; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.BufferUnpacker; import org.junit.Test; @@ -52,8 +52,8 @@ public void testReadValue() throws IOException { byte[] a = readTestData(); byte[] b = readCompactTestData(); - BufferUnpacker au = new BufferUnpacker().wrap(a); - BufferUnpacker bu = new BufferUnpacker().wrap(b); + BufferUnpacker au = msgpack.createBufferUnpacker().wrap(a); + BufferUnpacker bu = msgpack.createBufferUnpacker().wrap(b); Iterator at = au.iterator(); Iterator bt = bu.iterator(); @@ -73,15 +73,14 @@ public void testCompactSerialize() throws IOException { byte[] a = readTestData(); byte[] b = readCompactTestData(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker pk = new StreamPacker(out); + BufferPacker pk = msgpack.createBufferPacker(); - BufferUnpacker au = new BufferUnpacker().wrap(a); + BufferUnpacker au = msgpack.createBufferUnpacker().wrap(a); for(Value av : au) { pk.write(av); } - byte[] c = out.toByteArray(); + byte[] c = pk.toByteArray(); assertEquals(b.length, c.length); assertArrayEquals(b, c); diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java index d60099aaf..bcb4e4ec7 100644 --- a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java @@ -15,7 +15,7 @@ import org.junit.Test; import org.msgpack.MessagePack; -import org.msgpack.packer.JSONStreamPacker; +import org.msgpack.packer.JSONPacker; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -27,7 +27,7 @@ public void testSimplePackUnpack() throws IOException { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream bo = new ByteArrayOutputStream(); - JSONStreamPacker pk = new JSONStreamPacker(msgpack, bo); + JSONPacker pk = new JSONPacker(msgpack, bo); pk.write( ValueFactory.mapValue(new Value[] { diff --git a/src/test/java/org/msgpack/TestSimplePackable.java b/src/test/java/org/msgpack/TestSimplePackable.java index aa44267af..08ff9e7f0 100644 --- a/src/test/java/org/msgpack/TestSimplePackable.java +++ b/src/test/java/org/msgpack/TestSimplePackable.java @@ -68,6 +68,8 @@ public void readFrom(Unpacker u) throws IOException { @Test public void testSample01() throws IOException { + MessagePack msgpack = new MessagePack(); + Sample01 a = new Sample01(); a.f0 = "aaa"; a.f1 = new int[3]; @@ -78,12 +80,12 @@ public void testSample01() throws IOException { a.f2.add("xx"); a.f2.add("yy"); - BufferPacker pk = new BufferPacker(); + BufferPacker pk = msgpack.createBufferPacker(); a.writeTo(pk); byte[] raw = pk.toByteArray(); - BufferUnpacker u = new BufferUnpacker().wrap(raw); + BufferUnpacker u = msgpack.createBufferUnpacker().wrap(raw); Sample01 b = new Sample01(); b.readFrom(u); @@ -122,18 +124,20 @@ public void readFrom(Unpacker u) throws IOException { @Test public void testSample02() throws IOException { + MessagePack msgpack = new MessagePack(); + Sample02 a = new Sample02(); a.f0 = "aaa"; a.f1 = null; a.f2 = null; a.f3 = "bbb"; - BufferPacker pk = new BufferPacker(); + BufferPacker pk = msgpack.createBufferPacker(); a.writeTo(pk); byte[] raw = pk.toByteArray(); - BufferUnpacker u = new BufferUnpacker().wrap(raw); + BufferUnpacker u = msgpack.createBufferUnpacker().wrap(raw); Sample02 b = new Sample02(); b.readFrom(u); diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java index e030a1256..5c9a465c4 100644 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java @@ -12,7 +12,7 @@ import java.util.Map; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; @@ -27,7 +27,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -44,7 +44,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByte(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -61,7 +61,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeShort(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -78,7 +78,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeInt(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -95,7 +95,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeLong(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -112,7 +112,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -129,7 +129,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -141,7 +141,7 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeNil(); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -157,7 +157,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -174,7 +174,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeString(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -191,7 +191,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -208,7 +208,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); @@ -239,7 +239,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java index 19a5b3740..84096704d 100644 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ b/src/test/java/org/msgpack/TestStreamPackConvert.java @@ -13,7 +13,7 @@ import java.util.Map; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; @@ -30,7 +30,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBoolean(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -49,7 +49,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByte(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -68,7 +68,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeShort(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -87,7 +87,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeInt(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -106,7 +106,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeLong(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -125,7 +125,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeFloat(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -144,7 +144,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeDouble(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -158,7 +158,7 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeNil(); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -176,7 +176,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBigInteger(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -195,7 +195,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeString(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -214,7 +214,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByteArray(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -233,7 +233,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); @@ -265,7 +265,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java index 6840ca8f4..41b9eb63d 100644 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java @@ -13,8 +13,8 @@ import java.util.Map; import org.junit.Test; -import org.msgpack.packer.StreamPacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; public class TestStreamPackStreamUnpack extends TestSet { @@ -28,10 +28,10 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBoolean(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); } @@ -45,10 +45,10 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByte(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); byte ret = unpacker.readByte(); assertEquals(v, ret); } @@ -62,10 +62,10 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeShort(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); short ret = unpacker.readShort(); assertEquals(v, ret); } @@ -79,10 +79,10 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeInt(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); int ret = unpacker.readInt(); assertEquals(v, ret); } @@ -96,10 +96,10 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeLong(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); long ret = unpacker.readLong(); assertEquals(v, ret); } @@ -108,10 +108,10 @@ public void testLong(long v) throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeFloat(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); } @@ -125,10 +125,10 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeDouble(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); } @@ -137,10 +137,10 @@ public void testDouble(double v) throws Exception { public void testNil() throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeNil(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); unpacker.readNil(); } @@ -153,10 +153,10 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeBigInteger(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); BigInteger ret = unpacker.readBigInteger(); assertEquals(v, ret); } @@ -170,10 +170,10 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeString(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); String ret = unpacker.readString(); assertEquals(v, ret); } @@ -187,10 +187,10 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeByteArray(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); byte[] ret = unpacker.readByteArray(); assertArrayEquals(v, ret); } @@ -204,14 +204,14 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeArrayBegin(v.size()); for (Object o : v) { packer.write(o); } packer.writeArrayEnd(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -235,7 +235,7 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); packer.writeMapBegin(v.size()); for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); @@ -243,7 +243,7 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(in); + Unpacker unpacker = msgpack.createUnpacker(in); int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index ba24e41be..d1bfde997 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -10,9 +10,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBigDecimalTemplate { @@ -48,10 +48,10 @@ public void testBigDecimal(BigDecimal v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -68,7 +68,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BigDecimalTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -109,7 +109,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 00c66debf..86822165c 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -10,9 +10,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBigIntegerTemplate { @@ -48,10 +48,10 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -68,7 +68,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BigIntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -109,7 +109,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index 0cd5b9366..ed9749283 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBooleanArrayTemplate { @@ -93,10 +93,10 @@ public void testBooleanArray(boolean[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testBooleanArray(boolean[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BooleanArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -223,7 +223,7 @@ public void testBooleanArray(boolean[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index 52d6d0898..0739d8111 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBooleanTemplate { @@ -47,10 +47,10 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -67,7 +67,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = BooleanTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testBoolean(boolean v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index 79cfaba9b..1d3910f4a 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestByteArrayTemplate { @@ -47,10 +47,10 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { @@ -70,7 +70,7 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ByteArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -117,7 +117,7 @@ public void testByteArray(byte[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertEquals(v.length, ret.length); for (int i = 0; i < v.length; ++i) { diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index a85337a4b..4b2150adf 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -10,9 +10,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestByteBufferTemplate { @@ -54,10 +54,10 @@ public void testByteBuffer(ByteBuffer v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } @@ -74,7 +74,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ByteBufferTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -115,7 +115,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); } diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index 025ee18ed..b28022eac 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -10,9 +10,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestDateTemplate { @@ -48,10 +48,10 @@ public void testDate(Date v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -68,7 +68,7 @@ public void testDate(Date v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DateTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -109,7 +109,7 @@ public void testDate(Date v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index afe41ad1a..9082878ff 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestDoubleArrayTemplate { @@ -93,10 +93,10 @@ public void testDoubleArray(double[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testDoubleArray(double[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DoubleArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -223,7 +223,7 @@ public void testDoubleArray(double[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index a6c43430d..651370e6d 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestDoubleTemplate { @@ -47,10 +47,10 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -67,7 +67,7 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = DoubleTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testDouble(double v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index f376c98e0..948aa079f 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestFloatArrayTemplate { @@ -93,10 +93,10 @@ public void testFloatArray(float[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testFloatArray(float[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = FloatArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -224,7 +224,7 @@ public void testFloatArray(float[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index d343a4d2b..2b5a51fdb 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestFloatTemplate { @@ -47,10 +47,10 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } @@ -67,7 +67,7 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = FloatTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testFloat(float v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 716e42a7a..65447dd6f 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestIntegerArrayTemplate { @@ -93,10 +93,10 @@ public void testIntegerArray(int[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testIntegerArray(int[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = IntegerArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -223,7 +223,7 @@ public void testIntegerArray(int[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index 07b6d208e..ea2381c08 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestIntegerTemplate { @@ -47,10 +47,10 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -67,7 +67,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = IntegerTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testInteger(int v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 033f58d31..8e3a88c07 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -11,9 +11,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; @Ignore @@ -51,10 +51,10 @@ public void testList(List v, Class elementClass) throws Exception { Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -72,7 +72,7 @@ public void testList(List v, Class elementClass) throws Exception { Template elementTemplate = msgpack.lookup(elementClass); Template tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -115,7 +115,7 @@ public void testList(List v, Class elementClass) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index 505dc4ec5..0a35702f5 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestLongArrayTemplate { @@ -93,10 +93,10 @@ public void testLongArray(long[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testLongArray(long[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = LongArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -223,7 +223,7 @@ public void testLongArray(long[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index 61f2baa4a..5b7189343 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestLongTemplate { @@ -47,10 +47,10 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -67,7 +67,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = LongTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testLong(long v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index 1a8709a19..c744f563c 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -12,9 +12,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; @Ignore @@ -53,10 +53,10 @@ public void testMap(Map v, Class keyElementClass, Class value Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -75,7 +75,7 @@ public void testMap(Map v, Class keyElementClass, Class value Template valueElementTemplate = msgpack.lookup(valueElementClass); Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -120,7 +120,7 @@ public void testMap(Map v, Class keyElementClass, Class value BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = (String) tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index e83fe846d..ebcc265d5 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestShortArrayTemplate { @@ -93,10 +93,10 @@ public void testShortArray(short[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short[] ret0; switch (index) { case 0: @@ -136,7 +136,7 @@ public void testShortArray(short[] v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ShortArrayTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -223,7 +223,7 @@ public void testShortArray(short[] v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index d2a7e91c9..a4f793559 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestShortTemplate { @@ -47,10 +47,10 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -67,7 +67,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = ShortTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testShort(short v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index c8ed1d4dc..2c5dbb14c 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -9,9 +9,9 @@ import org.msgpack.MessagePack; import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.StreamPacker; +import org.msgpack.packer.Packer; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestStringTemplate { @@ -47,10 +47,10 @@ public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -67,7 +67,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = StringTemplate.instance; ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = msgpack.createStreamPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); @@ -108,7 +108,7 @@ public void testString(String v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = msgpack.createStreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java index 213350477..78cac5e13 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -42,10 +43,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -61,10 +62,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -99,10 +100,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -118,10 +119,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -137,10 +138,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -156,10 +157,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -175,10 +176,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -194,10 +195,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -236,10 +237,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -255,10 +256,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -274,10 +275,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -293,10 +294,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -312,10 +313,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -331,10 +332,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -350,10 +351,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -369,10 +370,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java index ed3c72eca..ea5e3b6aa 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -86,10 +87,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -107,10 +108,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -128,10 +129,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -149,10 +150,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -170,10 +171,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -191,10 +192,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -212,10 +213,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -256,10 +257,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -277,10 +278,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -298,10 +299,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -319,10 +320,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -340,10 +341,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -361,10 +362,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -382,10 +383,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -403,10 +404,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java index 906c63128..7cd291274 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java @@ -7,6 +7,7 @@ import java.io.ByteArrayInputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -29,7 +30,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBeansReflectionBufferPackStreamUnpack extends TestSet { @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,10 +63,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -98,10 +99,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -116,10 +117,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -134,10 +135,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -152,10 +153,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -170,10 +171,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -188,10 +189,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -229,10 +230,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -247,10 +248,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -265,10 +266,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -283,10 +284,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -301,10 +302,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -319,10 +320,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -337,10 +338,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -355,10 +356,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java index 74fdef05e..0a14ebba0 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -45,10 +46,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -85,10 +86,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -105,10 +106,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -125,10 +126,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -145,10 +146,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -165,10 +166,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,10 +186,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -205,10 +206,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -248,10 +249,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -268,10 +269,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -288,10 +289,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -308,10 +309,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -328,10 +329,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,10 +349,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -368,10 +369,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -388,10 +389,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java index 90160e271..707b44dc3 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -47,10 +48,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -69,10 +70,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -91,10 +92,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -113,10 +114,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -135,10 +136,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -157,10 +158,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -179,10 +180,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -201,10 +202,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -223,10 +224,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -268,10 +269,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -290,10 +291,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -312,10 +313,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -334,10 +335,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -356,10 +357,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -378,10 +379,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -400,10 +401,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -422,10 +423,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java index e847c0e12..94240c51c 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java @@ -8,7 +8,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -30,7 +31,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestBeansReflectionStreamPackStreamUnpack extends TestSet { @@ -46,10 +47,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -84,10 +85,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -103,10 +104,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -122,10 +123,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -141,10 +142,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -160,10 +161,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -179,10 +180,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -198,10 +199,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -240,10 +241,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -259,10 +260,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -278,10 +279,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -297,10 +298,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -316,10 +317,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -335,10 +336,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -354,10 +355,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -373,10 +374,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 9642ae24e..23c072e2a 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -42,10 +43,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -61,10 +62,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -99,10 +100,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -118,10 +119,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -137,10 +138,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -156,10 +157,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -175,10 +176,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -194,10 +195,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -236,10 +237,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -272,10 +273,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -291,10 +292,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -310,10 +311,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -329,10 +330,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,10 +349,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,10 +368,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index ea324ed2e..c897864ec 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -86,10 +87,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -107,10 +108,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -128,10 +129,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -149,10 +150,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -170,10 +171,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -191,10 +192,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -212,10 +213,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -256,10 +257,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -294,10 +295,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -315,10 +316,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -336,10 +337,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -357,10 +358,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -378,10 +379,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -399,10 +400,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java index 1a946636d..ef515e611 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java @@ -7,6 +7,7 @@ import java.io.ByteArrayInputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -29,7 +30,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestJavassistBufferPackStreamUnpack extends TestSet { @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,10 +63,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -98,10 +99,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -116,10 +117,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -134,10 +135,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -152,10 +153,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -170,10 +171,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -188,10 +189,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -229,10 +230,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -264,10 +265,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -282,10 +283,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -300,10 +301,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -318,10 +319,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -336,10 +337,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -354,10 +355,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java index 353fb4712..0fc169b2e 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -45,10 +46,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -85,10 +86,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -105,10 +106,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -125,10 +126,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -145,10 +146,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -165,10 +166,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,10 +186,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -205,10 +206,10 @@ public void testFinalClass(FinalClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -248,10 +249,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -285,10 +286,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -305,10 +306,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,10 +326,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -345,10 +346,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -365,10 +366,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -385,10 +386,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java index d809bd66c..2744a46d2 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -47,10 +48,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -69,10 +70,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -91,10 +92,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -113,10 +114,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -135,10 +136,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -157,10 +158,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -179,10 +180,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -201,10 +202,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -223,10 +224,10 @@ public void testFinalClass(FinalClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -268,10 +269,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -307,10 +308,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -329,10 +330,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -351,10 +352,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -373,10 +374,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -395,10 +396,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -417,10 +418,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java index d8d26d688..d2a88b2da 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java @@ -8,7 +8,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -30,7 +31,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestJavassistStreamPackStreamUnpack extends TestSet { @@ -46,10 +47,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -84,10 +85,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -103,10 +104,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -122,10 +123,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -141,10 +142,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -160,10 +161,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -179,10 +180,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -198,10 +199,10 @@ public void testFinalClass(FinalClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -240,10 +241,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -276,10 +277,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -295,10 +296,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -314,10 +315,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -333,10 +334,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -352,10 +353,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -371,10 +372,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index fe5c11ffd..7a7df5865 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -42,10 +43,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -61,10 +62,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -99,10 +100,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -118,10 +119,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -137,10 +138,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -156,10 +157,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -175,10 +176,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -194,10 +195,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -236,10 +237,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -255,10 +256,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -274,10 +275,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -293,10 +294,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -312,10 +313,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -331,10 +332,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -350,10 +351,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -369,10 +370,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index ddc95a05e..bca567a12 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -5,6 +5,7 @@ import static org.junit.Assert.fail; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -86,10 +87,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -107,10 +108,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -129,10 +130,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); System.out.println("value: " + value); @@ -152,10 +153,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -173,10 +174,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -194,10 +195,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -215,10 +216,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -259,10 +260,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -280,10 +281,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -301,10 +302,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -322,10 +323,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -343,10 +344,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -364,10 +365,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -385,10 +386,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -406,10 +407,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java index f242a0bf1..c71ae9c39 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java @@ -7,6 +7,7 @@ import java.io.ByteArrayInputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -29,7 +30,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestReflectionBufferPackStreamUnpack extends TestSet { @@ -44,10 +45,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,10 +63,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -80,10 +81,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -98,10 +99,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -116,10 +117,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -134,10 +135,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -152,10 +153,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -170,10 +171,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -188,10 +189,10 @@ public void testFinalClass(FinalClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -229,10 +230,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -247,10 +248,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -265,10 +266,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -283,10 +284,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -301,10 +302,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -319,10 +320,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -337,10 +338,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -355,10 +356,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java index 10ca5b68d..65485313f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java @@ -3,6 +3,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -25,10 +26,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -46,10 +47,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java index 69b2ae73a..7b2dcf103 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java @@ -3,6 +3,7 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; @@ -27,10 +28,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -50,10 +51,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java index f2a25a9c2..d06bf60c5 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java @@ -5,12 +5,13 @@ import java.io.ByteArrayInputStream; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestReflectionOrdinalEnumBufferPackStreamUnpack extends TestSet { @@ -27,10 +28,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -47,10 +48,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new BufferPacker(); + BufferPacker packer = new MessagePack().createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java index 028e491b0..30a45875e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java @@ -5,7 +5,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.EnumTypeFieldsClass; @@ -28,10 +29,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -50,10 +51,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java index e744f9f62..27e679b7b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java @@ -5,7 +5,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.EnumTypeFieldsClass; @@ -30,10 +31,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -54,10 +55,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java index a5ae407b3..02bf10906 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java @@ -6,12 +6,13 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestReflectionOrdinalEnumStreamPackStreamUnpack extends TestSet { @@ -29,10 +30,10 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -50,10 +51,10 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java index 70c9879be..d0ac9031a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -45,10 +46,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -85,10 +86,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -105,10 +106,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -125,10 +126,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -145,10 +146,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -165,10 +166,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,10 +186,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -205,10 +206,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -248,10 +249,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -268,10 +269,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -288,10 +289,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -308,10 +309,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -328,10 +329,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,10 +349,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -368,10 +369,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -388,10 +389,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new BufferUnpacker(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java index 68256cfaf..7ef8e9a2c 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java @@ -7,7 +7,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -47,10 +48,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -69,10 +70,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -91,10 +92,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -113,10 +114,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -135,10 +136,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -157,10 +158,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -179,10 +180,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -201,10 +202,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -223,10 +224,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -268,10 +269,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -290,10 +291,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -312,10 +313,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -334,10 +335,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -356,10 +357,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -378,10 +379,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -400,10 +401,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -422,10 +423,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new BufferUnpacker(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java index e034c4f5e..57acab0fe 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java @@ -8,7 +8,8 @@ import java.io.ByteArrayOutputStream; import org.junit.Test; -import org.msgpack.packer.StreamPacker; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; @@ -30,7 +31,7 @@ import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.StreamUnpacker; +import org.msgpack.unpacker.Unpacker; public class TestReflectionStreamPackStreamUnpack extends TestSet { @@ -46,10 +47,10 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -65,10 +66,10 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -84,10 +85,10 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -103,10 +104,10 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -122,10 +123,10 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -141,10 +142,10 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -160,10 +161,10 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -179,10 +180,10 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -198,10 +199,10 @@ public void testFinalClass(FinalClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -240,10 +241,10 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -259,10 +260,10 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -278,10 +279,10 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -297,10 +298,10 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -316,10 +317,10 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -335,10 +336,10 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -354,10 +355,10 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -373,10 +374,10 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - StreamPacker packer = new StreamPacker(out); + Packer packer = new MessagePack().createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - StreamUnpacker unpacker = new StreamUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } From d88ed52d6051696912279984200dff455fc1f3b5 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 19:21:06 +0900 Subject: [PATCH 067/409] added JSONUnpacker --- .../java/org/msgpack/type/ValueFactory.java | 2 + .../org/msgpack/unpacker/BufferUnpacker.java | 12 +- .../java/org/msgpack/unpacker/Converter.java | 44 +++---- .../msgpack/unpacker/JSONBufferUnpacker.java | 97 +++++++++++++++ .../org/msgpack/unpacker/JSONUnpacker.java | 114 ++++++++++++++++++ .../unpacker/MessagePackBufferUnpacker.java | 30 +++++ .../org/msgpack/TestSimpleJSONPackUnpack.java | 21 ++-- 7 files changed, 290 insertions(+), 30 deletions(-) create mode 100644 src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java create mode 100644 src/main/java/org/msgpack/unpacker/JSONUnpacker.java diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index 294e99d2f..9d90efb77 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -19,6 +19,8 @@ import java.math.BigInteger; import java.nio.ByteBuffer; +import java.util.List; +import java.util.Map; public final class ValueFactory { public static NilValue nilValue() { diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 6ecf85e4c..b9edd3d25 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -30,6 +30,16 @@ public interface BufferUnpacker extends Unpacker { public BufferUnpacker wrap(ByteBuffer buf); - // TODO feed + public BufferUnpacker feed(byte[] b); + + public BufferUnpacker feed(byte[] b, boolean nocopy); + + public BufferUnpacker feed(byte[] b, int off, int len); + + public BufferUnpacker feed(byte[] b, int off, int len, boolean nocopy); + + public BufferUnpacker feed(ByteBuffer b); + + public BufferUnpacker feed(ByteBuffer buf, boolean nocopy); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index be005f97a..9a36a1804 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -34,17 +34,28 @@ public class Converter extends AbstractUnpacker { protected Value value; public Converter(Value value) { - this(new MessagePack(), value); + this(new MessagePack(), value); } public Converter(MessagePack msgpack, Value value) { - super(msgpack); + super(msgpack); this.stack = new UnpackerStack(); this.values = new Object[UnpackerStack.MAX_STACK_SIZE]; - this.values[0] = value; this.value = value; } + // FIXME throws IOException? + protected Value nextValue() { + // FIXME EOFError? + throw new NullPointerException("Value is not set"); + } + + private void ensureValue() { + if(value == null) { + value = nextValue(); + } + } + @Override public boolean tryReadNil() { stack.checkCount(); @@ -60,9 +71,7 @@ public boolean tryReadNil() { @Override public boolean trySkipNil() { - if(value == null) { - value = nextValue(); - } + ensureValue(); if(stack.getDepth() > 0 && stack.getTopCount() <= 0) { // end of array or map @@ -257,24 +266,16 @@ public void readMapEnd(boolean check) { } } - // FIXME throws IOException? - protected Value nextValue() { - // FIXME EOFError? - throw new NullPointerException("Value is not set"); - } - private Value getTop() { - if(value == null) { - this.value = nextValue(); - } + ensureValue(); stack.checkCount(); if(stack.getDepth() == 0) { - if(stack.getTopCount() < 0) { - //throw new EOFException(); // TODO - throw new RuntimeException(new EOFException()); - } - return (Value) values[0]; + //if(stack.getTopCount() < 0) { + // //throw new EOFException(); // TODO + // throw new RuntimeException(new EOFException()); + //} + return value; } Value[] array = (Value[]) values[stack.getDepth()]; return array[array.length - stack.getTopCount()]; @@ -289,6 +290,7 @@ protected void readValue(Unconverter uc) { stack.checkCount(); Value v = getTop(); if(!v.isArray() && !v.isMap()) { + uc.write(v); stack.reduceCount(); if(stack.getDepth() == 0) { value = null; @@ -299,7 +301,7 @@ protected void readValue(Unconverter uc) { } while(true) { - while(stack.getTopCount() == 0) { + while(stack.getDepth() != 0 && stack.getTopCount() == 0) { if(stack.topIsArray()) { uc.writeArrayEnd(true); stack.pop(); diff --git a/src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java new file mode 100644 index 000000000..69b2fb4ac --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java @@ -0,0 +1,97 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.io.IOException; +import java.io.EOFException; +import java.io.ByteArrayInputStream; +import java.io.Reader; +import java.io.InputStreamReader; +import java.nio.ByteBuffer; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; +import org.msgpack.type.Value; + + +public class JSONBufferUnpacker extends JSONUnpacker implements BufferUnpacker { + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + + public JSONBufferUnpacker() { + this(DEFAULT_BUFFER_SIZE); + } + + public JSONBufferUnpacker(int bufferSize) { + this(new MessagePack(), bufferSize); + } + + public JSONBufferUnpacker(MessagePack msgpack) { + this(msgpack, DEFAULT_BUFFER_SIZE); + } + + public JSONBufferUnpacker(MessagePack msgpack, int bufferSize) { + super(msgpack, (Reader)null); + } + + @Override + protected Value nextValue() { + if(in == null) { + // FIXME exception + throw new MessageTypeException(new EOFException()); + } + return super.nextValue(); + } + + public JSONBufferUnpacker wrap(byte[] b) { + return wrap(b, 0, b.length); + } + + public JSONBufferUnpacker wrap(byte[] b, int off, int len) { + ByteArrayInputStream in = new ByteArrayInputStream(b, off, len); + this.in = new InputStreamReader(in); + return this; + } + + public JSONBufferUnpacker wrap(ByteBuffer buf) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support wrap(ByteBuffer buf)"); + } + + public JSONBufferUnpacker feed(byte[] b) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } + + public JSONBufferUnpacker feed(byte[] b, boolean nocopy) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } + + public JSONBufferUnpacker feed(byte[] b, int off, int len) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } + + public JSONBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } + + public JSONBufferUnpacker feed(ByteBuffer buf) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } + + public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { + throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + } +} + diff --git a/src/main/java/org/msgpack/unpacker/JSONUnpacker.java b/src/main/java/org/msgpack/unpacker/JSONUnpacker.java new file mode 100644 index 000000000..bd64a6bbe --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/JSONUnpacker.java @@ -0,0 +1,114 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.io.IOException; +import java.io.EOFException; +import java.io.InputStream; +import java.io.Reader; +import java.io.InputStreamReader; +import java.io.StringReader; +import java.util.List; +import java.util.Map; +import java.util.Iterator; +import java.math.BigInteger; +import org.json.simple.parser.JSONParser; +import org.json.simple.parser.ParseException; +//import org.msgpack.io.Input; +//import org.msgpack.io.StreamInput; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + + +public class JSONUnpacker extends Converter { + protected Reader in; + protected JSONParser parser; + + public JSONUnpacker(InputStream in) { + this(new MessagePack(), in); + } + + public JSONUnpacker(MessagePack msgpack, InputStream in) { + this(msgpack, new InputStreamReader(in)); + } + + JSONUnpacker(MessagePack msgpack, Reader in) { + super(msgpack, null); + this.in = in; + this.parser = new JSONParser(); + } + + @Override + // FIXME throws IOException? + protected Value nextValue() { + try { + Object obj = parser.parse(in); + return objectToValue(obj); + } catch (ParseException e) { // FIXME exception + throw new MessageTypeException(e); + } catch (IOException e) { // FIXME exception + throw new MessageTypeException(e); + } + } + + private Value objectToValue(Object obj) { + if(obj instanceof String) { + return ValueFactory.rawValue((String)obj); + } else if(obj instanceof Integer) { + return ValueFactory.integerValue((Integer)obj); + } else if(obj instanceof Long) { + return ValueFactory.integerValue((Long)obj); + } else if(obj instanceof Map) { + return mapToValue((Map)obj); + } else if(obj instanceof List) { + return listToValue((List)obj); + } else if(obj instanceof Boolean) { + return ValueFactory.booleanValue((Boolean)obj); + } else if(obj instanceof Double) { + return ValueFactory.floatValue((Double)obj); + } else { + return ValueFactory.nilValue(); + } + } + + private Value listToValue(List list) { + Value[] array = new Value[list.size()]; + for(int i=0; i < array.length; i++) { + array[i] = objectToValue(list.get(i)); + } + return ValueFactory.arrayValue(array, true); + } + + private Value mapToValue(Map map) { + Value[] kvs = new Value[map.size()*2]; + Iterator it = map.entrySet().iterator(); + for(int i=0; i < kvs.length; i+=2) { + Map.Entry pair = it.next(); + kvs[i] = objectToValue(pair.getKey()); + kvs[i+1] = objectToValue(pair.getValue()); + } + return ValueFactory.mapValue(kvs, true); + } + + public void close() throws IOException { + in.close(); + } +} + diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 6e5a00d64..2ea54b3a9 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -57,5 +57,35 @@ public MessagePackBufferUnpacker wrap(ByteBuffer buf) { ((LinkedBufferInput) in).feed(buf, true); return this; } + + public MessagePackBufferUnpacker feed(byte[] b) { + ((LinkedBufferInput) in).feed(b); + return this; + } + + public MessagePackBufferUnpacker feed(byte[] b, boolean nocopy) { + ((LinkedBufferInput) in).feed(b, nocopy); + return this; + } + + public MessagePackBufferUnpacker feed(byte[] b, int off, int len) { + ((LinkedBufferInput) in).feed(b, off, len); + return this; + } + + public MessagePackBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { + ((LinkedBufferInput) in).feed(b, off, len, nocopy); + return this; + } + + public MessagePackBufferUnpacker feed(ByteBuffer b) { + ((LinkedBufferInput) in).feed(b); + return this; + } + + public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { + ((LinkedBufferInput) in).feed(buf, nocopy); + return this; + } } diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java index bcb4e4ec7..5e700d83c 100644 --- a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java @@ -15,7 +15,8 @@ import org.junit.Test; import org.msgpack.MessagePack; -import org.msgpack.packer.JSONPacker; +import org.msgpack.packer.JSONBufferPacker; +import org.msgpack.unpacker.JSONBufferUnpacker; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -25,12 +26,8 @@ public class TestSimpleJSONPackUnpack { @Test public void testSimplePackUnpack() throws IOException { MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream bo = new ByteArrayOutputStream(); - JSONPacker pk = new JSONPacker(msgpack, bo); - - pk.write( - ValueFactory.mapValue(new Value[] { + Value v = ValueFactory.mapValue(new Value[] { ValueFactory.rawValue("k1"), ValueFactory.integerValue(1), ValueFactory.rawValue("k2"), @@ -41,12 +38,20 @@ public void testSimplePackUnpack() throws IOException { }), ValueFactory.rawValue("k3"), ValueFactory.floatValue(0.1) - })); + }); + + JSONBufferPacker pk = new JSONBufferPacker(msgpack); + pk.write(v); - byte[] raw = bo.toByteArray(); + byte[] raw = pk.toByteArray(); String str = new String(raw); assertEquals("{\"k1\":1,\"k2\":[null,true,false],\"k3\":0.1}", str); + + JSONBufferUnpacker u = new JSONBufferUnpacker(msgpack).wrap(raw); + Value v2 = u.readValue(); + + assertEquals(v, v2); } } From e9ed366387c3b9d9a44a3b5ef116076fb926b811 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 19:25:14 +0900 Subject: [PATCH 068/409] added class JSON --- src/main/java/org/msgpack/JSON.java | 87 +++++++++++++++++++ src/main/java/org/msgpack/MessagePack.java | 12 +-- .../org/msgpack/packer/JSONBufferPacker.java | 2 +- 3 files changed, 94 insertions(+), 7 deletions(-) create mode 100644 src/main/java/org/msgpack/JSON.java diff --git a/src/main/java/org/msgpack/JSON.java b/src/main/java/org/msgpack/JSON.java new file mode 100644 index 000000000..12eeedb03 --- /dev/null +++ b/src/main/java/org/msgpack/JSON.java @@ -0,0 +1,87 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack; + +import java.io.InputStream; +import java.io.OutputStream; +import java.io.IOException; +import java.nio.ByteBuffer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.packer.Packer; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.JSONPacker; +import org.msgpack.packer.JSONBufferPacker; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.JSONUnpacker; +import org.msgpack.unpacker.JSONBufferUnpacker; +import org.msgpack.type.Value; + + +public class JSON extends MessagePack { + public JSON() { + super(); + } + + public JSON(MessagePack msgpack) { + super(msgpack); + } + + + @Override + public Packer createPacker(OutputStream stream) { + return new JSONPacker(this, stream); + } + + @Override + public BufferPacker createBufferPacker() { + return new JSONBufferPacker(this); + } + + @Override + public BufferPacker createBufferPacker(int bufferSize) { + return new JSONBufferPacker(this, bufferSize); + } + + @Override + public Unpacker createUnpacker(InputStream stream) { + return new JSONUnpacker(this, stream); + } + + @Override + public BufferUnpacker createBufferUnpacker() { + return new JSONBufferUnpacker(); + } + + @Override + public BufferUnpacker createBufferUnpacker(byte[] b) { + return createBufferUnpacker().wrap(b); + } + + @Override + public BufferUnpacker createBufferUnpacker(byte[] b, int off, int len) { + return createBufferUnpacker().wrap(b, off, len); + } + + @Override + public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { + return createBufferUnpacker().wrap(bb); + } +} + diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 3b3a4b1ba..5bea146d4 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -40,11 +40,11 @@ public class MessagePack { private TemplateRegistry registry; public MessagePack() { - registry = new TemplateRegistry(); + registry = new TemplateRegistry(); } public MessagePack(MessagePack msgpack) { - registry = new TemplateRegistry(msgpack.registry); + registry = new TemplateRegistry(msgpack.registry); } @@ -177,7 +177,7 @@ public Value unconvert(T v) throws IOException { public void register(Class type) { - registry.register(type); + registry.register(type); } // TODO #MN @@ -188,7 +188,7 @@ public void register(Class type, Template tmpl) { } public Template lookup(Class type) { - return registry.lookup(type); + return registry.lookup(type); } @@ -206,12 +206,12 @@ public static void pack(OutputStream out, Object obj) throws IOException { @Deprecated public static byte[] pack(T obj, Template tmpl) throws IOException { // TODO IOException - return globalMessagePack.write(obj, tmpl); + return globalMessagePack.write(obj, tmpl); } @Deprecated public static void pack(OutputStream out, T obj, Template tmpl) throws IOException { - globalMessagePack.write(out, obj, tmpl); + globalMessagePack.write(out, obj, tmpl); } @Deprecated diff --git a/src/main/java/org/msgpack/packer/JSONBufferPacker.java b/src/main/java/org/msgpack/packer/JSONBufferPacker.java index 4802717f2..669bf2539 100644 --- a/src/main/java/org/msgpack/packer/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/packer/JSONBufferPacker.java @@ -22,7 +22,7 @@ import org.msgpack.io.LinkedBufferOutput; -public class JSONBufferPacker extends JSONPacker { +public class JSONBufferPacker extends JSONPacker implements BufferPacker { private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size public JSONBufferPacker() { From c0248e17cc34ba335b1535b85f6acf338ed27ef1 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 19:55:48 +0900 Subject: [PATCH 069/409] JSONPacker.escape --- .../java/org/msgpack/packer/JSONPacker.java | 41 +++++++++++++++---- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/packer/JSONPacker.java b/src/main/java/org/msgpack/packer/JSONPacker.java index adbfe268b..9b07f9a96 100644 --- a/src/main/java/org/msgpack/packer/JSONPacker.java +++ b/src/main/java/org/msgpack/packer/JSONPacker.java @@ -21,6 +21,7 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; +import org.json.simple.JSONValue; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; @@ -130,19 +131,19 @@ public void writeDouble(double v) throws IOException { } public void writeByteArray(byte[] b, int off, int len) throws IOException { - beginElement(); + beginStringElement(); out.writeByte(QUOTE); - out.write(b, off, len); // FIXME escape + escape(out, b, off, len); out.writeByte(QUOTE); endElement(); } public void writeByteBuffer(ByteBuffer bb) throws IOException { - beginElement(); + beginStringElement(); out.writeByte(QUOTE); int pos = bb.position(); try { - out.write(bb); // FIXME escape + escape(out, bb); } finally { bb.position(pos); } @@ -151,10 +152,9 @@ public void writeByteBuffer(ByteBuffer bb) throws IOException { } public void writeString(String s) throws IOException { - beginElement(); - byte[] b = s.getBytes(); + beginStringElement(); out.writeByte(QUOTE); - out.write(b, 0, b.length); // FIXME escape + escape(out, s); out.writeByte(QUOTE); endElement(); } @@ -214,6 +214,14 @@ public void writeMapEnd(boolean check) throws IOException { } private void beginElement() throws IOException { + int flag = flags[stack.getDepth()]; + if((flag & FLAG_MAP_KEY) != 0) { + throw new IOException("Key of a map must be a string in JSON"); + } + beginStringElement(); + } + + private void beginStringElement() throws IOException { int flag = flags[stack.getDepth()]; if((flag & FLAG_MAP_VALUE) != 0) { out.writeByte(COLON); @@ -239,5 +247,24 @@ private void endElement() throws IOException { public void close() throws IOException { out.close(); } + + private static void escape(Output out, byte[] b, int off, int len) throws IOException { + // TODO optimize + escape(out, new String(b, off, len)); + } + + private static void escape(Output out, ByteBuffer bb) throws IOException { + // TODO optimize + byte[] b = new byte[bb.remaining()]; + bb.get(b); + escape(out, new String(b)); + } + + private static void escape(Output out, String s) throws IOException { + // TODO optimize + String e = JSONValue.escape(s); + byte[] raw = e.getBytes(); + out.write(raw, 0, raw.length); + } } From 38221c06e65fec6c8c220a0e100756d80077bed0 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 19:56:13 +0900 Subject: [PATCH 070/409] added TestUnconvert{Convert,Reconvert} --- .../org/msgpack/TestUnconvertConvert.java | 254 ++++++++++++++++++ .../org/msgpack/TestUnconvertReconvert.java | 233 ++++++++++++++++ 2 files changed, 487 insertions(+) create mode 100644 src/test/java/org/msgpack/TestUnconvertConvert.java create mode 100644 src/test/java/org/msgpack/TestUnconvertReconvert.java diff --git a/src/test/java/org/msgpack/TestUnconvertConvert.java b/src/test/java/org/msgpack/TestUnconvertConvert.java new file mode 100644 index 000000000..fe32759b4 --- /dev/null +++ b/src/test/java/org/msgpack/TestUnconvertConvert.java @@ -0,0 +1,254 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; + +import java.io.ByteArrayInputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Unconverter; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; + + +public class TestUnconvertConvert extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBoolean(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeByte(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeShort(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeInt(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeLong(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeFloat(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeDouble(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeNil(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + unpacker.readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBigInteger(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeString(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeByteArray(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + byte[] ret = unpacker.readByteArray(); + assertArrayEquals(v, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} + diff --git a/src/test/java/org/msgpack/TestUnconvertReconvert.java b/src/test/java/org/msgpack/TestUnconvertReconvert.java new file mode 100644 index 000000000..78e38b17f --- /dev/null +++ b/src/test/java/org/msgpack/TestUnconvertReconvert.java @@ -0,0 +1,233 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; + +import java.io.ByteArrayInputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Unconverter; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; + + +public class TestUnconvertReconvert extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBoolean(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeByte(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeShort(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeInt(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeLong(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeFloat(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeDouble(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeNil(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + unpacker.readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBigInteger(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeString(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeByteArray(v); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Unconverter packer = new Unconverter(msgpack); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + Value r = packer.getResult(); + Converter unpacker = new Converter(msgpack, r); + Value ret = unpacker.readValue(); + assertEquals(r, ret); + } +} + From cf82e820dbb6e2700e0501d68bc8a5ad2a00f124 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 21:27:15 +0900 Subject: [PATCH 071/409] added BufferPacker#clear() --- src/main/java/org/msgpack/io/LinkedBufferOutput.java | 6 ++++++ src/main/java/org/msgpack/packer/BufferPacker.java | 2 ++ src/main/java/org/msgpack/packer/JSONBufferPacker.java | 7 +++++-- .../java/org/msgpack/packer/MessagePackBufferPacker.java | 7 +++++-- 4 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 0bcb3154b..3defbc4cb 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -64,6 +64,12 @@ protected boolean flushBuffer(byte[] b, int off, int len) { return false; } + public void clear() { + link.clear(); + size = 0; + filled = 0; + } + public void close() { } } diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index aa40d6365..d3f7eb096 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -20,5 +20,7 @@ public interface BufferPacker extends Packer { public byte[] toByteArray(); + + public void clear(); } diff --git a/src/main/java/org/msgpack/packer/JSONBufferPacker.java b/src/main/java/org/msgpack/packer/JSONBufferPacker.java index 669bf2539..d720bef9a 100644 --- a/src/main/java/org/msgpack/packer/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/packer/JSONBufferPacker.java @@ -42,8 +42,11 @@ public JSONBufferPacker(MessagePack msgpack, int bufferSize) { } public byte[] toByteArray() { - LinkedBufferOutput bo = (LinkedBufferOutput) out; - return ((LinkedBufferOutput) bo).toByteArray(); + return ((LinkedBufferOutput) out).toByteArray(); + } + + public void clear() { + ((LinkedBufferOutput) out).clear(); } } diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 9351d00f1..2dc3c2cd4 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -41,8 +41,11 @@ public MessagePackBufferPacker(MessagePack msgpack, int bufferSize) { } public byte[] toByteArray() { - LinkedBufferOutput bo = (LinkedBufferOutput) out; - return ((LinkedBufferOutput) bo).toByteArray(); + return ((LinkedBufferOutput) out).toByteArray(); + } + + public void clear() { + ((LinkedBufferOutput) out).clear(); } } From 6f92cb3b3645f3263c11b90549263beccde92f58 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 24 Jul 2011 21:28:21 +0900 Subject: [PATCH 072/409] optimized String deser by referencing buffer instead of copying --- .../java/org/msgpack/io/BufferReferer.java | 26 ++++++++++++ src/main/java/org/msgpack/io/Input.java | 2 + .../org/msgpack/io/LinkedBufferInput.java | 15 +++++++ src/main/java/org/msgpack/io/StreamInput.java | 4 ++ .../builder/JavassistTemplateBuilder.java | 1 + .../builder/ReflectionTemplateBuilder.java | 1 + .../msgpack/type/ByteArrayRawValueImpl.java | 1 + .../java/org/msgpack/unpacker/Accept.java | 9 +++- .../org/msgpack/unpacker/ByteArrayAccept.java | 10 +++++ .../msgpack/unpacker/MessagePackUnpacker.java | 37 ++++++++++++---- .../org/msgpack/unpacker/StringAccept.java | 42 +++++++++++++++++++ .../org/msgpack/unpacker/ValueAccept.java | 7 ++++ 12 files changed, 145 insertions(+), 10 deletions(-) create mode 100644 src/main/java/org/msgpack/io/BufferReferer.java create mode 100644 src/main/java/org/msgpack/unpacker/StringAccept.java diff --git a/src/main/java/org/msgpack/io/BufferReferer.java b/src/main/java/org/msgpack/io/BufferReferer.java new file mode 100644 index 000000000..74d5d17a4 --- /dev/null +++ b/src/main/java/org/msgpack/io/BufferReferer.java @@ -0,0 +1,26 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.io; + +import java.io.IOException; + + +public interface BufferReferer { + public void refer(byte[] b, int off, int len, boolean gift) throws IOException; +} + diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index aafaccbb2..91a4ec3a3 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -25,6 +25,8 @@ public interface Input extends Closeable { public int read(byte[] b, int off, int len) throws IOException; + public boolean tryRefer(BufferReferer ref, int len) throws IOException; + public byte readByte() throws IOException; public void advance(); diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 79a28ef07..21df1ae1b 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -17,6 +17,7 @@ // package org.msgpack.io; +import java.io.IOException; import java.io.EOFException; import java.util.List; import java.util.LinkedList; @@ -62,6 +63,20 @@ public int read(byte[] b, int off, int len) throws EOFException { return olen - len; } + public boolean tryRefer(BufferReferer ref, int len) throws IOException { + ByteBuffer bb = link.peekFirst(); + if(bb == null) { + throw new EndOfBufferException(); + } else if(bb.remaining() < len) { + return false; + } else if(!bb.hasArray()) { + return false; + } + ref.refer(bb.array(), bb.arrayOffset()+bb.position(), len, true); + bb.position(bb.position()+len); + return true; + } + public byte readByte() throws EOFException { ByteBuffer bb = link.peekFirst(); if(bb == null || bb.remaining() == 0) { diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index dd9067ae6..9f8d8735b 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -49,6 +49,10 @@ public int read(byte[] b, int off, int len) throws IOException { return len; } + public boolean tryRefer(BufferReferer ref, int size) throws IOException { + return false; + } + public byte readByte() throws IOException { int n = in.read(); if(n < 0) { diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 8b519e2cd..86432d57f 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -83,6 +83,7 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType) { + // TODO reject enum return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index fae9b4f70..d6db3f585 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -263,6 +263,7 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType) { + // TODO reject enum return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); } diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 1643282f1..e0f4f28aa 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -42,6 +42,7 @@ public static RawValue getEmptyInstance() { } ByteArrayRawValueImpl(byte[] b, int off, int len) { + // TODO reference this.bytes = new byte[len]; System.arraycopy(b, off, this.bytes, 0, len); } diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index c5c55204a..0c155c939 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -17,9 +17,12 @@ // package org.msgpack.unpacker; +import java.io.IOException; +import org.msgpack.io.BufferReferer; import org.msgpack.MessageTypeException; -abstract class Accept { + +abstract class Accept implements BufferReferer { void acceptBoolean(boolean v) { throw new MessageTypeException("Unexpected boolean value"); } @@ -95,5 +98,9 @@ void acceptFloat(float v) { void acceptDouble(double v) { throw new MessageTypeException("Unexpected float value"); } + + public void refer(byte[] b, int off, int size, boolean gift) throws IOException { + throw new MessageTypeException("Unexpected raw value"); + } } diff --git a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java index 359e6fdf6..ccbb5463f 100644 --- a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java @@ -17,6 +17,9 @@ // package org.msgpack.unpacker; +import java.io.IOException; + + final class ByteArrayAccept extends Accept { byte[] value; @@ -29,5 +32,12 @@ void acceptRaw(byte[] raw) { void acceptEmptyRaw() { this.value = new byte[0]; } + + @Override + public void refer(byte[] b, int off, int len, boolean gift) throws IOException { + // TODO gift + this.value = new byte[len]; + System.arraycopy(b, off, value, 0, len); + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index dd1f73ced..c3535238b 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -23,6 +23,7 @@ import java.math.BigInteger; import org.msgpack.io.Input; import org.msgpack.io.StreamInput; +import org.msgpack.io.BufferReferer; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; @@ -45,6 +46,7 @@ public class MessagePackUnpacker extends AbstractUnpacker { private final BigIntegerAccept bigIntegerAccept = new BigIntegerAccept(); private final DoubleAccept doubleAccept = new DoubleAccept(); private final ByteArrayAccept byteArrayAccept = new ByteArrayAccept(); + private final StringAccept stringAccept = new StringAccept(); private final ArrayAccept arrayAccept = new ArrayAccept(); private final MapAccept mapAccept = new MapAccept(); private final ValueAccept valueAccept = new ValueAccept(); @@ -110,9 +112,11 @@ final boolean readOneWithoutStack(Accept a) throws IOException { headByte = REQUIRE_TO_READ_HEAD; return true; } - readRawBody(count); - a.acceptRaw(raw); - raw = null; + if(!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; + } headByte = REQUIRE_TO_READ_HEAD; return true; } @@ -210,9 +214,11 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } in.advance(); - readRawBody(count); - a.acceptRaw(raw); - raw = null; + if(!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; + } headByte = REQUIRE_TO_READ_HEAD; return true; } @@ -229,9 +235,11 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } in.advance(); - readRawBody(count); - a.acceptRaw(raw); - raw = null; + if(!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; + } headByte = REQUIRE_TO_READ_HEAD; return true; } @@ -289,6 +297,10 @@ final boolean readOneWithoutStack(Accept a) throws IOException { } } + private boolean tryReferRawBody(BufferReferer referer, int size) throws IOException { + return in.tryRefer(referer, size); + } + private void readRawBody(int size) throws IOException { raw = new byte[size]; rawFilled = 0; @@ -421,11 +433,18 @@ public double readDouble() throws IOException { return doubleAccept.value; } + @Override public byte[] readByteArray() throws IOException { readOne(byteArrayAccept); return byteArrayAccept.value; } + @Override + public String readString() throws IOException { + readOne(stringAccept); + return stringAccept.value; + } + @Override public int readArrayBegin() throws IOException { readOne(arrayAccept); diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java new file mode 100644 index 000000000..5282942ef --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -0,0 +1,42 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.io.IOException; + + +final class StringAccept extends Accept { + String value; + + @Override + void acceptRaw(byte[] raw) { + // TODO encoding error + this.value = new String(raw); + } + + @Override + void acceptEmptyRaw() { + this.value = ""; + } + + @Override + public void refer(byte[] b, int off, int len, boolean gift) throws IOException { + this.value = new String(b, off, len); + } +} + diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 9356d15f1..4f1e65c77 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; +import java.io.IOException; import java.math.BigInteger; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -94,6 +95,12 @@ void acceptEmptyRaw() { uc.write(ValueFactory.rawValue()); } + @Override + public void refer(byte[] b, int off, int len, boolean gift) throws IOException { + // TODO gift + uc.write(ValueFactory.rawValue(b, off, len)); + } + @Override void acceptArray(int size) { uc.writeArrayBegin(size); From ce4cc3f5d4743d7056eee41296a094883c52be28 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 25 Jul 2011 02:11:17 +0900 Subject: [PATCH 073/409] refactored some programs related template builders --- .../builder/AbstractTemplateBuilder.java | 5 +- .../template/builder/DefaultFieldEntry.java | 11 +- .../ReflectionBeansTemplateBuilder.java | 85 +++--- .../builder/ReflectionTemplateBuilder.java | 267 +++++++++++------- .../builder/TemplateBuilderChain.java | 2 + 5 files changed, 222 insertions(+), 148 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 40a5ef67b..fb251076f 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -52,6 +52,7 @@ protected AbstractTemplateBuilder(TemplateRegistry registry) { @Override public Template buildTemplate(final Type targetType) throws TemplateBuildException { + @SuppressWarnings("unchecked") Class targetClass = (Class) targetType; checkClassValidation(targetClass); FieldOption implicitOption = readImplicitFieldOption(targetClass); @@ -236,7 +237,7 @@ public static boolean isAnnotated(Class targetClass, Class with) { - return ao.getAnnotation(with) != null; + public static boolean isAnnotated(AccessibleObject accessibleObject, Class with) { + return accessibleObject.getAnnotation(with) != null; } } diff --git a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java index df8b7a12d..b2998053a 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java @@ -17,14 +17,11 @@ // package org.msgpack.template.builder; -import java.io.IOException; import java.lang.reflect.Field; import java.lang.reflect.Type; import org.msgpack.MessageTypeException; -import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; -import org.msgpack.unpacker.Unpacker; public class DefaultFieldEntry extends FieldEntry { @@ -79,6 +76,12 @@ public Object get(Object target) { @Override public void set(Object target, Object value) { - throw new UnsupportedOperationException("fatal error"); + try { + field.set(target, value); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 18be961f3..18b462d96 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -39,7 +39,8 @@ import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldEntry; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ObjectFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldTemplate; import org.msgpack.unpacker.Unpacker; @@ -51,76 +52,76 @@ */ public class ReflectionBeansTemplateBuilder extends AbstractTemplateBuilder { - static class ReflectionBeansFieldEntry extends BeansFieldEntry { - ReflectionBeansFieldEntry(final BeansFieldEntry entry) { + static class ReflectionBeansFieldTemplate extends ReflectionFieldTemplate { + ReflectionBeansFieldTemplate(final FieldEntry entry) { super(entry); } - void write(Packer packer, Object v) throws IOException { + @Override + public void write(Packer packer, Object v) throws IOException { packer.write(v); } - void read(Unpacker unpacker, Object to) throws IOException, MessageTypeException, IllegalAccessException { - set(to, unpacker.read(getType())); - } - - public void setNull(Object target) { - set(target, null); + @Override + public Object read(Unpacker unpacker, Object to) throws IOException { + Object o = unpacker.read(entry.getType()); + entry.set(to, o); + return o; } } - static class BeansObjectFieldEntry extends ReflectionBeansFieldEntry { + static class BeansObjectFieldTemplate extends ReflectionBeansFieldTemplate { Template template; - BeansObjectFieldEntry(final BeansFieldEntry entry, final Template template) { + BeansObjectFieldTemplate(final FieldEntry entry, final Template template) { super(entry); this.template = template; } @Override - void write(Packer packer, Object v) throws IOException { + public void write(Packer packer, Object v) throws IOException { template.write(packer, v); } @Override - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - Class type = (Class) getType(); - Object fieldReference = get(target); + public Object read(Unpacker unpacker, Object target) throws IOException { + Class type = (Class) entry.getType(); + Object fieldReference = entry.get(target); Object valueReference = template.read(unpacker, fieldReference); if (valueReference != fieldReference) { - set(target, valueReference); + entry.set(target, valueReference); } + return valueReference; } } static class ReflectionBeansTemplate extends AbstractTemplate { private Class targetClass; - private FieldEntry[] entries = null; + private ReflectionFieldTemplate[] templates = null; - ReflectionBeansTemplate(Class targetClass, FieldEntry[] entries) { + ReflectionBeansTemplate(Class targetClass, ReflectionFieldTemplate[] templates) { this.targetClass = targetClass; - this.entries = entries; + this.templates = templates; } @Override public void write(Packer packer, T v) throws IOException { - packer.writeArrayBegin(entries.length); - for (FieldEntry entry : entries) { - ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entry; - if (!e.isAvailable()) { + packer.writeArrayBegin(templates.length); + for (ReflectionFieldTemplate tmpl : templates) { + if (!tmpl.entry.isAvailable()) { packer.writeNil(); continue; } - Object obj = e.get(v); + Object obj = tmpl.entry.get(v); if (obj == null) { - if (e.isNotNullable()) { + if (tmpl.entry.isNotNullable()) { throw new MessageTypeException(); } packer.writeNil(); } else { - e.write(packer, obj); + tmpl.write(packer, obj); } } packer.writeArrayEnd(); @@ -135,12 +136,12 @@ public T read(Unpacker unpacker, T to) throws IOException { unpacker.readArrayBegin(); - for (int i=0; i < entries.length; i++) { - ReflectionBeansFieldEntry e = (ReflectionBeansFieldEntry) entries[i]; - if(!e.isAvailable()) { + for (int i=0; i < templates.length; i++) { + ReflectionBeansFieldTemplate e = (ReflectionBeansFieldTemplate) templates[i]; + if(!e.entry.isAvailable()) { unpacker.skip(); - } else if(e.isOptional() && unpacker.trySkipNil()) { - e.setNull(to); + } else if(e.entry.isOptional() && unpacker.trySkipNil()) { + e.setNil(to); } else { e.read(unpacker, to); } @@ -170,27 +171,27 @@ public boolean matchType(Type targetType) { @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - ReflectionBeansFieldEntry[] beansEntries = new ReflectionBeansFieldEntry[entries.length]; + ReflectionBeansFieldTemplate[] beansEntries = new ReflectionBeansFieldTemplate[entries.length]; for (int i = 0; i < entries.length; i++) { - BeansFieldEntry e = (BeansFieldEntry) entries[i]; + FieldEntry e = (FieldEntry) entries[i]; Class type = e.getType(); if (type.equals(boolean.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(byte.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(short.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(int.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(long.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(float.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else if (type.equals(double.class)) { - beansEntries[i] = new ReflectionBeansFieldEntry(e); + beansEntries[i] = new ReflectionBeansFieldTemplate(e); } else { Template tmpl = registry.lookup(e.getGenericType(), true); - beansEntries[i] = new BeansObjectFieldEntry(e, tmpl); + beansEntries[i] = new BeansObjectFieldTemplate(e, tmpl); } } return new ReflectionBeansTemplate(targetClass, beansEntries); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index d6db3f585..9adc9a557 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -34,185 +34,253 @@ public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { - static abstract class ReflectionFieldEntry extends DefaultFieldEntry { - ReflectionFieldEntry(final DefaultFieldEntry e) { - super(e.getField(), e.getOption()); - } - - abstract void write(Packer packer, Object target) throws IOException; + protected static abstract class ReflectionFieldTemplate extends AbstractTemplate { + protected FieldEntry entry; - abstract void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException; + ReflectionFieldTemplate(final FieldEntry entry) { + this.entry = entry; + } - void setNull(Object target) throws IllegalAccessException { - getField().set(target, null); + void setNil(Object target) { + entry.set(target, null); } } - static class NullFieldEntry extends ReflectionFieldEntry { - NullFieldEntry(final DefaultFieldEntry e) { - super(e); + static class NullFieldTemplate extends ReflectionFieldTemplate { + NullFieldTemplate(final FieldEntry entry) { + super(entry); } @Override - void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target) throws IOException { } @Override - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { + public Object read(Unpacker unpacker, Object target) throws IOException { + return null; } } - static class ObjectFieldEntry extends ReflectionFieldEntry { + public static class ObjectFieldTemplate extends ReflectionFieldTemplate { private Template template; - ObjectFieldEntry(final DefaultFieldEntry e, Template template) { - super(e); + public ObjectFieldTemplate(final FieldEntry entry, Template template) { + super(entry); this.template = template; } @Override - void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target) throws IOException { template.write(packer, target); } @Override - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - Field f = getField(); - Class type = (Class) f.getType(); - Object fieldReference = f.get(target); + public Object read(Unpacker unpacker, Object target) throws IOException { + Class type = (Class) entry.getType(); + Object fieldReference = entry.get(target); Object valueReference = template.read(unpacker, fieldReference); if (valueReference != fieldReference) { - f.set(target, valueReference); + entry.set(target, valueReference); } + return valueReference; } } - static class BooleanFieldEntry extends ReflectionFieldEntry { - BooleanFieldEntry(final DefaultFieldEntry e) { - super(e); + static class BooleanFieldTemplate extends ReflectionFieldTemplate { + BooleanFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeBoolean((Boolean) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setBoolean(target, unpacker.readBoolean()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + boolean o = unpacker.readBoolean(); + try { + ((DefaultFieldEntry) entry).getField().setBoolean(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class ByteFieldEntry extends ReflectionFieldEntry { - ByteFieldEntry(final DefaultFieldEntry e) { - super(e); + static class ByteFieldTemplate extends ReflectionFieldTemplate { + ByteFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeByte((Byte) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setByte(target, unpacker.readByte()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + byte o = unpacker.readByte(); + try { + ((DefaultFieldEntry) entry).getField().setByte(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class ShortFieldEntry extends ReflectionFieldEntry { - ShortFieldEntry(final DefaultFieldEntry e) { - super(e); + static class ShortFieldTemplate extends ReflectionFieldTemplate { + ShortFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeShort((Short) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setShort(target, unpacker.readShort()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + short o = unpacker.readShort(); + try { + ((DefaultFieldEntry) entry).getField().setShort(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class IntFieldEntry extends ReflectionFieldEntry { - IntFieldEntry(final DefaultFieldEntry e) { - super(e); + static class IntFieldTemplate extends ReflectionFieldTemplate { + IntFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeInt((Integer) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setInt(target, unpacker.readInt()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + int o = unpacker.readInt(); + try { + ((DefaultFieldEntry) entry).getField().setInt(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class LongFieldEntry extends ReflectionFieldEntry { - LongFieldEntry(final DefaultFieldEntry e) { - super(e); + static class LongFieldTemplate extends ReflectionFieldTemplate { + LongFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeLong((Long) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setLong(target, unpacker.readLong()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + long o = unpacker.readLong(); + try { + ((DefaultFieldEntry) entry).getField().setLong(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class FloatFieldEntry extends ReflectionFieldEntry { - FloatFieldEntry(final DefaultFieldEntry e) { - super(e); + static class FloatFieldTemplate extends ReflectionFieldTemplate { + FloatFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeFloat((Float) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setFloat(target, unpacker.readFloat()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + float o = unpacker.readFloat(); + try { + ((DefaultFieldEntry) entry).getField().setFloat(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class DoubleFieldEntry extends ReflectionFieldEntry { - DoubleFieldEntry(final DefaultFieldEntry e) { - super(e); + static class DoubleFieldTemplate extends ReflectionFieldTemplate { + DoubleFieldTemplate(final FieldEntry entry) { + super(entry); } - void write(Packer packer, Object target) throws IOException { + @Override + public void write(Packer packer, Object target) throws IOException { packer.writeDouble((Double) target); } - void read(Unpacker unpacker, Object target) throws IOException, MessageTypeException, IllegalAccessException { - getField().setDouble(target, unpacker.readDouble()); + @Override + public Object read(Unpacker unpacker, Object target) throws IOException { + double o = unpacker.readDouble(); + try { + ((DefaultFieldEntry) entry).getField().setDouble(target, o); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + return o; } } - static class ReflectionTemplate extends AbstractTemplate { + protected static class ReflectionClassTemplate extends AbstractTemplate { protected Class targetClass; - protected FieldEntry[] entries; + protected ReflectionFieldTemplate[] templates; - ReflectionTemplate(Class targetClass, FieldEntry[] entries) { + protected ReflectionClassTemplate(Class targetClass, ReflectionFieldTemplate[] templates) { this.targetClass = targetClass; - this.entries = entries; + this.templates = templates; } @Override public void write(Packer packer, T target) throws IOException { try { - packer.writeArrayBegin(entries.length); - for (FieldEntry entry : entries) { - ReflectionFieldEntry e = (ReflectionFieldEntry) entry; - if (!e.isAvailable()) { + packer.writeArrayBegin(templates.length); + for (ReflectionFieldTemplate tmpl : templates) { + if (!tmpl.entry.isAvailable()) { packer.writeNil(); continue; } - Object obj = e.get(target); + Object obj = tmpl.entry.get(target); if (obj == null) { - if (e.isNotNullable()) { + if (tmpl.entry.isNotNullable()) { throw new MessageTypeException(); } packer.writeNil(); } else { - e.write(packer, obj); + tmpl.write(packer, obj); } } packer.writeArrayEnd(); @@ -234,14 +302,14 @@ public T read(Unpacker unpacker, T to) throws IOException { unpacker.readArrayBegin(); - for (int i=0; i < entries.length; i++) { - ReflectionFieldEntry e = (ReflectionFieldEntry) entries[i]; - if(!e.isAvailable()) { + for (int i=0; i < templates.length; i++) { + ReflectionFieldTemplate tmpl = templates[i]; + if (!tmpl.entry.isAvailable()) { unpacker.skip(); - } else if(e.isOptional() && unpacker.trySkipNil()) { - e.setNull(to); + } else if (tmpl.entry.isOptional() && unpacker.trySkipNil()) { + tmpl.setNil(to); } else { - e.read(unpacker, to); + tmpl.read(unpacker, to); } } @@ -263,7 +331,6 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType) { - // TODO reject enum return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); } @@ -275,39 +342,39 @@ public Template buildTemplate(Class type, FieldEntry[] entries) { } // TODO Now it is simply cast. - for (FieldEntry e : entries) { - Field f = ((DefaultFieldEntry) e).getField(); + for (FieldEntry entry : entries) { + Field f = ((DefaultFieldEntry) entry).getField(); int mod = f.getModifiers(); if (!Modifier.isPublic(mod)) { f.setAccessible(true); } } - ReflectionFieldEntry[] res = new ReflectionFieldEntry[entries.length]; + ReflectionFieldTemplate[] tmpls = new ReflectionFieldTemplate[entries.length]; for (int i = 0; i < entries.length; i++) { - DefaultFieldEntry e = (DefaultFieldEntry) entries[i]; - Class t = e.getType(); - if (!e.isAvailable()) { - res[i] = new NullFieldEntry(e); + FieldEntry entry = entries[i]; + Class t = entry.getType(); + if (!entry.isAvailable()) { + tmpls[i] = new NullFieldTemplate(entry); } else if (t.equals(boolean.class)) { - res[i] = new BooleanFieldEntry(e); + tmpls[i] = new BooleanFieldTemplate(entry); } else if (t.equals(byte.class)) { - res[i] = new ByteFieldEntry(e); + tmpls[i] = new ByteFieldTemplate(entry); } else if (t.equals(short.class)) { - res[i] = new ShortFieldEntry(e); + tmpls[i] = new ShortFieldTemplate(entry); } else if (t.equals(int.class)) { - res[i] = new IntFieldEntry(e); + tmpls[i] = new IntFieldTemplate(entry); } else if (t.equals(long.class)) { - res[i] = new LongFieldEntry(e); + tmpls[i] = new LongFieldTemplate(entry); } else if (t.equals(float.class)) { - res[i] = new FloatFieldEntry(e); + tmpls[i] = new FloatFieldTemplate(entry); } else if (t.equals(double.class)) { - res[i] = new DoubleFieldEntry(e); + tmpls[i] = new DoubleFieldTemplate(entry); } else { - Template tmpl = registry.lookup(e.getGenericType(), true); - res[i] = new ObjectFieldEntry(e, tmpl); + Template tmpl = registry.lookup(entry.getGenericType(), true); + tmpls[i] = new ObjectFieldTemplate(entry, tmpl); } } - return new ReflectionTemplate(type, res); + return new ReflectionClassTemplate(type, tmpls); } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 759af0673..fc51faad0 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -36,11 +36,13 @@ public TemplateBuilderChain() { public void init(TemplateRegistry registry) { if (isSupportJavassist()) { + // use dynamic code generation forceTemplateBuilder = new JavassistTemplateBuilder(registry); templateBuilders.add(forceTemplateBuilder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); } else { + // use reflection forceTemplateBuilder = new ReflectionTemplateBuilder(registry); templateBuilders.add(forceTemplateBuilder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); From 5a97069ca0123e9fe3211ddf4b3c870627963122 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 28 Jul 2011 15:25:48 +0900 Subject: [PATCH 074/409] trivial modifications --- src/main/java/org/msgpack/template/AbstractTemplate.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java index 3f1317325..d62f96169 100644 --- a/src/main/java/org/msgpack/template/AbstractTemplate.java +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -23,6 +23,7 @@ public abstract class AbstractTemplate implements Template { + @Override public void write(Packer pk, T v, boolean optional) throws IOException { if(optional && v == null) { pk.writeNil(); @@ -31,6 +32,7 @@ public void write(Packer pk, T v, boolean optional) throws IOException { } } + @Override public T read(Unpacker u, T to, boolean optional) throws IOException { if(optional && u.trySkipNil()) { return null; From d9ff190b6ad3f5f20a49b4ab011096a6996e394d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 28 Jul 2011 15:27:53 +0900 Subject: [PATCH 075/409] refactored programs related to template builder --- .../builder/AbstractTemplateBuilder.java | 83 +++++------ .../builder/JavassistTemplateBuilder.java | 8 +- .../ReflectionBeansTemplateBuilder.java | 135 +++--------------- .../ReflectionOrdinalEnumTemplateBuilder.java | 4 +- .../builder/ReflectionTemplateBuilder.java | 49 ++++--- 5 files changed, 100 insertions(+), 179 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index fb251076f..6771aab6a 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -55,15 +55,16 @@ public Template buildTemplate(final Type targetType) throws TemplateBuild @SuppressWarnings("unchecked") Class targetClass = (Class) targetType; checkClassValidation(targetClass); - FieldOption implicitOption = readImplicitFieldOption(targetClass); - FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + FieldOption fieldOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, fieldOption); return buildTemplate(targetClass, entries); } @Override - public Template buildTemplate(final Class targetClass, final FieldList flist) throws TemplateBuildException { + public Template buildTemplate(final Class targetClass, final FieldList fieldList) throws TemplateBuildException { checkClassValidation(targetClass); - return buildTemplate(targetClass, toFieldEntries(targetClass, flist)); + FieldEntry[] entries = toFieldEntries(targetClass, fieldList); + return buildTemplate(targetClass, entries); } protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); @@ -80,17 +81,20 @@ protected void checkClassValidation(final Class targetClass) { } } - @Override - public void writeTemplate(Type targetType, String directoryName) { - throw new UnsupportedOperationException(targetType.toString()); - } - - @Override - public Template loadTemplate(Type targetType) { - return null; + protected FieldOption getFieldOption(Class targetClass) { + Message m = targetClass.getAnnotation(Message.class); + if (m == null) { + return FieldOption.DEFAULT; + } + MessagePackMessage mpm = targetClass.getAnnotation(MessagePackMessage.class); + if (mpm == null) { + return FieldOption.DEFAULT; + } + // TODO #MN + return m.value(); } - private FieldEntry[] toFieldEntries(Class targetClass, FieldList flist) { + private FieldEntry[] toFieldEntries(final Class targetClass, final FieldList flist) { List src = flist.getList(); FieldEntry[] entries = new FieldEntry[src.size()]; for (int i = 0; i < src.size(); i++) { @@ -110,8 +114,8 @@ private FieldEntry[] toFieldEntries(Class targetClass, FieldList flist) { return entries; } - protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { - Field[] allFields = readAllFields(targetClass); + protected FieldEntry[] toFieldEntries(final Class targetClass, final FieldOption from) { + Field[] fields = getFields(targetClass); /* index: * @Index(0) int field_a; // 0 @@ -123,14 +127,14 @@ protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implic */ List indexed = new ArrayList(); int maxIndex = -1; - for (Field f : allFields) { - FieldOption opt = readFieldOption(f, implicitOption); + for (Field f : fields) { + FieldOption opt = getFieldOption(f, from); if (opt == FieldOption.IGNORE) { // skip continue; } - int index = readFieldIndex(f, maxIndex); + int index = getFieldIndex(f, maxIndex); if (indexed.size() > index && indexed.get(index) != null) { throw new TemplateBuildException("duplicated index: "+index); } @@ -148,32 +152,19 @@ protected FieldEntry[] readFieldEntries(Class targetClass, FieldOption implic } } - FieldEntry[] result = new FieldEntry[maxIndex+1]; - for (int i=0; i < indexed.size(); i++) { + FieldEntry[] entries = new FieldEntry[maxIndex+1]; + for (int i = 0; i < indexed.size(); i++) { FieldEntry e = indexed.get(i); if (e == null) { - result[i] = new DefaultFieldEntry(); + entries[i] = new DefaultFieldEntry(); } else { - result[i] = e; + entries[i] = e; } } - return result; - } - - protected FieldOption readImplicitFieldOption(Class targetClass) { - Message m = targetClass.getAnnotation(Message.class); - if (m == null) { - return FieldOption.DEFAULT; - } - MessagePackMessage mpm = targetClass.getAnnotation(MessagePackMessage.class); - if (mpm == null) { - return FieldOption.DEFAULT; - } - // TODO #MN - return m.value(); + return entries; } - private Field[] readAllFields(Class targetClass) { + private Field[] getFields(Class targetClass) { // order: [fields of super class, ..., fields of this class] List succ = new ArrayList(); int total = 0; @@ -192,7 +183,7 @@ private Field[] readAllFields(Class targetClass) { return result; } - private static FieldOption readFieldOption(Field field, FieldOption implicitOption) { + private FieldOption getFieldOption(Field field, FieldOption from) { int mod = field.getModifiers(); if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) { return FieldOption.IGNORE; @@ -206,8 +197,8 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti return FieldOption.NOTNULLABLE; } - if (implicitOption != FieldOption.DEFAULT) { - return implicitOption; + if (from != FieldOption.DEFAULT) { + return from; } // default mode: @@ -224,7 +215,7 @@ private static FieldOption readFieldOption(Field field, FieldOption implicitOpti } } - private static int readFieldIndex(Field field, int maxIndex) { + private int getFieldIndex(final Field field, int maxIndex) { Index a = field.getAnnotation(Index.class); if (a == null) { return maxIndex + 1; @@ -233,6 +224,16 @@ private static int readFieldIndex(Field field, int maxIndex) { } } + @Override + public void writeTemplate(Type targetType, String directoryName) { + throw new UnsupportedOperationException(targetType.toString()); + } + + @Override + public Template loadTemplate(Type targetType) { + return null; + } + public static boolean isAnnotated(Class targetClass, Class with) { return targetClass.getAnnotation(with) != null; } diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 86432d57f..7e55b642b 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -141,8 +141,8 @@ private Template[] toTemplate(FieldEntry[] from) { public void writeTemplate(Type targetType, String directoryName) { Class targetClass = (Class)targetType; checkClassValidation(targetClass); - FieldOption implicitOption = readImplicitFieldOption(targetClass); - FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); writeTemplate(targetClass, entries, directoryName); } @@ -156,8 +156,8 @@ private void writeTemplate(Class targetClass, FieldEntry[] entries, String di public Template loadTemplate(Type targetType) { Class targetClass = (Class) targetType; checkClassValidation(targetClass); - FieldOption implicitOption = readImplicitFieldOption(targetClass); - FieldEntry[] entries = readFieldEntries(targetClass, implicitOption); + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); return loadTemplate(targetClass, entries); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 18b462d96..3474b3efb 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -22,12 +22,12 @@ import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.io.IOException; +import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.lang.reflect.Type; import java.util.ArrayList; -import org.msgpack.MessageTypeException; import org.msgpack.annotation.Beans; import org.msgpack.annotation.Ignore; import org.msgpack.annotation.Index; @@ -37,11 +37,21 @@ import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; -import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder.BooleanFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ByteFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.DoubleFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.FloatFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.IntFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.LongFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.NullFieldTemplate; import org.msgpack.template.builder.ReflectionTemplateBuilder.ObjectFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionClassTemplate; import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldTemplate; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ShortFieldTemplate; import org.msgpack.unpacker.Unpacker; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** @@ -50,7 +60,9 @@ * @author takeshita * */ -public class ReflectionBeansTemplateBuilder extends AbstractTemplateBuilder { +public class ReflectionBeansTemplateBuilder extends ReflectionTemplateBuilder { + + private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); static class ReflectionBeansFieldTemplate extends ReflectionFieldTemplate { ReflectionBeansFieldTemplate(final FieldEntry entry) { @@ -70,95 +82,6 @@ public Object read(Unpacker unpacker, Object to) throws IOException { } } - static class BeansObjectFieldTemplate extends ReflectionBeansFieldTemplate { - Template template; - - BeansObjectFieldTemplate(final FieldEntry entry, final Template template) { - super(entry); - this.template = template; - } - - @Override - public void write(Packer packer, Object v) throws IOException { - template.write(packer, v); - } - - @Override - public Object read(Unpacker unpacker, Object target) throws IOException { - Class type = (Class) entry.getType(); - Object fieldReference = entry.get(target); - Object valueReference = template.read(unpacker, fieldReference); - if (valueReference != fieldReference) { - entry.set(target, valueReference); - } - return valueReference; - } - } - - static class ReflectionBeansTemplate extends AbstractTemplate { - private Class targetClass; - - private ReflectionFieldTemplate[] templates = null; - - ReflectionBeansTemplate(Class targetClass, ReflectionFieldTemplate[] templates) { - this.targetClass = targetClass; - this.templates = templates; - } - - @Override - public - void write(Packer packer, T v) throws IOException { - packer.writeArrayBegin(templates.length); - for (ReflectionFieldTemplate tmpl : templates) { - if (!tmpl.entry.isAvailable()) { - packer.writeNil(); - continue; - } - Object obj = tmpl.entry.get(v); - if (obj == null) { - if (tmpl.entry.isNotNullable()) { - throw new MessageTypeException(); - } - packer.writeNil(); - } else { - tmpl.write(packer, obj); - } - } - packer.writeArrayEnd(); - } - - @Override - public T read(Unpacker unpacker, T to) throws IOException { - try { - if (to == null) { - to = targetClass.newInstance(); - } - - unpacker.readArrayBegin(); - - for (int i=0; i < templates.length; i++) { - ReflectionBeansFieldTemplate e = (ReflectionBeansFieldTemplate) templates[i]; - if(!e.entry.isAvailable()) { - unpacker.skip(); - } else if(e.entry.isOptional() && unpacker.trySkipNil()) { - e.setNil(to); - } else { - e.read(unpacker, to); - } - } - - unpacker.readArrayEnd(); - return to; - } catch (MessageTypeException e) { - throw e; - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new MessageTypeException(e); - } - } - } - public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { super(registry); } @@ -170,35 +93,23 @@ public boolean matchType(Type targetType) { } @Override - public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - ReflectionBeansFieldTemplate[] beansEntries = new ReflectionBeansFieldTemplate[entries.length]; + protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { + ReflectionFieldTemplate[] tmpls = new ReflectionFieldTemplate[entries.length]; for (int i = 0; i < entries.length; i++) { - FieldEntry e = (FieldEntry) entries[i]; + FieldEntry e = entries[i]; Class type = e.getType(); - if (type.equals(boolean.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(byte.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(short.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(int.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(long.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(float.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); - } else if (type.equals(double.class)) { - beansEntries[i] = new ReflectionBeansFieldTemplate(e); + if (type.isPrimitive()) { + tmpls[i] = new ReflectionBeansFieldTemplate(e); } else { Template tmpl = registry.lookup(e.getGenericType(), true); - beansEntries[i] = new BeansObjectFieldTemplate(e, tmpl); + tmpls[i] = new ObjectFieldTemplate(e, tmpl); } } - return new ReflectionBeansTemplate(targetClass, beansEntries); + return tmpls; } @Override - public FieldEntry[] readFieldEntries(Class targetClass, FieldOption implicitOption) { + public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOption) { BeanInfo desc; try { desc = Introspector.getBeanInfo(targetClass); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index 5d724c907..fc766664a 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -84,6 +84,7 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries) @Override public Template buildTemplate(Type targetType) { + @SuppressWarnings("unchecked") Class targetClass = (Class) targetType; checkOrdinalEnumValidation(targetClass); return new ReflectionOrdinalEnumTemplate(targetClass); @@ -91,8 +92,7 @@ public Template buildTemplate(Type targetType) { protected void checkOrdinalEnumValidation(Class targetClass) { if(! targetClass.isEnum()) { - throw new TemplateBuildException( - "tried to build ordinal enum template of non-enum class: " + targetClass.getName()); + throw new TemplateBuildException("tried to build ordinal enum template of non-enum class: " + targetClass.getName()); } } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 9adc9a557..385fecb24 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -30,10 +30,14 @@ import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { + private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); + protected static abstract class ReflectionFieldTemplate extends AbstractTemplate { protected FieldEntry entry; @@ -61,7 +65,7 @@ public Object read(Unpacker unpacker, Object target) throws IOException { } } - public static class ObjectFieldTemplate extends ReflectionFieldTemplate { + protected static class ObjectFieldTemplate extends ReflectionFieldTemplate { private Template template; public ObjectFieldTemplate(final FieldEntry entry, Template template) { @@ -302,7 +306,7 @@ public T read(Unpacker unpacker, T to) throws IOException { unpacker.readArrayBegin(); - for (int i=0; i < templates.length; i++) { + for (int i = 0; i < templates.length; i++) { ReflectionFieldTemplate tmpl = templates[i]; if (!tmpl.entry.isAvailable()) { unpacker.skip(); @@ -336,45 +340,50 @@ public boolean matchType(Type targetType) { } @Override - public Template buildTemplate(Class type, FieldEntry[] entries) { + public Template buildTemplate(Class targetClass, FieldEntry[] entries) { if (entries == null) { - throw new NullPointerException("entries is null: " + type); + throw new NullPointerException("entries is null: " + targetClass); } - // TODO Now it is simply cast. + ReflectionFieldTemplate[] tmpls = toTemplates(entries); + return new ReflectionClassTemplate(targetClass, tmpls); + } + + protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { + // TODO Now it is simply cast. #SF for (FieldEntry entry : entries) { - Field f = ((DefaultFieldEntry) entry).getField(); - int mod = f.getModifiers(); + Field field = ((DefaultFieldEntry) entry).getField(); + int mod = field.getModifiers(); if (!Modifier.isPublic(mod)) { - f.setAccessible(true); + field.setAccessible(true); } } - ReflectionFieldTemplate[] tmpls = new ReflectionFieldTemplate[entries.length]; + ReflectionFieldTemplate[] templates = new ReflectionFieldTemplate[entries.length]; for (int i = 0; i < entries.length; i++) { FieldEntry entry = entries[i]; Class t = entry.getType(); if (!entry.isAvailable()) { - tmpls[i] = new NullFieldTemplate(entry); + templates[i] = new NullFieldTemplate(entry); } else if (t.equals(boolean.class)) { - tmpls[i] = new BooleanFieldTemplate(entry); + templates[i] = new BooleanFieldTemplate(entry); } else if (t.equals(byte.class)) { - tmpls[i] = new ByteFieldTemplate(entry); + templates[i] = new ByteFieldTemplate(entry); } else if (t.equals(short.class)) { - tmpls[i] = new ShortFieldTemplate(entry); + templates[i] = new ShortFieldTemplate(entry); } else if (t.equals(int.class)) { - tmpls[i] = new IntFieldTemplate(entry); + templates[i] = new IntFieldTemplate(entry); } else if (t.equals(long.class)) { - tmpls[i] = new LongFieldTemplate(entry); + templates[i] = new LongFieldTemplate(entry); } else if (t.equals(float.class)) { - tmpls[i] = new FloatFieldTemplate(entry); + templates[i] = new FloatFieldTemplate(entry); } else if (t.equals(double.class)) { - tmpls[i] = new DoubleFieldTemplate(entry); + templates[i] = new DoubleFieldTemplate(entry); } else { - Template tmpl = registry.lookup(entry.getGenericType(), true); - tmpls[i] = new ObjectFieldTemplate(entry, tmpl); + Template template = registry.lookup(entry.getGenericType(), true); + templates[i] = new ObjectFieldTemplate(entry, template); } } - return new ReflectionClassTemplate(type, tmpls); + return templates; } } From f0c58e464f99ddd391baa44819bc5adb56cb51f4 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 28 Jul 2011 17:33:05 +0900 Subject: [PATCH 076/409] Template: nullable by default --- .../msgpack/template/AbstractTemplate.java | 18 ++---- .../org/msgpack/template/AnyTemplate.java | 10 +++- .../msgpack/template/BigDecimalTemplate.java | 13 ++++- .../msgpack/template/BigIntegerTemplate.java | 13 ++++- .../template/BooleanArrayTemplate.java | 13 ++++- .../org/msgpack/template/BooleanTemplate.java | 13 ++++- .../msgpack/template/ByteArrayTemplate.java | 13 ++++- .../msgpack/template/ByteBufferTemplate.java | 13 ++++- .../org/msgpack/template/ByteTemplate.java | 13 ++++- .../msgpack/template/CollectionTemplate.java | 13 ++++- .../org/msgpack/template/DateTemplate.java | 13 ++++- .../org/msgpack/template/DefaultTemplate.java | 15 +++-- .../msgpack/template/DoubleArrayTemplate.java | 13 ++++- .../org/msgpack/template/DoubleTemplate.java | 13 ++++- .../msgpack/template/FloatArrayTemplate.java | 13 ++++- .../org/msgpack/template/FloatTemplate.java | 13 ++++- .../template/IntegerArrayTemplate.java | 13 ++++- .../org/msgpack/template/IntegerTemplate.java | 13 ++++- .../org/msgpack/template/ListTemplate.java | 13 ++++- .../msgpack/template/LongArrayTemplate.java | 13 ++++- .../org/msgpack/template/LongTemplate.java | 13 ++++- .../org/msgpack/template/MapTemplate.java | 13 ++++- .../template/MessagePackableTemplate.java | 13 ++++- .../msgpack/template/ShortArrayTemplate.java | 13 ++++- .../org/msgpack/template/ShortTemplate.java | 13 ++++- .../org/msgpack/template/StringTemplate.java | 13 ++++- .../org/msgpack/template/ValueTemplate.java | 14 +++-- .../template/builder/BeansBuildContext.java | 15 +++++ .../template/builder/BuildContext.java | 8 ++- .../template/builder/DefaultBuildContext.java | 15 +++++ .../ReflectionBeansTemplateBuilder.java | 4 +- .../ReflectionOrdinalEnumTemplateBuilder.java | 4 +- .../builder/ReflectionTemplateBuilder.java | 58 +++++++++++-------- .../msgpack/unpacker/MessagePackUnpacker.java | 6 +- 34 files changed, 341 insertions(+), 125 deletions(-) diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java index d62f96169..dde16d631 100644 --- a/src/main/java/org/msgpack/template/AbstractTemplate.java +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -23,22 +23,12 @@ public abstract class AbstractTemplate implements Template { - @Override - public void write(Packer pk, T v, boolean optional) throws IOException { - if(optional && v == null) { - pk.writeNil(); - } else { - write(pk, v); - } + public void write(Packer pk, T v) throws IOException { + write(pk, v, false); } - @Override - public T read(Unpacker u, T to, boolean optional) throws IOException { - if(optional && u.trySkipNil()) { - return null; - } else { - return read(u, to); - } + public T read(Unpacker u, T to) throws IOException { + return read(u, to, false); } } diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 4af403290..79429edee 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -40,17 +40,23 @@ private AnyTemplate(TemplateRegistry registry) { } - public void write(Packer pk, T target) throws IOException { + public void write(Packer pk, T target, boolean required) throws IOException { if(target instanceof Value) { pk.write((Value) target); } else if(target == null) { + if(required) { + throw new MessageTypeException("Attempted to write null"); + } pk.writeNil(); } else { registry.lookup(target.getClass()).write(pk, target); } } - public T read(Unpacker u, T to) throws IOException, MessageTypeException { + public T read(Unpacker u, T to, boolean required) throws IOException, MessageTypeException { + if(!required && u.trySkipNil()) { + return null; + } return u.read(to); } } diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index add61ae0b..26be32a73 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -27,14 +27,21 @@ public class BigDecimalTemplate extends AbstractTemplate { private BigDecimalTemplate() { } - public void write(Packer pk, BigDecimal target) throws IOException { + public void write(Packer pk, BigDecimal target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeString(target.toString()); } - public BigDecimal read(Unpacker u, BigDecimal to) throws IOException { + public BigDecimal read(Unpacker u, BigDecimal to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } String temp = u.readString(); return new BigDecimal(temp); } diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index 3f3831fd9..bd1effc00 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -27,14 +27,21 @@ public class BigIntegerTemplate extends AbstractTemplate { private BigIntegerTemplate() { } - public void write(Packer pk, BigInteger target) throws IOException { + public void write(Packer pk, BigInteger target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeBigInteger((BigInteger)target); } - public BigInteger read(Unpacker u, BigInteger to) throws IOException { + public BigInteger read(Unpacker u, BigInteger to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readBigInteger(); } diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index dafc04076..246b46f84 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -26,9 +26,13 @@ public class BooleanArrayTemplate extends AbstractTemplate { private BooleanArrayTemplate() { } - public void write(Packer pk, boolean[] target) throws IOException { + public void write(Packer pk, boolean[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(boolean a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, boolean[] target) throws IOException { pk.writeArrayEnd(); } - public boolean[] read(Unpacker u, boolean[] to) throws IOException { + public boolean[] read(Unpacker u, boolean[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null || to.length != n) { to = new boolean[n]; diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index cca6c0651..6ad233724 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -26,14 +26,21 @@ public class BooleanTemplate extends AbstractTemplate { private BooleanTemplate() { } - public void write(Packer pk, Boolean target) throws IOException { + public void write(Packer pk, Boolean target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeBoolean(target); } - public Boolean read(Unpacker u, Boolean to) throws IOException { + public Boolean read(Unpacker u, Boolean to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readBoolean(); } diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index 25fdae5c1..4ffce0c5d 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -26,14 +26,21 @@ public class ByteArrayTemplate extends AbstractTemplate { private ByteArrayTemplate() { } - public void write(Packer pk, byte[] target) throws IOException { + public void write(Packer pk, byte[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeByteArray(target); } - public byte[] read(Unpacker u, byte[] to) throws IOException { + public byte[] read(Unpacker u, byte[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readByteArray(); // TODO read to 'to' obj } diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index 9b7ec2ca3..d387a3b4b 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -28,14 +28,21 @@ public class ByteBufferTemplate extends AbstractTemplate { private ByteBufferTemplate() { } - public void write(Packer pk, ByteBuffer target) throws IOException { + public void write(Packer pk, ByteBuffer target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeByteBuffer(target); } - public ByteBuffer read(Unpacker u, ByteBuffer to) throws IOException { + public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readByteBuffer(); // TODO read to 'to' obj? } diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 9ae9c10cc..1482dfb99 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -26,14 +26,21 @@ public class ByteTemplate extends AbstractTemplate { private ByteTemplate() { } - public void write(Packer pk, Byte target) throws IOException { + public void write(Packer pk, Byte target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeByte(target); } - public Byte read(Unpacker u, Byte to) throws IOException { + public Byte read(Unpacker u, Byte to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readByte(); } diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index 91cd98123..b19835254 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -32,9 +32,13 @@ public CollectionTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, Collection target) throws IOException { + public void write(Packer pk, Collection target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } Collection col = target; pk.writeArrayBegin(col.size()); @@ -44,7 +48,10 @@ public void write(Packer pk, Collection target) throws IOException { pk.writeArrayEnd(); } - public Collection read(Unpacker u, Collection to) throws IOException { + public Collection read(Unpacker u, Collection to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null) { to = new LinkedList(); diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index 3d653aa6a..bdbc0946f 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -28,14 +28,21 @@ public class DateTemplate extends AbstractTemplate { private DateTemplate() { } - public void write(Packer pk, Date target) throws IOException { + public void write(Packer pk, Date target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeLong(target.getTime()); } - public Date read(Unpacker u, Date to) throws IOException { + public Date read(Unpacker u, Date to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } long temp = u.readLong(); return new Date(temp); } diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index b1d3f2ce7..03086a825 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -47,10 +47,14 @@ public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type loo this.messagePackable = MessagePackable.class.isAssignableFrom(targetClass); } - public void write(Packer pk, Object target) throws IOException { + public void write(Packer pk, Object target, boolean required) throws IOException { if (messagePackable) { if (target == null) { - throw new NullPointerException("target is null"); + if(required) { + throw new NullPointerException("Attempted to write nil"); + } + pk.writeNil(); + return; } ((MessagePackable) target).writeTo(pk); return; @@ -62,12 +66,15 @@ public void write(Packer pk, Object target) throws IOException { tmpl.write(pk, target); } - public Object read(Unpacker pac, Object to) throws IOException { + public Object read(Unpacker u, Object to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } // TODO #MN Template tmpl = registry.tryLookup(lookupType); if (tmpl == this || tmpl == null) { throw new MessageTypeException("Template lookup fail: " + lookupType); } - return tmpl.read(pac, to); + return tmpl.read(u, to); } } diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index b3de03c9a..e8f56584c 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -26,9 +26,13 @@ public class DoubleArrayTemplate extends AbstractTemplate { private DoubleArrayTemplate() { } - public void write(Packer pk, double[] target) throws IOException { + public void write(Packer pk, double[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(double a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, double[] target) throws IOException { pk.writeArrayEnd(); } - public double[] read(Unpacker u, double[] to) throws IOException { + public double[] read(Unpacker u, double[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null || to.length != n) { to = new double[n]; diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index e1aee6fca..06196c876 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -26,14 +26,21 @@ public class DoubleTemplate extends AbstractTemplate { private DoubleTemplate() { } - public void write(Packer pk, Double target) throws IOException { + public void write(Packer pk, Double target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeDouble(target); } - public Double read(Unpacker u, Double to) throws IOException { + public Double read(Unpacker u, Double to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readDouble(); } diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index a342f5f16..df9c36eb3 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -26,9 +26,13 @@ public class FloatArrayTemplate extends AbstractTemplate { private FloatArrayTemplate() { } - public void write(Packer pk, float[] target) throws IOException { + public void write(Packer pk, float[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(float a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, float[] target) throws IOException { pk.writeArrayEnd(); } - public float[] read(Unpacker u, float[] to) throws IOException { + public float[] read(Unpacker u, float[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null || to.length != n) { to = new float[n]; diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index d1735470c..71a7033f6 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -26,14 +26,21 @@ public class FloatTemplate extends AbstractTemplate { private FloatTemplate() { } - public void write(Packer pk, Float target) throws IOException { + public void write(Packer pk, Float target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeFloat(target); } - public Float read(Unpacker u, Float to) throws IOException { + public Float read(Unpacker u, Float to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readFloat(); } diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 75ec7a7c5..6b9c10e3c 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -26,9 +26,13 @@ public class IntegerArrayTemplate extends AbstractTemplate { private IntegerArrayTemplate() { } - public void write(Packer pk, int[] target) throws IOException { + public void write(Packer pk, int[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(int a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, int[] target) throws IOException { pk.writeArrayEnd(); } - public int[] read(Unpacker u, int[] to) throws IOException { + public int[] read(Unpacker u, int[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); int[] array; if(to != null && to.length == n) { diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index ca8d6d4cd..c7527ac88 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -26,14 +26,21 @@ public class IntegerTemplate extends AbstractTemplate { private IntegerTemplate() { } - public void write(Packer pk, Integer target) throws IOException { + public void write(Packer pk, Integer target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeInt(target); } - public Integer read(Unpacker u, Integer to) throws IOException { + public Integer read(Unpacker u, Integer to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readInt(); } diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index 67d48749a..fdc90517d 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -32,10 +32,14 @@ public ListTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, List target) throws IOException { + public void write(Packer pk, List target, boolean required) throws IOException { if (! (target instanceof List)) { if (target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } throw new MessageTypeException("Target is not a List but " + target.getClass()); } @@ -46,7 +50,10 @@ public void write(Packer pk, List target) throws IOException { pk.writeArrayEnd(); } - public List read(Unpacker u, List to) throws IOException { + public List read(Unpacker u, List to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if (to == null) { to = new ArrayList(n); diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index 57bc71f3a..bdb5fda2f 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -26,9 +26,13 @@ public class LongArrayTemplate extends AbstractTemplate { private LongArrayTemplate() { } - public void write(Packer pk, long[] target) throws IOException { + public void write(Packer pk, long[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(long a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, long[] target) throws IOException { pk.writeArrayEnd(); } - public long[] read(Unpacker u, long[] to) throws IOException { + public long[] read(Unpacker u, long[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null || to.length != n) { to = new long[n]; diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index 043f28dca..6a67c29c0 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -26,14 +26,21 @@ public class LongTemplate extends AbstractTemplate { private LongTemplate() { } - public void write(Packer pk, Long target) throws IOException { + public void write(Packer pk, Long target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeLong(target); } - public Long read(Unpacker u, Long to) throws IOException { + public Long read(Unpacker u, Long to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readLong(); } diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index 4c44bd565..7c7538335 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -34,10 +34,14 @@ public MapTemplate(Template keyTemplate, Template valueTemplate) { this.valueTemplate = valueTemplate; } - public void write(Packer pk, Map target) throws IOException { + public void write(Packer pk, Map target, boolean required) throws IOException { if(!(target instanceof Map)) { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } throw new MessageTypeException("Target is not a Map but "+target.getClass()); } @@ -50,7 +54,10 @@ public void write(Packer pk, Map target) throws IOException { pk.writeMapEnd(); } - public Map read(Unpacker u, Map to) throws IOException { + public Map read(Unpacker u, Map to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readMapBegin(); Map map; if(to != null) { diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index 39eb069b2..663627753 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -31,14 +31,21 @@ public class MessagePackableTemplate extends AbstractTemplate { this.targetClass = targetClass; } - public void write(Packer pk, MessagePackable target) throws IOException { + public void write(Packer pk, MessagePackable target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } target.writeTo(pk); } - public MessagePackable read(Unpacker u, MessagePackable to) throws IOException { + public MessagePackable read(Unpacker u, MessagePackable to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } if (to == null) { try { to = (MessagePackable) targetClass.newInstance(); diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index d371585f2..15d6888e3 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -26,9 +26,13 @@ public class ShortArrayTemplate extends AbstractTemplate { private ShortArrayTemplate() { } - public void write(Packer pk, short[] target) throws IOException { + public void write(Packer pk, short[] target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeArrayBegin(target.length); for(short a : target) { @@ -37,7 +41,10 @@ public void write(Packer pk, short[] target) throws IOException { pk.writeArrayEnd(); } - public short[] read(Unpacker u, short[] to) throws IOException { + public short[] read(Unpacker u, short[] to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } int n = u.readArrayBegin(); if(to == null || to.length != n) { to = new short[n]; diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index 2e91b7e26..33ac32bba 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -26,14 +26,21 @@ public class ShortTemplate extends AbstractTemplate { private ShortTemplate() { } - public void write(Packer pk, Short target) throws IOException { + public void write(Packer pk, Short target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeShort(target); } - public Short read(Unpacker u, Short to) throws IOException { + public Short read(Unpacker u, Short to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readShort(); } diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index 303a162cf..373073644 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -26,14 +26,21 @@ public class StringTemplate extends AbstractTemplate { private StringTemplate() { } - public void write(Packer pk, String target) throws IOException { + public void write(Packer pk, String target, boolean required) throws IOException { if(target == null) { - throw new MessageTypeException("Attempted to write null"); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.writeString(target); } - public String read(Unpacker u, String to) throws IOException { + public String read(Unpacker u, String to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readString(); } diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 8a101d0db..02b0d2c47 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -27,15 +27,21 @@ public class ValueTemplate extends AbstractTemplate { private ValueTemplate() { } - public void write(Packer pk, Value target) throws IOException { + public void write(Packer pk, Value target, boolean required) throws IOException { if(target == null) { - // FIXME NullPointerException? - throw new MessageTypeException("Attempted to write null."); + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; } pk.write(target); } - public Value read(Unpacker u, Value to) throws IOException { + public Value read(Unpacker u, Value to, boolean required) throws IOException { + if(!required && u.trySkipNil()) { + return null; + } return u.readValue(); } diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 8bf8bd963..f9959b4e2 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -83,8 +83,18 @@ protected void buildMethodInit() { protected String buildWriteMethodBody() { resetStringBuilder(); buildString("{"); + + buildString("if($2 == null) {"); + buildString(" if($3) {"); + buildString(" throw new %s(\"Attempted to write null\");", MessageTypeException.class.getName()); + buildString(" }"); + buildString(" $1.writeNil();"); + buildString(" return;"); + buildString("}"); + buildString("%s _$$_t = (%s)$2;", origName, origName); buildString("$1.writeArrayBegin(%d);", entries.length); + for (int i = 0; i < entries.length; i++) { BeansFieldEntry e = entries[i]; if (!e.isAvailable()) { @@ -106,6 +116,7 @@ protected String buildWriteMethodBody() { buildString("}"); } } + buildString("$1.writeArrayEnd();"); buildString("}"); return getBuiltString(); @@ -116,6 +127,10 @@ protected String buildReadMethodBody() { resetStringBuilder(); buildString("{ "); + buildString("if(!$3 && $1.trySkipNil()) {"); + buildString(" return null;"); + buildString("}"); + buildString("%s _$$_t;", origName); buildString("if($2 == null) {"); buildString(" _$$_t = new %s();", origName); diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index b301eda98..52984eb53 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -110,7 +110,8 @@ protected void buildWriteMethod() throws CannotCompileException, String mname = "write"; CtClass[] paramTypes = new CtClass[] { director.getCtClass(Packer.class.getName()), - director.getCtClass(Object.class.getName()) + director.getCtClass(Object.class.getName()), + CtClass.booleanType }; CtClass[] exceptTypes = new CtClass[] { director.getCtClass(IOException.class.getName()) @@ -134,7 +135,8 @@ protected void buildReadMethod() throws CannotCompileException, String mname = "read"; CtClass[] paramTypes = new CtClass[] { director.getCtClass(Unpacker.class.getName()), - director.getCtClass(Object.class.getName()) + director.getCtClass(Object.class.getName()), + CtClass.booleanType }; CtClass[] exceptTypes = new CtClass[] { director.getCtClass(MessageTypeException.class.getName()) @@ -258,4 +260,4 @@ protected Template load(final String className) { } } } -} \ No newline at end of file +} diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index fb19b286d..56c122784 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -79,8 +79,18 @@ protected void buildMethodInit() { protected String buildWriteMethodBody() { resetStringBuilder(); buildString("{"); + + buildString("if($2 == null) {"); + buildString(" if($3) {"); + buildString(" throw new %s(\"Attempted to write null\");", MessageTypeException.class.getName()); + buildString(" }"); + buildString(" $1.writeNil();"); + buildString(" return;"); + buildString("}"); + buildString("%s _$$_t = (%s) $2;", origName, origName); buildString("$1.writeArrayBegin(%d);", entries.length); + for (int i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; if (!e.isAvailable()) { @@ -104,6 +114,7 @@ protected String buildWriteMethodBody() { buildString("}"); } } + buildString("$1.writeArrayEnd();"); buildString("}"); return getBuiltString(); @@ -113,6 +124,10 @@ protected String buildReadMethodBody() { resetStringBuilder(); buildString("{ "); + buildString("if(!$3 && $1.trySkipNil()) {"); + buildString(" return null;"); + buildString("}"); + buildString("%s _$$_t;", origName); buildString("if ($2 == null) {"); buildString(" _$$_t = new %s();", origName); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 3474b3efb..0be697fe3 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -70,12 +70,12 @@ static class ReflectionBeansFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object v) throws IOException { + public void write(Packer packer, Object v, boolean required) throws IOException { packer.write(v); } @Override - public Object read(Unpacker unpacker, Object to) throws IOException { + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { Object o = unpacker.read(entry.getType()); entry.set(to, o); return o; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index fc766664a..4d9a3acdb 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -49,7 +49,7 @@ static class ReflectionOrdinalEnumTemplate extends AbstractTemplate { } @Override - public void write(Packer pk, T target) throws IOException { + public void write(Packer pk, T target, boolean required) throws IOException { Integer ord = reverse.get(target); if (ord == null) { throw new MessageTypeException(); @@ -58,7 +58,7 @@ public void write(Packer pk, T target) throws IOException { } @Override - public T read(Unpacker pac, T to) throws IOException, MessageTypeException { + public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { int ord = pac.readInt(); if (entries.length <= ord) { throw new MessageTypeException(); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 385fecb24..7a401d23f 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -56,11 +56,11 @@ static class NullFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { return null; } } @@ -74,15 +74,15 @@ public ObjectFieldTemplate(final FieldEntry entry, Template template) { } @Override - public void write(Packer packer, Object target) throws IOException { - template.write(packer, target); + public void write(Packer packer, Object target, boolean required) throws IOException { + template.write(packer, target, required); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { Class type = (Class) entry.getType(); Object fieldReference = entry.get(target); - Object valueReference = template.read(unpacker, fieldReference); + Object valueReference = template.read(unpacker, fieldReference, required); if (valueReference != fieldReference) { entry.set(target, valueReference); } @@ -96,12 +96,12 @@ static class BooleanFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeBoolean((Boolean) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { boolean o = unpacker.readBoolean(); try { ((DefaultFieldEntry) entry).getField().setBoolean(target, o); @@ -120,12 +120,12 @@ static class ByteFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeByte((Byte) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { byte o = unpacker.readByte(); try { ((DefaultFieldEntry) entry).getField().setByte(target, o); @@ -144,12 +144,12 @@ static class ShortFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeShort((Short) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { short o = unpacker.readShort(); try { ((DefaultFieldEntry) entry).getField().setShort(target, o); @@ -168,12 +168,12 @@ static class IntFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeInt((Integer) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { int o = unpacker.readInt(); try { ((DefaultFieldEntry) entry).getField().setInt(target, o); @@ -192,12 +192,12 @@ static class LongFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeLong((Long) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { long o = unpacker.readLong(); try { ((DefaultFieldEntry) entry).getField().setLong(target, o); @@ -216,12 +216,12 @@ static class FloatFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeFloat((Float) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { float o = unpacker.readFloat(); try { ((DefaultFieldEntry) entry).getField().setFloat(target, o); @@ -240,12 +240,12 @@ static class DoubleFieldTemplate extends ReflectionFieldTemplate { } @Override - public void write(Packer packer, Object target) throws IOException { + public void write(Packer packer, Object target, boolean required) throws IOException { packer.writeDouble((Double) target); } @Override - public Object read(Unpacker unpacker, Object target) throws IOException { + public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { double o = unpacker.readDouble(); try { ((DefaultFieldEntry) entry).getField().setDouble(target, o); @@ -269,7 +269,14 @@ protected ReflectionClassTemplate(Class targetClass, ReflectionFieldTemplate[ } @Override - public void write(Packer packer, T target) throws IOException { + public void write(Packer packer, T target, boolean required) throws IOException { + if(target == null) { + if(required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } try { packer.writeArrayBegin(templates.length); for (ReflectionFieldTemplate tmpl : templates) { @@ -284,7 +291,7 @@ public void write(Packer packer, T target) throws IOException { } packer.writeNil(); } else { - tmpl.write(packer, obj); + tmpl.write(packer, obj, true); } } packer.writeArrayEnd(); @@ -298,7 +305,10 @@ public void write(Packer packer, T target) throws IOException { } @Override - public T read(Unpacker unpacker, T to) throws IOException { + public T read(Unpacker unpacker, T to, boolean required) throws IOException { + if(!required && unpacker.trySkipNil()) { + return null; + } try { if (to == null) { to = targetClass.newInstance(); @@ -313,7 +323,7 @@ public T read(Unpacker unpacker, T to) throws IOException { } else if (tmpl.entry.isOptional() && unpacker.trySkipNil()) { tmpl.setNil(to); } else { - tmpl.read(unpacker, to); + tmpl.read(unpacker, to, true); } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index c3535238b..468989039 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -89,7 +89,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } - byte b = getHeadByte(); + final int b = (int)getHeadByte(); if((b & 0x80) == 0) { // Positive Fixnum //System.out.println("positive fixnum "+b); @@ -141,6 +141,10 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return false; } + return readOneWithoutStackLarge(a, b); + } + + private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOException { switch(b & 0xff) { case 0xc0: // nil a.acceptNil(); From b1cd925c0f8c503932ef88d3b90e821d23402be9 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:19:01 +0900 Subject: [PATCH 077/409] deleted dead codes in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 5bea146d4..9d4348a1f 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -47,7 +47,6 @@ public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } - public Packer createPacker(OutputStream stream) { return new MessagePackPacker(this, stream); } @@ -180,9 +179,6 @@ public void register(Class type) { registry.register(type); } - // TODO #MN - // public void forceRegister(Class type); - public void register(Class type, Template tmpl) { registry.register(type, tmpl); } From baaeb608439a3373ea98e2e63404ea8e49667a9b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:20:05 +0900 Subject: [PATCH 078/409] renamed 3rd parameters of write/read in Template.java --- src/main/java/org/msgpack/template/Template.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/Template.java b/src/main/java/org/msgpack/template/Template.java index 07496d704..31b2eadf3 100644 --- a/src/main/java/org/msgpack/template/Template.java +++ b/src/main/java/org/msgpack/template/Template.java @@ -25,10 +25,10 @@ public interface Template { public void write(Packer pk, T v) throws IOException; - public void write(Packer pk, T v, boolean optional) throws IOException; + public void write(Packer pk, T v, boolean required) throws IOException; public T read(Unpacker u, T to) throws IOException; - public T read(Unpacker u, T to, boolean optional) throws IOException; + public T read(Unpacker u, T to, boolean required) throws IOException; } From 69619a2f7515f162425dec0db9769fd5a15fb927 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:22:44 +0900 Subject: [PATCH 079/409] changed behavior for packing/unpacking values of non-public fields --- .../builder/AbstractTemplateBuilder.java | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 6771aab6a..d60877a70 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -185,7 +185,11 @@ private Field[] getFields(Class targetClass) { private FieldOption getFieldOption(Field field, FieldOption from) { int mod = field.getModifiers(); - if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) { + // default mode: + // transient, static, final : Ignore + // primitive type : NotNullable + // reference type : Ignore + if (Modifier.isStatic(mod) || Modifier.isFinal(mod) || Modifier.isTransient(mod)) { return FieldOption.IGNORE; } @@ -201,17 +205,10 @@ private FieldOption getFieldOption(Field field, FieldOption from) { return from; } - // default mode: - // transient : Ignore - // public : NotNullable // FIXME - // others : Ignore - if (Modifier.isTransient(mod)) { - return FieldOption.IGNORE; - } else if(Modifier.isPublic(mod)) { - // FIXME primitive->NOTNULLABLE, otherwise->OPTIONAL + if (field.getType().isPrimitive()) { return FieldOption.NOTNULLABLE; } else { - return FieldOption.IGNORE; + return FieldOption.OPTIONAL; } } From c61fc23c6dc8f03147813819f8c7b6d13e5f35d6 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:24:59 +0900 Subject: [PATCH 080/409] changed behavior for packing/unpacking values of non-public fields --- .../template/builder/DefaultBuildContext.java | 157 ++++++++++++------ .../builder/JavassistTemplateBuilder.java | 14 +- 2 files changed, 112 insertions(+), 59 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 56c122784..a43c7d0d5 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -17,11 +17,16 @@ // package org.msgpack.template.builder; +import java.io.IOException; import java.lang.reflect.Constructor; +import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Modifier; import org.msgpack.*; +import org.msgpack.packer.Packer; import org.msgpack.template.*; +import org.msgpack.unpacker.Unpacker; import javassist.CannotCompileException; import javassist.CtClass; @@ -78,99 +83,149 @@ protected void buildMethodInit() { protected String buildWriteMethodBody() { resetStringBuilder(); - buildString("{"); + buildString("\n{\n"); - buildString("if($2 == null) {"); - buildString(" if($3) {"); - buildString(" throw new %s(\"Attempted to write null\");", MessageTypeException.class.getName()); - buildString(" }"); - buildString(" $1.writeNil();"); - buildString(" return;"); - buildString("}"); + buildString(" if ($2 == null) {\n"); + buildString(" if ($3) {\n"); + buildString(" throw new %s(\"Attempted to write null\");\n", MessageTypeException.class.getName()); + buildString(" }\n"); + buildString(" $1.writeNil();\n"); + buildString(" return;\n"); + buildString(" }\n"); - buildString("%s _$$_t = (%s) $2;", origName, origName); - buildString("$1.writeArrayBegin(%d);", entries.length); + buildString(" %s _$$_t = (%s) $2;\n", origName, origName); + buildString(" $1.writeArrayBegin(%d);\n", entries.length); for (int i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; if (!e.isAvailable()) { - buildString("$1.writeNil();"); + buildString(" $1.writeNil();\n"); continue; } - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("$1.%s(_$$_t.%s);", primitiveWriteName(type), - e.getName()); - } else { - buildString("if (_$$_t.%s == null) {", e.getName()); - if (e.isNotNullable()) { - buildString("throw new %s();", - MessageTypeException.class.getName()); + DefaultFieldEntry de = (DefaultFieldEntry) e; + boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); + Class type = de.getType(); + if (type.isPrimitive()) { // primitive types + if (!isPrivate) { + buildString(" $1.%s(_$$_t.%s);\n", primitiveWriteName(type), de.getName()); + } else { + buildString(" %s.writePrivateField($1, _$$_t, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getName(), i); + } + } else { // reference types + buildString(" if (_$$_t.%s == null) {\n", de.getName()); + if (de.isNotNullable()) { + buildString(" throw new %s();\n", MessageTypeException.class.getName()); + } else { + buildString(" $1.writeNil();\n"); + } + buildString(" } else {\n"); + if (!isPrivate) { + buildString(" templates[%d].write($1, _$$_t.%s);\n", i, de.getName()); + buildString(" }\n"); } else { - buildString("$1.writeNil();"); + buildString(" %s.writePrivateField($1, _$$_t, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getName(), i); } - buildString("} else {"); - buildString(" this.templates[%d].write($1, _$$_t.%s);", i, e.getName()); - buildString("}"); } } - buildString("$1.writeArrayEnd();"); - buildString("}"); + buildString(" $1.writeArrayEnd();\n"); + buildString("}\n"); return getBuiltString(); } + public static void writePrivateField(Packer packer, Object target, String fieldName, Template tmpl) { + try { + System.out.println("class name: " + target.getClass().getName()); + System.out.println("field name: " + fieldName); + Field field = target.getClass().getDeclaredField(fieldName); + field.setAccessible(true); + Object valueReference = field.get(target); + tmpl.write(packer, valueReference); + field.setAccessible(false); + } catch (Exception e) { + throw new MessageTypeException(e); + } + } + protected String buildReadMethodBody() { resetStringBuilder(); - buildString("{ "); - - buildString("if(!$3 && $1.trySkipNil()) {"); - buildString(" return null;"); - buildString("}"); + buildString("\n{\n"); - buildString("%s _$$_t;", origName); - buildString("if ($2 == null) {"); - buildString(" _$$_t = new %s();", origName); - buildString("} else {"); - buildString(" _$$_t = (%s) $2;", origName); - buildString("}"); + buildString(" if (!$3 && $1.trySkipNil()) {\n"); + buildString(" return null;\n"); + buildString(" }\n"); - buildString("$1.readArrayBegin();"); + buildString(" %s _$$_t;\n", origName); + buildString(" if ($2 == null) {\n"); + buildString(" _$$_t = new %s();\n", origName); + buildString(" } else {\n"); + buildString(" _$$_t = (%s) $2;\n", origName); + buildString(" }\n"); + buildString(" $1.readArrayBegin();\n"); int i; for (i = 0; i < entries.length; i++) { FieldEntry e = entries[i]; if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN + buildString(" $1.skip();\n"); continue; } if (e.isOptional()) { - buildString("if($1.trySkipNil()) {"); - buildString("_$$_t.%s = null;", e.getName()); - buildString("} else {"); + buildString(" if ($1.trySkipNil()) {"); + buildString(" _$$_t.%s = null;\n", e.getName()); + buildString(" } else {\n"); } - Class type = e.getType(); + DefaultFieldEntry de = (DefaultFieldEntry) e; + boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); + Class type = de.getType(); if (type.isPrimitive()) { - buildString("_$$_t.%s = $1.%s();", e.getName(), primitiveReadName(type)); + if (!isPrivate) { + buildString(" _$$_t.%s = $1.%s();\n", de.getName(), primitiveReadName(type)); + } else { + buildString(" %s.readPrivateField($1, _$$_t, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getName(), i); + } } else { - buildString("_$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);", - e.getName(), e.getJavaTypeName(), i, e.getName()); + if (!isPrivate) { + buildString(" _$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);\n", + de.getName(), de.getJavaTypeName(), i, de.getName()); + } else { + buildString(" %s.readPrivateField($1, _$$_t, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getName(), i); + } } - if (e.isOptional()) { - buildString("}"); + if (de.isOptional()) { + buildString(" }\n"); } } - buildString("$1.readArrayEnd();"); - buildString("return _$$_t;"); + buildString(" $1.readArrayEnd();\n"); + buildString(" return _$$_t;\n"); - buildString("}"); + buildString("}\n"); return getBuiltString(); } + public static void readPrivateField(Unpacker unpacker, Object target, String fieldName, Template tmpl) { + try { + Field field = target.getClass().getDeclaredField(fieldName); + field.setAccessible(true); + Object fieldReference = field.get(target); + Object valueReference = tmpl.read(unpacker, fieldReference); + if (valueReference != fieldReference) { + field.set(target, valueReference); + } + field.setAccessible(false); + } catch (Exception e) { + throw new MessageTypeException(e); + } + } + @Override public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] templates, String directoryName) { this.entries = entries; diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 7e55b642b..c6480a7a7 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -17,7 +17,10 @@ // package org.msgpack.template.builder; +import java.io.IOException; import java.lang.Thread; +import java.lang.reflect.Field; +import java.lang.reflect.Modifier; import java.lang.reflect.Type; import javassist.ClassPool; @@ -29,10 +32,13 @@ import org.slf4j.LoggerFactory; import org.msgpack.annotation.Message; import org.msgpack.annotation.MessagePackMessage; +import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldTemplate; +import org.msgpack.unpacker.Unpacker; public class JavassistTemplateBuilder extends AbstractTemplateBuilder { @@ -110,14 +116,6 @@ protected BuildContext createBuildContext() { @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - // FIXME private / packagefields - //for(FieldEntry e : entries) { - // Field f = e.getField(); - // int mod = f.getModifiers(); - // if(!Modifier.isPublic(mod)) { - // f.setAccessible(true); - // } - //} Template[] tmpls = toTemplate(entries); BuildContext bc = createBuildContext(); return bc.buildTemplate(targetClass, entries, tmpls); From c61f0d23e136c6ccb8d0cc40db0ed77d0dca8ddf Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:27:27 +0900 Subject: [PATCH 081/409] added test programs for checking the changed behavior: commit 69619a2f7515f162425dec0db9769fd5a15fb927 --- src/test/java/org/msgpack/TestSet.java | 16 +++++++-------- .../TestJavassistBufferPackBufferUnpack.java | 14 +++++++------ .../TestJavassistBufferPackConvert.java | 16 +++++++++------ .../TestJavassistBufferPackStreamUnpack.java | 13 ++++++------ .../TestJavassistStreamPackBufferUnpack.java | 15 ++++++++------ .../TestJavassistStreamPackConvert.java | 17 ++++++++++------ .../TestJavassistStreamPackStreamUnpack.java | 14 +++++++------ .../testclasses/ModifiersFieldsClass.java | 19 +++--------------- .../ModifiersFieldsClassNotNullable.java | 20 +++---------------- 9 files changed, 67 insertions(+), 77 deletions(-) diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index c4c3dbee8..8e6fc5a4e 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -25,7 +25,7 @@ public void testBoolean(boolean v) throws Exception { } public void testBooleanArray() throws Exception { - // FIXME testBooleanArray(null); + // FIXME testBooleanArray(null); testBooleanArray(new boolean[0]); testBooleanArray(new boolean[] { true }); testBooleanArray(new boolean[] { false }); @@ -278,7 +278,7 @@ public void testNil() throws Exception { } public void testString() throws Exception { - // TODO testString(null); + // TODO testString(null); testString(""); testString("a"); testString("ab"); @@ -340,7 +340,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { } public void testList() throws Exception { - // FIXME testList(null); + // TODO testList(null, Integer.class); List list0 = new ArrayList(); testList(list0, Integer.class); List list1 = new ArrayList(); @@ -367,7 +367,7 @@ public void testList(List v, Class elementClass) throws Exception { } public void testMap() throws Exception { - // FIXME testMap(null); + // TODO testMap(null, Integer.class, Integer.class); Map map0 = new HashMap(); testMap(map0, Integer.class, Integer.class); Map map1 = new HashMap(); @@ -394,7 +394,7 @@ public void testMap(Map v, Class keyElementClass, Class value } public void testBigInteger() throws Exception { - // FIXME testBigInteger(null); + // TODO testBigInteger(null); testBigInteger(BigInteger.valueOf(0)); testBigInteger(BigInteger.valueOf(-1)); testBigInteger(BigInteger.valueOf(1)); @@ -414,7 +414,7 @@ public void testBigInteger(BigInteger v) throws Exception { } public void testBigDecimal() throws Exception { - // FIXME testBigDecimal(null); + testBigDecimal(null); testBigDecimal(BigDecimal.valueOf(0)); testBigDecimal(BigDecimal.valueOf(-1)); testBigDecimal(BigDecimal.valueOf(1)); @@ -422,14 +422,14 @@ public void testBigDecimal() throws Exception { testBigDecimal(BigDecimal.valueOf(Integer.MAX_VALUE)); testBigDecimal(BigDecimal.valueOf(Long.MIN_VALUE)); testBigDecimal(BigDecimal.valueOf(Long.MAX_VALUE)); - // TODO + // TODO for next version #MN } public void testBigDecimal(BigDecimal v) throws Exception { } public void testDate() throws Exception { - // FIXME testDate(null); + testDate(null); Date d0 = new Date(); testDate(d0); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 23c072e2a..8d604b925 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -255,12 +255,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index c897864ec..a0e8cfb66 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -277,12 +277,16 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java index ef515e611..66324b396 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java @@ -247,12 +247,13 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java index 0fc169b2e..8d985e465 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java @@ -267,12 +267,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java index 2744a46d2..5bfe25247 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java @@ -289,12 +289,17 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java index d2a88b2da..5a2fdc4ba 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java @@ -258,12 +258,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); } @Test @Override diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index 7557ca3fa..5e0a57c8d 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -9,13 +9,11 @@ public class ModifiersFieldsClass { public int f0; - public final int f1 = 1; + private int f1; - private int f2; + protected int f2; - protected int f3; - - int f4; + int f3; public ModifiersFieldsClass() {} @@ -43,14 +41,6 @@ public void setF3(int f3) { this.f3 = f3; } - public int getF4() { - return f4; - } - - public void setF4(int f4) { - this.f4 = f4; - } - @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClass)) { @@ -69,9 +59,6 @@ public boolean equals(Object o) { if (f3 != that.f3) { return false; } - if (f4 != that.f4) { - return false; - } return true; } } diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index 2b33518de..33984e829 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -12,16 +12,13 @@ public class ModifiersFieldsClassNotNullable { public int f0; @NotNullable - public final int f1 = 1; + private int f1; @NotNullable - private int f2; + protected int f2; @NotNullable - protected int f3; - - @NotNullable - int f4; + int f3; public ModifiersFieldsClassNotNullable() {} @@ -49,14 +46,6 @@ public void setF3(int f3) { this.f3 = f3; } - public int getF4() { - return f4; - } - - public void setF4(int f4) { - this.f4 = f4; - } - @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClassNotNullable)) { @@ -75,9 +64,6 @@ public boolean equals(Object o) { if (f3 != that.f3) { return false; } - if (f4 != that.f4) { - return false; - } return true; } } From d0635e77afde2492c9fd3ea9582af2e495bc5584 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:28:55 +0900 Subject: [PATCH 082/409] deleted debug codes in DefaultBuildContext.java --- .../java/org/msgpack/template/builder/DefaultBuildContext.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index a43c7d0d5..91d761133 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -137,8 +137,6 @@ protected String buildWriteMethodBody() { public static void writePrivateField(Packer packer, Object target, String fieldName, Template tmpl) { try { - System.out.println("class name: " + target.getClass().getName()); - System.out.println("field name: " + fieldName); Field field = target.getClass().getDeclaredField(fieldName); field.setAccessible(true); Object valueReference = field.get(target); From 538fa29044e72e1f36a25b8d2a160cc4569c94b8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:44:03 +0900 Subject: [PATCH 083/409] renamed test programs --- .../msgpack/TestBufferPackStreamUnpack.java | 252 ---------- .../msgpack/TestStreamPackBufferUnpack.java | 265 ----------- .../org/msgpack/TestStreamPackConvert.java | 293 ------------ .../msgpack/TestStreamPackStreamUnpack.java | 261 ----------- .../template/TestBigDecimalTemplate.java | 18 +- .../template/TestBigIntegerTemplate.java | 18 +- .../template/TestBooleanArrayTemplate.java | 48 +- .../msgpack/template/TestBooleanTemplate.java | 18 +- .../template/TestByteArrayTemplate.java | 18 +- .../template/TestByteBufferTemplate.java | 18 +- .../msgpack/template/TestDateTemplate.java | 18 +- .../template/TestDoubleArrayTemplate.java | 48 +- .../msgpack/template/TestDoubleTemplate.java | 18 +- .../template/TestFloatArrayTemplate.java | 48 +- .../msgpack/template/TestFloatTemplate.java | 18 +- .../template/TestIntegerArrayTemplate.java | 48 +- .../msgpack/template/TestIntegerTemplate.java | 18 +- .../msgpack/template/TestListTemplate.java | 18 +- .../template/TestLongArrayTemplate.java | 48 +- .../msgpack/template/TestLongTemplate.java | 18 +- .../org/msgpack/template/TestMapTemplate.java | 18 +- .../template/TestShortArrayTemplate.java | 48 +- .../msgpack/template/TestShortTemplate.java | 18 +- .../msgpack/template/TestStringTemplate.java | 18 +- ...BeansReflectionBufferPackStreamUnpack.java | 367 --------------- ...BeansReflectionStreamPackBufferUnpack.java | 401 ---------------- .../TestBeansReflectionStreamPackConvert.java | 437 ------------------ ...BeansReflectionStreamPackStreamUnpack.java | 385 --------------- .../TestJavassistBufferPackStreamUnpack.java | 367 --------------- .../TestJavassistStreamPackBufferUnpack.java | 401 ---------------- .../TestJavassistStreamPackConvert.java | 437 ------------------ .../TestJavassistStreamPackStreamUnpack.java | 385 --------------- .../TestReflectionBufferPackStreamUnpack.java | 367 --------------- ...tionOrdinalEnumBufferPackStreamUnpack.java | 58 --- ...tionOrdinalEnumStreamPackBufferUnpack.java | 62 --- ...eflectionOrdinalEnumStreamPackConvert.java | 68 --- ...tionOrdinalEnumStreamPackStreamUnpack.java | 61 --- .../TestReflectionStreamPackBufferUnpack.java | 401 ---------------- .../TestReflectionStreamPackConvert.java | 437 ------------------ .../TestReflectionStreamPackStreamUnpack.java | 385 --------------- 40 files changed, 270 insertions(+), 6360 deletions(-) delete mode 100644 src/test/java/org/msgpack/TestBufferPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/TestStreamPackBufferUnpack.java delete mode 100644 src/test/java/org/msgpack/TestStreamPackConvert.java delete mode 100644 src/test/java/org/msgpack/TestStreamPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java delete mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java diff --git a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java b/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java deleted file mode 100644 index ab5d01d19..000000000 --- a/src/test/java/org/msgpack/TestBufferPackStreamUnpack.java +++ /dev/null @@ -1,252 +0,0 @@ -package org.msgpack; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; - -import java.io.ByteArrayInputStream; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.junit.Test; -import org.msgpack.packer.BufferPacker; -import org.msgpack.unpacker.Unpacker; - - -public class TestBufferPackStreamUnpack extends TestSet { - - @Test @Override - public void testBoolean() throws Exception { - super.testBoolean(); - } - - @Override - public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - boolean ret = unpacker.readBoolean(); - assertEquals(v, ret); - } - - @Test @Override - public void testByte() throws Exception { - super.testByte(); - } - - @Override - public void testByte(byte v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - byte ret = unpacker.readByte(); - assertEquals(v, ret); - } - - @Test @Override - public void testShort() throws Exception { - super.testShort(); - } - - @Override - public void testShort(short v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - short ret = unpacker.readShort(); - assertEquals(v, ret); - } - - @Test @Override - public void testInteger() throws Exception { - super.testInteger(); - } - - @Override - public void testInteger(int v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - int ret = unpacker.readInt(); - assertEquals(v, ret); - } - - @Test @Override - public void testLong() throws Exception { - super.testLong(); - } - - @Override - public void testLong(long v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - long ret = unpacker.readLong(); - assertEquals(v, ret); - } - - @Test @Override - public void testFloat() throws Exception { - super.testFloat(); - } - - @Override - public void testFloat(float v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeFloat(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - float ret = unpacker.readFloat(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testDouble() throws Exception { - super.testDouble(); - } - - @Override - public void testDouble(double v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeDouble(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - double ret = unpacker.readDouble(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testNil() throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeNil(); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - unpacker.readNil(); - } - - @Test @Override - public void testBigInteger() throws Exception { - super.testBigInteger(); - } - - @Override - public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - BigInteger ret = unpacker.readBigInteger(); - assertEquals(v, ret); - } - - @Test @Override - public void testString() throws Exception { - super.testString(); - } - - @Override - public void testString(String v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = unpacker.readString(); - assertEquals(v, ret); - } - - @Test @Override - public void testByteArray() throws Exception { - super.testByteArray(); - } - - @Override - public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByteArray(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - byte[] ret = unpacker.readByteArray(); - assertArrayEquals(v, ret); - } - - @Test @Override - public void testList() throws Exception { - super.testList(); - } - - @Override - public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } - } - - @Test @Override - public void testMap() throws Exception { - super.testMap(); - } - - @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } - } -} diff --git a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java b/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java deleted file mode 100644 index 5c9a465c4..000000000 --- a/src/test/java/org/msgpack/TestStreamPackBufferUnpack.java +++ /dev/null @@ -1,265 +0,0 @@ -package org.msgpack; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; - -import java.io.ByteArrayOutputStream; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.junit.Test; -import org.msgpack.packer.Packer; -import org.msgpack.unpacker.BufferUnpacker; - - -public class TestStreamPackBufferUnpack extends TestSet { - - @Test @Override - public void testBoolean() throws Exception { - super.testBoolean(); - } - - @Override - public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - boolean ret = unpacker.readBoolean(); - assertEquals(v, ret); - } - - @Test @Override - public void testByte() throws Exception { - super.testByte(); - } - - @Override - public void testByte(byte v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByte(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - byte ret = unpacker.readByte(); - assertEquals(v, ret); - } - - @Test @Override - public void testShort() throws Exception { - super.testShort(); - } - - @Override - public void testShort(short v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeShort(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - short ret = unpacker.readShort(); - assertEquals(v, ret); - } - - @Test @Override - public void testInteger() throws Exception { - super.testInteger(); - } - - @Override - public void testInteger(int v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeInt(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - int ret = unpacker.readInt(); - assertEquals(v, ret); - } - - @Test @Override - public void testLong() throws Exception { - super.testLong(); - } - - @Override - public void testLong(long v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeLong(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - long ret = unpacker.readLong(); - assertEquals(v, ret); - } - - @Test @Override - public void testFloat() throws Exception { - super.testFloat(); - } - - @Override - public void testFloat(float v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - float ret = unpacker.readFloat(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testDouble() throws Exception { - super.testDouble(); - } - - @Override - public void testDouble(double v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - double ret = unpacker.readDouble(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testNil() throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeNil(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - unpacker.readNil(); - } - - @Test @Override - public void testBigInteger() throws Exception { - super.testBigInteger(); - } - - @Override - public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - BigInteger ret = unpacker.readBigInteger(); - assertEquals(v, ret); - } - - @Test @Override - public void testString() throws Exception { - super.testString(); - } - - @Override - public void testString(String v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeString(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = unpacker.readString(); - assertEquals(v, ret); - } - - @Test @Override - public void testByteArray() throws Exception { - super.testByteArray(); - } - - @Override - public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - byte[] ret = unpacker.readByteArray(); - assertArrayEquals(v, ret); - } - - @Test @Override - public void testList() throws Exception { - super.testList(); - } - - @Override - public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } - } - - @Test @Override - public void testMap() throws Exception { - super.testMap(); - } - - @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } - } -} diff --git a/src/test/java/org/msgpack/TestStreamPackConvert.java b/src/test/java/org/msgpack/TestStreamPackConvert.java deleted file mode 100644 index 84096704d..000000000 --- a/src/test/java/org/msgpack/TestStreamPackConvert.java +++ /dev/null @@ -1,293 +0,0 @@ -package org.msgpack; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertTrue; - -import java.io.ByteArrayOutputStream; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.junit.Test; -import org.msgpack.packer.Packer; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; -import org.msgpack.type.Value; - - -public class TestStreamPackConvert extends TestSet { - - @Test @Override - public void testBoolean() throws Exception { - super.testBoolean(); - } - - @Override - public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isBoolean()); - boolean ret = new Converter(value).readBoolean(); - assertEquals(v, ret); - } - - @Test @Override - public void testByte() throws Exception { - super.testByte(); - } - - @Override - public void testByte(byte v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByte(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isInteger()); - byte ret = new Converter(value).readByte(); - assertEquals(v, ret); - } - - @Test @Override - public void testShort() throws Exception { - super.testShort(); - } - - @Override - public void testShort(short v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeShort(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isInteger()); - short ret = new Converter(value).readShort(); - assertEquals(v, ret); - } - - @Test @Override - public void testInteger() throws Exception { - super.testInteger(); - } - - @Override - public void testInteger(int v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeInt(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isInteger()); - int ret = new Converter(value).readInt(); - assertEquals(v, ret); - } - - @Test @Override - public void testLong() throws Exception { - super.testLong(); - } - - @Override - public void testLong(long v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeLong(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isInteger()); - long ret = new Converter(value).readLong(); - assertEquals(v, ret); - } - - @Test @Override - public void testFloat() throws Exception { - super.testFloat(); - } - - @Override - public void testFloat(float v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isFloat()); - float ret = new Converter(value).readFloat(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testDouble() throws Exception { - super.testDouble(); - } - - @Override - public void testDouble(double v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isFloat()); - double ret = new Converter(value).readDouble(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testNil() throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeNil(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isNil()); - new Converter(value).readNil(); - } - - @Test @Override - public void testBigInteger() throws Exception { - super.testBigInteger(); - } - - @Override - public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isInteger()); - BigInteger ret = new Converter(value).readBigInteger(); - assertEquals(v, ret); - } - - @Test @Override - public void testString() throws Exception { - super.testString(); - } - - @Override - public void testString(String v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeString(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isRaw()); - String ret = new Converter(value).readString(); - assertEquals(v, ret); - } - - @Test @Override - public void testByteArray() throws Exception { - super.testByteArray(); - } - - @Override - public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - Value value = unpacker.readValue(); - assertTrue(value.isRaw()); - byte[] ret = new Converter(value).readByteArray(); - assertArrayEquals(v, ret); - } - - @Test @Override - public void testList() throws Exception { - super.testList(); - } - - @Override - public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - Value value = unpacker.readValue(); - ret.add(new Converter(value).read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } - } - - @Test @Override - public void testMap() throws Exception { - super.testMap(); - } - - @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Value keyValue = unpacker.readValue(); - Object key = new Converter(keyValue).read(keyElementClass); - Value valueValue = unpacker.readValue(); - Object value = new Converter(valueValue).read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } - } -} diff --git a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java b/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java deleted file mode 100644 index 41b9eb63d..000000000 --- a/src/test/java/org/msgpack/TestStreamPackStreamUnpack.java +++ /dev/null @@ -1,261 +0,0 @@ -package org.msgpack; - -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; - -import org.junit.Test; -import org.msgpack.packer.Packer; -import org.msgpack.unpacker.Unpacker; - - -public class TestStreamPackStreamUnpack extends TestSet { - - @Test @Override - public void testBoolean() throws Exception { - super.testBoolean(); - } - - @Override - public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - boolean ret = unpacker.readBoolean(); - assertEquals(v, ret); - } - - @Test @Override - public void testByte() throws Exception { - super.testByte(); - } - - @Override - public void testByte(byte v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByte(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - byte ret = unpacker.readByte(); - assertEquals(v, ret); - } - - @Test @Override - public void testShort() throws Exception { - super.testShort(); - } - - @Override - public void testShort(short v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeShort(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - short ret = unpacker.readShort(); - assertEquals(v, ret); - } - - @Test @Override - public void testInteger() throws Exception { - super.testInteger(); - } - - @Override - public void testInteger(int v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeInt(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - int ret = unpacker.readInt(); - assertEquals(v, ret); - } - - @Test @Override - public void testLong() throws Exception { - super.testLong(); - } - - @Override - public void testLong(long v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeLong(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - long ret = unpacker.readLong(); - assertEquals(v, ret); - } - - @Override - public void testFloat(float v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - float ret = unpacker.readFloat(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testDouble() throws Exception { - super.testDouble(); - } - - @Override - public void testDouble(double v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - double ret = unpacker.readDouble(); - assertEquals(v, ret, 10e-10); - } - - @Test @Override - public void testNil() throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeNil(); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - unpacker.readNil(); - } - - @Test @Override - public void testBigInteger() throws Exception { - super.testBigInteger(); - } - - @Override - public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - BigInteger ret = unpacker.readBigInteger(); - assertEquals(v, ret); - } - - @Test @Override - public void testString() throws Exception { - super.testString(); - } - - @Override - public void testString(String v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeString(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - String ret = unpacker.readString(); - assertEquals(v, ret); - } - - @Test @Override - public void testByteArray() throws Exception { - super.testByteArray(); - } - - @Override - public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - byte[] ret = unpacker.readByteArray(); - assertArrayEquals(v, ret); - } - - @Test @Override - public void testList() throws Exception { - super.testList(); - } - - @Override - public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } - } - - @Test @Override - public void testMap() throws Exception { - super.testMap(); - } - - @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Unpacker unpacker = msgpack.createUnpacker(in); - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } - } -} diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index d1bfde997..1ff2c71af 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -18,13 +18,13 @@ public class TestBigDecimalTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testBigDecimal(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testBigDecimal(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testBigDecimal(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testBigDecimal(); } @Test @@ -33,11 +33,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testBigDecimal(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testBigDecimal(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testBigDecimal() throws Exception { super.testBigDecimal(); @@ -57,7 +57,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testBigDecimal() throws Exception { super.testBigDecimal(); @@ -96,7 +96,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testBigDecimal() throws Exception { super.testBigDecimal(); diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 86822165c..645c69d46 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -18,13 +18,13 @@ public class TestBigIntegerTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testBigInteger(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testBigInteger(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testBigInteger(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testBigInteger(); } @Test @@ -33,11 +33,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testBigInteger(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testBigInteger(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testBigInteger() throws Exception { super.testBigInteger(); @@ -57,7 +57,7 @@ public void testBigInteger(BigInteger v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testBigInteger() throws Exception { super.testBigInteger(); @@ -96,7 +96,7 @@ public void testBigInteger(BigInteger v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testBigInteger() throws Exception { super.testBigInteger(); diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index ed9749283..cbf6b7506 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -17,33 +17,33 @@ public class TestBooleanArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testBooleanArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testBooleanArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testBooleanArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testBooleanArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testBooleanArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testBooleanArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testBooleanArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testBooleanArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testBooleanArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testBooleanArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testBooleanArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testBooleanArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testBooleanArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testBooleanArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testBooleanArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testBooleanArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testBooleanArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testBooleanArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testBooleanArray(boolean[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -204,10 +204,10 @@ public void testBooleanArray(boolean[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index 0739d8111..de3e5efd8 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -17,13 +17,13 @@ public class TestBooleanTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testBoolean(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testBoolean(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testBoolean(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testBoolean(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testBoolean(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testBoolean(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testBoolean() throws Exception { super.testBoolean(); @@ -56,7 +56,7 @@ public void testBoolean(boolean v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testBoolean() throws Exception { super.testBoolean(); @@ -95,7 +95,7 @@ public void testBoolean(boolean v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testBoolean() throws Exception { super.testBoolean(); diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index 1d3910f4a..ffe815798 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -17,13 +17,13 @@ public class TestByteArrayTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testByteArray(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testByteArray(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testByteArray(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testByteArray(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testByteArray(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testByteArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testByteArray() throws Exception { super.testByteArray(); @@ -59,7 +59,7 @@ public void testByteArray(byte[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testByteArray() throws Exception { super.testByteArray(); @@ -104,7 +104,7 @@ public void testByteArray(byte[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testByteArray() throws Exception { super.testByteArray(); diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 4b2150adf..4328ca6e2 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -24,13 +24,13 @@ private static byte[] toByteArray(ByteBuffer from) { } @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testByteBuffer(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testByteBuffer(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testByteBuffer(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testByteBuffer(); } @Test @@ -39,11 +39,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testByteBuffer(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testByteBuffer(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testByteBuffer() throws Exception { super.testByteBuffer(); @@ -63,7 +63,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testByteBuffer() throws Exception { super.testByteBuffer(); @@ -102,7 +102,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testByteBuffer() throws Exception { super.testByteBuffer(); diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index b28022eac..dfe52d4fa 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -18,13 +18,13 @@ public class TestDateTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testDate(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testDate(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testDate(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testDate(); } @Test @@ -33,11 +33,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testDate(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testDate(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testDate() throws Exception { super.testDate(); @@ -57,7 +57,7 @@ public void testDate(Date v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testDate() throws Exception { super.testDate(); @@ -96,7 +96,7 @@ public void testDate(Date v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testDate() throws Exception { super.testDate(); diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index 9082878ff..9e52a08c2 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -17,33 +17,33 @@ public class TestDoubleArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testDoubleArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testDoubleArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testDoubleArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testDoubleArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testDoubleArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testDoubleArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testDoubleArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testDoubleArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testDoubleArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testDoubleArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testDoubleArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testDoubleArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testDoubleArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testDoubleArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testDoubleArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testDoubleArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testDoubleArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testDoubleArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testDoubleArray(double[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -204,10 +204,10 @@ public void testDoubleArray(double[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index 651370e6d..da922292c 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -17,13 +17,13 @@ public class TestDoubleTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testDouble(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testDouble(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testDouble(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testDouble(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testDouble(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testDouble(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testDouble() throws Exception { super.testDouble(); @@ -56,7 +56,7 @@ public void testDouble(double v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testDouble() throws Exception { super.testDouble(); @@ -95,7 +95,7 @@ public void testDouble(double v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testDouble() throws Exception { super.testDouble(); diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index 948aa079f..e4b02493f 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -17,33 +17,33 @@ public class TestFloatArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testFloatArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testFloatArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testFloatArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testFloatArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testFloatArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testFloatArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testFloatArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testFloatArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testFloatArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testFloatArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testFloatArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testFloatArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testFloatArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testFloatArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testFloatArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testFloatArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testFloatArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testFloatArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testFloatArray(float[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -205,10 +205,10 @@ public void testFloatArray(float[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index 2b5a51fdb..d05570db5 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -17,13 +17,13 @@ public class TestFloatTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testFloat(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testFloat(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testFloat(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testFloat(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testFloat(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testFloat(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testFloat() throws Exception { super.testFloat(); @@ -56,7 +56,7 @@ public void testFloat(float v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testFloat() throws Exception { super.testFloat(); @@ -95,7 +95,7 @@ public void testFloat(float v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testFloat() throws Exception { super.testFloat(); diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 65447dd6f..295c583b8 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -17,33 +17,33 @@ public class TestIntegerArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testIntegerArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testIntegerArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testIntegerArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testIntegerArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testIntegerArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testIntegerArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testIntegerArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testIntegerArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testIntegerArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testIntegerArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testIntegerArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testIntegerArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testIntegerArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testIntegerArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testIntegerArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testIntegerArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testIntegerArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testIntegerArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testIntegerArray(int[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -204,10 +204,10 @@ public void testIntegerArray(int[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index ea2381c08..37d69c2bf 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -17,13 +17,13 @@ public class TestIntegerTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testInteger(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testInteger(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testInteger(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testInteger(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testInteger(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testInteger(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testInteger() throws Exception { super.testInteger(); @@ -56,7 +56,7 @@ public void testInteger(int v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testInteger() throws Exception { super.testInteger(); @@ -95,7 +95,7 @@ public void testInteger(int v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testInteger() throws Exception { super.testInteger(); diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 8e3a88c07..d43d4baf7 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -20,13 +20,13 @@ public class TestListTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testList(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testList(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testList(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testList(); } @Test @@ -35,11 +35,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testList(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testList(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testList() throws Exception { super.testList(); @@ -60,7 +60,7 @@ public void testList(List v, Class elementClass) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testList() throws Exception { super.testList(); @@ -101,7 +101,7 @@ public void testList(List v, Class elementClass) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testList() throws Exception { super.testList(); diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index 0a35702f5..c07d63151 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -17,33 +17,33 @@ public class TestLongArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testLongArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testLongArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testLongArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testLongArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testLongArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testLongArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testLongArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testLongArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testLongArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testLongArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testLongArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testLongArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testLongArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testLongArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testLongArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testLongArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testLongArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testLongArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testLongArray(long[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -204,10 +204,10 @@ public void testLongArray(long[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index 5b7189343..fcce409aa 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -17,13 +17,13 @@ public class TestLongTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testLong(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testLong(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testLong(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testLong(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testLong(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testLong(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testLong() throws Exception { super.testLong(); @@ -56,7 +56,7 @@ public void testLong(long v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testLong() throws Exception { super.testLong(); @@ -95,7 +95,7 @@ public void testLong(long v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testLong() throws Exception { super.testLong(); diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index c744f563c..cb44a602c 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -21,13 +21,13 @@ public class TestMapTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testMap(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testMap(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testMap(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testMap(); } @Test @@ -36,11 +36,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testMap(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testMap(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testMap() throws Exception { super.testMap(); @@ -62,7 +62,7 @@ public void testMap(Map v, Class keyElementClass, Class value } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testMap() throws Exception { super.testMap(); @@ -105,7 +105,7 @@ public void testMap(Map v, Class keyElementClass, Class value } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testMap() throws Exception { super.testMap(); diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index ebcc265d5..888531acc 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -17,33 +17,33 @@ public class TestShortArrayTemplate { @Test - public void testStreamPackStreamUnpack00() throws Exception { - new TestStreamPackStreamUnpack(0).testShortArray(); + public void testPackUnpack00() throws Exception { + new TestPackUnpack(0).testShortArray(); } @Test - public void testStreamPackStreamUnpack01() throws Exception { - new TestStreamPackStreamUnpack(1).testShortArray(); + public void testPackUnpack01() throws Exception { + new TestPackUnpack(1).testShortArray(); } @Test - public void testStreamPackStreamUnpack02() throws Exception { - new TestStreamPackStreamUnpack(2).testShortArray(); + public void testPackUnpack02() throws Exception { + new TestPackUnpack(2).testShortArray(); } @Test - public void testStreamPackBufferUnpack00() throws Exception { - new TestStreamPackBufferUnpack(0).testShortArray(); + public void testPackBufferUnpack00() throws Exception { + new TestPackBufferUnpack(0).testShortArray(); } @Test - public void testStreamPackBufferUnpack01() throws Exception { - new TestStreamPackBufferUnpack(1).testShortArray(); + public void testPackBufferUnpack01() throws Exception { + new TestPackBufferUnpack(1).testShortArray(); } @Test - public void testStreamPackBufferUnpack02() throws Exception { - new TestStreamPackBufferUnpack(2).testShortArray(); + public void testPackBufferUnpack02() throws Exception { + new TestPackBufferUnpack(2).testShortArray(); } @Test @@ -62,24 +62,24 @@ public void testBufferPackBufferUnpack02() throws Exception { } @Test - public void testBufferPackStreamUnpack00() throws Exception { - new TestBufferPackStreamUnpack(0).testShortArray(); + public void testBufferPackUnpack00() throws Exception { + new TestBufferPackUnpack(0).testShortArray(); } @Test - public void testBufferPackStreamUnpack01() throws Exception { - new TestBufferPackStreamUnpack(1).testShortArray(); + public void testBufferPackUnpack01() throws Exception { + new TestBufferPackUnpack(1).testShortArray(); } @Test - public void testBufferPackStreamUnpack02() throws Exception { - new TestBufferPackStreamUnpack(2).testShortArray(); + public void testBufferPackUnpack02() throws Exception { + new TestBufferPackUnpack(2).testShortArray(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { private int index; - TestStreamPackStreamUnpack(int i) { + TestPackUnpack(int i) { index = i; } @@ -119,10 +119,10 @@ public void testShortArray(short[] v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { private int index; - TestStreamPackBufferUnpack(int i) { + TestPackBufferUnpack(int i) { index = i; } @@ -204,10 +204,10 @@ public void testShortArray(short[] v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { private int index; - TestBufferPackStreamUnpack(int i) { + TestBufferPackUnpack(int i) { index = i; } diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index a4f793559..19b3a7fb5 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -17,13 +17,13 @@ public class TestShortTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testShort(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testShort(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testShort(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testShort(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testShort(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testShort(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testShort() throws Exception { super.testShort(); @@ -56,7 +56,7 @@ public void testShort(short v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testShort() throws Exception { super.testShort(); @@ -95,7 +95,7 @@ public void testShort(short v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testShort() throws Exception { super.testShort(); diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index 2c5dbb14c..18a2592ad 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -17,13 +17,13 @@ public class TestStringTemplate { @Test - public void testStreamPackStreamUnpack() throws Exception { - new TestStreamPackStreamUnpack().testString(); + public void testPackUnpack() throws Exception { + new TestPackUnpack().testString(); } @Test - public void testStreamPackBufferUnpack() throws Exception { - new TestStreamPackBufferUnpack().testString(); + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testString(); } @Test @@ -32,11 +32,11 @@ public void testBufferPackBufferUnpack() throws Exception { } @Test - public void testBufferPackStreamUnpack() throws Exception { - new TestBufferPackStreamUnpack().testString(); + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testString(); } - private static class TestStreamPackStreamUnpack extends TestSet { + private static class TestPackUnpack extends TestSet { @Test @Override public void testString() throws Exception { super.testString(); @@ -56,7 +56,7 @@ public void testString(String v) throws Exception { } } - private static class TestStreamPackBufferUnpack extends TestSet { + private static class TestPackBufferUnpack extends TestSet { @Test @Override public void testString() throws Exception { super.testString(); @@ -95,7 +95,7 @@ public void testString(String v) throws Exception { } } - private static class TestBufferPackStreamUnpack extends TestSet { + private static class TestBufferPackUnpack extends TestSet { @Test @Override public void testString() throws Exception { super.testString(); diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java deleted file mode 100644 index 7cd291274..000000000 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackStreamUnpack.java +++ /dev/null @@ -1,367 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.BufferPacker; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestBeansReflectionBufferPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java deleted file mode 100644 index 0a14ebba0..000000000 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackBufferUnpack.java +++ /dev/null @@ -1,401 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.BufferUnpacker; - - -public class TestBeansReflectionStreamPackBufferUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java deleted file mode 100644 index 707b44dc3..000000000 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackConvert.java +++ /dev/null @@ -1,437 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.type.Value; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; - - -public class TestBeansReflectionStreamPackConvert extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java deleted file mode 100644 index 94240c51c..000000000 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionStreamPackStreamUnpack.java +++ /dev/null @@ -1,385 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestBeansReflectionStreamPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java deleted file mode 100644 index 66324b396..000000000 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackStreamUnpack.java +++ /dev/null @@ -1,367 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.BufferPacker; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestJavassistBufferPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java deleted file mode 100644 index 8d985e465..000000000 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackBufferUnpack.java +++ /dev/null @@ -1,401 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.BufferUnpacker; - - -public class TestJavassistStreamPackBufferUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java deleted file mode 100644 index 5bfe25247..000000000 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackConvert.java +++ /dev/null @@ -1,437 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.type.Value; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; - - -public class TestJavassistStreamPackConvert extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java deleted file mode 100644 index 5a2fdc4ba..000000000 --- a/src/test/java/org/msgpack/template/builder/TestJavassistStreamPackStreamUnpack.java +++ /dev/null @@ -1,385 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestJavassistStreamPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java deleted file mode 100644 index c71ae9c39..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackStreamUnpack.java +++ /dev/null @@ -1,367 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.BufferPacker; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestReflectionBufferPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java deleted file mode 100644 index d06bf60c5..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackStreamUnpack.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; - -import java.io.ByteArrayInputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.BufferPacker; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.EnumTypeFieldsClass; -import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestReflectionOrdinalEnumBufferPackStreamUnpack extends TestSet { - - @Test @Override - public void testEnumTypeFieldsClass() throws Exception { - super.testEnumTypeFieldsClass(); - } - - @Override - public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testEnumTypeFieldsClassNotNullable() throws Exception { - super.testEnumTypeFieldsClassNotNullable(); - } - - @Override - public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java deleted file mode 100644 index 30a45875e..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackBufferUnpack.java +++ /dev/null @@ -1,62 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.EnumTypeFieldsClass; -import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.unpacker.BufferUnpacker; - - -public class TestReflectionOrdinalEnumStreamPackBufferUnpack extends TestSet { - - @Test @Override - public void testEnumTypeFieldsClass() throws Exception { - super.testEnumTypeFieldsClass(); - } - - @Override - public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testEnumTypeFieldsClassNotNullable() throws Exception { - super.testEnumTypeFieldsClassNotNullable(); - } - - @Override - public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java deleted file mode 100644 index 27e679b7b..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackConvert.java +++ /dev/null @@ -1,68 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.EnumTypeFieldsClass; -import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.type.Value; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; - - -public class TestReflectionOrdinalEnumStreamPackConvert extends TestSet { - - @Test @Override - public void testEnumTypeFieldsClass() throws Exception { - super.testEnumTypeFieldsClass(); - } - - @Override - public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testEnumTypeFieldsClassNotNullable() throws Exception { - super.testEnumTypeFieldsClassNotNullable(); - } - - @Override - public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java deleted file mode 100644 index 02bf10906..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumStreamPackStreamUnpack.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.EnumTypeFieldsClass; -import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestReflectionOrdinalEnumStreamPackStreamUnpack extends TestSet { - - @Test @Override - public void testEnumTypeFieldsClass() throws Exception { - super.testEnumTypeFieldsClass(); - } - - @Override - public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - EnumTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testEnumTypeFieldsClassNotNullable() throws Exception { - super.testEnumTypeFieldsClassNotNullable(); - } - - @Override - public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java deleted file mode 100644 index d0ac9031a..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackBufferUnpack.java +++ /dev/null @@ -1,401 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.BufferUnpacker; - - -public class TestReflectionStreamPackBufferUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java deleted file mode 100644 index 7ef8e9a2c..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackConvert.java +++ /dev/null @@ -1,437 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.type.Value; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; - - -public class TestReflectionStreamPackConvert extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); - u.wrap(bytes); - Value value = u.readValue(); - Converter unpacker = new Converter(value); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java deleted file mode 100644 index 57acab0fe..000000000 --- a/src/test/java/org/msgpack/template/builder/TestReflectionStreamPackStreamUnpack.java +++ /dev/null @@ -1,385 +0,0 @@ -package org.msgpack.template.builder; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; - -import org.junit.Test; -import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; -import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.Template; -import org.msgpack.testclasses.AbstractClass; -import org.msgpack.testclasses.FinalClass; -import org.msgpack.testclasses.InheritanceClass; -import org.msgpack.testclasses.InheritanceClassNotNullable; -import org.msgpack.testclasses.Interface; -import org.msgpack.testclasses.ListTypeFieldsClass; -import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MapTypeFieldsClass; -import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; -import org.msgpack.testclasses.MessagePackableTypeFieldsClass; -import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ModifiersFieldsClass; -import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; -import org.msgpack.testclasses.PrimitiveTypeFieldsClass; -import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; -import org.msgpack.testclasses.ReferenceTypeFieldsClass; -import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; -import org.msgpack.testclasses.UserDefinedTypeFieldsClass; -import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; -import org.msgpack.unpacker.Unpacker; - - -public class TestReflectionStreamPackStreamUnpack extends TestSet { - - @Test @Override - public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); - } - - @Override - public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); - } - - @Override - public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testFinalClass() throws Exception { - super.testFinalClass(); - } - - @Override - public void testFinalClass(FinalClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(FinalClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(AbstractClass.class); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - try { - builder.buildTemplate(Interface.class); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof TemplateBuildException); - } - } - - @Test @Override - public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); - } - - @Override - public void testInheritanceClass(InheritanceClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - TemplateRegistry registry = new TemplateRegistry(); - ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); - Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); - tmpl.write(packer, v); - byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } - -} From 39c7fa7f5e5a0899cc088af87c2902447f7ffb00 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 04:45:51 +0900 Subject: [PATCH 084/409] renamed test programs v2 --- .../org/msgpack/TestBufferPackUnpack.java | 252 ++++++++++ .../org/msgpack/TestPackBufferUnpack.java | 265 +++++++++++ .../java/org/msgpack/TestPackConvert.java | 293 ++++++++++++ src/test/java/org/msgpack/TestPackUnpack.java | 261 +++++++++++ .../TestBeansReflectionBufferPackUnpack.java | 367 +++++++++++++++ .../TestBeansReflectionPackBufferUnpack.java | 401 ++++++++++++++++ .../TestBeansReflectionPackConvert.java | 437 ++++++++++++++++++ .../TestBeansReflectionPackStreamUnpack.java | 385 +++++++++++++++ .../TestJavassistBufferPackUnpack.java | 367 +++++++++++++++ .../TestJavassistPackBufferUnpack.java | 401 ++++++++++++++++ .../builder/TestJavassistPackConvert.java | 437 ++++++++++++++++++ .../TestJavassistPackStreamUnpack.java | 385 +++++++++++++++ .../TestReflectionBufferPackUnpack.java | 367 +++++++++++++++ ...ReflectionOrdinalEnumBufferPackUnpack.java | 58 +++ ...ReflectionOrdinalEnumPackBufferUnpack.java | 62 +++ .../TestReflectionOrdinalEnumPackConvert.java | 68 +++ .../TestReflectionOrdinalEnumPackUnpack.java | 61 +++ .../TestReflectionPackBufferUnpack.java | 401 ++++++++++++++++ .../builder/TestReflectionPackConvert.java | 437 ++++++++++++++++++ .../TestReflectionPackStreamUnpack.java | 385 +++++++++++++++ 20 files changed, 6090 insertions(+) create mode 100644 src/test/java/org/msgpack/TestBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/TestPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/TestPackConvert.java create mode 100644 src/test/java/org/msgpack/TestPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java create mode 100644 src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java new file mode 100644 index 000000000..30d4109ad --- /dev/null +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -0,0 +1,252 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; + +import java.io.ByteArrayInputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.Unpacker; + + +public class TestBufferPackUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBoolean(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeByte(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeShort(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeInt(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeLong(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeFloat(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeDouble(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeNil(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBigInteger(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeString(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeByteArray(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + byte[] ret = unpacker.readByteArray(); + assertArrayEquals(v, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java new file mode 100644 index 000000000..24c5f9a3f --- /dev/null +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -0,0 +1,265 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; + +import java.io.ByteArrayOutputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestPackBufferUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBoolean(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByte(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeShort(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeInt(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeLong(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeFloat(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeDouble(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeNil(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBigInteger(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeString(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByteArray(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + byte[] ret = unpacker.readByteArray(); + assertArrayEquals(v, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java new file mode 100644 index 000000000..04c038617 --- /dev/null +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -0,0 +1,293 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; + +import java.io.ByteArrayOutputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; + + +public class TestPackConvert extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBoolean(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isBoolean()); + boolean ret = new Converter(value).readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByte(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isInteger()); + byte ret = new Converter(value).readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeShort(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isInteger()); + short ret = new Converter(value).readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeInt(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isInteger()); + int ret = new Converter(value).readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeLong(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isInteger()); + long ret = new Converter(value).readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeFloat(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isFloat()); + float ret = new Converter(value).readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeDouble(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isFloat()); + double ret = new Converter(value).readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeNil(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isNil()); + new Converter(value).readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBigInteger(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isInteger()); + BigInteger ret = new Converter(value).readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeString(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isRaw()); + String ret = new Converter(value).readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByteArray(v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Value value = unpacker.readValue(); + assertTrue(value.isRaw()); + byte[] ret = new Converter(value).readByteArray(); + assertArrayEquals(v, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + Value value = unpacker.readValue(); + ret.add(new Converter(value).read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Value keyValue = unpacker.readValue(); + Object key = new Converter(keyValue).read(keyElementClass); + Value valueValue = unpacker.readValue(); + Object value = new Converter(valueValue).read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java new file mode 100644 index 000000000..e2eb458f2 --- /dev/null +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -0,0 +1,261 @@ +package org.msgpack; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class TestPackUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBoolean(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByte(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeShort(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeInt(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeLong(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeFloat(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeDouble(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeNil(); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.readNil(); + } + + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBigInteger(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeString(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByteArray(v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + byte[] ret = unpacker.readByteArray(); + assertArrayEquals(v, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java new file mode 100644 index 000000000..0cdc8ad86 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java @@ -0,0 +1,367 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestBeansReflectionBufferPackUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java new file mode 100644 index 000000000..ad5341928 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java @@ -0,0 +1,401 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestBeansReflectionPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java new file mode 100644 index 000000000..a0d28809b --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java @@ -0,0 +1,437 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestBeansReflectionPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java new file mode 100644 index 000000000..ef741d9a5 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java @@ -0,0 +1,385 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestBeansReflectionPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java new file mode 100644 index 000000000..ed62d98e4 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -0,0 +1,367 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestJavassistBufferPackUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java new file mode 100644 index 000000000..9e7ce1d6d --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -0,0 +1,401 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestJavassistPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java new file mode 100644 index 000000000..c994b3694 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -0,0 +1,437 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestJavassistPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java new file mode 100644 index 000000000..ca0c01dea --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java @@ -0,0 +1,385 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestJavassistPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java new file mode 100644 index 000000000..91687ca71 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -0,0 +1,367 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestReflectionBufferPackUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java new file mode 100644 index 000000000..cdf52c1a0 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java @@ -0,0 +1,58 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestReflectionOrdinalEnumBufferPackUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + BufferPacker packer = new MessagePack().createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java new file mode 100644 index 000000000..298fd8bd2 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java @@ -0,0 +1,62 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionOrdinalEnumPackBufferUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java new file mode 100644 index 000000000..58744ccb1 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java @@ -0,0 +1,68 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionOrdinalEnumPackConvert extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java new file mode 100644 index 000000000..02509acc2 --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java @@ -0,0 +1,61 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestReflectionOrdinalEnumPackUnpack extends TestSet { + + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClass.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, + new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java new file mode 100644 index 000000000..df91e610b --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -0,0 +1,401 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestReflectionPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java new file mode 100644 index 000000000..ba56eaa6b --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -0,0 +1,437 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +public class TestReflectionPackConvert extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java new file mode 100644 index 000000000..9e82c04ff --- /dev/null +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java @@ -0,0 +1,385 @@ +package org.msgpack.template.builder; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.testclasses.AbstractClass; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.Interface; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.Unpacker; + + +public class TestReflectionPackStreamUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(FinalClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testAbstractClass() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(AbstractClass.class); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testInterface() throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + try { + builder.buildTemplate(Interface.class); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof TemplateBuildException); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = new MessagePack().createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + +} From 3c90d9367e4e1f4b40b7e55f3dff8800459db751 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 05:01:02 +0900 Subject: [PATCH 085/409] fixed bug on selecting template builders in TemplateBuilderChain.java --- .../template/builder/TemplateBuilderChain.java | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index fc51faad0..28000c945 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -28,8 +28,6 @@ public class TemplateBuilderChain { protected List templateBuilders; - protected TemplateBuilder forceTemplateBuilder = null; - public TemplateBuilderChain() { templateBuilders = new ArrayList(); } @@ -37,14 +35,14 @@ public TemplateBuilderChain() { public void init(TemplateRegistry registry) { if (isSupportJavassist()) { // use dynamic code generation - forceTemplateBuilder = new JavassistTemplateBuilder(registry); - templateBuilders.add(forceTemplateBuilder); + TemplateBuilder builder = new JavassistTemplateBuilder(registry); + templateBuilders.add(builder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); } else { // use reflection - forceTemplateBuilder = new ReflectionTemplateBuilder(registry); - templateBuilders.add(forceTemplateBuilder); + TemplateBuilder builder = new ReflectionTemplateBuilder(registry); + templateBuilders.add(builder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } @@ -56,7 +54,7 @@ public TemplateBuilder select(Type targetType) { return tb; } } - return forceTemplateBuilder; + return null; } private static boolean isSupportJavassist(){ From db2f76a73a61f894a9e0c70cfa4d3f737dcba1df Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 05:04:33 +0900 Subject: [PATCH 086/409] inserted code for checking if 1st parameter is null or not in TemplateBuilderChain#init(..) --- .../msgpack/template/builder/TemplateBuilderChain.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 28000c945..51b0fff50 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -33,15 +33,20 @@ public TemplateBuilderChain() { } public void init(TemplateRegistry registry) { + if (registry == null) { + throw new NullPointerException("registry is null"); + } + + TemplateBuilder builder; if (isSupportJavassist()) { // use dynamic code generation - TemplateBuilder builder = new JavassistTemplateBuilder(registry); + builder = new JavassistTemplateBuilder(registry); templateBuilders.add(builder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); } else { // use reflection - TemplateBuilder builder = new ReflectionTemplateBuilder(registry); + builder = new ReflectionTemplateBuilder(registry); templateBuilders.add(builder); templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); From 49e1354e379f5901acef22747a44fcc0112a6be6 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 07:05:54 +0900 Subject: [PATCH 087/409] refactored reflection-based enum template builder --- .../ReflectionOrdinalEnumTemplateBuilder.java | 33 ++++++++----------- 1 file changed, 14 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index 4d9a3acdb..2a3e26b19 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -19,8 +19,6 @@ import java.io.IOException; import java.lang.reflect.Type; -import java.util.HashMap; -import java.util.Map; import org.msgpack.MessageTypeException; import org.msgpack.annotation.MessagePackOrdinalEnum; @@ -31,39 +29,33 @@ import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; import org.msgpack.unpacker.Unpacker; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class ReflectionOrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { + private static final Logger LOG = LoggerFactory.getLogger(ReflectionOrdinalEnumTemplateBuilder.class); + static class ReflectionOrdinalEnumTemplate extends AbstractTemplate { private T[] entries; - private Map reverse; - ReflectionOrdinalEnumTemplate(Class targetClass) { entries = targetClass.getEnumConstants(); - reverse = new HashMap(); - for (int i = 0; i < entries.length; ++i) { - reverse.put(entries[i], i); - } } @Override public void write(Packer pk, T target, boolean required) throws IOException { - Integer ord = reverse.get(target); - if (ord == null) { - throw new MessageTypeException(); - } - pk.writeInt((int) ord); + pk.writeInt(((Enum) target).ordinal()); } @Override public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { - int ord = pac.readInt(); - if (entries.length <= ord) { - throw new MessageTypeException(); + int ordinal = pac.readInt(); + if (ordinal < 0 || ordinal >= entries.length) { + throw new MessageTypeException("illegal ordinal"); } - return entries[ord]; + return entries[ordinal]; } } @@ -73,8 +65,11 @@ public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType) { - return AbstractTemplateBuilder.isAnnotated((Class) targetType, OrdinalEnum.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackOrdinalEnum.class); + Class targetClass = (Class) targetType; + boolean match = AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); + LOG.debug("matched type: " + targetClass.getName()); + return match; } @Override From 499dd52b35bc525875d528e2702a165bd129b79e Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 31 Jul 2011 12:50:33 +0900 Subject: [PATCH 088/409] BufferRefer: accepts ByteBuffer instead of byte array --- .../java/org/msgpack/io/BufferReferer.java | 3 ++- .../org/msgpack/io/LinkedBufferInput.java | 19 +++++++++++++++---- .../java/org/msgpack/unpacker/Accept.java | 3 ++- .../org/msgpack/unpacker/ByteArrayAccept.java | 7 ++++--- .../org/msgpack/unpacker/StringAccept.java | 18 ++++++++++++++++-- .../org/msgpack/unpacker/ValueAccept.java | 7 +++++-- 6 files changed, 44 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/msgpack/io/BufferReferer.java b/src/main/java/org/msgpack/io/BufferReferer.java index 74d5d17a4..91feb3259 100644 --- a/src/main/java/org/msgpack/io/BufferReferer.java +++ b/src/main/java/org/msgpack/io/BufferReferer.java @@ -18,9 +18,10 @@ package org.msgpack.io; import java.io.IOException; +import java.nio.ByteBuffer; public interface BufferReferer { - public void refer(byte[] b, int off, int len, boolean gift) throws IOException; + public void refer(ByteBuffer bb, boolean gift) throws IOException; } diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 21df1ae1b..6a180039f 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -69,11 +69,22 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { throw new EndOfBufferException(); } else if(bb.remaining() < len) { return false; - } else if(!bb.hasArray()) { - return false; } - ref.refer(bb.array(), bb.arrayOffset()+bb.position(), len, true); - bb.position(bb.position()+len); + boolean success = false; + int pos = bb.position(); + int lim = bb.limit(); + try { + bb.limit(pos+len); + ref.refer(bb, true); + success = true; + } finally { + bb.limit(lim); + if(success) { + bb.position(pos+len); + } else { + bb.position(pos); + } + } return true; } diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index 0c155c939..ca09cbd73 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -18,6 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.nio.ByteBuffer; import org.msgpack.io.BufferReferer; import org.msgpack.MessageTypeException; @@ -99,7 +100,7 @@ void acceptDouble(double v) { throw new MessageTypeException("Unexpected float value"); } - public void refer(byte[] b, int off, int size, boolean gift) throws IOException { + public void refer(ByteBuffer bb, boolean gift) throws IOException { throw new MessageTypeException("Unexpected raw value"); } } diff --git a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java index ccbb5463f..01a89e36c 100644 --- a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java @@ -18,6 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.nio.ByteBuffer; final class ByteArrayAccept extends Accept { @@ -34,10 +35,10 @@ void acceptEmptyRaw() { } @Override - public void refer(byte[] b, int off, int len, boolean gift) throws IOException { + public void refer(ByteBuffer bb, boolean gift) throws IOException { // TODO gift - this.value = new byte[len]; - System.arraycopy(b, off, value, 0, len); + this.value = new byte[bb.remaining()]; + bb.get(value); } } diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index 5282942ef..f64b27e17 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -18,10 +18,23 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.charset.Charset; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; final class StringAccept extends Accept { String value; + private CharsetDecoder decoder; + + public StringAccept() { + this.decoder = Charset.forName("UTF-8").newDecoder(). + onMalformedInput(CodingErrorAction.REPORT). + onUnmappableCharacter(CodingErrorAction.REPORT); + } @Override void acceptRaw(byte[] raw) { @@ -35,8 +48,9 @@ void acceptEmptyRaw() { } @Override - public void refer(byte[] b, int off, int len, boolean gift) throws IOException { - this.value = new String(b, off, len); + public void refer(ByteBuffer bb, boolean gift) throws IOException { + // TODO encoding error + this.value = decoder.decode(bb).toString(); } } diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 4f1e65c77..dc857425a 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -18,6 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.nio.ByteBuffer; import java.math.BigInteger; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -96,9 +97,11 @@ void acceptEmptyRaw() { } @Override - public void refer(byte[] b, int off, int len, boolean gift) throws IOException { + public void refer(ByteBuffer bb, boolean gift) throws IOException { // TODO gift - uc.write(ValueFactory.rawValue(b, off, len)); + byte[] raw = new byte[bb.remaining()]; + bb.get(raw); + uc.write(ValueFactory.rawValue(raw, true)); } @Override From 91078ee8c545ac10cb4d075bb801089844bc9cb6 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 31 Jul 2011 13:22:24 +0900 Subject: [PATCH 089/409] added test programs for JSONPacker and JSONUnpacker --- Makefile | 0 build.xml | 0 .../java/org/msgpack/packer/JSONPacker.java | 31 +- .../TestJSONBufferPackBufferUnpack.java | 286 +++++++++++++++++ .../org/msgpack/TestJSONBufferPackUnpack.java | 286 +++++++++++++++++ .../org/msgpack/TestJSONPackBufferUnpack.java | 301 ++++++++++++++++++ .../java/org/msgpack/TestJSONPackUnpack.java | 301 ++++++++++++++++++ 7 files changed, 1197 insertions(+), 8 deletions(-) mode change 100755 => 100644 Makefile mode change 100755 => 100644 build.xml create mode 100644 src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/TestJSONBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/TestJSONPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/TestJSONPackUnpack.java diff --git a/Makefile b/Makefile old mode 100755 new mode 100644 diff --git a/build.xml b/build.xml old mode 100755 new mode 100644 diff --git a/src/main/java/org/msgpack/packer/JSONPacker.java b/src/main/java/org/msgpack/packer/JSONPacker.java index 9b07f9a96..f41726e58 100644 --- a/src/main/java/org/msgpack/packer/JSONPacker.java +++ b/src/main/java/org/msgpack/packer/JSONPacker.java @@ -21,6 +21,11 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; +import java.nio.charset.Charset; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; import org.json.simple.JSONValue; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; @@ -49,6 +54,7 @@ public class JSONPacker extends AbstractPacker { private int[] flags; private PackerStack stack = new PackerStack(); + private CharsetDecoder decoder; public JSONPacker(OutputStream stream) { this(new MessagePack(), stream); @@ -63,6 +69,9 @@ protected JSONPacker(MessagePack msgpack, Output out) { this.out = out; this.stack = new PackerStack(); this.flags = new int[PackerStack.MAX_STACK_SIZE]; + this.decoder = Charset.forName("UTF-8").newDecoder(). + onMalformedInput(CodingErrorAction.REPORT). + onUnmappableCharacter(CodingErrorAction.REPORT); } public void writeNil() throws IOException { @@ -118,6 +127,10 @@ public void writeBigInteger(BigInteger v) throws IOException { public void writeFloat(float v) throws IOException { beginElement(); + Float r = v; + if(r.isInfinite() || r.isNaN()) { + throw new IOException("JSONPacker doesn't support NaN and infinite float value"); + } byte[] b = Float.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); @@ -125,6 +138,10 @@ public void writeFloat(float v) throws IOException { public void writeDouble(double v) throws IOException { beginElement(); + Double r = v; + if(r.isInfinite() || r.isNaN()) { + throw new IOException("JSONPacker doesn't support NaN and infinite float value"); + } byte[] b = Double.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); @@ -248,19 +265,17 @@ public void close() throws IOException { out.close(); } - private static void escape(Output out, byte[] b, int off, int len) throws IOException { - // TODO optimize - escape(out, new String(b, off, len)); + private void escape(Output out, byte[] b, int off, int len) throws IOException { + escape(out, ByteBuffer.wrap(b, off, len)); } - private static void escape(Output out, ByteBuffer bb) throws IOException { + private void escape(Output out, ByteBuffer bb) throws IOException { // TODO optimize - byte[] b = new byte[bb.remaining()]; - bb.get(b); - escape(out, new String(b)); + String str = decoder.decode(bb).toString(); + escape(out, str); } - private static void escape(Output out, String s) throws IOException { + private void escape(Output out, String s) throws IOException { // TODO optimize String e = JSONValue.escape(s); byte[] raw = e.getBytes(); diff --git a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java new file mode 100644 index 000000000..e27431a16 --- /dev/null +++ b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java @@ -0,0 +1,286 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.Unpacker; + + +public class TestJSONBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBoolean(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeByte(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeShort(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeInt(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeLong(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + try { + packer.writeFloat(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeFloat(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + try { + packer.writeDouble(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeDouble(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeNil(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.readNil(); + } + + //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger (bug) + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBigInteger(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeString(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + // FIXME JSONPacker doesn't support bytes + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + //packer.writeByteArray(v); + String str = new String(v); + packer.writeString(str); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + //byte[] ret = unpacker.readByteArray(); + String ret = unpacker.readString(); + assertEquals(str, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if(!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java new file mode 100644 index 000000000..3b202a93f --- /dev/null +++ b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java @@ -0,0 +1,286 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.IOException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.Unpacker; + + +public class TestJSONBufferPackUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBoolean(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeByte(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeShort(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeInt(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeLong(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + try { + packer.writeFloat(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeFloat(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + try { + packer.writeDouble(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeDouble(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeNil(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.readNil(); + } + + //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger (bug) + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeBigInteger(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeString(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + // FIXME JSONPacker doesn't support bytes + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + //packer.writeByteArray(v); + String str = new String(v); + packer.writeString(str); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + //byte[] ret = unpacker.readByteArray(); + String ret = unpacker.readString(); + assertEquals(str, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if(!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (Exception ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java new file mode 100644 index 000000000..affbca188 --- /dev/null +++ b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java @@ -0,0 +1,301 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class TestJSONPackBufferUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBoolean(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByte(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeShort(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeInt(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeLong(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + try { + packer.writeFloat(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeFloat(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + try { + packer.writeDouble(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeDouble(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeNil(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.readNil(); + } + + //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger + ByteArrayOutputStream out = new ByteArrayOutputStream(); + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBigInteger(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeString(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + // FIXME JSONPacker doesn't support bytes + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + //packer.writeByteArray(v); + String str = new String(v); + packer.writeString(str); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + //byte[] ret = unpacker.readByteArray(); + String ret = unpacker.readString(); + assertEquals(str, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if(!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} diff --git a/src/test/java/org/msgpack/TestJSONPackUnpack.java b/src/test/java/org/msgpack/TestJSONPackUnpack.java new file mode 100644 index 000000000..dbb0ff424 --- /dev/null +++ b/src/test/java/org/msgpack/TestJSONPackUnpack.java @@ -0,0 +1,301 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class TestJSONPackUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBoolean(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeByte(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeShort(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeInt(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeLong(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + try { + packer.writeFloat(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeFloat(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + try { + packer.writeDouble(v); + fail("JSONPacker should reject infinite and NaN value"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.writeDouble(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeNil(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.readNil(); + } + + //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger + ByteArrayOutputStream out = new ByteArrayOutputStream(); + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeBigInteger(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeString(v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + // FIXME JSONPacker doesn't support bytes + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + //packer.writeByteArray(v); + String str = new String(v); + packer.writeString(str); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + //byte[] ret = unpacker.readByteArray(); + String ret = unpacker.readString(); + assertEquals(str, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if(!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} From db7fb079dc3a84ce92fb8b9076c703c1a41f6063 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 14:51:50 +0900 Subject: [PATCH 090/409] modified logic for selecting template builders --- .../msgpack/template/TemplateRegistry.java | 8 +++---- .../builder/JavassistTemplateBuilder.java | 23 +++++++++++-------- .../ReflectionBeansTemplateBuilder.java | 16 ++++++++++--- .../ReflectionOrdinalEnumTemplateBuilder.java | 17 ++++++++++---- .../builder/ReflectionTemplateBuilder.java | 16 ++++++++++--- .../template/builder/TemplateBuilder.java | 2 +- .../builder/TemplateBuilderChain.java | 18 +++++++-------- 7 files changed, 65 insertions(+), 35 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 58fe1c503..90045a3db 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -118,14 +118,14 @@ private void registerTemplates() { } public void register(final Class targetClass) { - register(targetClass, chain.select(targetClass).buildTemplate(targetClass)); + register(targetClass, chain.select(targetClass, false).buildTemplate(targetClass)); } public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - register(targetClass, chain.select(targetClass).buildTemplate(targetClass, flist)); + register(targetClass, chain.select(targetClass, false).buildTemplate(targetClass, flist)); } public synchronized void register(final Type targetType, final Template tmpl) { @@ -215,7 +215,7 @@ private synchronized Template lookupImpl(Type targetType, } // find match TemplateBuilder - TemplateBuilder builder = chain.select(targetClass); + TemplateBuilder builder = chain.select(targetClass, true); if (builder != null) { if (forceLoad) { tmpl = builder.loadTemplate(targetClass); @@ -272,7 +272,7 @@ private synchronized Template lookupImpl(Type targetType, } if (forceBuild) { - tmpl = chain.select(targetClass).buildTemplate(targetClass); + tmpl = chain.select(targetClass, true).buildTemplate(targetClass); register(targetClass, tmpl); return tmpl; } diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index c6480a7a7..4f1d98796 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -17,10 +17,7 @@ // package org.msgpack.template.builder; -import java.io.IOException; import java.lang.Thread; -import java.lang.reflect.Field; -import java.lang.reflect.Modifier; import java.lang.reflect.Type; import javassist.ClassPool; @@ -32,13 +29,10 @@ import org.slf4j.LoggerFactory; import org.msgpack.annotation.Message; import org.msgpack.annotation.MessagePackMessage; -import org.msgpack.packer.Packer; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldTemplate; -import org.msgpack.unpacker.Unpacker; public class JavassistTemplateBuilder extends AbstractTemplateBuilder { @@ -88,10 +82,19 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { } @Override - public boolean matchType(Type targetType) { - // TODO reject enum - return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); + public boolean matchType(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + boolean matched; + if (hasAnnotation) { + matched = AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); + } else { + matched = !targetClass.isEnum() || !targetClass.isInterface(); + } + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } public void addClassLoader(ClassLoader cl) { diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 0be697fe3..bbffeb764 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -87,9 +87,19 @@ public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { } @Override - public boolean matchType(Type targetType) { - return AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); + public boolean matchType(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + boolean matched; + if (hasAnnotation) { + matched = AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); + } else { + matched = !targetClass.isEnum() || !targetClass.isInterface(); + } + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index 2a3e26b19..9c3da8da7 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -64,12 +64,19 @@ public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { } @Override - public boolean matchType(Type targetType) { + public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; - boolean match = AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); - LOG.debug("matched type: " + targetClass.getName()); - return match; + boolean matched; + if (hasAnnotation) { + matched = AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); + } else { + matched = targetClass.isEnum(); + } + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 7a401d23f..ab6d26f57 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -344,9 +344,19 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { } @Override - public boolean matchType(Type targetType) { - return AbstractTemplateBuilder.isAnnotated((Class) targetType, Message.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackMessage.class); + public boolean matchType(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + boolean matched; + if (hasAnnotation) { + matched = AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); + } else { + matched = !targetClass.isEnum() || !targetClass.isInterface(); + } + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 8ea18b423..4485faba6 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -24,7 +24,7 @@ public interface TemplateBuilder { - boolean matchType(Type targetType); + boolean matchType(Type targetType, boolean forceBuild); Template buildTemplate(Type targetType) throws TemplateBuildException; diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 51b0fff50..598ea019d 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -53,15 +53,6 @@ public void init(TemplateRegistry registry) { } } - public TemplateBuilder select(Type targetType) { - for (TemplateBuilder tb : templateBuilders) { - if (tb.matchType(targetType)) { - return tb; - } - } - return null; - } - private static boolean isSupportJavassist(){ try { return !System.getProperty("java.vm.name").equals("Dalvik"); @@ -69,4 +60,13 @@ private static boolean isSupportJavassist(){ return true; } } + + public TemplateBuilder select(Type targetType, boolean hasAnnotation) { + for (TemplateBuilder tb : templateBuilders) { + if (tb.matchType(targetType, hasAnnotation)) { + return tb; + } + } + return null; + } } From efb78f934a1a9040deb8f1bae4788cc82e0fef90 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 17:06:25 +0900 Subject: [PATCH 091/409] refactored template builders --- .../builder/AbstractTemplateBuilder.java | 24 +++++++++++++++---- .../builder/JavassistTemplateBuilder.java | 10 +------- .../ReflectionOrdinalEnumTemplateBuilder.java | 10 +------- .../builder/ReflectionTemplateBuilder.java | 12 ++-------- 4 files changed, 24 insertions(+), 32 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index d60877a70..a46d0b5e3 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -29,21 +29,19 @@ import org.msgpack.annotation.Index; import org.msgpack.annotation.Message; import org.msgpack.annotation.MessagePackMessage; +import org.msgpack.annotation.MessagePackOrdinalEnum; import org.msgpack.annotation.NotNullable; import org.msgpack.annotation.Optional; +import org.msgpack.annotation.OrdinalEnum; import org.msgpack.template.FieldList; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public abstract class AbstractTemplateBuilder implements TemplateBuilder { - private static Logger LOG = LoggerFactory.getLogger(AbstractTemplateBuilder.class); - protected TemplateRegistry registry; protected AbstractTemplateBuilder(TemplateRegistry registry) { @@ -238,4 +236,22 @@ public static boolean isAnnotated(Class targetClass, Class with) { return accessibleObject.getAnnotation(with) != null; } + + public static boolean matchAtClassTemplateBuilder(Class targetClass, boolean hasAnnotation) { + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); + } else { + return !targetClass.isEnum() || !targetClass.isInterface(); + } + } + + public static boolean matchAtOrdinalEnumTemplateBuilder(Class targetClass, boolean hasAnnotation) { + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); + } else { + return targetClass.isEnum(); + } + } } diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 4f1d98796..743961527 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -27,8 +27,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.msgpack.annotation.Message; -import org.msgpack.annotation.MessagePackMessage; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; @@ -84,13 +82,7 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; - boolean matched; - if (hasAnnotation) { - matched = AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); - } else { - matched = !targetClass.isEnum() || !targetClass.isInterface(); - } + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); if (matched) { LOG.debug("matched type: " + targetClass.getName()); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index 9c3da8da7..cfa679f2c 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -21,8 +21,6 @@ import java.lang.reflect.Type; import org.msgpack.MessageTypeException; -import org.msgpack.annotation.MessagePackOrdinalEnum; -import org.msgpack.annotation.OrdinalEnum; import org.msgpack.packer.Packer; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; @@ -66,13 +64,7 @@ public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; - boolean matched; - if (hasAnnotation) { - matched = AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); - } else { - matched = targetClass.isEnum(); - } + boolean matched = matchAtOrdinalEnumTemplateBuilder(targetClass, hasAnnotation); if (matched) { LOG.debug("matched type: " + targetClass.getName()); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index ab6d26f57..aca33159b 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -23,8 +23,6 @@ import java.lang.reflect.Type; import org.msgpack.MessageTypeException; -import org.msgpack.annotation.Message; -import org.msgpack.annotation.MessagePackMessage; import org.msgpack.packer.Packer; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; @@ -346,13 +344,7 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; - boolean matched; - if (hasAnnotation) { - matched = AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); - } else { - matched = !targetClass.isEnum() || !targetClass.isInterface(); - } + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); if (matched) { LOG.debug("matched type: " + targetClass.getName()); } @@ -366,7 +358,7 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries) } ReflectionFieldTemplate[] tmpls = toTemplates(entries); - return new ReflectionClassTemplate(targetClass, tmpls); + return new ReflectionClassTemplate(targetClass, tmpls); } protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { From bd5d04f0725d2082f6fe026b3d767cb9f8e3ebef Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 31 Jul 2011 17:34:14 +0900 Subject: [PATCH 092/409] refactored ordinal enum template builder --- .../msgpack/template/OrdinalEnumTemplate.java | 46 +++++++++++++++++++ .../ReflectionOrdinalEnumTemplateBuilder.java | 32 ++----------- .../template/builder/TemplateBuilder.java | 1 - 3 files changed, 49 insertions(+), 30 deletions(-) create mode 100644 src/main/java/org/msgpack/template/OrdinalEnumTemplate.java diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java new file mode 100644 index 000000000..7eb2af4e8 --- /dev/null +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -0,0 +1,46 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; + +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + +public class OrdinalEnumTemplate extends AbstractTemplate { + private T[] entries; + + public OrdinalEnumTemplate(Class targetClass) { + entries = targetClass.getEnumConstants(); + } + + @Override + public void write(Packer pk, T target, boolean required) throws IOException { + pk.writeInt(((Enum) target).ordinal()); + } + + @Override + public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { + int ordinal = pac.readInt(); + if (ordinal >= entries.length) { + throw new MessageTypeException("illegal ordinal"); + } + return entries[ordinal]; + } +} diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java index cfa679f2c..3a6cae00b 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java @@ -17,16 +17,12 @@ // package org.msgpack.template.builder; -import java.io.IOException; import java.lang.reflect.Type; -import org.msgpack.MessageTypeException; -import org.msgpack.packer.Packer; +import org.msgpack.template.OrdinalEnumTemplate; import org.msgpack.template.Template; -import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; -import org.msgpack.unpacker.Unpacker; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -35,28 +31,6 @@ public class ReflectionOrdinalEnumTemplateBuilder extends AbstractTemplateBuilde private static final Logger LOG = LoggerFactory.getLogger(ReflectionOrdinalEnumTemplateBuilder.class); - static class ReflectionOrdinalEnumTemplate extends AbstractTemplate { - private T[] entries; - - ReflectionOrdinalEnumTemplate(Class targetClass) { - entries = targetClass.getEnumConstants(); - } - - @Override - public void write(Packer pk, T target, boolean required) throws IOException { - pk.writeInt(((Enum) target).ordinal()); - } - - @Override - public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { - int ordinal = pac.readInt(); - if (ordinal < 0 || ordinal >= entries.length) { - throw new MessageTypeException("illegal ordinal"); - } - return entries[ordinal]; - } - } - public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { super(registry); } @@ -77,11 +51,11 @@ public Template buildTemplate(Class targetClass, FieldEntry[] entries) } @Override - public Template buildTemplate(Type targetType) { + public Template buildTemplate(Type targetType) throws TemplateBuildException { @SuppressWarnings("unchecked") Class targetClass = (Class) targetType; checkOrdinalEnumValidation(targetClass); - return new ReflectionOrdinalEnumTemplate(targetClass); + return new OrdinalEnumTemplate(targetClass); } protected void checkOrdinalEnumValidation(Class targetClass) { diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 4485faba6..28bf5aa67 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -34,4 +34,3 @@ public interface TemplateBuilder { Template loadTemplate(Type targetType); } - From c4b157652501ac9f935076e0a109c5353b18beb2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 2 Aug 2011 15:56:30 +0900 Subject: [PATCH 093/409] fixed bug: bad logic for selecting template builders --- .../org/msgpack/template/builder/AbstractTemplateBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index a46d0b5e3..4d7b7cd70 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -242,7 +242,7 @@ public static boolean matchAtClassTemplateBuilder(Class targetClass, boolean return AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); } else { - return !targetClass.isEnum() || !targetClass.isInterface(); + return !targetClass.isEnum() && !targetClass.isInterface(); } } From 5e97834c4ad573a137bae703c900b69ef6b2edba Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 8 Aug 2011 17:01:42 +0900 Subject: [PATCH 094/409] added template builder for array classes --- .../builder/AbstractTemplateBuilder.java | 8 + .../builder/ArrayTemplateBuilder.java | 246 ++++++++++++++++++ .../template/builder/TemplateBuilder.java | 1 + .../builder/TemplateBuilderChain.java | 13 +- 4 files changed, 261 insertions(+), 7 deletions(-) create mode 100644 src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 4d7b7cd70..8e7122f8d 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -20,6 +20,7 @@ import java.lang.annotation.Annotation; import java.lang.reflect.AccessibleObject; import java.lang.reflect.Field; +import java.lang.reflect.GenericArrayType; import java.lang.reflect.Modifier; import java.lang.reflect.Type; import java.util.ArrayList; @@ -246,6 +247,13 @@ public static boolean matchAtClassTemplateBuilder(Class targetClass, boolean } } + public static boolean matchAtArrayTemplateBuilder(Class targetClass, boolean hasAnnotation) { + if (((Type) targetClass) instanceof GenericArrayType){ + return true; + } + return targetClass.isArray(); + } + public static boolean matchAtOrdinalEnumTemplateBuilder(Class targetClass, boolean hasAnnotation) { if (hasAnnotation) { return AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java new file mode 100644 index 000000000..1b66a9166 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -0,0 +1,246 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.io.IOException; +import java.lang.reflect.Array; +import java.lang.reflect.GenericArrayType; +import java.lang.reflect.ParameterizedType; +import java.lang.reflect.Type; + +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.template.AbstractTemplate; +import org.msgpack.template.BooleanArrayTemplate; +import org.msgpack.template.DoubleArrayTemplate; +import org.msgpack.template.FieldList; +import org.msgpack.template.FloatArrayTemplate; +import org.msgpack.template.IntegerArrayTemplate; +import org.msgpack.template.LongArrayTemplate; +import org.msgpack.template.ShortArrayTemplate; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.unpacker.Unpacker; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + + +public class ArrayTemplateBuilder extends AbstractTemplateBuilder { + + private static final Logger LOG = LoggerFactory.getLogger(ArrayTemplateBuilder.class); + + static class ReflectionObjectArrayTemplate extends AbstractTemplate { + private Class componentClass; + + private Template elementTemplate; + + public ReflectionObjectArrayTemplate(Class componentClass, Template elementTemplate) { + this.componentClass = componentClass; + this.elementTemplate = elementTemplate; + } + + @Override + public void write(Packer packer, Object v, boolean required) throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } + if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { + throw new MessageTypeException(); + } + + Object[] array = (Object[]) v; + int length = array.length; + packer.writeArrayBegin(length); + for (int i = 0; i < length; i++) { + elementTemplate.write(packer,array[i], required); + } + packer.writeArrayEnd(); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { + if (!required && unpacker.trySkipNil()) { + return null; + } + + int length = unpacker.readArrayBegin(); + Object[] array = (Object[]) Array.newInstance(componentClass, + length); + for (int i = 0; i < length; i++) { + array[i] = elementTemplate.read(unpacker, null, required); + } + unpacker.readArrayEnd(); + return array; + } + } + + static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { + private Class componentClass; + + private Template componentTemplate; + + public ReflectionMultidimentionalArrayTemplate(Class componentClass, Template componentTemplate) { + this.componentClass = componentClass; + this.componentTemplate = componentTemplate; + } + + Class getComponentClass() { + return componentClass; + } + + @Override + public void write(Packer packer, Object v, boolean required) throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } + if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { + throw new MessageTypeException(); + } + + Object[] array = (Object[]) v; + int length = array.length; + packer.writeArrayBegin(length); + for (int i = 0; i < length; i++) { + componentTemplate.write(packer, array[i], required); + } + packer.writeArrayEnd(); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { + if (!required && unpacker.trySkipNil()) { + return null; + } + + int length = unpacker.readArrayBegin(); + Object[] array = (Object[]) Array.newInstance(componentClass, length); + for (int i = 0; i < length; i++) { + array[i] = componentTemplate.read(unpacker, null, required); + } + unpacker.readArrayEnd(); + return array; + } + } + + public ArrayTemplateBuilder(TemplateRegistry registry) { + super(registry); + } + + @Override + public boolean matchType(Type targetType, boolean forceBuild) { + Class targetClass = (Class) targetType; + boolean matched = AbstractTemplateBuilder.matchAtArrayTemplateBuilder(targetClass, false); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; + } + + @Override + public Template buildTemplate(Type arrayType) { + Type baseType; + Class baseClass; + int dim = 1; + if (arrayType instanceof GenericArrayType) { + GenericArrayType type = (GenericArrayType) arrayType; + baseType = type.getGenericComponentType(); + while (baseType instanceof GenericArrayType) { + baseType = ((GenericArrayType) baseType) + .getGenericComponentType(); + dim += 1; + } + if (baseType instanceof ParameterizedType) { + baseClass = (Class) ((ParameterizedType) baseType) + .getRawType(); + } else { + baseClass = (Class) baseType; + } + } else { + Class type = (Class) arrayType; + baseClass = type.getComponentType(); + while (baseClass.isArray()) { + baseClass = baseClass.getComponentType(); + dim += 1; + } + baseType = baseClass; + } + return toTemplate(arrayType, baseType, baseClass, dim); + + } + + @Override + public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { + // TODO Auto-generated method stub + return null; + } + + @Override + protected Template buildTemplate(Class targetClass, FieldEntry[] entries) { + // TODO Auto-generated method stub + return null; + } + + private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClass, int dim) { + if (dim == 1) { + if (baseClass == boolean.class) { + return BooleanArrayTemplate.getInstance(); + } else if (baseClass == short.class) { + return ShortArrayTemplate.getInstance(); + } else if (baseClass == int.class) { + return IntegerArrayTemplate.getInstance(); + } else if (baseClass == long.class) { + return LongArrayTemplate.getInstance(); + } else if (baseClass == float.class) { + return FloatArrayTemplate.getInstance(); + } else if (baseClass == double.class) { + return DoubleArrayTemplate.getInstance(); + } else { + Template baseTemplate = registry.lookup(genericBaseType); + return new ReflectionObjectArrayTemplate(baseClass, baseTemplate); + } + } else if (dim == 2) { + Class componentClass = Array.newInstance(baseClass, 0).getClass(); + Template componentTemplate = toTemplate(arrayType, genericBaseType, baseClass, dim - 1); + return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); + } else { + ReflectionMultidimentionalArrayTemplate componentTemplate = + (ReflectionMultidimentionalArrayTemplate) toTemplate(arrayType, genericBaseType, baseClass, dim - 1); + Class componentClass = Array.newInstance(componentTemplate.getComponentClass(), 0).getClass(); + return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); + } + } + + @Override + public void writeTemplate(Type targetType, String directoryName) { + throw new UnsupportedOperationException(targetType.toString()); + } + + @Override + public Template loadTemplate(Type targetType) { + return null; + } + +} diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 28bf5aa67..e6b3ee57c 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -24,6 +24,7 @@ public interface TemplateBuilder { + boolean matchType(Type targetType, boolean forceBuild); Template buildTemplate(Type targetType) throws TemplateBuildException; diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 598ea019d..cb9d58fcf 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -38,22 +38,21 @@ public void init(TemplateRegistry registry) { } TemplateBuilder builder; - if (isSupportJavassist()) { - // use dynamic code generation + templateBuilders.add(new ArrayTemplateBuilder(registry)); + templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); + if (enableDynamicCodeGeneration()) { // use dynamic code generation builder = new JavassistTemplateBuilder(registry); templateBuilders.add(builder); - templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); - } else { - // use reflection + } else { // use reflection builder = new ReflectionTemplateBuilder(registry); templateBuilders.add(builder); - templateBuilders.add(new ReflectionOrdinalEnumTemplateBuilder(registry)); + templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } } - private static boolean isSupportJavassist(){ + private static boolean enableDynamicCodeGeneration(){ try { return !System.getProperty("java.vm.name").equals("Dalvik"); } catch (Exception e) { From 62c4e7542a0bacebbdd67fc8cbca740c0327d138 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 8 Aug 2011 18:17:39 +0900 Subject: [PATCH 095/409] renamed ReflectionOrdinalTemplateBuilder class to OrdinalTemplateBuilder class --- src/main/java/org/msgpack/template/OrdinalEnumTemplate.java | 2 ++ ...TemplateBuilder.java => OrdinalEnumTemplateBuilder.java} | 6 +++--- ...pack.java => TestOrdinalEnumBufferPackBufferUnpack.java} | 6 +++--- ...ckConvert.java => TestOrdinalEnumBufferPackConvert.java} | 6 +++--- ...PackUnpack.java => TestOrdinalEnumBufferPackUnpack.java} | 6 +++--- ...fferUnpack.java => TestOrdinalEnumPackBufferUnpack.java} | 6 +++--- ...EnumPackConvert.java => TestOrdinalEnumPackConvert.java} | 6 +++--- ...alEnumPackUnpack.java => TestOrdinalEnumPackUnpack.java} | 6 +++--- 8 files changed, 23 insertions(+), 21 deletions(-) rename src/main/java/org/msgpack/template/builder/{ReflectionOrdinalEnumTemplateBuilder.java => OrdinalEnumTemplateBuilder.java} (88%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumBufferPackBufferUnpack.java => TestOrdinalEnumBufferPackBufferUnpack.java} (87%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumBufferPackConvert.java => TestOrdinalEnumBufferPackConvert.java} (88%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumBufferPackUnpack.java => TestOrdinalEnumBufferPackUnpack.java} (87%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumPackBufferUnpack.java => TestOrdinalEnumPackBufferUnpack.java} (88%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumPackConvert.java => TestOrdinalEnumPackConvert.java} (89%) rename src/test/java/org/msgpack/template/builder/{TestReflectionOrdinalEnumPackUnpack.java => TestOrdinalEnumPackUnpack.java} (88%) diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 7eb2af4e8..00abdde69 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -23,6 +23,7 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; + public class OrdinalEnumTemplate extends AbstractTemplate { private T[] entries; @@ -30,6 +31,7 @@ public OrdinalEnumTemplate(Class targetClass) { entries = targetClass.getEnumConstants(); } + @SuppressWarnings("rawtypes") @Override public void write(Packer pk, T target, boolean required) throws IOException { pk.writeInt(((Enum) target).ordinal()); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java similarity index 88% rename from src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java rename to src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java index 3a6cae00b..02f78303a 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionOrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java @@ -27,11 +27,11 @@ import org.slf4j.LoggerFactory; -public class ReflectionOrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { +public class OrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { - private static final Logger LOG = LoggerFactory.getLogger(ReflectionOrdinalEnumTemplateBuilder.class); + private static final Logger LOG = LoggerFactory.getLogger(OrdinalEnumTemplateBuilder.class); - public ReflectionOrdinalEnumTemplateBuilder(TemplateRegistry registry) { + public OrdinalEnumTemplateBuilder(TemplateRegistry registry) { super(registry); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java similarity index 87% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index 65485313f..12c6fe105 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -12,7 +12,7 @@ import org.msgpack.unpacker.BufferUnpacker; -public class TestReflectionOrdinalEnumBufferPackBufferUnpack extends TestSet { +public class TestOrdinalEnumBufferPackBufferUnpack extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -23,7 +23,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); BufferPacker packer = new MessagePack().createBufferPacker(); @@ -44,7 +44,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); BufferPacker packer = new MessagePack().createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java similarity index 88% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index 7b2dcf103..901d28c5a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -14,7 +14,7 @@ import org.msgpack.unpacker.Converter; -public class TestReflectionOrdinalEnumBufferPackConvert extends TestSet { +public class TestOrdinalEnumBufferPackConvert extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -25,7 +25,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); BufferPacker packer = new MessagePack().createBufferPacker(); @@ -48,7 +48,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); BufferPacker packer = new MessagePack().createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java similarity index 87% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index cdf52c1a0..2ec150506 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -14,7 +14,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestReflectionOrdinalEnumBufferPackUnpack extends TestSet { +public class TestOrdinalEnumBufferPackUnpack extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -25,7 +25,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); BufferPacker packer = new MessagePack().createBufferPacker(); @@ -45,7 +45,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); BufferPacker packer = new MessagePack().createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java similarity index 88% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index 298fd8bd2..03812e93c 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -14,7 +14,7 @@ import org.msgpack.unpacker.BufferUnpacker; -public class TestReflectionOrdinalEnumPackBufferUnpack extends TestSet { +public class TestOrdinalEnumPackBufferUnpack extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -25,7 +25,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -47,7 +47,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java similarity index 89% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index 58744ccb1..0e386ca46 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -16,7 +16,7 @@ import org.msgpack.unpacker.Converter; -public class TestReflectionOrdinalEnumPackConvert extends TestSet { +public class TestOrdinalEnumPackConvert extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -27,7 +27,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -51,7 +51,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java similarity index 88% rename from src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java rename to src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index 02509acc2..b96e3777c 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -15,7 +15,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestReflectionOrdinalEnumPackUnpack extends TestSet { +public class TestOrdinalEnumPackUnpack extends TestSet { @Test @Override public void testEnumTypeFieldsClass() throws Exception { @@ -26,7 +26,7 @@ public void testEnumTypeFieldsClass() throws Exception { public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -47,7 +47,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, - new ReflectionOrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); + new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); From 89e1abf3f1fdfa7022a9784dbffdbdb0169b5e4e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 9 Aug 2011 10:02:17 +0900 Subject: [PATCH 096/409] refactored array template and the template builder --- .../msgpack/template/ObjectArrayTemplate.java | 59 +++++++++++++ .../builder/ArrayTemplateBuilder.java | 85 ++++--------------- 2 files changed, 75 insertions(+), 69 deletions(-) create mode 100644 src/main/java/org/msgpack/template/ObjectArrayTemplate.java diff --git a/src/main/java/org/msgpack/template/ObjectArrayTemplate.java b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java new file mode 100644 index 000000000..a7a8ab742 --- /dev/null +++ b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java @@ -0,0 +1,59 @@ +package org.msgpack.template; + +import java.io.IOException; +import java.lang.reflect.Array; + +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class ObjectArrayTemplate extends AbstractTemplate { + protected Class componentClass; + + protected Template componentTemplate; + + public ObjectArrayTemplate(Class componentClass, Template componentTemplate) { + this.componentClass = componentClass; + this.componentTemplate = componentTemplate; + } + + @Override + public void write(Packer packer, Object v, boolean required) + throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } + if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { + throw new MessageTypeException(); + } + + Object[] array = (Object[]) v; + int length = array.length; + packer.writeArrayBegin(length); + for (int i = 0; i < length; i++) { + componentTemplate.write(packer, array[i], required); + } + packer.writeArrayEnd(); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) + throws IOException { + if (!required && unpacker.trySkipNil()) { + return null; + } + + int length = unpacker.readArrayBegin(); + Object[] array = (Object[]) Array.newInstance(componentClass, length); + for (int i = 0; i < length; i++) { + array[i] = componentTemplate.read(unpacker, null, required); + } + unpacker.readArrayEnd(); + return array; + } +} diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index 1b66a9166..7a621f32c 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -32,6 +32,7 @@ import org.msgpack.template.FloatArrayTemplate; import org.msgpack.template.IntegerArrayTemplate; import org.msgpack.template.LongArrayTemplate; +import org.msgpack.template.ObjectArrayTemplate; import org.msgpack.template.ShortArrayTemplate; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; @@ -44,55 +45,6 @@ public class ArrayTemplateBuilder extends AbstractTemplateBuilder { private static final Logger LOG = LoggerFactory.getLogger(ArrayTemplateBuilder.class); - static class ReflectionObjectArrayTemplate extends AbstractTemplate { - private Class componentClass; - - private Template elementTemplate; - - public ReflectionObjectArrayTemplate(Class componentClass, Template elementTemplate) { - this.componentClass = componentClass; - this.elementTemplate = elementTemplate; - } - - @Override - public void write(Packer packer, Object v, boolean required) throws IOException { - if (v == null) { - if (required) { - throw new MessageTypeException("Attempted to write null"); - } - packer.writeNil(); - return; - } - if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { - throw new MessageTypeException(); - } - - Object[] array = (Object[]) v; - int length = array.length; - packer.writeArrayBegin(length); - for (int i = 0; i < length; i++) { - elementTemplate.write(packer,array[i], required); - } - packer.writeArrayEnd(); - } - - @Override - public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { - if (!required && unpacker.trySkipNil()) { - return null; - } - - int length = unpacker.readArrayBegin(); - Object[] array = (Object[]) Array.newInstance(componentClass, - length); - for (int i = 0; i < length; i++) { - array[i] = elementTemplate.read(unpacker, null, required); - } - unpacker.readArrayEnd(); - return array; - } - } - static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { private Class componentClass; @@ -168,13 +120,11 @@ public Template buildTemplate(Type arrayType) { GenericArrayType type = (GenericArrayType) arrayType; baseType = type.getGenericComponentType(); while (baseType instanceof GenericArrayType) { - baseType = ((GenericArrayType) baseType) - .getGenericComponentType(); + baseType = ((GenericArrayType) baseType).getGenericComponentType(); dim += 1; } if (baseType instanceof ParameterizedType) { - baseClass = (Class) ((ParameterizedType) baseType) - .getRawType(); + baseClass = (Class) ((ParameterizedType) baseType).getRawType(); } else { baseClass = (Class) baseType; } @@ -188,19 +138,6 @@ public Template buildTemplate(Type arrayType) { baseType = baseClass; } return toTemplate(arrayType, baseType, baseClass, dim); - - } - - @Override - public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { - // TODO Auto-generated method stub - return null; - } - - @Override - protected Template buildTemplate(Class targetClass, FieldEntry[] entries) { - // TODO Auto-generated method stub - return null; } private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClass, int dim) { @@ -219,20 +156,30 @@ private Template toTemplate(Type arrayType, Type genericBaseType, Class baseC return DoubleArrayTemplate.getInstance(); } else { Template baseTemplate = registry.lookup(genericBaseType); - return new ReflectionObjectArrayTemplate(baseClass, baseTemplate); + return new ObjectArrayTemplate(baseClass, baseTemplate); } } else if (dim == 2) { - Class componentClass = Array.newInstance(baseClass, 0).getClass(); + Class componentClass = Array.newInstance(baseClass, 0).getClass(); Template componentTemplate = toTemplate(arrayType, genericBaseType, baseClass, dim - 1); return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); } else { ReflectionMultidimentionalArrayTemplate componentTemplate = (ReflectionMultidimentionalArrayTemplate) toTemplate(arrayType, genericBaseType, baseClass, dim - 1); - Class componentClass = Array.newInstance(componentTemplate.getComponentClass(), 0).getClass(); + Class componentClass = Array.newInstance(componentTemplate.getComponentClass(), 0).getClass(); return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); } } + @Override + public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { + throw new UnsupportedOperationException(targetClass.getName()); + } + + @Override + protected Template buildTemplate(Class targetClass, FieldEntry[] entries) { + throw new UnsupportedOperationException(targetClass.getName()); + } + @Override public void writeTemplate(Type targetType, String directoryName) { throw new UnsupportedOperationException(targetType.toString()); From c090ed18dcbb668e4855639c293fbea486c7ae76 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 9 Aug 2011 10:46:13 +0900 Subject: [PATCH 097/409] trivial modifications --- src/main/java/org/msgpack/template/AbstractTemplate.java | 1 + .../msgpack/template/builder/ArrayTemplateBuilder.java | 8 ++++---- .../template/builder/ReflectionTemplateBuilder.java | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java index dde16d631..e77b36d86 100644 --- a/src/main/java/org/msgpack/template/AbstractTemplate.java +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -23,6 +23,7 @@ public abstract class AbstractTemplate implements Template { + public void write(Packer pk, T v) throws IOException { write(pk, v, false); } diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index 7a621f32c..0c24c17fa 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -46,16 +46,16 @@ public class ArrayTemplateBuilder extends AbstractTemplateBuilder { private static final Logger LOG = LoggerFactory.getLogger(ArrayTemplateBuilder.class); static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { - private Class componentClass; + private Class componentClass; private Template componentTemplate; - public ReflectionMultidimentionalArrayTemplate(Class componentClass, Template componentTemplate) { + public ReflectionMultidimentionalArrayTemplate(Class componentClass, Template componentTemplate) { this.componentClass = componentClass; this.componentTemplate = componentTemplate; } - Class getComponentClass() { + Class getComponentClass() { return componentClass; } @@ -140,7 +140,7 @@ public Template buildTemplate(Type arrayType) { return toTemplate(arrayType, baseType, baseClass, dim); } - private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClass, int dim) { + private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClass, int dim) { if (dim == 1) { if (baseClass == boolean.class) { return BooleanArrayTemplate.getInstance(); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index aca33159b..97e19e0b3 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -43,8 +43,8 @@ protected static abstract class ReflectionFieldTemplate extends AbstractTemplate this.entry = entry; } - void setNil(Object target) { - entry.set(target, null); + void setNil(Object v) { + entry.set(v, null); } } From 47bea5877e0b15cc011c5287a04827a395987310 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 9 Aug 2011 11:52:35 +0900 Subject: [PATCH 098/409] refined some template classes and modified those test programs --- .../msgpack/template/BigIntegerTemplate.java | 6 +- .../template/BooleanArrayTemplate.java | 12 +-- .../msgpack/template/ByteArrayTemplate.java | 6 +- .../msgpack/template/ByteBufferTemplate.java | 6 +- .../org/msgpack/template/ByteTemplate.java | 6 +- .../msgpack/template/CollectionTemplate.java | 12 +-- .../org/msgpack/template/DateTemplate.java | 6 +- .../org/msgpack/template/DefaultTemplate.java | 4 +- .../msgpack/template/DoubleArrayTemplate.java | 12 +-- .../org/msgpack/template/DoubleTemplate.java | 6 +- .../msgpack/template/FloatArrayTemplate.java | 10 +-- .../org/msgpack/template/FloatTemplate.java | 6 +- .../template/IntegerArrayTemplate.java | 12 +-- .../org/msgpack/template/IntegerTemplate.java | 6 +- .../org/msgpack/template/ListTemplate.java | 4 +- .../msgpack/template/LongArrayTemplate.java | 12 +-- .../org/msgpack/template/LongTemplate.java | 6 +- .../org/msgpack/template/MapTemplate.java | 14 ++-- .../template/MessagePackableTemplate.java | 6 +- .../msgpack/template/ShortArrayTemplate.java | 12 +-- .../org/msgpack/template/ShortTemplate.java | 6 +- .../org/msgpack/template/StringTemplate.java | 6 +- .../org/msgpack/template/ValueTemplate.java | 6 +- src/test/java/org/msgpack/TestSet.java | 21 +++-- .../template/TestBooleanArrayTemplate.java | 79 +++++++++++++------ .../template/TestDoubleArrayTemplate.java | 79 +++++++++++++------ .../template/TestFloatArrayTemplate.java | 79 +++++++++++++------ .../template/TestIntegerArrayTemplate.java | 79 +++++++++++++------ .../template/TestLongArrayTemplate.java | 79 +++++++++++++------ .../template/TestShortArrayTemplate.java | 79 +++++++++++++------ 30 files changed, 431 insertions(+), 246 deletions(-) diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index bd1effc00..ad5d2de5d 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -28,8 +28,8 @@ public class BigIntegerTemplate extends AbstractTemplate { private BigIntegerTemplate() { } public void write(Packer pk, BigInteger target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -39,7 +39,7 @@ public void write(Packer pk, BigInteger target, boolean required) throws IOExcep } public BigInteger read(Unpacker u, BigInteger to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readBigInteger(); diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index 246b46f84..ed42e0d38 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -27,29 +27,29 @@ public class BooleanArrayTemplate extends AbstractTemplate { private BooleanArrayTemplate() { } public void write(Packer pk, boolean[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(boolean a : target) { + for (boolean a : target) { pk.writeBoolean(a); } pk.writeArrayEnd(); } public boolean[] read(Unpacker u, boolean[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); - if(to == null || to.length != n) { + if (to == null || to.length != n) { to = new boolean[n]; } - for(int i=0; i < n; i++) { + for (int i=0; i < n; i++) { to[i] = u.readBoolean(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index 4ffce0c5d..155ed5ffc 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -27,8 +27,8 @@ public class ByteArrayTemplate extends AbstractTemplate { private ByteArrayTemplate() { } public void write(Packer pk, byte[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, byte[] target, boolean required) throws IOException } public byte[] read(Unpacker u, byte[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readByteArray(); // TODO read to 'to' obj diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index d387a3b4b..6c5fb4944 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -29,8 +29,8 @@ public class ByteBufferTemplate extends AbstractTemplate { private ByteBufferTemplate() { } public void write(Packer pk, ByteBuffer target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -40,7 +40,7 @@ public void write(Packer pk, ByteBuffer target, boolean required) throws IOExcep } public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readByteBuffer(); // TODO read to 'to' obj? diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 1482dfb99..8c89cfe04 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -27,8 +27,8 @@ public class ByteTemplate extends AbstractTemplate { private ByteTemplate() { } public void write(Packer pk, Byte target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Byte target, boolean required) throws IOException { } public Byte read(Unpacker u, Byte to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readByte(); diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index b19835254..2f7625b79 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -33,8 +33,8 @@ public CollectionTemplate(Template elementTemplate) { } public void write(Packer pk, Collection target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -42,23 +42,23 @@ public void write(Packer pk, Collection target, boolean required) throws IOEx } Collection col = target; pk.writeArrayBegin(col.size()); - for(E e : col) { + for (E e : col) { elementTemplate.write(pk, e); } pk.writeArrayEnd(); } public Collection read(Unpacker u, Collection to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); - if(to == null) { + if (to == null) { to = new LinkedList(); } else { to.clear(); } - for(int i=0; i < n; i++) { + for (int i= 0; i < n; i++) { E e = elementTemplate.read(u, null); to.add(e); } diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index bdbc0946f..58cf90e4c 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -29,8 +29,8 @@ public class DateTemplate extends AbstractTemplate { private DateTemplate() { } public void write(Packer pk, Date target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -40,7 +40,7 @@ public void write(Packer pk, Date target, boolean required) throws IOException { } public Date read(Unpacker u, Date to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } long temp = u.readLong(); diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java index 03086a825..b4b59b2ef 100644 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ b/src/main/java/org/msgpack/template/DefaultTemplate.java @@ -50,7 +50,7 @@ public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type loo public void write(Packer pk, Object target, boolean required) throws IOException { if (messagePackable) { if (target == null) { - if(required) { + if (required) { throw new NullPointerException("Attempted to write nil"); } pk.writeNil(); @@ -67,7 +67,7 @@ public void write(Packer pk, Object target, boolean required) throws IOException } public Object read(Unpacker u, Object to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } // TODO #MN diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index e8f56584c..2a05e1a48 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -27,29 +27,29 @@ public class DoubleArrayTemplate extends AbstractTemplate { private DoubleArrayTemplate() { } public void write(Packer pk, double[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(double a : target) { + for (double a : target) { pk.writeDouble(a); } pk.writeArrayEnd(); } public double[] read(Unpacker u, double[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); - if(to == null || to.length != n) { + if (to == null || to.length != n) { to = new double[n]; } - for(int i=0; i < n; i++) { + for (int i=0; i < n; i++) { to[i] = u.readDouble(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index 06196c876..1b27686da 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -27,8 +27,8 @@ public class DoubleTemplate extends AbstractTemplate { private DoubleTemplate() { } public void write(Packer pk, Double target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Double target, boolean required) throws IOException } public Double read(Unpacker u, Double to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readDouble(); diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index df9c36eb3..402837f79 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -27,15 +27,15 @@ public class FloatArrayTemplate extends AbstractTemplate { private FloatArrayTemplate() { } public void write(Packer pk, float[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(float a : target) { + for (float a : target) { pk.writeFloat(a); } pk.writeArrayEnd(); @@ -46,10 +46,10 @@ public float[] read(Unpacker u, float[] to, boolean required) throws IOException return null; } int n = u.readArrayBegin(); - if(to == null || to.length != n) { + if (to == null || to.length != n) { to = new float[n]; } - for(int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { to[i] = u.readFloat(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index 71a7033f6..e2e474c23 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -27,8 +27,8 @@ public class FloatTemplate extends AbstractTemplate { private FloatTemplate() { } public void write(Packer pk, Float target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Float target, boolean required) throws IOException } public Float read(Unpacker u, Float to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readFloat(); diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 6b9c10e3c..80b6ad1fc 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -27,32 +27,32 @@ public class IntegerArrayTemplate extends AbstractTemplate { private IntegerArrayTemplate() { } public void write(Packer pk, int[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(int a : target) { + for (int a : target) { pk.writeInt(a); } pk.writeArrayEnd(); } public int[] read(Unpacker u, int[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); int[] array; - if(to != null && to.length == n) { + if (to != null && to.length == n) { array = to; } else { array = new int[n]; } - for(int i=0; i < n; i++) { + for (int i=0; i < n; i++) { array[i] = u.readInt(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index c7527ac88..fedb2a6cb 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -27,8 +27,8 @@ public class IntegerTemplate extends AbstractTemplate { private IntegerTemplate() { } public void write(Packer pk, Integer target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Integer target, boolean required) throws IOExceptio } public Integer read(Unpacker u, Integer to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readInt(); diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index fdc90517d..a4b9cb423 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -35,7 +35,7 @@ public ListTemplate(Template elementTemplate) { public void write(Packer pk, List target, boolean required) throws IOException { if (! (target instanceof List)) { if (target == null) { - if(required) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -51,7 +51,7 @@ public void write(Packer pk, List target, boolean required) throws IOExceptio } public List read(Unpacker u, List to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index bdb5fda2f..ff8c41094 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -27,29 +27,29 @@ public class LongArrayTemplate extends AbstractTemplate { private LongArrayTemplate() { } public void write(Packer pk, long[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(long a : target) { + for (long a : target) { pk.writeLong(a); } pk.writeArrayEnd(); } public long[] read(Unpacker u, long[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); - if(to == null || to.length != n) { + if (to == null || to.length != n) { to = new long[n]; } - for(int i=0; i < n; i++) { + for (int i=0; i < n; i++) { to[i] = u.readLong(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index 6a67c29c0..267b57386 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -27,8 +27,8 @@ public class LongTemplate extends AbstractTemplate { private LongTemplate() { } public void write(Packer pk, Long target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Long target, boolean required) throws IOException { } public Long read(Unpacker u, Long to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readLong(); diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index 7c7538335..18d4eab55 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -35,9 +35,9 @@ public MapTemplate(Template keyTemplate, Template valueTemplate) { } public void write(Packer pk, Map target, boolean required) throws IOException { - if(!(target instanceof Map)) { - if(target == null) { - if(required) { + if (!(target instanceof Map)) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -47,7 +47,7 @@ public void write(Packer pk, Map target, boolean required) throws IOExcepti } Map map = (Map) target; pk.writeMapBegin(map.size()); - for(Map.Entry pair : map.entrySet()) { + for (Map.Entry pair : map.entrySet()) { keyTemplate.write(pk, pair.getKey()); valueTemplate.write(pk, pair.getValue()); } @@ -55,18 +55,18 @@ public void write(Packer pk, Map target, boolean required) throws IOExcepti } public Map read(Unpacker u, Map to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readMapBegin(); Map map; - if(to != null) { + if (to != null) { map = (Map) to; map.clear(); } else { map = new HashMap(n); } - for(int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { K key = keyTemplate.read(u, null); V value = valueTemplate.read(u, null); map.put(key, value); diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index 663627753..01f6fcb66 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -32,8 +32,8 @@ public class MessagePackableTemplate extends AbstractTemplate { } public void write(Packer pk, MessagePackable target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -43,7 +43,7 @@ public void write(Packer pk, MessagePackable target, boolean required) throws IO } public MessagePackable read(Unpacker u, MessagePackable to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } if (to == null) { diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index 15d6888e3..e168b9861 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -27,29 +27,29 @@ public class ShortArrayTemplate extends AbstractTemplate { private ShortArrayTemplate() { } public void write(Packer pk, short[] target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } pk.writeArrayBegin(target.length); - for(short a : target) { + for (short a : target) { pk.writeShort(a); } pk.writeArrayEnd(); } public short[] read(Unpacker u, short[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); - if(to == null || to.length != n) { + if (to == null || to.length != n) { to = new short[n]; } - for(int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { to[i] = u.readShort(); } u.readArrayEnd(); diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index 33ac32bba..b6fd15e4c 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -27,8 +27,8 @@ public class ShortTemplate extends AbstractTemplate { private ShortTemplate() { } public void write(Packer pk, Short target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, Short target, boolean required) throws IOException } public Short read(Unpacker u, Short to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readShort(); diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index 373073644..682b396e6 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -27,8 +27,8 @@ public class StringTemplate extends AbstractTemplate { private StringTemplate() { } public void write(Packer pk, String target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,7 +38,7 @@ public void write(Packer pk, String target, boolean required) throws IOException } public String read(Unpacker u, String to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readString(); diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 02b0d2c47..75a13cba6 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -28,8 +28,8 @@ public class ValueTemplate extends AbstractTemplate { private ValueTemplate() { } public void write(Packer pk, Value target, boolean required) throws IOException { - if(target == null) { - if(required) { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -39,7 +39,7 @@ public void write(Packer pk, Value target, boolean required) throws IOException } public Value read(Unpacker u, Value to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } return u.readValue(); diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index 8e6fc5a4e..7e8171ea8 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -25,7 +25,7 @@ public void testBoolean(boolean v) throws Exception { } public void testBooleanArray() throws Exception { - // FIXME testBooleanArray(null); + testBooleanArray(null); testBooleanArray(new boolean[0]); testBooleanArray(new boolean[] { true }); testBooleanArray(new boolean[] { false }); @@ -59,7 +59,7 @@ public void testByte(byte v) throws Exception { } public void testByteArray() throws Exception { - // FIXME testByteArray(null); + // TODO testByteArray(null); // #MN considering next version Random rand = new Random(System.currentTimeMillis()); byte[] b0 = new byte[0]; testByteArray(b0); @@ -92,7 +92,7 @@ public void testShort(short v) throws Exception { } public void testShortArray() throws Exception { - // FIXME testShortArray(null); + testShortArray(null); testShortArray(new short[0]); testShortArray(new short[] { 0 }); testShortArray(new short[] { -1 }); @@ -130,7 +130,7 @@ public void testInteger(int v) throws Exception { } public void testIntegerArray() throws Exception { - // FIXME testIntegerArray(null); + testIntegerArray(null); testIntegerArray(new int[0]); testIntegerArray(new int[] { 0 }); testIntegerArray(new int[] { -1 }); @@ -166,7 +166,7 @@ public void testLong(long v) throws Exception { } public void testLongArray() throws Exception { - // FIXME testLongArray(null); + testLongArray(null); testLongArray(new long[0]); testLongArray(new long[] { 0 }); testLongArray(new long[] { -1 }); @@ -206,7 +206,7 @@ public void testFloat(float v) throws Exception { } public void testFloatArray() throws Exception { - // FIXME testFloatArray(null); + testFloatArray(null); testFloatArray(new float[0]); testFloatArray(new float[] { (float) 0.0 }); testFloatArray(new float[] { (float) -0.0 }); @@ -250,7 +250,7 @@ public void testDouble(double v) throws Exception { } public void testDoubleArray() throws Exception { - // FIXME testDoubleArray(null); + testDoubleArray(null); testDoubleArray(new double[0]); testDoubleArray(new double[] { (double) 0.0 }); testDoubleArray(new double[] { (double) -0.0 }); @@ -278,7 +278,7 @@ public void testNil() throws Exception { } public void testString() throws Exception { - // TODO testString(null); + // TODO testString(null); // #MN considering next version testString(""); testString("a"); testString("ab"); @@ -324,7 +324,7 @@ public void testString(String v) throws Exception { } public void testByteBuffer() throws Exception { - // FIXME testByteBuffer(null); + // FIXME testByteBuffer(null); // #MN considering next version Random rand = new Random(System.currentTimeMillis()); byte[] b0 = new byte[0]; testByteBuffer(ByteBuffer.wrap(b0)); @@ -394,7 +394,7 @@ public void testMap(Map v, Class keyElementClass, Class value } public void testBigInteger() throws Exception { - // TODO testBigInteger(null); + // TODO testBigInteger(null); // #MN considering next version testBigInteger(BigInteger.valueOf(0)); testBigInteger(BigInteger.valueOf(-1)); testBigInteger(BigInteger.valueOf(1)); @@ -422,7 +422,6 @@ public void testBigDecimal() throws Exception { testBigDecimal(BigDecimal.valueOf(Integer.MAX_VALUE)); testBigDecimal(BigDecimal.valueOf(Long.MIN_VALUE)); testBigDecimal(BigDecimal.valueOf(Long.MAX_VALUE)); - // TODO for next version #MN } public void testBigDecimal(BigDecimal v) throws Exception { diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index cbf6b7506..0c8dd9416 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -103,19 +103,24 @@ public void testBooleanArray(boolean[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new boolean[v.length]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[v.length]; + } break; case 2: - ret0 = new boolean[(int) v.length / 2]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } boolean[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertBooleanArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testBooleanArray(boolean[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new boolean[v.length]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[v.length]; + } break; case 2: - ret0 = new boolean[(int) v.length / 2]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } boolean[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertBooleanArrayEquals(v, ret); } } @@ -188,19 +198,24 @@ public void testBooleanArray(boolean[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new boolean[v.length]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[(int) v.length]; + } break; case 2: - ret0 = new boolean[(int) v.length / 2]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } boolean[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertBooleanArrayEquals(v, ret); } } @@ -230,19 +245,35 @@ public void testBooleanArray(boolean[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new boolean[v.length]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[v.length]; + } break; case 2: - ret0 = new boolean[(int) v.length / 2]; + if (v == null) { + ret0 = new boolean[0]; + } else { + ret0 = new boolean[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } boolean[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertBooleanArrayEquals(v, ret); + } + } + + public static void assertBooleanArrayEquals(boolean[] v, boolean[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i]); } } } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index 9e52a08c2..e7401ca7b 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -103,19 +103,24 @@ public void testDoubleArray(double[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new double[v.length]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[v.length]; + } break; case 2: - ret0 = new double[(int) v.length / 2]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } double[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertDoubleArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testDoubleArray(double[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new double[v.length]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[v.length]; + } break; case 2: - ret0 = new double[(int) v.length / 2]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } double[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertDoubleArrayEquals(v, ret); } } @@ -188,19 +198,24 @@ public void testDoubleArray(double[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new double[v.length]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[v.length]; + } break; case 2: - ret0 = new double[(int) v.length / 2]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } double[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertDoubleArrayEquals(v, ret); } } @@ -230,19 +245,35 @@ public void testDoubleArray(double[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new double[v.length]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[v.length]; + } break; case 2: - ret0 = new double[(int) v.length / 2]; + if (v == null) { + ret0 = new double[0]; + } else { + ret0 = new double[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } double[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertDoubleArrayEquals(v, ret); + } + } + + public static void assertDoubleArrayEquals(double[] v, double[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i], 10e-10); } } } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index e4b02493f..c1b766e66 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -103,19 +103,24 @@ public void testFloatArray(float[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new float[v.length]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[v.length]; + } break; case 2: - ret0 = new float[(int) v.length / 2]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } float[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertFloatArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testFloatArray(float[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new float[v.length]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[v.length]; + } break; case 2: - ret0 = new float[(int) v.length / 2]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } float[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertFloatArrayEquals(v, ret); } } @@ -189,19 +199,24 @@ public void testFloatArray(float[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new float[v.length]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[v.length]; + } break; case 2: - ret0 = new float[(int) v.length / 2]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } float[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertFloatArrayEquals(v, ret); } } @@ -231,19 +246,35 @@ public void testFloatArray(float[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new float[v.length]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[v.length]; + } break; case 2: - ret0 = new float[(int) v.length / 2]; + if (v == null) { + ret0 = new float[0]; + } else { + ret0 = new float[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } float[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i], 10e-10); - } + assertFloatArrayEquals(v, ret); + } + } + + public static void assertFloatArrayEquals(float[] v, float[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i], 10e-10); } } } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 295c583b8..b3fc38056 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -103,19 +103,24 @@ public void testIntegerArray(int[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new int[v.length]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[v.length]; + } break; case 2: - ret0 = new int[(int) v.length / 2]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } int[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertIntegerArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testIntegerArray(int[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new int[v.length]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[v.length]; + } break; case 2: - ret0 = new int[(int) v.length / 2]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } int[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertIntegerArrayEquals(v, ret); } } @@ -188,19 +198,24 @@ public void testIntegerArray(int[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new int[v.length]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[v.length]; + } break; case 2: - ret0 = new int[(int) v.length / 2]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } int[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertIntegerArrayEquals(v, ret); } } @@ -230,19 +245,35 @@ public void testIntegerArray(int[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new int[v.length]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[v.length]; + } break; case 2: - ret0 = new int[(int) v.length / 2]; + if (v == null) { + ret0 = new int[0]; + } else { + ret0 = new int[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } int[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertIntegerArrayEquals(v, ret); + } + } + + public static void assertIntegerArrayEquals(int[] v, int[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i]); } } } diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index c07d63151..c4c31ea9a 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -103,19 +103,24 @@ public void testLongArray(long[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new long[v.length]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[v.length]; + } break; case 2: - ret0 = new long[(int) v.length / 2]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } long[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertLongArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testLongArray(long[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new long[v.length]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[v.length]; + } break; case 2: - ret0 = new long[(int) v.length / 2]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } long[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertLongArrayEquals(v, ret); } } @@ -188,19 +198,24 @@ public void testLongArray(long[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new long[v.length]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[v.length]; + } break; case 2: - ret0 = new long[(int) v.length / 2]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } long[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertLongArrayEquals(v, ret); } } @@ -230,19 +245,35 @@ public void testLongArray(long[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new long[v.length]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[v.length]; + } break; case 2: - ret0 = new long[(int) v.length / 2]; + if (v == null) { + ret0 = new long[0]; + } else { + ret0 = new long[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } long[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertLongArrayEquals(v, ret); + } + } + + public static void assertLongArrayEquals(long[] v, long[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i]); } } } diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index 888531acc..c795ffbfa 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -103,19 +103,24 @@ public void testShortArray(short[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new short[v.length]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[v.length]; + } break; case 2: - ret0 = new short[(int) v.length / 2]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } short[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertShortArrayEquals(v, ret); } } @@ -146,19 +151,24 @@ public void testShortArray(short[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new short[v.length]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[v.length]; + } break; case 2: - ret0 = new short[(int) v.length / 2]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } short[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertShortArrayEquals(v, ret); } } @@ -188,19 +198,24 @@ public void testShortArray(short[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new short[v.length]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[v.length]; + } break; case 2: - ret0 = new short[(int) v.length / 2]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } short[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertShortArrayEquals(v, ret); } } @@ -230,19 +245,35 @@ public void testShortArray(short[] v) throws Exception { ret0 = null; break; case 1: - ret0 = new short[v.length]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[v.length]; + } break; case 2: - ret0 = new short[(int) v.length / 2]; + if (v == null) { + ret0 = new short[0]; + } else { + ret0 = new short[(int) v.length / 2]; + } break; default: throw new IllegalArgumentException(); } short[] ret = tmpl.read(unpacker, ret0); - assertEquals(v.length, ret.length); - for (int i = 0; i < v.length; ++i) { - assertEquals(v[i], ret[i]); - } + assertShortArrayEquals(v, ret); + } + } + + public static void assertShortArrayEquals(short[] v, short[] ret) { + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.length, ret.length); + for (int i = 0; i < v.length; ++i) { + assertEquals(v[i], ret[i]); } } } From da86aa3d5d9220df7f03228a9bbd5561299a03aa Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 9 Aug 2011 12:37:08 +0900 Subject: [PATCH 099/409] refined test programs for map object serializing/deserializing --- .../msgpack/TestBufferPackBufferUnpack.java | 34 ++++++++---- .../org/msgpack/TestBufferPackConvert.java | 36 +++++++++---- .../org/msgpack/TestBufferPackUnpack.java | 36 +++++++++---- .../TestJSONBufferPackBufferUnpack.java | 54 ++++++++++++------- .../org/msgpack/TestJSONBufferPackUnpack.java | 52 +++++++++++------- .../org/msgpack/TestJSONPackBufferUnpack.java | 52 +++++++++++------- .../java/org/msgpack/TestJSONPackUnpack.java | 52 +++++++++++------- .../org/msgpack/TestPackBufferUnpack.java | 36 +++++++++---- .../java/org/msgpack/TestPackConvert.java | 36 +++++++++---- src/test/java/org/msgpack/TestPackUnpack.java | 36 +++++++++---- src/test/java/org/msgpack/TestSet.java | 4 +- .../org/msgpack/TestUnconvertConvert.java | 38 +++++++++---- .../org/msgpack/TestUnconvertReconvert.java | 38 +++++++++---- .../msgpack/template/TestListTemplate.java | 25 +++++---- .../org/msgpack/template/TestMapTemplate.java | 33 ++++++------ 15 files changed, 376 insertions(+), 186 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index daee36246..46a5086c0 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -196,13 +196,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); } - packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -226,14 +234,22 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index e40286133..d0f2d18f5 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -221,13 +221,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -252,14 +260,22 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index 30d4109ad..8d341335b 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -197,13 +197,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -227,14 +235,22 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java index e27431a16..38531744d 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java @@ -222,13 +222,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -252,23 +260,31 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if(!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (IOException ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java index 3b202a93f..b4c171a6c 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java @@ -222,13 +222,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); } - packer.writeArrayEnd(); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -252,23 +260,31 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if(!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (Exception ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (Exception ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java index affbca188..259303bca 100644 --- a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java @@ -236,13 +236,21 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); } - packer.writeArrayEnd(); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -267,23 +275,31 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if(!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (IOException ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestJSONPackUnpack.java b/src/test/java/org/msgpack/TestJSONPackUnpack.java index dbb0ff424..799ccfcc3 100644 --- a/src/test/java/org/msgpack/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestJSONPackUnpack.java @@ -236,13 +236,21 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); } - packer.writeArrayEnd(); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -267,23 +275,31 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if(!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (IOException ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java index 24c5f9a3f..6f1b57417 100644 --- a/src/test/java/org/msgpack/TestPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -209,13 +209,21 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -240,14 +248,22 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 04c038617..7d238ac0e 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -234,13 +234,21 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -266,14 +274,22 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index e2eb458f2..706d90a2e 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -205,13 +205,21 @@ public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -236,14 +244,22 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); } - packer.writeMapEnd(); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index 7e8171ea8..f8ea72fdf 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -340,7 +340,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { } public void testList() throws Exception { - // TODO testList(null, Integer.class); + testList(null, Integer.class); List list0 = new ArrayList(); testList(list0, Integer.class); List list1 = new ArrayList(); @@ -367,7 +367,7 @@ public void testList(List v, Class elementClass) throws Exception { } public void testMap() throws Exception { - // TODO testMap(null, Integer.class, Integer.class); + testMap(null, Integer.class, Integer.class); Map map0 = new HashMap(); testMap(map0, Integer.class, Integer.class); Map map1 = new HashMap(); diff --git a/src/test/java/org/msgpack/TestUnconvertConvert.java b/src/test/java/org/msgpack/TestUnconvertConvert.java index fe32759b4..034bedfe3 100644 --- a/src/test/java/org/msgpack/TestUnconvertConvert.java +++ b/src/test/java/org/msgpack/TestUnconvertConvert.java @@ -198,13 +198,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readArrayBegin(); List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { @@ -228,14 +236,22 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + } Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } int size = unpacker.readMapBegin(); Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { diff --git a/src/test/java/org/msgpack/TestUnconvertReconvert.java b/src/test/java/org/msgpack/TestUnconvertReconvert.java index 78e38b17f..d6226d799 100644 --- a/src/test/java/org/msgpack/TestUnconvertReconvert.java +++ b/src/test/java/org/msgpack/TestUnconvertReconvert.java @@ -198,13 +198,21 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } Value ret = unpacker.readValue(); assertEquals(r, ret); } @@ -218,14 +226,22 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + } Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } Value ret = unpacker.readValue(); assertEquals(r, ret); } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index d43d4baf7..0fb29fb1d 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -16,7 +16,6 @@ import org.msgpack.unpacker.Unpacker; -@Ignore public class TestListTemplate { @Test @@ -48,14 +47,14 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.lookup(elementClass); - Template tmpl = new ListTemplate(elementTemplate); + Template elementTemplate = msgpack.lookup(elementClass); + Template> tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + List ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -69,14 +68,14 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.lookup(elementClass); - Template tmpl = new ListTemplate(elementTemplate); + Template elementTemplate = msgpack.lookup(elementClass); + Template> tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = (String) tmpl.read(unpacker, null); + List ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -90,13 +89,13 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.lookup(elementClass); - Template tmpl = new ListTemplate(elementTemplate); + Template elementTemplate = msgpack.lookup(elementClass); + Template> tmpl = new ListTemplate(elementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = (String) tmpl.read(unpacker, null); + List ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -110,13 +109,13 @@ public void testList() throws Exception { @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template elementTemplate = msgpack.lookup(elementClass); - Template tmpl = new ListTemplate(elementTemplate); + Template elementTemplate = msgpack.lookup(elementClass); + Template> tmpl = new ListTemplate(elementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + List ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index cb44a602c..d48cdc75d 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -17,7 +17,6 @@ import org.msgpack.unpacker.Unpacker; -@Ignore public class TestMapTemplate { @Test @@ -49,15 +48,15 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.lookup(keyElementClass); - Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -71,15 +70,15 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.lookup(keyElementClass); - Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = (String) tmpl.read(unpacker, null); + Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -93,14 +92,14 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.lookup(keyElementClass); - Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = (String) tmpl.read(unpacker, null); + Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } @@ -114,14 +113,14 @@ public void testMap() throws Exception { @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); - Template keyElementTemplate = msgpack.lookup(keyElementClass); - Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template keyElementTemplate = msgpack.lookup(keyElementClass); + Template valueElementTemplate = msgpack.lookup(valueElementClass); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = (String) tmpl.read(unpacker, null); + Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } From cefd2abaee64103ca0f6cb99e40974d7ccb05362 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 9 Aug 2011 15:21:06 +0900 Subject: [PATCH 100/409] renamed TestReflectionBeans*.java to TestBeansReflection*.java --- ...pack.java => TestReflectionBeansBufferPackBufferUnpack.java} | 2 +- ...ckConvert.java => TestReflectionBeansBufferPackConvert.java} | 2 +- ...PackUnpack.java => TestReflectionBeansBufferPackUnpack.java} | 2 +- ...fferUnpack.java => TestReflectionBeansPackBufferUnpack.java} | 2 +- ...tionPackConvert.java => TestReflectionBeansPackConvert.java} | 2 +- ...reamUnpack.java => TestReflectionBeansPackStreamUnpack.java} | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionBufferPackBufferUnpack.java => TestReflectionBeansBufferPackBufferUnpack.java} (99%) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionBufferPackConvert.java => TestReflectionBeansBufferPackConvert.java} (99%) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionBufferPackUnpack.java => TestReflectionBeansBufferPackUnpack.java} (99%) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionPackBufferUnpack.java => TestReflectionBeansPackBufferUnpack.java} (99%) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionPackConvert.java => TestReflectionBeansPackConvert.java} (99%) rename src/test/java/org/msgpack/template/builder/{TestBeansReflectionPackStreamUnpack.java => TestReflectionBeansPackStreamUnpack.java} (99%) diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 78cac5e13..363dbacf1 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -31,7 +31,7 @@ import org.msgpack.unpacker.BufferUnpacker; -public class TestBeansReflectionBufferPackBufferUnpack extends TestSet { +public class TestReflectionBeansBufferPackBufferUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index ea5e3b6aa..359ed069e 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -33,7 +33,7 @@ import org.msgpack.unpacker.Converter; -public class TestBeansReflectionBufferPackConvert extends TestSet { +public class TestReflectionBeansBufferPackConvert extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index 0cdc8ad86..d7fcf9ac3 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -33,7 +33,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestBeansReflectionBufferPackUnpack extends TestSet { +public class TestReflectionBeansBufferPackUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index ad5341928..cfe94c0a7 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -33,7 +33,7 @@ import org.msgpack.unpacker.BufferUnpacker; -public class TestBeansReflectionPackBufferUnpack extends TestSet { +public class TestReflectionBeansPackBufferUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index a0d28809b..10d2f5e5d 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -35,7 +35,7 @@ import org.msgpack.unpacker.Converter; -public class TestBeansReflectionPackConvert extends TestSet { +public class TestReflectionBeansPackConvert extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java similarity index 99% rename from src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java index ef741d9a5..6164a26df 100644 --- a/src/test/java/org/msgpack/template/builder/TestBeansReflectionPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java @@ -34,7 +34,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestBeansReflectionPackStreamUnpack extends TestSet { +public class TestReflectionBeansPackStreamUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { From c5e0821994976457162448a14a8a50218ca6f916 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 10 Aug 2011 10:56:11 +0900 Subject: [PATCH 101/409] fixed bug, which is cause of unexpected MessageTypeException if you deserialize null object --- .../org/msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 97e19e0b3..c4069f7a8 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -321,7 +321,7 @@ public T read(Unpacker unpacker, T to, boolean required) throws IOException { } else if (tmpl.entry.isOptional() && unpacker.trySkipNil()) { tmpl.setNil(to); } else { - tmpl.read(unpacker, to, true); + tmpl.read(unpacker, to, false); } } From 6709b5b4e5f9aac99d85779262789b76411da7d4 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 10 Aug 2011 14:24:16 +0900 Subject: [PATCH 102/409] modified reflection-based template builder for easy-to-understand error message --- .../org/msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index c4069f7a8..e26603663 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -285,7 +285,7 @@ public void write(Packer packer, T target, boolean required) throws IOException Object obj = tmpl.entry.get(target); if (obj == null) { if (tmpl.entry.isNotNullable()) { - throw new MessageTypeException(); + throw new MessageTypeException(tmpl.entry.getName() + " cannot be null by @NotNullable"); } packer.writeNil(); } else { From 1bf39e3c1e82bdca8b710676b561291e4f6d0a3e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 10 Aug 2011 14:25:24 +0900 Subject: [PATCH 103/409] refined sample classes for test programs --- .../EnumTypeFieldsClassNotNullable.java | 4 + .../org/msgpack/testclasses/FinalClass.java | 6 +- .../msgpack/testclasses/InheritanceClass.java | 18 ++- .../InheritanceClassNotNullable.java | 21 ++- .../testclasses/ListTypeFieldsClass.java | 134 +++++++++------- .../ListTypeFieldsClassNotNullable.java | 150 +++++++++++------- .../testclasses/MapTypeFieldsClass.java | 56 ++++--- .../MapTypeFieldsClassNotNullable.java | 68 +++++--- .../MessagePackableTypeFieldsClass.java | 42 +++-- ...agePackableTypeFieldsClassNotNullable.java | 52 ++++-- .../ModifiersFieldsClassNotNullable.java | 6 + .../PrimitiveTypeFieldsClassNotNullable.java | 13 ++ .../testclasses/ReferenceTypeFieldsClass.java | 38 +++-- .../ReferenceTypeFieldsClassNotNullable.java | 60 +++++-- .../org/msgpack/testclasses/SuperClass.java | 6 +- .../testclasses/SuperClassNotNullable.java | 8 +- .../UserDefinedTypeFieldsClass.java | 24 ++- ...UserDefinedTypeFieldsClassNotNullable.java | 36 ++++- 18 files changed, 485 insertions(+), 257 deletions(-) diff --git a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java index 6a15a9374..a4f9c0e81 100644 --- a/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/EnumTypeFieldsClassNotNullable.java @@ -17,18 +17,22 @@ public class EnumTypeFieldsClassNotNullable { public EnumTypeFieldsClassNotNullable() {} + @NotNullable public int getF0() { return f0; } + @NotNullable public void setF0(int f0) { this.f0 = f0; } + @NotNullable public SampleEnum getF1() { return f1; } + @NotNullable public void setF1(SampleEnum f1) { this.f1 = f1; } diff --git a/src/test/java/org/msgpack/testclasses/FinalClass.java b/src/test/java/org/msgpack/testclasses/FinalClass.java index 72eb5b619..aaf3cf43e 100644 --- a/src/test/java/org/msgpack/testclasses/FinalClass.java +++ b/src/test/java/org/msgpack/testclasses/FinalClass.java @@ -44,8 +44,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClass.java b/src/test/java/org/msgpack/testclasses/InheritanceClass.java index d2be7585f..2276606c4 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClass.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClass.java @@ -41,15 +41,21 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 - if (f2 != that.f2) { - return false; + if (f1 == null) { + if (that.f1 != null) { + return false; + } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } // f2 if (f2 != that.f2) { diff --git a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java index 30da464c0..5f6bf687c 100644 --- a/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/InheritanceClassNotNullable.java @@ -16,18 +16,22 @@ public class InheritanceClassNotNullable extends SuperClassNotNullable { public InheritanceClassNotNullable() {} + @NotNullable public String getF1() { return f1; } + @NotNullable public void setF1(String f1) { this.f1 = f1; } + @NotNullable public int getF2() { return f2; } + @NotNullable public void setF2(int f2) { this.f2 = f2; } @@ -38,14 +42,27 @@ public boolean equals(Object o) { return false; } InheritanceClassNotNullable that = (InheritanceClassNotNullable) o; + // f0 + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } + } // f1 if (f1 == null) { if (that.f1 != null) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } // f2 if (f2 != that.f2) { diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index 8f4c93b3f..1b3668c9e 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -87,15 +87,17 @@ public boolean equals(Object o) { return false; } } - if (f0.size() != that.f0.size()) { - return false; - } - Iterator this_f0_iter = f0.iterator(); - Iterator that_f0_iter = that.f0.iterator(); - for (; this_f0_iter.hasNext(); ) { - if (! this_f0_iter.next().equals(that_f0_iter.next())) { + if (that.f0 != null) { + if (f0.size() != that.f0.size()) { return false; } + Iterator this_f0_iter = f0.iterator(); + Iterator that_f0_iter = that.f0.iterator(); + for (; this_f0_iter.hasNext();) { + if (!this_f0_iter.next().equals(that_f0_iter.next())) { + return false; + } + } } // f1 if (f1 == null) { @@ -103,15 +105,17 @@ public boolean equals(Object o) { return false; } } - if (f1.size() != that.f1.size()) { - return false; - } - Iterator this_f1_iter = f1.iterator(); - Iterator that_f1_iter = that.f1.iterator(); - for (; this_f1_iter.hasNext(); ) { - if (! this_f1_iter.next().equals(that_f1_iter.next())) { + if (that.f1 != null) { + if (f1.size() != that.f1.size()) { return false; } + Iterator this_f1_iter = f1.iterator(); + Iterator that_f1_iter = that.f1.iterator(); + for (; this_f1_iter.hasNext();) { + if (!this_f1_iter.next().equals(that_f1_iter.next())) { + return false; + } + } } // f2 if (f2 == null) { @@ -119,15 +123,17 @@ public boolean equals(Object o) { return false; } } - if (f2.size() != that.f2.size()) { - return false; - } - Iterator this_f2_iter = f2.iterator(); - Iterator that_f2_iter = that.f2.iterator(); - for (; this_f2_iter.hasNext(); ) { - if (! this_f2_iter.next().equals(that_f2_iter.next())) { + if (that.f2 != null) { + if (f2.size() != that.f2.size()) { return false; } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext();) { + if (!this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } } // f3 if (f3 == null) { @@ -135,23 +141,25 @@ public boolean equals(Object o) { return false; } } - if (f3.size() != that.f3.size()) { - return false; - } - Iterator> this_f3_iter = f3.iterator(); - Iterator> that_f3_iter = that.f3.iterator(); - for (; this_f3_iter.hasNext(); ) { - List l0 = this_f3_iter.next(); - List l1 = that_f3_iter.next(); - if (l0.size() != l1.size()) { + if (that.f3 != null) { + if (f3.size() != that.f3.size()) { return false; } - Iterator l0_iter = l0.iterator(); - Iterator l1_iter = l1.iterator(); - for (; l0_iter.hasNext(); ) { - if (! l0_iter.next().equals(l1_iter.next())) { + Iterator> this_f3_iter = f3.iterator(); + Iterator> that_f3_iter = that.f3.iterator(); + for (; this_f3_iter.hasNext();) { + List l0 = this_f3_iter.next(); + List l1 = that_f3_iter.next(); + if (l0.size() != l1.size()) { return false; } + Iterator l0_iter = l0.iterator(); + Iterator l1_iter = l1.iterator(); + for (; l0_iter.hasNext();) { + if (!l0_iter.next().equals(l1_iter.next())) { + return false; + } + } } } // f4 @@ -160,15 +168,17 @@ public boolean equals(Object o) { return false; } } - if (f4.size() != that.f4.size()) { - return false; - } - Iterator this_f4_iter = f4.iterator(); - Iterator that_f4_iter = that.f4.iterator(); - for (; this_f4_iter.hasNext(); ) { - if (! this_f4_iter.next().equals(that_f4_iter.next())) { + if (that.f4 != null) { + if (f4.size() != that.f4.size()) { return false; } + Iterator this_f4_iter = f4.iterator(); + Iterator that_f4_iter = that.f4.iterator(); + for (; this_f4_iter.hasNext();) { + if (!this_f4_iter.next().equals(that_f4_iter.next())) { + return false; + } + } } // f5 if (f5 == null) { @@ -176,21 +186,23 @@ public boolean equals(Object o) { return false; } } - if (f5.size() != that.f5.size()) { - return false; - } - Iterator this_f5_iter = f5.iterator(); - Iterator that_f5_iter = that.f5.iterator(); - for (; this_f5_iter.hasNext(); ) { - byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); - byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); - if (b0.length != b1.length) { + if (that.f5 != null) { + if (f5.size() != that.f5.size()) { return false; } - for (int i = 0; i < b0.length; ++i) { - if (b0[i] != b1[i]) { + Iterator this_f5_iter = f5.iterator(); + Iterator that_f5_iter = that.f5.iterator(); + for (; this_f5_iter.hasNext();) { + byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); + byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); + if (b0.length != b1.length) { return false; } + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } } } return true; @@ -233,13 +245,15 @@ public boolean equals(Object o) { return false; } } - if (f0.length != that.f0.length) { - return false; - } - for (int i = 0; i < f0.length; ++i) { - if (f0[i] != that.f0[i]) { + if (that.f0 != null) { + if (f0.length != that.f0.length) { return false; } + for (int i = 0; i < f0.length; ++i) { + if (f0[i] != that.f0[i]) { + return false; + } + } } // f1 if (f1 == null) { @@ -247,8 +261,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (!f1.equals(that.f1)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java index 6747ff8a6..e5d68ad26 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -34,50 +34,62 @@ public class ListTypeFieldsClassNotNullable { public ListTypeFieldsClassNotNullable() { } + @NotNullable public List getF0() { return f0; } + @NotNullable public void setF0(List f0) { this.f0 = f0; } + @NotNullable public List getF1() { return f1; } + @NotNullable public void setF1(List f1) { this.f1 = f1; } + @NotNullable public List getF2() { return f2; } + @NotNullable public void setF2(List f2) { this.f2 = f2; } + @NotNullable public List> getF3() { return f3; } + @NotNullable public void setF3(List> f3) { this.f3 = f3; } + @NotNullable public List getF4() { return f4; } + @NotNullable public void setF4(List f4) { this.f4 = f4; } + @NotNullable public List getF5() { return f5; } + @NotNullable public void setF5(List f5) { this.f5 = f5; } @@ -94,15 +106,17 @@ public boolean equals(Object o) { return false; } } - if (f0.size() != that.f0.size()) { - return false; - } - Iterator this_f0_iter = f0.iterator(); - Iterator that_f0_iter = that.f0.iterator(); - for (; this_f0_iter.hasNext(); ) { - if (! this_f0_iter.next().equals(that_f0_iter.next())) { + if (that.f0 != null) { + if (f0.size() != that.f0.size()) { return false; } + Iterator this_f0_iter = f0.iterator(); + Iterator that_f0_iter = that.f0.iterator(); + for (; this_f0_iter.hasNext();) { + if (!this_f0_iter.next().equals(that_f0_iter.next())) { + return false; + } + } } // f1 if (f1 == null) { @@ -110,15 +124,17 @@ public boolean equals(Object o) { return false; } } - if (f1.size() != that.f1.size()) { - return false; - } - Iterator this_f1_iter = f1.iterator(); - Iterator that_f1_iter = that.f1.iterator(); - for (; this_f1_iter.hasNext(); ) { - if (! this_f1_iter.next().equals(that_f1_iter.next())) { + if (that.f1 != null) { + if (f1.size() != that.f1.size()) { return false; } + Iterator this_f1_iter = f1.iterator(); + Iterator that_f1_iter = that.f1.iterator(); + for (; this_f1_iter.hasNext();) { + if (!this_f1_iter.next().equals(that_f1_iter.next())) { + return false; + } + } } // f2 if (f2 == null) { @@ -126,15 +142,17 @@ public boolean equals(Object o) { return false; } } - if (f2.size() != that.f2.size()) { - return false; - } - Iterator this_f2_iter = f2.iterator(); - Iterator that_f2_iter = that.f2.iterator(); - for (; this_f2_iter.hasNext(); ) { - if (! this_f2_iter.next().equals(that_f2_iter.next())) { + if (that.f2 != null) { + if (f2.size() != that.f2.size()) { return false; } + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext();) { + if (!this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } + } } // f3 if (f3 == null) { @@ -142,23 +160,25 @@ public boolean equals(Object o) { return false; } } - if (f3.size() != that.f3.size()) { - return false; - } - Iterator> this_f3_iter = f3.iterator(); - Iterator> that_f3_iter = that.f3.iterator(); - for (; this_f3_iter.hasNext(); ) { - List l0 = this_f3_iter.next(); - List l1 = that_f3_iter.next(); - if (l0.size() != l1.size()) { + if (that.f3 != null) { + if (f3.size() != that.f3.size()) { return false; } - Iterator l0_iter = l0.iterator(); - Iterator l1_iter = l1.iterator(); - for (; l0_iter.hasNext(); ) { - if (! l0_iter.next().equals(l1_iter.next())) { + Iterator> this_f3_iter = f3.iterator(); + Iterator> that_f3_iter = that.f3.iterator(); + for (; this_f3_iter.hasNext();) { + List l0 = this_f3_iter.next(); + List l1 = that_f3_iter.next(); + if (l0.size() != l1.size()) { return false; } + Iterator l0_iter = l0.iterator(); + Iterator l1_iter = l1.iterator(); + for (; l0_iter.hasNext();) { + if (!l0_iter.next().equals(l1_iter.next())) { + return false; + } + } } } // f4 @@ -167,15 +187,17 @@ public boolean equals(Object o) { return false; } } - if (f4.size() != that.f4.size()) { - return false; - } - Iterator this_f4_iter = f4.iterator(); - Iterator that_f4_iter = that.f4.iterator(); - for (; this_f4_iter.hasNext(); ) { - if (! this_f4_iter.next().equals(that_f4_iter.next())) { + if (that.f4 != null) { + if (f4.size() != that.f4.size()) { return false; } + Iterator this_f4_iter = f4.iterator(); + Iterator that_f4_iter = that.f4.iterator(); + for (; this_f4_iter.hasNext();) { + if (!this_f4_iter.next().equals(that_f4_iter.next())) { + return false; + } + } } // f5 if (f5 == null) { @@ -183,21 +205,23 @@ public boolean equals(Object o) { return false; } } - if (f5.size() != that.f5.size()) { - return false; - } - Iterator this_f5_iter = f5.iterator(); - Iterator that_f5_iter = that.f5.iterator(); - for (; this_f5_iter.hasNext(); ) { - byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); - byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); - if (b0.length != b1.length) { + if (that.f5 != null) { + if (f5.size() != that.f5.size()) { return false; } - for (int i = 0; i < b0.length; ++i) { - if (b0[i] != b1[i]) { + Iterator this_f5_iter = f5.iterator(); + Iterator that_f5_iter = that.f5.iterator(); + for (; this_f5_iter.hasNext();) { + byte[] b0 = TestSet.toByteArray(this_f5_iter.next()); + byte[] b1 = TestSet.toByteArray(that_f5_iter.next()); + if (b0.length != b1.length) { return false; } + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } + } } } return true; @@ -213,18 +237,22 @@ public static class NestedClass { public NestedClass() {} + @NotNullable public byte[] getF0() { return f0; } + @NotNullable public void setF0(byte[] f0) { this.f0 = f0; } + @NotNullable public String getF1() { return f1; } + @NotNullable public void setF1(String f1) { this.f1 = f1; } @@ -242,13 +270,15 @@ public boolean equals(Object o) { return false; } } - if (f0.length != that.f0.length) { - return false; - } - for (int i = 0; i < f0.length; ++i) { - if (f0[i] != that.f0[i]) { + if (that.f0 != null) { + if (f0.length != that.f0.length) { return false; } + for (int i = 0; i < f0.length; ++i) { + if (f0[i] != that.f0[i]) { + return false; + } + } } // f1 if (f1 == null) { @@ -256,8 +286,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (!f1.equals(that.f1)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java index db1892d28..0740ea0e7 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -64,11 +64,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f0.entrySet()) { - Integer key = e.getKey(); - Integer val = that.f0.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f0 != null) { + for (Map.Entry e : f0.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f0.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f1 @@ -77,11 +79,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f1.entrySet()) { - Integer key = e.getKey(); - Integer val = that.f1.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f1 != null) { + for (Map.Entry e : f1.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f1.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f2 @@ -90,11 +94,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f2.entrySet()) { - String key = e.getKey(); - Integer val = that.f2.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f2 != null) { + for (Map.Entry e : f2.entrySet()) { + String key = e.getKey(); + Integer val = that.f2.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f3 @@ -103,11 +109,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f3.entrySet()) { - String key = e.getKey(); - NestedClass val = that.f3.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f3 != null) { + for (Map.Entry e : f3.entrySet()) { + String key = e.getKey(); + NestedClass val = that.f3.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } return true; @@ -132,9 +140,15 @@ public boolean equals(Object o) { if (! (o instanceof NestedClass)) { return false; } + NestedClass that = (NestedClass) o; // f0 if (f0 == null) { - if (this.f0 != null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (! f0.equals(that.f0)) { return false; } } diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java index 9bf9dea52..d1e05757f 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -25,34 +25,42 @@ public class MapTypeFieldsClassNotNullable { public MapTypeFieldsClassNotNullable() { } + @NotNullable public Map getF0() { return f0; } + @NotNullable public void setF0(Map f0) { this.f0 = f0; } + @NotNullable public Map getF1() { return f1; } + @NotNullable public void setF1(Map f1) { this.f1 = f1; } + @NotNullable public Map getF2() { return f2; } + @NotNullable public void setF2(Map f2) { this.f2 = f2; } + @NotNullable public Map getF3() { return f3; } + @NotNullable public void setF3(Map f3) { this.f3 = f3; } @@ -69,11 +77,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f0.entrySet()) { - Integer key = e.getKey(); - Integer val = that.f0.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f0 != null) { + for (Map.Entry e : f0.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f0.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f1 @@ -82,11 +92,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f1.entrySet()) { - Integer key = e.getKey(); - Integer val = that.f1.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f1 != null) { + for (Map.Entry e : f1.entrySet()) { + Integer key = e.getKey(); + Integer val = that.f1.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f2 @@ -95,11 +107,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f2.entrySet()) { - String key = e.getKey(); - Integer val = that.f2.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f2 != null) { + for (Map.Entry e : f2.entrySet()) { + String key = e.getKey(); + Integer val = that.f2.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } // f3 @@ -108,11 +122,13 @@ public boolean equals(Object o) { return false; } } - for (Map.Entry e : f3.entrySet()) { - String key = e.getKey(); - NestedClass val = that.f3.get(key); - if (! e.getValue().equals(val)) { - return false; + if (that.f3 != null) { + for (Map.Entry e : f3.entrySet()) { + String key = e.getKey(); + NestedClass val = that.f3.get(key); + if (!e.getValue().equals(val)) { + return false; + } } } return true; @@ -125,22 +141,30 @@ public static class NestedClass { public NestedClass() {} + @NotNullable public String getF0() { return f0; } + @NotNullable public void setF0(String f0) { this.f0 = f0; } @Override public boolean equals(Object o) { - if (!(o instanceof NestedClass)) { + if (! (o instanceof NestedClass)) { return false; } + NestedClass that = (NestedClass) o; // f0 if (f0 == null) { - if (this.f0 != null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (! f0.equals(that.f0)) { return false; } } diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index cc3419156..de3dbc338 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -49,8 +49,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -58,8 +60,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -156,8 +160,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -165,13 +171,15 @@ public boolean equals(Object o) { return false; } } - if (f1.length != that.f1.length) { - return false; - } - for (int i = 0; i < f1.length; ++i) { - if (f1[i] != that.f1[i]) { + if (that.f1 != null) { + if (f1.length != that.f1.length) { return false; } + for (int i = 0; i < f1.length; ++i) { + if (f1[i] != that.f1[i]) { + return false; + } + } } // f2 if (f2 == null) { @@ -179,11 +187,13 @@ public boolean equals(Object o) { return false; } } - Iterator this_f2_iter = f2.iterator(); - Iterator that_f2_iter = that.f2.iterator(); - for (; this_f2_iter.hasNext(); ) { - if (! this_f2_iter.next().equals(that_f2_iter.next())) { - return false; + if (that.f2 != null) { + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } } } return true; diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index 4fb953e86..4e5bb997d 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -25,18 +25,22 @@ public class MessagePackableTypeFieldsClassNotNullable { public MessagePackableTypeFieldsClassNotNullable() { } + @NotNullable public String getF0() { return f0; } + @NotNullable public void setF0(String f0) { this.f0 = f0; } + @NotNullable public NestedClass getF1() { return f1; } + @NotNullable public void setF1(NestedClass f1) { this.f1 = f1; } @@ -53,8 +57,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -62,8 +68,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -78,26 +86,32 @@ public static class NestedClass implements MessagePackable { public NestedClass() { } + @NotNullable public String getF0() { return f0; } + @NotNullable public void setF0(String f0) { this.f0 = f0; } + @NotNullable public int[] getF1() { return f1; } + @NotNullable public void setF1(int[] f1) { this.f1 = f1; } + @NotNullable public List getF2() { return f2; } + @NotNullable public void setF2(List f2) { this.f2 = f2; } @@ -148,8 +162,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -157,13 +173,15 @@ public boolean equals(Object o) { return false; } } - if (f1.length != that.f1.length) { - return false; - } - for (int i = 0; i < f1.length; ++i) { - if (f1[i] != that.f1[i]) { + if (that.f1 != null) { + if (f1.length != that.f1.length) { return false; } + for (int i = 0; i < f1.length; ++i) { + if (f1[i] != that.f1[i]) { + return false; + } + } } // f2 if (f2 == null) { @@ -171,11 +189,13 @@ public boolean equals(Object o) { return false; } } - Iterator this_f2_iter = f2.iterator(); - Iterator that_f2_iter = that.f2.iterator(); - for (; this_f2_iter.hasNext(); ) { - if (! this_f2_iter.next().equals(that_f2_iter.next())) { - return false; + if (that.f2 != null) { + Iterator this_f2_iter = f2.iterator(); + Iterator that_f2_iter = that.f2.iterator(); + for (; this_f2_iter.hasNext(); ) { + if (! this_f2_iter.next().equals(that_f2_iter.next())) { + return false; + } } } return true; diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index 33984e829..cb53cadeb 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -22,26 +22,32 @@ public class ModifiersFieldsClassNotNullable { public ModifiersFieldsClassNotNullable() {} + @NotNullable public int getF0() { return f0; } + @NotNullable public void setF0(int f0) { this.f0 = f0; } + @NotNullable public int getF2() { return f2; } + @NotNullable public void setF2(int f2) { this.f2 = f2; } + @NotNullable public int getF3() { return f3; } + @NotNullable public void setF3(int f3) { this.f3 = f3; } diff --git a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java index 8877a910f..a6fcb027a 100644 --- a/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/PrimitiveTypeFieldsClassNotNullable.java @@ -35,54 +35,67 @@ public byte getF0() { return f0; } + @NotNullable public void setF0(byte f0) { this.f0 = f0; } + @NotNullable public short getF1() { return f1; } + @NotNullable public void setF1(short f1) { this.f1 = f1; } + @NotNullable public int getF2() { return f2; } + @NotNullable public void setF2(int f2) { this.f2 = f2; } + @NotNullable public long getF3() { return f3; } + @NotNullable public void setF3(long f3) { this.f3 = f3; } + @NotNullable public float getF4() { return f4; } + @NotNullable public void setF4(float f4) { this.f4 = f4; } + @NotNullable public double getF5() { return f5; } + @NotNullable public void setF5(double f5) { this.f5 = f5; } + @NotNullable public boolean isF6() { return f6; } + @NotNullable public void setF6(boolean f6) { this.f6 = f6; } diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java index 38c587aa7..f68d3258a 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClass.java @@ -134,7 +134,7 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { + if (that.f0 != null && ! f0.equals(that.f0)) { return false; } if (f1 == null) { @@ -142,7 +142,7 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { + if (that.f1 != null && ! f1.equals(that.f1)) { return false; } if (f2 == null) { @@ -150,7 +150,7 @@ public boolean equals(Object o) { return false; } } - if (! f2.equals(that.f2)) { + if (that.f2 != null && ! f2.equals(that.f2)) { return false; } if (f3 == null) { @@ -158,7 +158,7 @@ public boolean equals(Object o) { return false; } } - if (! f3.equals(that.f3)) { + if (that.f3 != null && ! f3.equals(that.f3)) { return false; } if (f4 == null) { @@ -166,7 +166,7 @@ public boolean equals(Object o) { return false; } } - if (! f4.equals(that.f4)) { + if (that.f4 != null && ! f4.equals(that.f4)) { return false; } if (f5 == null) { @@ -174,7 +174,7 @@ public boolean equals(Object o) { return false; } } - if (! f5.equals(that.f5)) { + if (that.f5 != null && ! f5.equals(that.f5)) { return false; } if (f6 == null) { @@ -182,7 +182,7 @@ public boolean equals(Object o) { return false; } } - if (! f6.equals(that.f6)) { + if (that.f6 != null && ! f6.equals(that.f6)) { return false; } if (f7 == null) { @@ -190,7 +190,7 @@ public boolean equals(Object o) { return false; } } - if (! f7.equals(that.f7)) { + if (that.f7 != null && ! f7.equals(that.f7)) { return false; } if (f8 == null) { @@ -198,7 +198,7 @@ public boolean equals(Object o) { return false; } } - if (! f8.equals(that.f8)) { + if (that.f8 != null && ! f8.equals(that.f8)) { return false; } if (f9 == null) { @@ -206,9 +206,11 @@ public boolean equals(Object o) { return false; } } - for (int i = 0; i < f9.length; ++i) { - if (f9[i] != that.f9[i]) { - return false; + if (that.f9 != null) { + for (int i = 0; i < f9.length; ++i) { + if (f9[i] != that.f9[i]) { + return false; + } } } if (f10 == null) { @@ -216,11 +218,13 @@ public boolean equals(Object o) { return false; } } - byte[] b0 = TestSet.toByteArray(f10); - byte[] b1 = TestSet.toByteArray(that.f10); - for (int i = 0; i < b0.length; ++i) { - if (b0[i] != b1[i]) { - return false; + if (that.f10 != null) { + byte[] b0 = TestSet.toByteArray(f10); + byte[] b1 = TestSet.toByteArray(that.f10); + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } } } return true; diff --git a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java index e2c734ec1..8f21ce2d2 100644 --- a/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ReferenceTypeFieldsClassNotNullable.java @@ -47,90 +47,112 @@ public class ReferenceTypeFieldsClassNotNullable { public ReferenceTypeFieldsClassNotNullable() {} + @NotNullable public Byte getF0() { return f0; } + @NotNullable public void setF0(Byte f0) { this.f0 = f0; } + @NotNullable public Short getF1() { return f1; } + @NotNullable public void setF1(Short f1) { this.f1 = f1; } + @NotNullable public Integer getF2() { return f2; } + @NotNullable public void setF2(Integer f2) { this.f2 = f2; } + @NotNullable public Long getF3() { return f3; } + @NotNullable public void setF3(Long f3) { this.f3 = f3; } + @NotNullable public Float getF4() { return f4; } + @NotNullable public void setF4(Float f4) { this.f4 = f4; } + @NotNullable public Double getF5() { return f5; } + @NotNullable public void setF5(Double f5) { this.f5 = f5; } + @NotNullable public Boolean getF6() { return f6; } + @NotNullable public void setF6(Boolean f6) { this.f6 = f6; } + @NotNullable public BigInteger getF7() { return f7; } + @NotNullable public void setF7(BigInteger f7) { this.f7 = f7; } + @NotNullable public String getF8() { return f8; } + @NotNullable public void setF8(String f8) { this.f8 = f8; } + @NotNullable public byte[] getF9() { return f9; } + @NotNullable public void setF9(byte[] f9) { this.f9 = f9; } + @NotNullable public ByteBuffer getF10() { return f10; } + @NotNullable public void setF10(ByteBuffer f10) { this.f10 = f10; } @@ -146,7 +168,7 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { + if (that.f0 != null && ! f0.equals(that.f0)) { return false; } if (f1 == null) { @@ -154,7 +176,7 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { + if (that.f1 != null && ! f1.equals(that.f1)) { return false; } if (f2 == null) { @@ -162,7 +184,7 @@ public boolean equals(Object o) { return false; } } - if (! f2.equals(that.f2)) { + if (that.f2 != null && ! f2.equals(that.f2)) { return false; } if (f3 == null) { @@ -170,7 +192,7 @@ public boolean equals(Object o) { return false; } } - if (! f3.equals(that.f3)) { + if (that.f3 != null && ! f3.equals(that.f3)) { return false; } if (f4 == null) { @@ -178,7 +200,7 @@ public boolean equals(Object o) { return false; } } - if (! f4.equals(that.f4)) { + if (that.f4 != null && ! f4.equals(that.f4)) { return false; } if (f5 == null) { @@ -186,7 +208,7 @@ public boolean equals(Object o) { return false; } } - if (! f5.equals(that.f5)) { + if (that.f5 != null && ! f5.equals(that.f5)) { return false; } if (f6 == null) { @@ -194,7 +216,7 @@ public boolean equals(Object o) { return false; } } - if (! f6.equals(that.f6)) { + if (that.f6 != null && ! f6.equals(that.f6)) { return false; } if (f7 == null) { @@ -202,7 +224,7 @@ public boolean equals(Object o) { return false; } } - if (! f7.equals(that.f7)) { + if (that.f7 != null && ! f7.equals(that.f7)) { return false; } if (f8 == null) { @@ -210,7 +232,7 @@ public boolean equals(Object o) { return false; } } - if (! f8.equals(that.f8)) { + if (that.f8 != null && ! f8.equals(that.f8)) { return false; } if (f9 == null) { @@ -218,9 +240,11 @@ public boolean equals(Object o) { return false; } } - for (int i = 0; i < f9.length; ++i) { - if (f9[i] != that.f9[i]) { - return false; + if (that.f9 != null) { + for (int i = 0; i < f9.length; ++i) { + if (f9[i] != that.f9[i]) { + return false; + } } } if (f10 == null) { @@ -228,11 +252,13 @@ public boolean equals(Object o) { return false; } } - byte[] b0 = TestSet.toByteArray(f10); - byte[] b1 = TestSet.toByteArray(that.f10); - for (int i = 0; i < b0.length; ++i) { - if (b0[i] != b1[i]) { - return false; + if (that.f10 != null) { + byte[] b0 = TestSet.toByteArray(f10); + byte[] b1 = TestSet.toByteArray(that.f10); + for (int i = 0; i < b0.length; ++i) { + if (b0[i] != b1[i]) { + return false; + } } } return true; diff --git a/src/test/java/org/msgpack/testclasses/SuperClass.java b/src/test/java/org/msgpack/testclasses/SuperClass.java index eb19ef46e..f519a8695 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClass.java +++ b/src/test/java/org/msgpack/testclasses/SuperClass.java @@ -30,8 +30,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java index ec26b358d..30857bdbb 100644 --- a/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/SuperClassNotNullable.java @@ -13,10 +13,12 @@ public class SuperClassNotNullable { public SuperClassNotNullable() {} + @NotNullable public String getF0() { return f0; } + @NotNullable public void setF0(String f0) { this.f0 = f0; } @@ -32,8 +34,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java index a056cb0fc..bb3756c2b 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClass.java @@ -41,8 +41,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -50,8 +52,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -94,8 +98,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -139,8 +145,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } diff --git a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java index 1b4af3ffe..f7d36dc06 100644 --- a/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/UserDefinedTypeFieldsClassNotNullable.java @@ -16,18 +16,22 @@ public class UserDefinedTypeFieldsClassNotNullable { public UserDefinedTypeFieldsClassNotNullable () {} + @NotNullable public NestedClass1 getF0() { return f0; } + @NotNullable public void setF0(NestedClass1 f0) { this.f0 = f0; } + @NotNullable public NestedClass2 getF1() { return f1; } + @NotNullable public void setF1(NestedClass2 f1) { this.f1 = f1; } @@ -44,8 +48,10 @@ public boolean equals(Object o) { return false; } } - if (! f0.equals(that.f0)) { - return false; + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } } // f1 if (f1 == null) { @@ -53,8 +59,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -69,18 +77,22 @@ public static class NestedClass1 { public NestedClass1() {} + @NotNullable public int getF0() { return f0; } + @NotNullable public void setF0(int f0) { this.f0 = f0; } + @NotNullable public String getF1() { return f1; } + @NotNullable public void setF1(String f1) { this.f1 = f1; } @@ -99,8 +111,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } @@ -116,18 +130,22 @@ public static class NestedClass2 { public NestedClass2() {} + @NotNullable public int getF0() { return f0; } + @NotNullable public void setF0(int f0) { this.f0 = f0; } + @NotNullable public String getF1() { return f1; } + @NotNullable public void setF1(String f1) { this.f1 = f1; } @@ -146,8 +164,10 @@ public boolean equals(Object o) { return false; } } - if (! f1.equals(that.f1)) { - return false; + if (that.f1 != null) { + if (! f1.equals(that.f1)) { + return false; + } } return true; } From a86dc8d3dafa636e7bee5263b14c7bc548aa123e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 10 Aug 2011 14:26:21 +0900 Subject: [PATCH 104/409] refined test programs for template builders --- .../org/msgpack/template/builder/TestSet.java | 128 ++++++++++-------- 1 file changed, 73 insertions(+), 55 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index 3840f5dae..a3858b6be 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -6,7 +6,9 @@ import java.util.HashMap; import java.util.List; +import org.junit.Assert; import org.junit.Ignore; +import org.msgpack.MessageTypeException; import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; import org.msgpack.testclasses.FinalClass; @@ -37,8 +39,7 @@ public static byte[] toByteArray(ByteBuffer from) { } public void testPrimitiveTypeFieldsClass() throws Exception { - // TODO #MN - //testPrimitiveTypeFieldsClass(null); + testPrimitiveTypeFieldsClass(null); testPrimitiveTypeFieldsClass(new PrimitiveTypeFieldsClass()); PrimitiveTypeFieldsClass v = new PrimitiveTypeFieldsClass(); v.f0 = (byte) 0; @@ -55,8 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce } public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testPrimitiveTypeFieldsClassNotNullable(null); + testPrimitiveTypeFieldsClassNotNullable(null); testPrimitiveTypeFieldsClassNotNullable(new PrimitiveTypeFieldsClassNotNullable()); PrimitiveTypeFieldsClassNotNullable v = new PrimitiveTypeFieldsClassNotNullable(); v.f0 = (byte) 0; @@ -73,9 +73,8 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN } public void testReferenceTypeFieldsClass() throws Exception { - // TODO #MN - //testReferenceTypeFieldsClass(null); - //testReferenceTypeFieldsClass(new ReferenceTypeFieldsClass()); + testReferenceTypeFieldsClass(null); + testReferenceTypeFieldsClass(new ReferenceTypeFieldsClass()); ReferenceTypeFieldsClass v = new ReferenceTypeFieldsClass(); v.f0 = 0; v.f1 = 1; @@ -95,9 +94,13 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce } public void testReferenceTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testReferenceTypeFieldsClassNotNullable(null); - //testReferenceTypeFieldsClassNotNullable(new ReferenceTypeFieldsClassNotNullable()); + testReferenceTypeFieldsClassNotNullable(null); + try { + testReferenceTypeFieldsClassNotNullable(new ReferenceTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } ReferenceTypeFieldsClassNotNullable v = new ReferenceTypeFieldsClassNotNullable(); v.f0 = 0; v.f1 = 1; @@ -117,9 +120,8 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN } public void testListTypeFieldsClass() throws Exception { - // TODO #MN - //testListTypeFieldsClass(null); - //testListTypeFieldsClass(new ListTypeFieldsClass()); + testListTypeFieldsClass(null); + testListTypeFieldsClass(new ListTypeFieldsClass()); ListTypeFieldsClass v = new ListTypeFieldsClass(); v.f0 = new ArrayList(); v.f1 = new ArrayList(); @@ -148,9 +150,13 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { } public void testListTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testListTypeFieldsClassNotNullable(null); - //testListTypeFieldsClassNotNullable(new ListTypeFieldsClassNotNullable()); + testListTypeFieldsClassNotNullable(null); + try { + testListTypeFieldsClassNotNullable(new ListTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } ListTypeFieldsClassNotNullable v = new ListTypeFieldsClassNotNullable(); v.f0 = new ArrayList(); v.f1 = new ArrayList(); @@ -179,9 +185,8 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) } public void testMapTypeFieldsClass() throws Exception { - // TODO #MN - //testMapTypeFieldsClass(null); - //testMapTypeFieldsClass(new MapTypeFieldsClass()); + testMapTypeFieldsClass(null); + testMapTypeFieldsClass(new MapTypeFieldsClass()); MapTypeFieldsClass v = new MapTypeFieldsClass(); v.f0 = new HashMap(); v.f1 = new HashMap(); @@ -203,9 +208,13 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { } public void testMapTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testMapTypeFieldsClass(null); - //testMapTypeFieldsClassNotNullable(new MapTypeFieldsClassNotNullable()); + testMapTypeFieldsClass(null); + try { + testMapTypeFieldsClassNotNullable(new MapTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } MapTypeFieldsClassNotNullable v = new MapTypeFieldsClassNotNullable(); v.f0 = new HashMap(); v.f1 = new HashMap(); @@ -227,9 +236,8 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t } public void testFinalClass() throws Exception { - // TODO #MN - //testFinalClass(null); - //testFinalClass(new FinalClass()); + testFinalClass(null); + testFinalClass(new FinalClass()); FinalClass v = new FinalClass(); v.f0 = 10; v.f1 = "muga"; @@ -246,9 +254,8 @@ public void testInterface() throws Exception { } public void testEnumTypeFieldsClass() throws Exception { - // TODO #MN - //testEnumTypeFieldsClass(null); - //testEnumTypeFieldsClass(new EnumTypeFieldsClass()); + testEnumTypeFieldsClass(null); + testEnumTypeFieldsClass(new EnumTypeFieldsClass()); EnumTypeFieldsClass v = new EnumTypeFieldsClass(); v.f0 = 0; v.f1 = EnumTypeFieldsClass.SampleEnum.ONE; @@ -259,9 +266,13 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { } public void testEnumTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testEnumTypeFieldsClassNotNullable(null); - //testEnumTypeFieldsClassNotNullable(new EnumTypeFieldsClassNotNullable()); + testEnumTypeFieldsClassNotNullable(null); + try { + testEnumTypeFieldsClassNotNullable(new EnumTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } EnumTypeFieldsClassNotNullable v = new EnumTypeFieldsClassNotNullable(); v.f0 = 0; v.f1 = EnumTypeFieldsClassNotNullable.SampleEnum.ONE; @@ -272,9 +283,8 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) } public void testModifiersFieldsClass() throws Exception { - // TODO #MN - //testModifiersFieldsClass(null); - //testModifiersFieldsClass(new ModifiersFieldsClass()); + testModifiersFieldsClass(null); + testModifiersFieldsClass(new ModifiersFieldsClass()); ModifiersFieldsClass v = new ModifiersFieldsClass(); v.f0 = 0; testModifiersFieldsClass(v); @@ -284,9 +294,8 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { } public void testModifiersFieldsClassNotNullable() throws Exception { - // TODO #MN - //testModifiersFieldsClassNotNullable(null); - //testModifiersFieldsClassNotNullable(new ModifiersFieldsClassNotNullable()); + testModifiersFieldsClassNotNullable(null); + testModifiersFieldsClassNotNullable(new ModifiersFieldsClassNotNullable()); ModifiersFieldsClassNotNullable v = new ModifiersFieldsClassNotNullable(); v.f0 = 0; testModifiersFieldsClassNotNullable(v); @@ -296,9 +305,8 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable } public void testUserDefinedTypeFieldsClass() throws Exception { - // TODO #MN - //testUserDefinedTypeFieldsClass(null); - //testUserDefinedTypeFieldsClass(new UserDefinedTypeFieldsClass()); + testUserDefinedTypeFieldsClass(null); + testUserDefinedTypeFieldsClass(new UserDefinedTypeFieldsClass()); UserDefinedTypeFieldsClass v = new UserDefinedTypeFieldsClass(); v.f0 = new UserDefinedTypeFieldsClass.NestedClass1(); v.f0.f0 = 0; @@ -313,9 +321,13 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws } public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testUserDefinedTypeFieldsClassNotNullable(null); - //testUserDefinedTypeFieldsClassNotNullable(new UserDefinedTypeFieldsClassNotNullable()); + testUserDefinedTypeFieldsClassNotNullable(null); + try { + testUserDefinedTypeFieldsClassNotNullable(new UserDefinedTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } UserDefinedTypeFieldsClassNotNullable v = new UserDefinedTypeFieldsClassNotNullable(); v.f0 = new UserDefinedTypeFieldsClassNotNullable.NestedClass1(); v.f0.f0 = 0; @@ -330,9 +342,8 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass } public void testInheritanceClass() throws Exception { - // TOOD #MN - //testInheritanceClass(null); - //testInheritanceClass(new InheritanceClass()); + testInheritanceClass(null); + testInheritanceClass(new InheritanceClass()); InheritanceClass v = new InheritanceClass(); v.f0 = "muga"; v.f1 = "furuhashi"; @@ -344,9 +355,13 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { } public void testInheritanceClassNotNullable() throws Exception { - // TOOD #MN - //testInheritanceClassNotNullable(null); - //testInheritanceClassNotNullable(new InheritanceClassNotNullable()); + testInheritanceClassNotNullable(null); + try { + testInheritanceClassNotNullable(new InheritanceClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } InheritanceClassNotNullable v = new InheritanceClassNotNullable(); v.f0 = "muga"; v.f1 = "furuhashi"; @@ -358,9 +373,8 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw } public void testMessagePackableTypeFieldsClass() throws Exception { - // TODO #MN - //testMessagePackableTypeFieldsClass(null); - //testMessagePackableTypeFieldsClass(new MessagePackableTypeFieldsClass()); + testMessagePackableTypeFieldsClass(null); + testMessagePackableTypeFieldsClass(new MessagePackableTypeFieldsClass()); MessagePackableTypeFieldsClass v = new MessagePackableTypeFieldsClass(); v.f0 = "muga"; v.f1 = new MessagePackableTypeFieldsClass.NestedClass(); @@ -377,9 +391,13 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) } public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - // TODO #MN - //testMessagePackableTypeFieldsClassNotNullable(null); - //testMessagePackableTypeFieldsClassNotNullable(new MessagePackableTypeFieldsClassNotNullable()); + testMessagePackableTypeFieldsClassNotNullable(null); + try { + testMessagePackableTypeFieldsClassNotNullable(new MessagePackableTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } MessagePackableTypeFieldsClassNotNullable v = new MessagePackableTypeFieldsClassNotNullable(); v.f0 = "muga"; v.f1 = new MessagePackableTypeFieldsClassNotNullable.NestedClass(); From 974661fd0158903c5d46ab9a66a3d7eae1cde8fd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 10:07:53 +0900 Subject: [PATCH 105/409] add test programs for multi-dim array template builder --- .../java/org/msgpack/TestSimpleArrays.java | 456 ++++++++++++++++++ 1 file changed, 456 insertions(+) create mode 100644 src/test/java/org/msgpack/TestSimpleArrays.java diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java new file mode 100644 index 000000000..0bc9e141e --- /dev/null +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -0,0 +1,456 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.junit.Ignore; +import org.junit.Test; +import org.msgpack.annotation.Message; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.Unconverter; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; + + +@Ignore +public class TestSimpleArrays { + + @Message + public static class PrimitiveTest { + public boolean[] b = new boolean[0]; + public short[] s = new short[0]; + public int[] i = new int[0]; + //public long[] l = new long[0]; // FIXME javassist? + public float[] f = new float[0]; + //public double[] d = new double[0]; // FIXME javassist? + + public PrimitiveTest() { } + } + + @Test + public void testPrimitive() throws Exception { + MessagePack msgpack = new MessagePack(); + + PrimitiveTest t = new PrimitiveTest(); + t.b = new boolean[] { true, false }; + t.s = new short[] { 0, 1 }; + t.i = new int[] { 2, 3 }; + // t.l = new long[] {4, 5}; + t.f = new float[] { 2.0f, 4.0f }; + // t.d = new double[] {8.0, 16.0}; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + PrimitiveTest u = unpacker.read(PrimitiveTest.class); + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], u.b[i]); + } + assertEquals(t.s.length, u.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], u.s[i]); + } + assertEquals(t.i.length, u.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], u.i[i]); + } + // assertEquals(t.l.length, u.l.length); + // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], u.l[i]); } + assertEquals(t.f.length, u.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], u.f[i], 10e-10); + } + // assertEquals(t.d.length, u.d.length); + // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], u.d[i]); } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + PrimitiveTest c = converter.read(PrimitiveTest.class); + assertEquals(t.b.length, c.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], c.b[i]); + } + assertEquals(t.s.length, c.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], c.s[i]); + } + assertEquals(t.i.length, c.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], c.i[i]); + } + // assertEquals(t.l.length, c.l.length); + // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], c.l[i]); } + assertEquals(t.f.length, c.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], c.f[i], 10e-10); + } + // assertEquals(t.d.length, c.d.length); + // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], c.d[i]); } + } + + @Message + public static class ReferenceTest { + public ReferenceTest() { + } + + public Boolean[] b; + public Short[] s; + public Integer[] i; + public Long[] l; + public Float[] f; + public Double[] d; + public String[] str; + } + + @Test + public void testReference() throws Exception { + MessagePack msgpack = new MessagePack(); + + ReferenceTest t = new ReferenceTest(); + t.b = new Boolean[] { true, false }; + t.s = new Short[] { 0, 1 }; + t.i = new Integer[] { 2, 3 }; + t.l = new Long[] { 4l, 5l }; + t.f = new Float[] { 2.0f, 4.0f }; + t.d = new Double[] { 8.0, 16.0 }; + t.str = new String[] { "furuhashi", "java" }; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + ReferenceTest u = unpacker.read(ReferenceTest.class); + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], u.b[i]); + } + assertEquals(t.s.length, u.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], u.s[i]); + } + assertEquals(t.i.length, u.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], u.i[i]); + } + assertEquals(t.l.length, u.l.length); + for (int i = 0; i < t.l.length; i++) { + assertEquals(t.l[i], u.l[i]); + } + assertEquals(t.f.length, u.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], u.f[i]); + } + assertEquals(t.d.length, u.d.length); + for (int i = 0; i < t.d.length; i++) { + assertEquals(t.d[i], u.d[i]); + } + assertEquals(t.str.length, u.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i], u.str[i]); + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + ReferenceTest c = converter.read(ReferenceTest.class); + assertEquals(t.b.length, c.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], c.b[i]); + } + assertEquals(t.s.length, c.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], c.s[i]); + } + assertEquals(t.i.length, c.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], c.i[i]); + } + assertEquals(t.l.length, c.l.length); + for (int i = 0; i < t.l.length; i++) { + assertEquals(t.l[i], c.l[i]); + } + assertEquals(t.f.length, c.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], c.f[i]); + } + assertEquals(t.d.length, c.d.length); + for (int i = 0; i < t.d.length; i++) { + assertEquals(t.d[i], c.d[i]); + } + assertEquals(t.str.length, c.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i], c.str[i]); + } + } + + @Message + public static class GenericsTest { + public List[] slist; + public Map[] imap; + + public GenericsTest() { + } + } + + @Test + public void testGenerics() throws Exception { + MessagePack msgpack = new MessagePack(); + + GenericsTest t = new GenericsTest(); + t.slist = new List[2]; + t.slist[0] = new ArrayList(); + t.slist[0].add("aa"); + t.slist[0].add("bb"); + t.slist[1] = new ArrayList(); + t.slist[1].add("cc"); + t.imap = new Map[2]; + t.imap[0] = new HashMap(); + t.imap[0].put("aa", 1); + t.imap[0].put("bb", 2); + t.imap[1] = new HashMap(); + t.imap[1].put("cc", 3); + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + GenericsTest u = unpacker.read(GenericsTest.class); + assertEquals(t.slist.length, u.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].size(), u.slist[i].size()); + for (int j = 0; j < t.slist[i].size(); j++) { + assertEquals(t.slist[i].get(j), u.slist[i].get(j)); + } + } + for (int i = 0; i < t.imap.length; i++) { + assertEquals(t.imap[i].size(), u.imap[i].size()); + for (String j : t.imap[i].keySet()) { + assertEquals(t.imap[i].get(j), u.imap[i].get(j)); + } + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + GenericsTest c = converter.read(GenericsTest.class); + assertEquals(t.slist.length, c.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].size(), c.slist[i].size()); + for (int j = 0; j < t.slist[i].size(); j++) { + assertEquals(t.slist[i].get(j), c.slist[i].get(j)); + } + } + for (int i = 0; i < t.imap.length; i++) { + assertEquals(t.imap[i].size(), c.imap[i].size()); + for (String j : t.imap[i].keySet()) { + assertEquals(t.imap[i].get(j), c.imap[i].get(j)); + } + } + } + + @Message + public static class Dim2Test { + public int[][] i; + public String[][] str; + public List[][] slist; + + public Dim2Test() { + } + } + + @Test + public void testDim2() throws Exception { + MessagePack msgpack = new MessagePack(); + Dim2Test t = new Dim2Test(); + t.i = new int[2][]; + t.i[0] = new int[] { 0, 1 }; + t.i[1] = new int[] { 2, 3, 4 }; + t.str = new String[2][]; + t.str[0] = new String[] { "aa", "bb" }; + t.str[1] = new String[] { "cc", "dd", "ee" }; + t.slist = new List[2][]; + t.slist[0] = new List[1]; + t.slist[0][0] = new ArrayList(); + t.slist[0][0].add("ff"); + t.slist[0][0].add("gg"); + t.slist[1] = new List[2]; + t.slist[1][0] = new ArrayList(); + t.slist[1][0].add("hh"); + t.slist[1][0].add("ii"); + t.slist[1][1] = new ArrayList(); + t.slist[1][1].add("jj"); + t.slist[1][1].add("kk"); + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + Dim2Test u = unpacker.read(Dim2Test.class); + assertEquals(t.i.length, t.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i].length, u.i[i].length); + for (int j = 0; j < t.i[i].length; j++) { + assertEquals(t.i[i][j], u.i[i][j]); + } + } + assertEquals(t.str.length, t.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i].length, u.str[i].length); + for (int j = 0; j < t.str[i].length; j++) { + assertEquals(t.str[i][j], u.str[i][j]); + } + } + assertEquals(t.slist.length, t.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].length, u.slist[i].length); + for (int j = 0; j < t.slist[i].length; j++) { + assertEquals(t.slist[i][j].size(), u.slist[i][j].size()); + for (int k = 0; k < t.slist[i][j].size(); k++) { + assertEquals(t.slist[i][j].get(k), u.slist[i][j].get(k)); + } + } + } + } + + @Message + public static class Dim3Test { + public int[][][] i; + public String[][][] str; + public List[][][] slist; + + public Dim3Test() { + } + } + + @Test + public void testDim3() throws Exception { + MessagePack msgpack = new MessagePack(); + + Dim3Test t = new Dim3Test(); + t.i = new int[2][][]; + t.i[0] = new int[2][]; + t.i[0][0] = new int[] { 0, 1 }; + t.i[0][1] = new int[] { 2, 3, 4 }; + t.i[1] = new int[1][]; + t.i[1][0] = new int[] { 5 }; + t.str = new String[2][][]; + t.str[0] = new String[1][]; + t.str[0][0] = new String[] { "aa", "bb" }; + t.str[1] = new String[2][]; + t.str[1][0] = new String[] { "cc", "dd", "ee" }; + t.str[1][1] = new String[] { "ff" }; + t.slist = new List[2][][]; + t.slist[0] = new List[2][]; + t.slist[0][0] = new List[1]; + t.slist[0][0][0] = new ArrayList(); + t.slist[0][0][0].add("ff"); + t.slist[0][0][0].add("gg"); + t.slist[0][1] = new List[2]; + t.slist[0][1][0] = new ArrayList(); + t.slist[0][1][0].add("hh"); + t.slist[0][1][0].add("ii"); + t.slist[0][1][1] = new ArrayList(); + t.slist[0][1][1].add("jj"); + t.slist[0][1][1].add("kk"); + t.slist[1] = new List[1][]; + t.slist[1][0] = new List[0]; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + Dim3Test u = unpacker.read(Dim3Test.class); + assertEquals(t.i.length, t.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i].length, u.i[i].length); + for (int j = 0; j < t.i[i].length; j++) { + for (int k = 0; k < t.i[i].length; k++) { + assertEquals(t.i[i][j][k], u.i[i][j][k]); + } + } + } + assertEquals(t.str.length, t.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i].length, u.str[i].length); + for (int j = 0; j < t.str[i].length; j++) { + assertEquals(t.str[i][j].length, u.str[i][j].length); + for (int k = 0; k < t.str[i][j].length; k++) { + assertEquals(t.str[i][j][k], u.str[i][j][k]); + } + } + } + assertEquals(t.slist.length, t.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].length, u.slist[i].length); + for (int j = 0; j < t.slist[i].length; j++) { + assertEquals(t.slist[i][j].length, u.slist[i][j].length); + for (int k = 0; k < t.slist[i][j].length; k++) { + assertEquals(t.slist[i][j][k].size(), + u.slist[i][j][k].size()); + for (int l = 0; l < t.slist[i][j][k].size(); l++) { + assertEquals(t.slist[i][j][k].get(l), + u.slist[i][j][k].get(l)); + } + } + } + } + } + + @Test + public void testLocal() throws IOException { + MessagePack msgpack = new MessagePack(); + + int[][][] src = new int[10][20][30]; + for (int i = 0; i < 10; ++i) { + for (int j = 0; j < 20; ++j) { + for (int k = 0; k < 30; ++k) { + src[i][j][k] = (int) (Math.random() * 100); + } + } + } + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(src); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + int[][][] u = unpacker.read(int[][][].class); + assertEquals(src.length, u.length); + for (int i = 0; i < src.length; ++i) { + assertEquals(src[i].length, u[i].length); + for (int j = 0; j < src[i].length; ++j) { + assertEquals(src[i][j].length, u[i][j].length); + for (int k = 0; k < src[i][j].length; ++k) { + assertEquals(src[i][j][k], u[i][j][k]); + } + } + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(src); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + int[][][] c = converter.read(int[][][].class); + assertEquals(src.length, c.length); + for (int i = 0; i < src.length; ++i) { + assertEquals(src[i].length, c[i].length); + for (int j = 0; j < src[i].length; ++j) { + assertEquals(src[i][j].length, c[i][j].length); + for (int k = 0; k < src[i][j].length; ++k) { + assertEquals(src[i][j][k], c[i][j][k]); + } + } + } + } +} From f3fbcdbdb14995020388f6867dd14f5d30d8065a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 10:09:25 +0900 Subject: [PATCH 106/409] refined test programs for template builders --- .../TestJavassistBufferPackBufferUnpack.java | 85 +++++++++++------- .../TestJavassistBufferPackConvert.java | 85 +++++++++++------- .../TestJavassistBufferPackUnpack.java | 85 +++++++++++------- .../TestJavassistPackBufferUnpack.java | 85 +++++++++++------- .../builder/TestJavassistPackConvert.java | 85 +++++++++++------- .../TestJavassistPackStreamUnpack.java | 85 +++++++++++------- ...TestOrdinalEnumBufferPackBufferUnpack.java | 10 ++- .../TestOrdinalEnumBufferPackConvert.java | 10 ++- .../TestOrdinalEnumBufferPackUnpack.java | 10 ++- .../TestOrdinalEnumPackBufferUnpack.java | 10 ++- .../builder/TestOrdinalEnumPackConvert.java | 10 ++- .../builder/TestOrdinalEnumPackUnpack.java | 10 ++- ...ReflectionBeansBufferPackBufferUnpack.java | 85 +++++++++++------- .../TestReflectionBeansBufferPackConvert.java | 85 +++++++++++------- .../TestReflectionBeansBufferPackUnpack.java | 85 +++++++++++------- .../TestReflectionBeansPackBufferUnpack.java | 85 +++++++++++------- .../TestReflectionBeansPackConvert.java | 85 +++++++++++------- .../TestReflectionBeansPackStreamUnpack.java | 85 +++++++++++------- .../TestReflectionBufferPackBufferUnpack.java | 85 +++++++++++------- .../TestReflectionBufferPackConvert.java | 88 +++++++++++-------- .../TestReflectionBufferPackUnpack.java | 85 +++++++++++------- .../TestReflectionPackBufferUnpack.java | 85 +++++++++++------- .../builder/TestReflectionPackConvert.java | 85 +++++++++++------- .../TestReflectionPackStreamUnpack.java | 85 +++++++++++------- 24 files changed, 954 insertions(+), 639 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 8d604b925..ca5da4a1d 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -40,13 +40,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -59,13 +60,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,13 +100,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -116,13 +120,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -135,13 +140,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -154,13 +160,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -173,13 +180,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -192,13 +200,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -234,13 +243,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -253,13 +263,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -272,13 +283,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -291,13 +303,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -310,13 +323,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -329,13 +343,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,13 +363,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,13 +383,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index a0e8cfb66..1af5dc8c1 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -63,13 +64,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -84,13 +86,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -105,13 +108,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -126,13 +130,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -147,13 +152,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -168,13 +174,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -189,13 +196,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -210,13 +218,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -254,13 +263,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -275,13 +285,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -296,13 +307,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -317,13 +329,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -338,13 +351,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -359,13 +373,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -380,13 +395,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -401,13 +417,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index ed62d98e4..ffaf48da2 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -60,13 +61,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -96,13 +99,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -114,13 +118,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -132,13 +137,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -150,13 +156,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -168,13 +175,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -186,13 +194,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -227,13 +236,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -245,13 +255,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -263,13 +274,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -281,13 +293,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -299,13 +312,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -317,13 +331,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -335,13 +350,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -353,13 +369,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 9e7ce1d6d..e7042687f 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -42,14 +42,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -82,14 +84,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -102,14 +105,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -122,14 +126,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -142,14 +147,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -162,14 +168,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -182,14 +189,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -202,14 +210,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -245,14 +254,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -265,14 +275,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -285,14 +296,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -305,14 +317,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,14 +338,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -345,14 +359,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -365,14 +380,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -385,14 +401,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java index c994b3694..95f21d42f 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -44,14 +44,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -66,14 +67,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -88,14 +90,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -110,14 +113,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -132,14 +136,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -154,14 +159,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -176,14 +182,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -198,14 +205,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -220,14 +228,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -265,14 +274,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -287,14 +297,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -309,14 +320,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -331,14 +343,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -353,14 +366,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -375,14 +389,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,14 +412,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -419,14 +435,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java index ca0c01dea..cecfadda1 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java @@ -43,14 +43,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -81,14 +83,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -100,14 +103,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -119,14 +123,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -138,14 +143,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -157,14 +163,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -176,14 +183,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -195,14 +203,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -237,14 +246,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -256,14 +266,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -275,14 +286,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -294,14 +306,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -313,14 +326,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -332,14 +346,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -351,14 +366,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -370,14 +386,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index 12c6fe105..6e978bde5 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -21,15 +21,16 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -42,15 +43,16 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index 901d28c5a..55c8074e4 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -23,15 +23,16 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -46,15 +47,16 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index 2ec150506..abe1667ab 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -23,15 +23,16 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -43,15 +44,16 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index 03812e93c..2ab6fc4d3 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -23,16 +23,17 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -45,16 +46,17 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index 0e386ca46..1cf6e6291 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -25,16 +25,17 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -49,16 +50,17 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index b96e3777c..a1ad8eaff 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -24,16 +24,17 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -45,16 +46,17 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(EnumTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 363dbacf1..81b6214fc 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -40,13 +40,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -59,13 +60,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,13 +100,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -116,13 +120,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -135,13 +140,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -154,13 +160,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -173,13 +180,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -192,13 +200,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -234,13 +243,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -253,13 +263,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -272,13 +283,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -291,13 +303,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -310,13 +323,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -329,13 +343,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,13 +363,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,13 +383,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index 359ed069e..d23ac1aff 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -63,13 +64,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -84,13 +86,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -105,13 +108,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -126,13 +130,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -147,13 +152,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -168,13 +174,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -189,13 +196,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -210,13 +218,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -254,13 +263,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -275,13 +285,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -296,13 +307,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -317,13 +329,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -338,13 +351,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -359,13 +373,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -380,13 +395,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -401,13 +417,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index d7fcf9ac3..d9a640a08 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -60,13 +61,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -96,13 +99,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -114,13 +118,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -132,13 +137,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -150,13 +156,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -168,13 +175,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -186,13 +194,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -227,13 +236,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -245,13 +255,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -263,13 +274,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -281,13 +293,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -299,13 +312,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -317,13 +331,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -335,13 +350,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -353,13 +369,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index cfe94c0a7..757c4970f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -42,14 +42,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -82,14 +84,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -102,14 +105,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -122,14 +126,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -142,14 +147,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -162,14 +168,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -182,14 +189,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -202,14 +210,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -245,14 +254,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -265,14 +275,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -285,14 +296,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -305,14 +317,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,14 +338,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -345,14 +359,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -365,14 +380,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -385,14 +401,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index 10d2f5e5d..1fa790fe4 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -44,14 +44,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -66,14 +67,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -88,14 +90,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -110,14 +113,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -132,14 +136,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -154,14 +159,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -176,14 +182,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -198,14 +205,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -220,14 +228,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -265,14 +274,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -287,14 +297,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -309,14 +320,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -331,14 +343,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -353,14 +366,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -375,14 +389,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,14 +412,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -419,14 +435,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java index 6164a26df..1119d2091 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java @@ -43,14 +43,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -81,14 +83,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -100,14 +103,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -119,14 +123,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -138,14 +143,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -157,14 +163,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -176,14 +183,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -195,14 +203,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -237,14 +246,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -256,14 +266,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -275,14 +286,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -294,14 +306,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -313,14 +326,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -332,14 +346,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -351,14 +366,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -370,14 +386,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 7a7df5865..09e64de80 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -40,13 +40,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -59,13 +60,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,13 +100,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -116,13 +120,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -135,13 +140,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -154,13 +160,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -173,13 +180,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -192,13 +200,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -234,13 +243,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -253,13 +263,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -272,13 +283,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -291,13 +303,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -310,13 +323,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -329,13 +343,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -348,13 +363,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,13 +383,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index bca567a12..ba2d5abcf 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -63,13 +64,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -84,13 +86,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -105,13 +108,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -126,18 +130,16 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - System.out.println("v : " + v); + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); - System.out.println("value: " + value); - System.out.println("value class: " + value.getClass().getName()); Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -150,13 +152,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -171,13 +174,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -192,13 +196,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -213,13 +218,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -257,13 +263,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -278,13 +285,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -299,13 +307,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -320,13 +329,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -341,13 +351,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -362,13 +373,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -383,13 +395,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -404,13 +417,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index 91687ca71..75939c62e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -42,13 +42,14 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -60,13 +61,14 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -78,13 +80,14 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -96,13 +99,14 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -114,13 +118,14 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -132,13 +137,14 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -150,13 +156,14 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -168,13 +175,14 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -186,13 +194,14 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -227,13 +236,14 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -245,13 +255,14 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -263,13 +274,14 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -281,13 +293,14 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -299,13 +312,14 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -317,13 +331,14 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -335,13 +350,14 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -353,13 +369,14 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = new MessagePack().createBufferPacker(); + BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index df91e610b..d2f3d829e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -42,14 +42,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -82,14 +84,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -102,14 +105,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -122,14 +126,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -142,14 +147,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -162,14 +168,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -182,14 +189,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -202,14 +210,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -245,14 +254,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -265,14 +275,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -285,14 +296,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -305,14 +317,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,14 +338,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -345,14 +359,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -365,14 +380,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -385,14 +401,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker unpacker = new MessagePack().createBufferUnpacker(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index ba56eaa6b..185016926 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -44,14 +44,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -66,14 +67,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -88,14 +90,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -110,14 +113,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -132,14 +136,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -154,14 +159,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -176,14 +182,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -198,14 +205,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -220,14 +228,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -265,14 +274,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -287,14 +297,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -309,14 +320,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -331,14 +343,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -353,14 +366,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -375,14 +389,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,14 +412,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -419,14 +435,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - BufferUnpacker u = new MessagePack().createBufferUnpacker(); + BufferUnpacker u = msgpack.createBufferUnpacker(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java index 9e82c04ff..d3d360bf1 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java @@ -43,14 +43,15 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -62,14 +63,15 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -81,14 +83,15 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -100,14 +103,15 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -119,14 +123,15 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -138,14 +143,15 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -157,14 +163,15 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -176,14 +183,15 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -195,14 +203,15 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -237,14 +246,15 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -256,14 +266,15 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -275,14 +286,15 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -294,14 +306,15 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -313,14 +326,15 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -332,14 +346,15 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -351,14 +366,15 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); } @@ -370,14 +386,15 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); TemplateRegistry registry = new TemplateRegistry(); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = new MessagePack().createPacker(out); + Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); byte[] bytes = out.toByteArray(); - Unpacker unpacker = new MessagePack().createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); } From f0a0df8c7bb1c604eca8b1c4546c3e732de4c8da Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 10:13:53 +0900 Subject: [PATCH 107/409] fixed bug: template for byte[] class was used for serializing boolean[] object --- src/main/java/org/msgpack/template/TemplateRegistry.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 90045a3db..d0deb4aec 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -97,7 +97,7 @@ private void registerTemplates() { register(double.class, DoubleTemplate.getInstance()); register(Double.class, DoubleTemplate.getInstance()); register(BigInteger.class, BigIntegerTemplate.getInstance()); - register(boolean[].class, ByteArrayTemplate.getInstance()); + register(boolean[].class, BooleanArrayTemplate.getInstance()); register(short[].class, ShortArrayTemplate.getInstance()); register(int[].class, IntegerArrayTemplate.getInstance()); register(long[].class, LongArrayTemplate.getInstance()); From 935978c6301288015000a9e57adeb1f929b0e1bb Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 10:14:39 +0900 Subject: [PATCH 108/409] refined test programs for API --- .../org/msgpack/TestBufferPackBufferUnpack.java | 16 ++++++++-------- .../java/org/msgpack/TestBufferPackConvert.java | 16 ++++++++-------- .../java/org/msgpack/TestBufferPackUnpack.java | 16 ++++++++-------- .../java/org/msgpack/TestPackBufferUnpack.java | 16 ++++++++-------- src/test/java/org/msgpack/TestPackConvert.java | 16 ++++++++-------- src/test/java/org/msgpack/TestPackUnpack.java | 16 ++++++++-------- .../java/org/msgpack/TestUnconvertConvert.java | 17 ++++++++--------- .../org/msgpack/TestUnconvertReconvert.java | 7 +------ 8 files changed, 57 insertions(+), 63 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 46a5086c0..0b3737ec2 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -212,14 +212,14 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { ret.add(unpacker.read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -238,7 +238,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -251,15 +251,15 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); + K key = unpacker.read(keyElementClass); + V value = unpacker.read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index d0f2d18f5..c88cf3827 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -237,15 +237,15 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { Value value = unpacker.readValue(); ret.add(new Converter(value).read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -264,7 +264,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -277,17 +277,17 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { Value keyValue = unpacker.readValue(); - Object key = new Converter(keyValue).read(keyElementClass); + K key = new Converter(keyValue).read(keyElementClass); Value valueValue = unpacker.readValue(); - Object value = new Converter(valueValue).read(valueElementClass); + V value = new Converter(valueValue).read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index 8d341335b..f212cd440 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -213,14 +213,14 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { ret.add(unpacker.read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -239,7 +239,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -252,15 +252,15 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); + K key = unpacker.read(keyElementClass); + V value = unpacker.read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java index 6f1b57417..50c69965b 100644 --- a/src/test/java/org/msgpack/TestPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -225,14 +225,14 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { ret.add(unpacker.read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -252,7 +252,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -265,15 +265,15 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); + K key = unpacker.read(keyElementClass); + V value = unpacker.read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 7d238ac0e..0c8ea96bc 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -250,15 +250,15 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { Value value = unpacker.readValue(); ret.add(new Converter(value).read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -278,7 +278,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -291,17 +291,17 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { Value keyValue = unpacker.readValue(); - Object key = new Converter(keyValue).read(keyElementClass); + K key = new Converter(keyValue).read(keyElementClass); Value valueValue = unpacker.readValue(); - Object value = new Converter(valueValue).read(valueElementClass); + V value = new Converter(valueValue).read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index 706d90a2e..2470c5898 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -221,14 +221,14 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { ret.add(unpacker.read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -248,7 +248,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -261,15 +261,15 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); + K key = unpacker.read(keyElementClass); + V value = unpacker.read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestUnconvertConvert.java b/src/test/java/org/msgpack/TestUnconvertConvert.java index 034bedfe3..a5bb2934b 100644 --- a/src/test/java/org/msgpack/TestUnconvertConvert.java +++ b/src/test/java/org/msgpack/TestUnconvertConvert.java @@ -3,7 +3,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; -import java.io.ByteArrayInputStream; import java.math.BigInteger; import java.util.ArrayList; import java.util.HashMap; @@ -214,14 +213,14 @@ public void testList(List v, Class elementClass) throws Exception { return; } int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); + List ret = new ArrayList(size); for (int i = 0; i < size; ++i) { ret.add(unpacker.read(elementClass)); } unpacker.readArrayEnd(); assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } @@ -240,7 +239,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } @@ -253,15 +252,15 @@ public void testMap(Map v, Class keyElementClass, Class value return; } int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); + Map ret = new HashMap(size); for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); + K key = unpacker.read(keyElementClass); + V value = unpacker.read(valueElementClass); ret.put(key, value); } unpacker.readMapEnd(); assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } diff --git a/src/test/java/org/msgpack/TestUnconvertReconvert.java b/src/test/java/org/msgpack/TestUnconvertReconvert.java index d6226d799..ab3917544 100644 --- a/src/test/java/org/msgpack/TestUnconvertReconvert.java +++ b/src/test/java/org/msgpack/TestUnconvertReconvert.java @@ -1,13 +1,8 @@ package org.msgpack; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; -import java.io.ByteArrayInputStream; import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -230,7 +225,7 @@ public void testMap(Map v, Class keyElementClass, Class value packer.writeNil(); } else { packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { + for (Map.Entry e : ((Map) v).entrySet()) { packer.write(e.getKey()); packer.write(e.getValue()); } From b2f06daa37af1dee8afe5fe614cd7a8634974ba5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 10:28:14 +0900 Subject: [PATCH 109/409] trivial modifications --- src/main/java/org/msgpack/JSON.java | 4 ---- .../java/org/msgpack/MessageTypeException.java | 2 ++ .../java/org/msgpack/packer/AbstractPacker.java | 3 --- .../template/builder/TemplateBuilderChain.java | 16 ++++++++-------- 4 files changed, 10 insertions(+), 15 deletions(-) diff --git a/src/main/java/org/msgpack/JSON.java b/src/main/java/org/msgpack/JSON.java index 12eeedb03..ac8157877 100644 --- a/src/main/java/org/msgpack/JSON.java +++ b/src/main/java/org/msgpack/JSON.java @@ -19,10 +19,7 @@ import java.io.InputStream; import java.io.OutputStream; -import java.io.IOException; import java.nio.ByteBuffer; -import org.msgpack.template.Template; -import org.msgpack.template.TemplateRegistry; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.packer.JSONPacker; @@ -31,7 +28,6 @@ import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.JSONUnpacker; import org.msgpack.unpacker.JSONBufferUnpacker; -import org.msgpack.type.Value; public class JSON extends MessagePack { diff --git a/src/main/java/org/msgpack/MessageTypeException.java b/src/main/java/org/msgpack/MessageTypeException.java index 3ed9ea709..1f0b82cb4 100644 --- a/src/main/java/org/msgpack/MessageTypeException.java +++ b/src/main/java/org/msgpack/MessageTypeException.java @@ -17,6 +17,8 @@ // package org.msgpack; + +@SuppressWarnings("serial") public class MessageTypeException extends RuntimeException { public MessageTypeException() { super(); diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index 6ce1d9dfb..3d53c0dc0 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -17,9 +17,7 @@ // package org.msgpack.packer; -import java.math.BigInteger; import java.io.IOException; -import java.nio.ByteBuffer; import org.msgpack.type.Value; import org.msgpack.MessagePack; import org.msgpack.template.Template; @@ -45,7 +43,6 @@ public void writeMapEnd() throws IOException { writeMapEnd(true); } - public Packer write(Object o) throws IOException { Template tmpl = msgpack.lookup(o.getClass()); tmpl.write(this, o); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index cb9d58fcf..c868154bf 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -26,6 +26,14 @@ public class TemplateBuilderChain { + private static boolean enableDynamicCodeGeneration(){ + try { + return !System.getProperty("java.vm.name").equals("Dalvik"); + } catch (Exception e) { + return true; + } + } + protected List templateBuilders; public TemplateBuilderChain() { @@ -52,14 +60,6 @@ public void init(TemplateRegistry registry) { } } - private static boolean enableDynamicCodeGeneration(){ - try { - return !System.getProperty("java.vm.name").equals("Dalvik"); - } catch (Exception e) { - return true; - } - } - public TemplateBuilder select(Type targetType, boolean hasAnnotation) { for (TemplateBuilder tb : templateBuilders) { if (tb.matchType(targetType, hasAnnotation)) { From 40d972c01b2d3c2438f3066abab033ef6abc59d7 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 11 Aug 2011 12:39:59 +0900 Subject: [PATCH 110/409] fixed MessagePackUnpacker.readRawBodyCount() --- .../msgpack/unpacker/MessagePackUnpacker.java | 4 +- .../msgpack/unpacker/TestBufferUnpacker.java | 93 +++++++++++++++++++ 2 files changed, 95 insertions(+), 2 deletions(-) create mode 100644 src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 468989039..261d663ec 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -313,8 +313,8 @@ private void readRawBody(int size) throws IOException { private void readRawBodyCont() throws IOException { int len = in.read(raw, rawFilled, raw.length - rawFilled); - rawFilled -= len; - if(rawFilled > 0) { + rawFilled += len; + if(rawFilled < raw.length) { throw new EOFException(); } } diff --git a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java new file mode 100644 index 000000000..1a5cba890 --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java @@ -0,0 +1,93 @@ +package org.msgpack.unpacker; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.math.BigInteger; +import java.nio.ByteBuffer; +import java.io.IOException; +import java.io.EOFException; +import java.io.DataInputStream; +import java.io.ByteArrayInputStream; +import java.io.DataOutputStream; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Arrays; +import java.util.Random; + +import org.msgpack.MessagePack; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.UnpackerIterator; + +import org.junit.Test; + +public class TestBufferUnpacker { + @Test + public void testEachByte() throws Exception { + List vs = new ArrayList(); + + BufferPacker pk = new MessagePack().createBufferPacker(); + for(int i=0; i < 50; i++) { + Value v = createComplexType(); + vs.add(v); + pk.write(v); + } + byte[] raw = pk.toByteArray(); + + int n = 0; + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + UnpackerIterator it = u.iterator(); + + for(int i=0; i < raw.length; i++) { + u.feed(raw, i, 1); + while(it.hasNext()) { + Value v = it.next(); + assertEquals(vs.get(n), v); + n++; + } + } + } + + public Value createComplexType() throws Exception { + Random rand = new Random(System.currentTimeMillis()); + byte[] b0 = new byte[0]; + byte[] b1 = new byte[10]; + rand.nextBytes(b1); + byte[] b2 = new byte[1024]; + rand.nextBytes(b2); + + Value list = ValueFactory.arrayValue(new Value[] { + ValueFactory.rawValue(b0), + ValueFactory.rawValue(b1), + ValueFactory.rawValue(b2), + }); + + Value map = ValueFactory.mapValue(new Value[] { + ValueFactory.integerValue(0), ValueFactory.integerValue(Integer.MIN_VALUE), + ValueFactory.integerValue(rand.nextInt()), ValueFactory.integerValue(Integer.MAX_VALUE), + ValueFactory.floatValue(rand.nextFloat()), ValueFactory.booleanValue(true), + ValueFactory.floatValue(rand.nextDouble()), ValueFactory.nilValue(), + }); + + List values = new ArrayList(); + + for(int i=0; i < 2; i++) { + values.add(list); + for(int j=0; j < 100; j++) { + values.add(map); + } + } + + Value complex = ValueFactory.arrayValue(values.toArray(new Value[values.size()])); + return complex; + } +} + From 63dfc11a26e8ea62f9073b44498be9524ffa674e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 11 Aug 2011 18:40:44 +0900 Subject: [PATCH 111/409] added unregister methods in MessagePack class --- src/main/java/org/msgpack/MessagePack.java | 9 ++++++++- src/main/java/org/msgpack/template/TemplateRegistry.java | 5 ++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 9d4348a1f..df4c54b27 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -183,11 +183,18 @@ public void register(Class type, Template tmpl) { registry.register(type, tmpl); } + public boolean unregister(Class type) { + return registry.unregister(type); + } + + public void unregister() { + registry.unregister(); + } + public Template lookup(Class type) { return registry.lookup(type); } - private static final MessagePack globalMessagePack = new MessagePack(); @Deprecated diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index d0deb4aec..b1e844a51 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -48,7 +48,6 @@ import org.msgpack.template.StringTemplate; import org.msgpack.template.Template; import org.msgpack.template.ValueTemplate; -import org.msgpack.template.builder.AbstractTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; @@ -144,12 +143,12 @@ public synchronized void registerGeneric(final Type targetType, final GenericTem } } - public boolean unregister(final Type targetType) { + public synchronized boolean unregister(final Type targetType) { Template tmpl = cache.remove(targetType); return tmpl != null; } - public void unregister() { + public synchronized void unregister() { cache.clear(); } From a5cf47aded0c64926229d4431e1175c739df9976 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 11 Aug 2011 20:25:54 +0900 Subject: [PATCH 112/409] fixed streaming unpacker --- .../org/msgpack/io/LinkedBufferInput.java | 3 ++ .../msgpack/unpacker/UnpackerIterator.java | 4 +- .../msgpack/unpacker/TestBufferUnpacker.java | 49 +++++++++++++++++++ 3 files changed, 54 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 6a180039f..a1903d566 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -84,6 +84,9 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { } else { bb.position(pos); } + if(bb.remaining() == 0) { + removeFirstLink(bb); + } } return true; } diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index 8519a2274..7b5be6792 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -18,11 +18,11 @@ package org.msgpack.unpacker; import java.io.IOException; +import java.io.EOFException; import java.util.Iterator; import java.util.NoSuchElementException; import org.msgpack.type.Value; import org.msgpack.packer.Unconverter; -import org.msgpack.io.EndOfBufferException; public class UnpackerIterator implements Iterator { @@ -41,7 +41,7 @@ public boolean hasNext() { } try { u.readValue(uc); - } catch (EndOfBufferException ex) { + } catch (EOFException ex) { return false; } catch (IOException ex) { // TODO error diff --git a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java index 1a5cba890..7272d13c6 100644 --- a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java +++ b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java @@ -54,6 +54,55 @@ public void testEachByte() throws Exception { n++; } } + assertEquals(50, n); + } + + @Test + public void testElevenBytes() throws Exception { + List vs = new ArrayList(); + + BufferPacker pk = new MessagePack().createBufferPacker(); + for(int i=0; i < 55; i++) { + Value v = createComplexType(); + vs.add(v); + pk.write(v); + } + byte[] raw = pk.toByteArray(); + + int n = 0; + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + UnpackerIterator it = u.iterator(); + + for(int i=0; i < raw.length; i+=11) { + u.feed(raw, i, 11); + while(it.hasNext()) { + Value v = it.next(); + assertEquals(vs.get(n), v); + n++; + } + } + assertEquals(55, n); + } + + @Test + public void testEachObject() throws Exception { + BufferUnpacker u = new MessagePack().createBufferUnpacker(); + UnpackerIterator it = u.iterator(); + + for(int i=0; i < 50; i++) { + Value v = createComplexType(); + BufferPacker pk = new MessagePack().createBufferPacker(); + pk.write(v); + byte[] raw = pk.toByteArray(); + //pk.reset(); + + u.feed(raw, 0, raw.length); + + assertTrue(it.hasNext()); + Value ov = it.next(); + assertEquals(v, ov); + //assertFalse(it.hasNext()); + } } public Value createComplexType() throws Exception { From caf0148423427abe5c56bfec88ceb8dc307705ba Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 11:32:34 +0900 Subject: [PATCH 113/409] added NotNullableTemplate.java --- .../msgpack/template/NotNullableTemplate.java | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 src/main/java/org/msgpack/template/NotNullableTemplate.java diff --git a/src/main/java/org/msgpack/template/NotNullableTemplate.java b/src/main/java/org/msgpack/template/NotNullableTemplate.java new file mode 100644 index 000000000..810a85a95 --- /dev/null +++ b/src/main/java/org/msgpack/template/NotNullableTemplate.java @@ -0,0 +1,36 @@ +package org.msgpack.template; + +import java.io.IOException; + +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class NotNullableTemplate extends AbstractTemplate { + + private Template tmpl; + + public NotNullableTemplate(Template elementTemplate) { + tmpl = elementTemplate; + } + + @Override + public void write(Packer pk, T v, boolean required) throws IOException { + tmpl.write(pk, v, required); + } + + @Override + public void write(Packer pk, T v) throws IOException { + write(pk, v, true); + } + + @Override + public T read(Unpacker u, T to, boolean required) throws IOException { + return tmpl.read(u, to, required); + } + + @Override + public T read(Unpacker u, T to) throws IOException { + return read(u, to, true); + } +} From 121cb6668c5e6b92dc806eb3e06159ece2189e82 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 11:33:41 +0900 Subject: [PATCH 114/409] trivial modifications --- src/main/java/org/msgpack/io/BufferedOutput.java | 1 + .../java/org/msgpack/io/LinkedBufferOutput.java | 14 +++++++------- src/main/java/org/msgpack/io/Output.java | 1 + 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index c2e4e7110..d8bfcaa80 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -20,6 +20,7 @@ import java.io.IOException; import java.nio.ByteBuffer; + abstract class BufferedOutput implements Output { protected byte[] buffer; protected int filled; diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 3defbc4cb..67c9b963e 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -17,11 +17,11 @@ // package org.msgpack.io; -import java.util.List; import java.util.LinkedList; -public class LinkedBufferOutput extends BufferedOutput { - private static class Link { + +public final class LinkedBufferOutput extends BufferedOutput { + private static final class Link { final byte[] buffer; final int offset; final int size; @@ -38,17 +38,17 @@ private static class Link { public LinkedBufferOutput(int bufferSize) { super(bufferSize); - this.link = new LinkedList(); + link = new LinkedList(); } public byte[] toByteArray() { - byte[] bytes = new byte[size+filled]; + byte[] bytes = new byte[size + filled]; int off = 0; - for(Link l : link) { + for (Link l : link) { System.arraycopy(l.buffer, l.offset, bytes, off, l.size); off += l.size; } - if(filled > 0) { + if (filled > 0) { System.arraycopy(buffer, 0, bytes, off, filled); } return bytes; diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index d698909f3..7e3958093 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -21,6 +21,7 @@ import java.io.Closeable; import java.nio.ByteBuffer; + public interface Output extends Closeable { public void write(byte[] b, int off, int len) throws IOException; From f7497e9de7cf1ddd2a014ab51a2fb1596cd91e9e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 11:34:26 +0900 Subject: [PATCH 115/409] deleted cast operation that is not needed in MessagePackableTemplate.java --- src/main/java/org/msgpack/template/MessagePackableTemplate.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index 01f6fcb66..76cf25d6b 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -55,7 +55,7 @@ public MessagePackable read(Unpacker u, MessagePackable to, boolean required) th throw new MessageTypeException(e); } } - ((MessagePackable) to).readFrom(u); + to.readFrom(u); return to; } } From b6748c3ab5e6c6fdbe20053467de9654e574ca62 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 11:36:13 +0900 Subject: [PATCH 116/409] reverted OrdinalEnumTemplate.java to original one --- .../msgpack/template/OrdinalEnumTemplate.java | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 00abdde69..6a74bba91 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -18,6 +18,7 @@ package org.msgpack.template; import java.io.IOException; +import java.util.HashMap; import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; @@ -25,24 +26,32 @@ public class OrdinalEnumTemplate extends AbstractTemplate { - private T[] entries; + protected T[] entries; + protected HashMap reverse; public OrdinalEnumTemplate(Class targetClass) { entries = targetClass.getEnumConstants(); + reverse = new HashMap(); + for(int i = 0; i < entries.length; i++) { + reverse.put(entries[i], i); + } } - @SuppressWarnings("rawtypes") @Override public void write(Packer pk, T target, boolean required) throws IOException { - pk.writeInt(((Enum) target).ordinal()); + Integer ordinal = reverse.get(target); + if(ordinal == null) { + throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); + } + pk.writeInt((int) ordinal); } @Override public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { - int ordinal = pac.readInt(); - if (ordinal >= entries.length) { - throw new MessageTypeException("illegal ordinal"); - } - return entries[ordinal]; + int ordinal = pac.readInt(); + if(entries.length <= ordinal) { + throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); + } + return entries[ordinal]; } } From 83f125635f27332bedd2dc0e60e9635d6ed33e8d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 11:37:08 +0900 Subject: [PATCH 117/409] refactored ReflectionTemplateBuilder.java and ReflectionBeansTemplateBuilder.java --- .../ReflectionBeansTemplateBuilder.java | 47 ++-- .../builder/ReflectionTemplateBuilder.java | 236 ++---------------- 2 files changed, 33 insertions(+), 250 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index bbffeb764..4dd7643f6 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -22,7 +22,6 @@ import java.beans.Introspector; import java.beans.PropertyDescriptor; import java.io.IOException; -import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.lang.reflect.Type; @@ -38,17 +37,6 @@ import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; -import org.msgpack.template.builder.ReflectionTemplateBuilder.BooleanFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ByteFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.DoubleFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.FloatFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.IntFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.LongFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.NullFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ObjectFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionClassTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ReflectionFieldTemplate; -import org.msgpack.template.builder.ReflectionTemplateBuilder.ShortFieldTemplate; import org.msgpack.unpacker.Unpacker; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -112,7 +100,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { tmpls[i] = new ReflectionBeansFieldTemplate(e); } else { Template tmpl = registry.lookup(e.getGenericType(), true); - tmpls[i] = new ObjectFieldTemplate(e, tmpl); + tmpls[i] = new FieldTemplateImpl(e, tmpl); } } return tmpls; @@ -131,7 +119,7 @@ public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOpt ArrayList list = new ArrayList(); for (int i = 0; i < props.length; i++) { PropertyDescriptor pd = props[i]; - if (!isIgnoreProp(pd)) { + if (!isIgnoreProperty(pd)) { list.add(pd); } } @@ -141,7 +129,7 @@ public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOpt BeansFieldEntry[] entries = new BeansFieldEntry[props.length]; for (int i = 0; i < props.length; i++) { PropertyDescriptor p = props[i]; - int index = readPropIndex(p); + int index = getPropertyIndex(p); if (index >= 0) { if (entries[index] != null) { throw new TemplateBuildException("duplicated index: " @@ -167,18 +155,18 @@ public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOpt } for (int i = 0; i < entries.length; i++) { BeansFieldEntry e = entries[i]; - FieldOption op = readPropOption(e, implicitOption); + FieldOption op = getPropertyOption(e, implicitOption); e.setOption(op); } return entries; } - private FieldOption readPropOption(BeansFieldEntry e, FieldOption implicitOption) { - FieldOption forGetter = readMethodOption(e.getPropertyDescriptor().getReadMethod()); + private FieldOption getPropertyOption(BeansFieldEntry e, FieldOption implicitOption) { + FieldOption forGetter = getMethodOption(e.getPropertyDescriptor().getReadMethod()); if (forGetter != FieldOption.DEFAULT) { return forGetter; } - FieldOption forSetter = readMethodOption(e.getPropertyDescriptor().getWriteMethod()); + FieldOption forSetter = getMethodOption(e.getPropertyDescriptor().getWriteMethod()); if (forSetter != FieldOption.DEFAULT) { return forSetter; } else { @@ -186,7 +174,7 @@ private FieldOption readPropOption(BeansFieldEntry e, FieldOption implicitOption } } - private FieldOption readMethodOption(Method method) { + private FieldOption getMethodOption(Method method) { if (isAnnotated(method, Ignore.class)) { return FieldOption.IGNORE; } else if (isAnnotated(method, Optional.class)) { @@ -197,16 +185,16 @@ private FieldOption readMethodOption(Method method) { return FieldOption.DEFAULT; } - private int readPropIndex(PropertyDescriptor desc) { - int forGetter = readMethodIndex(desc.getReadMethod()); - if (forGetter >= 0) { - return forGetter; + private int getPropertyIndex(PropertyDescriptor desc) { + int getterIndex = getMethodIndex(desc.getReadMethod()); + if (getterIndex >= 0) { + return getterIndex; } - int forSetter = readMethodIndex(desc.getWriteMethod()); - return forSetter; + int setterIndex = getMethodIndex(desc.getWriteMethod()); + return setterIndex; } - private int readMethodIndex(Method method) { + private int getMethodIndex(Method method) { Index a = method.getAnnotation(Index.class); if (a == null) { return -1; @@ -215,9 +203,10 @@ private int readMethodIndex(Method method) { } } - boolean isIgnoreProp(PropertyDescriptor desc) { - if (desc == null) + private boolean isIgnoreProperty(PropertyDescriptor desc) { + if (desc == null) { return true; + } Method getter = desc.getReadMethod(); Method setter = desc.getWriteMethod(); return getter == null || setter == null diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index e26603663..c987c3998 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -48,209 +48,26 @@ void setNil(Object v) { } } - static class NullFieldTemplate extends ReflectionFieldTemplate { - NullFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - return null; - } - } - - protected static class ObjectFieldTemplate extends ReflectionFieldTemplate { + static final class FieldTemplateImpl extends ReflectionFieldTemplate { private Template template; - public ObjectFieldTemplate(final FieldEntry entry, Template template) { + public FieldTemplateImpl(final FieldEntry entry, final Template template) { super(entry); this.template = template; } @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - template.write(packer, target, required); + public void write(Packer packer, Object v, boolean required) throws IOException { + template.write(packer, v, required); } @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { Class type = (Class) entry.getType(); - Object fieldReference = entry.get(target); - Object valueReference = template.read(unpacker, fieldReference, required); - if (valueReference != fieldReference) { - entry.set(target, valueReference); - } - return valueReference; - } - } - - static class BooleanFieldTemplate extends ReflectionFieldTemplate { - BooleanFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeBoolean((Boolean) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - boolean o = unpacker.readBoolean(); - try { - ((DefaultFieldEntry) entry).getField().setBoolean(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class ByteFieldTemplate extends ReflectionFieldTemplate { - ByteFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeByte((Byte) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - byte o = unpacker.readByte(); - try { - ((DefaultFieldEntry) entry).getField().setByte(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class ShortFieldTemplate extends ReflectionFieldTemplate { - ShortFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeShort((Short) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - short o = unpacker.readShort(); - try { - ((DefaultFieldEntry) entry).getField().setShort(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class IntFieldTemplate extends ReflectionFieldTemplate { - IntFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeInt((Integer) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - int o = unpacker.readInt(); - try { - ((DefaultFieldEntry) entry).getField().setInt(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class LongFieldTemplate extends ReflectionFieldTemplate { - LongFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeLong((Long) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - long o = unpacker.readLong(); - try { - ((DefaultFieldEntry) entry).getField().setLong(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class FloatFieldTemplate extends ReflectionFieldTemplate { - FloatFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeFloat((Float) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - float o = unpacker.readFloat(); - try { - ((DefaultFieldEntry) entry).getField().setFloat(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - return o; - } - } - - static class DoubleFieldTemplate extends ReflectionFieldTemplate { - DoubleFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object target, boolean required) throws IOException { - packer.writeDouble((Double) target); - } - - @Override - public Object read(Unpacker unpacker, Object target, boolean required) throws IOException { - double o = unpacker.readDouble(); - try { - ((DefaultFieldEntry) entry).getField().setDouble(target, o); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); + Object f = entry.get(to); + Object o = template.read(unpacker, f, required); + if (o != f) { + entry.set(to, o); } return o; } @@ -268,9 +85,9 @@ protected ReflectionClassTemplate(Class targetClass, ReflectionFieldTemplate[ @Override public void write(Packer packer, T target, boolean required) throws IOException { - if(target == null) { - if(required) { - throw new MessageTypeException("Attempted to write null"); + if (target == null) { + if (required) { + throw new MessageTypeException("attempted to write null"); } packer.writeNil(); return; @@ -293,8 +110,6 @@ public void write(Packer packer, T target, boolean required) throws IOException } } packer.writeArrayEnd(); - } catch (MessageTypeException e) { - throw e; } catch (IOException e) { throw e; } catch (Exception e) { @@ -304,7 +119,7 @@ public void write(Packer packer, T target, boolean required) throws IOException @Override public T read(Unpacker unpacker, T to, boolean required) throws IOException { - if(!required && unpacker.trySkipNil()) { + if (!required && unpacker.trySkipNil()) { return null; } try { @@ -313,7 +128,6 @@ public T read(Unpacker unpacker, T to, boolean required) throws IOException { } unpacker.readArrayBegin(); - for (int i = 0; i < templates.length; i++) { ReflectionFieldTemplate tmpl = templates[i]; if (!tmpl.entry.isAvailable()) { @@ -327,8 +141,6 @@ public T read(Unpacker unpacker, T to, boolean required) throws IOException { unpacker.readArrayEnd(); return to; - } catch (MessageTypeException e) { - throw e; } catch (IOException e) { throw e; } catch (Exception e) { @@ -375,26 +187,8 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { for (int i = 0; i < entries.length; i++) { FieldEntry entry = entries[i]; Class t = entry.getType(); - if (!entry.isAvailable()) { - templates[i] = new NullFieldTemplate(entry); - } else if (t.equals(boolean.class)) { - templates[i] = new BooleanFieldTemplate(entry); - } else if (t.equals(byte.class)) { - templates[i] = new ByteFieldTemplate(entry); - } else if (t.equals(short.class)) { - templates[i] = new ShortFieldTemplate(entry); - } else if (t.equals(int.class)) { - templates[i] = new IntFieldTemplate(entry); - } else if (t.equals(long.class)) { - templates[i] = new LongFieldTemplate(entry); - } else if (t.equals(float.class)) { - templates[i] = new FloatFieldTemplate(entry); - } else if (t.equals(double.class)) { - templates[i] = new DoubleFieldTemplate(entry); - } else { - Template template = registry.lookup(entry.getGenericType(), true); - templates[i] = new ObjectFieldTemplate(entry, template); - } + Template template = registry.lookup(entry.getGenericType(), true); + templates[i] = new FieldTemplateImpl(entry, template); } return templates; } From 5f0c276cd0631c9fa6d8feac5c473b847ed77c42 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 12 Aug 2011 18:01:34 +0900 Subject: [PATCH 118/409] fixed Value.equals and added test programs --- .../org/msgpack/template/AnyTemplate.java | 2 +- .../org/msgpack/type/AbstractRawValue.java | 8 +- .../java/org/msgpack/type/ArrayValueImpl.java | 12 +- .../org/msgpack/type/BigIntegerValueImpl.java | 8 +- .../msgpack/type/ByteArrayRawValueImpl.java | 8 +- .../org/msgpack/type/DoubleValueImpl.java | 8 +- .../java/org/msgpack/type/FalseValueImpl.java | 8 +- .../java/org/msgpack/type/FloatValueImpl.java | 8 +- .../java/org/msgpack/type/IntValueImpl.java | 8 +- .../java/org/msgpack/type/LongValueImpl.java | 8 +- .../msgpack/type/SequentialMapValueImpl.java | 12 +- .../org/msgpack/type/StringRawValueImpl.java | 12 +- .../java/org/msgpack/type/TrueValueImpl.java | 8 +- .../org/msgpack/unpacker/BufferUnpacker.java | 2 + .../java/org/msgpack/unpacker/Converter.java | 5 + .../msgpack/unpacker/MessagePackUnpacker.java | 5 + .../org/msgpack/unpacker/UnpackerStack.java | 4 + .../java/org/msgpack/type/ProxyValue.java | 92 ++++++++ .../java/org/msgpack/type/TestEquals.java | 209 ++++++++++++++++++ .../java/org/msgpack/type/TestHashCode.java | 88 +------- 20 files changed, 399 insertions(+), 116 deletions(-) create mode 100644 src/test/java/org/msgpack/type/ProxyValue.java create mode 100644 src/test/java/org/msgpack/type/TestEquals.java diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 79429edee..d3215100f 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -37,7 +37,7 @@ public static AnyTemplate getInstance(TemplateRegistry registry) { private TemplateRegistry registry; private AnyTemplate(TemplateRegistry registry) { - + this.registry = registry; } public void write(Packer pk, T target, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 13d3fd8d4..477febd45 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -36,11 +36,15 @@ public boolean equals(Object o) { if(this == o) { return true; } - if(!(o instanceof RawValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isRaw()) { return false; } - return Arrays.equals(getByteArray(), ((RawValue) o).getByteArray()); + return Arrays.equals(getByteArray(), v.asRawValue().getByteArray()); } public int hashCode() { diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index 1dd515ce5..e37249bd2 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -96,15 +96,19 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof ArrayValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isArray()) { return false; } - if(o.getClass() == ArrayValueImpl.class) { - return equals((ArrayValueImpl) o); + if(v.getClass() == ArrayValueImpl.class) { + return equals((ArrayValueImpl) v); } - ListIterator oi = ((List) o).listIterator(); + ListIterator oi = v.asArrayValue().listIterator(); int i = 0; while(i < array.length) { if(!oi.hasNext() || !array[i].equals(oi.next())) { diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index dc9d1ce2f..8742b1dc6 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -109,11 +109,15 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof IntegerValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isInteger()) { return false; } - return value.equals(((IntegerValue) o).bigIntegerValue()); + return value.equals(v.asIntegerValue().bigIntegerValue()); } public int hashCode() { diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index e0f4f28aa..afe510427 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -68,11 +68,15 @@ public boolean equals(Object o) { if(this == o) { return true; } - if(!(o instanceof RawValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isRaw()) { return false; } - return Arrays.equals(bytes, ((RawValue) o).getByteArray()); + return Arrays.equals(bytes, v.asRawValue().getByteArray()); } public int hashCode() { diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index be06cd29c..7117154bb 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -74,11 +74,15 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof FloatValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isFloat()) { return false; } - return value == ((FloatValue) o).getDouble(); + return value == v.asFloatValue().getDouble(); } // TODO compareTo diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index 5a3f88be2..2b4df4b0b 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -41,11 +41,15 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof BooleanValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isBoolean()) { return false; } - return ((BooleanValue) o).getBoolean() == false; + return v.asBooleanValue().getBoolean() == false; } public int hashCode() { diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index da9fd3474..95604b6cc 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -70,11 +70,15 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof FloatValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isFloat()) { return false; } - return (double)value == ((FloatValue) o).getDouble(); + return (double)value == v.asFloatValue().getDouble(); } public void writeTo(Packer pk) throws IOException { diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index 55c3b011c..f7c1e57f0 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -99,13 +99,17 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof IntegerValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isInteger()) { return false; } try { // TODO - return value == ((IntegerValue) o).getInt(); + return value == v.asIntegerValue().getInt(); } catch (MessageTypeException ex) { return false; } diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index 0de31d551..6872c9a52 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -104,13 +104,17 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof IntegerValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isInteger()) { return false; } try { // TODO - return value == ((IntegerValue) o).getLong(); + return value == v.asIntegerValue().getLong(); } catch (MessageTypeException ex) { return false; } diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 2340b746b..3ccff76f1 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -179,15 +179,19 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof MapValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isMap()) { return false; } - if(o.getClass() == SequentialMapValueImpl.class) { - return equals((SequentialMapValueImpl) o); + if(v.getClass() == SequentialMapValueImpl.class) { + return equals((SequentialMapValueImpl) v); } - Map om = (Map) o; + Map om = v.asMapValue(); if (om.size() != array.length/2) { return false; } diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index fb32aca08..a787a78ad 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -51,15 +51,19 @@ public boolean equals(Object o) { if(this == o) { return true; } - if(!(o instanceof RawValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isRaw()) { return false; } - if(o.getClass() == StringRawValueImpl.class) { - return string.equals(((StringRawValueImpl) o).string); + if(v.getClass() == StringRawValueImpl.class) { + return string.equals(((StringRawValueImpl) v).string); } - return Arrays.equals(getByteArray(), ((RawValue) o).getByteArray()); + return Arrays.equals(getByteArray(), v.asRawValue().getByteArray()); } } diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index cbcd7c805..9e5549520 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -41,11 +41,15 @@ public boolean equals(Object o) { if(o == this) { return true; } - if(!(o instanceof BooleanValue)) { + if(!(o instanceof Value)) { + return false; + } + Value v = (Value) o; + if(!v.isBoolean()) { return false; } - return ((BooleanValue) o).getBoolean() == true; + return v.asBooleanValue().getBoolean() == true; } public int hashCode() { diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index b9edd3d25..516a6ffa5 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -41,5 +41,7 @@ public interface BufferUnpacker extends Unpacker { public BufferUnpacker feed(ByteBuffer b); public BufferUnpacker feed(ByteBuffer buf, boolean nocopy); + + public void reset(); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 9a36a1804..4cfbab7e2 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -384,5 +384,10 @@ public void skip() { } } } + + public void reset() { + stack.reset(); + value = null; + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 261d663ec..aa68e62f8 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -554,6 +554,11 @@ public void skip() throws IOException { } } + public void reset() { + raw = null; + stack.reset(); + } + public void close() throws IOException { in.close(); } diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index af28aab42..8bb9987ad 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -90,5 +90,9 @@ public boolean topIsArray() { public boolean topIsMap() { return types[top] == TYPE_MAP; } + + public void reset() { + top = 0; + } } diff --git a/src/test/java/org/msgpack/type/ProxyValue.java b/src/test/java/org/msgpack/type/ProxyValue.java new file mode 100644 index 000000000..3c3920abd --- /dev/null +++ b/src/test/java/org/msgpack/type/ProxyValue.java @@ -0,0 +1,92 @@ +package org.msgpack.type; + +import java.io.IOException; + +import org.msgpack.packer.Packer; + +public abstract class ProxyValue implements Value { + public ProxyValue() { } + + protected abstract Value getValue(); + + public ValueType getType() { + return getValue().getType(); + } + + public boolean isNil() { + return getValue().isNil(); + } + + public boolean isBoolean() { + return getValue().isBoolean(); + } + + public boolean isInteger() { + return getValue().isInteger(); + } + + public boolean isFloat() { + return getValue().isFloat(); + } + + public boolean isArray() { + return getValue().isArray(); + } + + public boolean isMap() { + return getValue().isMap(); + } + + public boolean isRaw() { + return getValue().isRaw(); + } + + public NilValue asNilValue() { + return getValue().asNilValue(); + } + + public BooleanValue asBooleanValue() { + return getValue().asBooleanValue(); + } + + public IntegerValue asIntegerValue() { + return getValue().asIntegerValue(); + } + + public FloatValue asFloatValue() { + return getValue().asFloatValue(); + } + + public ArrayValue asArrayValue() { + return getValue().asArrayValue(); + } + + public MapValue asMapValue() { + return getValue().asMapValue(); + } + + public RawValue asRawValue() { + return getValue().asRawValue(); + } + + public void writeTo(Packer pk) throws IOException { + getValue().writeTo(pk); + } + + public StringBuilder toString(StringBuilder sb) { + return getValue().toString(sb); + } + + public String toString() { + return getValue().toString(); + } + + public int hashCode() { + return getValue().hashCode(); + } + + public boolean equals(Object o) { + return getValue().equals(o); + } +} + diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java new file mode 100644 index 000000000..3a6293b6b --- /dev/null +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -0,0 +1,209 @@ +package org.msgpack.type; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + + +public class TestEquals extends TestSet { + @Override + public void testBoolean(boolean v) throws Exception { + Value a = ValueFactory.booleanValue(v); + Value b = ValueFactory.booleanValue(v); + testEquals(a, b); + } + + @Override + public void testBooleanArray(boolean[] v) throws Exception { + Value[] vs1 = new Value[v.length]; + Value[] vs2 = new Value[v.length]; + for(int i=0; i < v.length; i++) { + vs1[i] = ValueFactory.booleanValue(v[i]); + vs2[i] = ValueFactory.booleanValue(v[i]); + } + Value v1 = ValueFactory.arrayValue(vs1); + Value v2 = ValueFactory.arrayValue(vs2); + testEquals(v1, v2); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + Value v1 = ValueFactory.rawValue(v); + Value v2 = ValueFactory.rawValue(v); + testEquals(v1, v2); + } + + @Override + public void testString(String v) throws Exception { + Value v1 = ValueFactory.rawValue(v); + Value v2 = ValueFactory.rawValue(v); + testEquals(v1, v2); + } + + @Override + public void testFloat(float v) throws Exception { + Value v1 = ValueFactory.floatValue(v); + Value v2 = ValueFactory.floatValue(v); + testEquals(v1, v2); + } + + @Override + public void testDouble(double v) throws Exception { + Value v1 = ValueFactory.floatValue(v); + Value v2 = ValueFactory.floatValue(v); + testEquals(v1, v2); + } + + @Override + public void testByte(byte v) throws Exception { + testLong((long)v); + } + + @Override + public void testShort(short v) throws Exception { + testLong((long)v); + } + + @Override + public void testInteger(int v) throws Exception { + testLong((long)v); + } + + @Override + public void testLong(long v) throws Exception { + testBigInteger(BigInteger.valueOf(v)); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + if(compatibleWithByte(v)) { + Value vt = ValueFactory.integerValue(v); + Value vByte = ValueFactory.integerValue(v.byteValue()); + Value vShort = ValueFactory.integerValue(v.shortValue()); + Value vInt = ValueFactory.integerValue(v.intValue()); + Value vLong = ValueFactory.integerValue(v.longValue()); + Value vBigInteger = ValueFactory.integerValue(v); + testEquals(vt, vByte); + testEquals(vt, vShort); + testEquals(vt, vInt); + testEquals(vt, vLong); + testEquals(vt, vBigInteger); + } + if(compatibleWithShort(v)) { + Value vt = ValueFactory.integerValue(v); + Value vShort = ValueFactory.integerValue(v.shortValue()); + Value vInt = ValueFactory.integerValue(v.intValue()); + Value vLong = ValueFactory.integerValue(v.longValue()); + Value vBigInteger = ValueFactory.integerValue(v); + testEquals(vt, vShort); + testEquals(vt, vInt); + testEquals(vt, vLong); + testEquals(vt, vBigInteger); + } + if(compatibleWithInt(v)) { + Value vt = ValueFactory.integerValue(v); + Value vInt = ValueFactory.integerValue(v.intValue()); + Value vLong = ValueFactory.integerValue(v.longValue()); + Value vBigInteger = ValueFactory.integerValue(v); + testEquals(vt, vInt); + testEquals(vt, vLong); + testEquals(vt, vBigInteger); + } + if(compatibleWithLong(v)) { + Value vt = ValueFactory.integerValue(v); + Value vLong = ValueFactory.integerValue(v.longValue()); + Value vBigInteger = ValueFactory.integerValue(v); + testEquals(vt, vLong); + testEquals(vt, vBigInteger); + } + { + Value vt = ValueFactory.integerValue(v); + Value vInt = ValueFactory.integerValue(v.intValue()); + Value vBigInteger = ValueFactory.integerValue(v); + testEquals(vt, vInt); + testEquals(vt, vBigInteger); + } + } + + + private boolean compatibleWithByte(long v) { + return (long)Byte.MIN_VALUE <= v && v <= (long)Byte.MAX_VALUE; + } + + private boolean compatibleWithShort(long v) { + return (long)Short.MIN_VALUE <= v && v <= (long)Short.MAX_VALUE; + } + + private boolean compatibleWithInt(long v) { + return (long)Integer.MIN_VALUE <= v && v <= (long)Integer.MAX_VALUE; + } + + private static BigInteger BYTE_MAX = BigInteger.valueOf((long)Byte.MAX_VALUE); + private static BigInteger SHORT_MAX = BigInteger.valueOf((long)Short.MAX_VALUE); + private static BigInteger INT_MAX = BigInteger.valueOf((long)Integer.MAX_VALUE); + private static BigInteger LONG_MAX = BigInteger.valueOf((long)Long.MAX_VALUE); + + private static BigInteger BYTE_MIN = BigInteger.valueOf((long)Byte.MIN_VALUE); + private static BigInteger SHORT_MIN = BigInteger.valueOf((long)Short.MIN_VALUE); + private static BigInteger INT_MIN = BigInteger.valueOf((long)Integer.MIN_VALUE); + private static BigInteger LONG_MIN = BigInteger.valueOf((long)Long.MIN_VALUE); + + protected boolean compatibleWithByte(BigInteger v) { + if(v.compareTo(BYTE_MAX) > 0 || v.compareTo(BYTE_MIN) < 0) { + return false; + } + return true; + } + + protected boolean compatibleWithShort(BigInteger v) { + if(v.compareTo(SHORT_MAX) > 0 || v.compareTo(SHORT_MIN) < 0) { + return false; + } + return true; + } + + protected boolean compatibleWithInt(BigInteger v) { + if(v.compareTo(INT_MAX) > 0 || v.compareTo(INT_MIN) < 0) { + return false; + } + return true; + } + + protected boolean compatibleWithLong(BigInteger v) { + if(v.compareTo(LONG_MAX) > 0 || v.compareTo(LONG_MIN) < 0) { + return false; + } + return true; + } + + protected void testEquals(final Value v1, final Value v2) { + assertTrue(v2.equals(v1)); + assertTrue(v2.equals(new ProxyValue() { + protected Value getValue() { + return v1; + } + })); + assertTrue(v1.equals(new ProxyValue() { + protected Value getValue() { + return v2; + } + })); + } +} + diff --git a/src/test/java/org/msgpack/type/TestHashCode.java b/src/test/java/org/msgpack/type/TestHashCode.java index 52be27fe0..eb43cec71 100644 --- a/src/test/java/org/msgpack/type/TestHashCode.java +++ b/src/test/java/org/msgpack/type/TestHashCode.java @@ -11,92 +11,10 @@ import org.junit.Test; -public class TestHashCode { - @Test - public void testBoolean() { - Value f = ValueFactory.booleanValue(false); - Value t = ValueFactory.booleanValue(false); - assertNotSame(f.hashCode(), t.hashCode()); - } - - @Test - public void testFloat() { - Value f = ValueFactory.floatValue(0.0); - Value d = ValueFactory.floatValue(0.0); - assertEquals(f.hashCode(), d.hashCode()); - } - - @Test - public void testRaw() throws UnsupportedEncodingException { - testRaw(""); - testRaw("a"); - testRaw("あ"); - testRaw("𠀋"); - } - - private void testRaw(String s) throws UnsupportedEncodingException { - Value v1 = ValueFactory.rawValue(s); - Value v2 = ValueFactory.rawValue(s.getBytes("UTF-8")); - assertEquals(v1, v2); +public class TestHashCode extends TestEquals { + @Override + protected void testEquals(Value v1, Value v2) { assertEquals(v1.hashCode(), v2.hashCode()); } - - @Test - public void testInteger() { - testInteger(0); - testInteger(-1); - testInteger(1); - testInteger(Byte.MIN_VALUE); - testInteger(Byte.MAX_VALUE); - testInteger(Short.MIN_VALUE); - testInteger(Short.MAX_VALUE); - testInteger(Integer.MIN_VALUE); - testInteger(Integer.MAX_VALUE); - testInteger(Long.MIN_VALUE); - testInteger(Long.MAX_VALUE); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testInteger(rand.nextLong()); - } - } - - private void testInteger(long a) { - if(compatibleWithByte(a)) { - Value v1 = ValueFactory.integerValue(a); - Value v2 = ValueFactory.integerValue((byte)a); - assertEquals(v1, v2); - assertEquals(v1.hashCode(), v2.hashCode()); - } - if(compatibleWithShort(a)) { - Value v1 = ValueFactory.integerValue(a); - Value v2 = ValueFactory.integerValue((short)a); - assertEquals(v1, v2); - assertEquals(v1.hashCode(), v2.hashCode()); - } - if(compatibleWithInt(a)) { - Value v1 = ValueFactory.integerValue(a); - Value v2 = ValueFactory.integerValue((int)a); - assertEquals(v1, v2); - assertEquals(v1.hashCode(), v2.hashCode()); - } - { - Value v1 = ValueFactory.integerValue(a); - Value v2 = ValueFactory.integerValue(BigInteger.valueOf(a)); - assertEquals(v1, v2); - assertEquals(v1.hashCode(), v2.hashCode()); - } - } - - private boolean compatibleWithByte(long a) { - return (long)Byte.MIN_VALUE <= a && a <= (long)Byte.MAX_VALUE; - } - - private boolean compatibleWithShort(long a) { - return (long)Short.MIN_VALUE <= a && a <= (long)Short.MAX_VALUE; - } - - private boolean compatibleWithInt(long a) { - return (long)Integer.MIN_VALUE <= a && a <= (long)Integer.MAX_VALUE; - } } From 108fb1d80e72d7b286f313455add63cf9c8131b7 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 12 Aug 2011 19:57:49 +0900 Subject: [PATCH 119/409] fixed SequentialMapValueImpl.equals --- .../msgpack/type/SequentialMapValueImpl.java | 38 ++++++++------ .../java/org/msgpack/type/TestEquals.java | 49 +++++++++++++++++++ 2 files changed, 72 insertions(+), 15 deletions(-) diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 3ccff76f1..1c200ea47 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -53,6 +53,18 @@ public Value[] getKeyValueArray() { } } + public Value get(Value key) { + if(key == null) { + return null; + } + for(int i=array.length-2; i >= 0; i-=2) { + if(array[i].equals(key)) { + return array[i+1]; + } + } + return null; + } + private static class EntrySet extends AbstractSet> { private Value[] array; @@ -187,10 +199,6 @@ public boolean equals(Object o) { return false; } - if(v.getClass() == SequentialMapValueImpl.class) { - return equals((SequentialMapValueImpl) v); - } - Map om = v.asMapValue(); if (om.size() != array.length/2) { return false; @@ -213,17 +221,17 @@ public boolean equals(Object o) { return true; } - private boolean equals(SequentialMapValueImpl o) { - if(array.length != o.array.length) { - return false; - } - for(int i=0; i < array.length; i+=2) { - if(!equalsValue(o.array, array[i], array[i+1], i)) { - return false; - } - } - return true; - } + //private boolean equals(SequentialMapValueImpl o) { + // if(array.length != o.array.length) { + // return false; + // } + // for(int i=0; i < array.length; i+=2) { + // if(!equalsValue(o.array, array[i], array[i+1], i)) { + // return false; + // } + // } + // return true; + //} private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { for(int j=hint; j < array.length; j+=2) { diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java index 3a6293b6b..d02f216f6 100644 --- a/src/test/java/org/msgpack/type/TestEquals.java +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -70,6 +70,55 @@ public void testDouble(double v) throws Exception { testEquals(v1, v2); } + @Test + public void testMapOrder() throws Exception { + Value v1 = ValueFactory.mapValue(new Value[] { + ValueFactory.rawValue("k0"), ValueFactory.nilValue(), + ValueFactory.rawValue("k1"), ValueFactory.rawValue("v1"), + ValueFactory.rawValue("k2"), ValueFactory.rawValue("v2"), + ValueFactory.rawValue("k3"), ValueFactory.rawValue("v3"), + ValueFactory.rawValue("k4"), ValueFactory.rawValue("v4"), + ValueFactory.rawValue("k5"), ValueFactory.rawValue("v5"), + ValueFactory.rawValue("k6"), ValueFactory.rawValue("v6"), + ValueFactory.rawValue("k7"), ValueFactory.rawValue("v7"), + ValueFactory.rawValue("k8"), ValueFactory.rawValue("v8"), + ValueFactory.rawValue("k9"), ValueFactory.rawValue("v9"), + ValueFactory.rawValue("k10"), ValueFactory.rawValue("v10"), + ValueFactory.rawValue("k11"), ValueFactory.rawValue("v11"), + ValueFactory.rawValue("k12"), ValueFactory.rawValue("v12"), + ValueFactory.rawValue("k13"), ValueFactory.rawValue("v13"), + ValueFactory.rawValue("k14"), ValueFactory.rawValue("v14"), + ValueFactory.rawValue("k15"), ValueFactory.rawValue("v15"), + ValueFactory.rawValue("k16"), ValueFactory.rawValue("v16"), + ValueFactory.rawValue("k17"), ValueFactory.rawValue("v17"), + ValueFactory.rawValue("k18"), ValueFactory.rawValue("v18"), + ValueFactory.rawValue("k19"), ValueFactory.rawValue("v19"), + }); + Value v2 = ValueFactory.mapValue(new Value[] { + ValueFactory.rawValue("k3"), ValueFactory.rawValue("v3"), + ValueFactory.rawValue("k11"), ValueFactory.rawValue("v11"), + ValueFactory.rawValue("k4"), ValueFactory.rawValue("v4"), + ValueFactory.rawValue("k10"), ValueFactory.rawValue("v10"), + ValueFactory.rawValue("k5"), ValueFactory.rawValue("v5"), + ValueFactory.rawValue("k6"), ValueFactory.rawValue("v6"), + ValueFactory.rawValue("k15"), ValueFactory.rawValue("v15"), + ValueFactory.rawValue("k7"), ValueFactory.rawValue("v7"), + ValueFactory.rawValue("k14"), ValueFactory.rawValue("v14"), + ValueFactory.rawValue("k8"), ValueFactory.rawValue("v8"), + ValueFactory.rawValue("k13"), ValueFactory.rawValue("v13"), + ValueFactory.rawValue("k9"), ValueFactory.rawValue("v9"), + ValueFactory.rawValue("k12"), ValueFactory.rawValue("v12"), + ValueFactory.rawValue("k0"), ValueFactory.nilValue(), + ValueFactory.rawValue("k1"), ValueFactory.rawValue("v1"), + ValueFactory.rawValue("k2"), ValueFactory.rawValue("v2"), + ValueFactory.rawValue("k18"), ValueFactory.rawValue("v18"), + ValueFactory.rawValue("k19"), ValueFactory.rawValue("v19"), + ValueFactory.rawValue("k16"), ValueFactory.rawValue("v16"), + ValueFactory.rawValue("k17"), ValueFactory.rawValue("v17"), + }); + testEquals(v1, v2); + } + @Override public void testByte(byte v) throws Exception { testLong((long)v); From f8299104a755cb892f4b1f898511c81d08c1e311 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 12 Aug 2011 19:58:39 +0900 Subject: [PATCH 120/409] fixed NilValue.equals --- src/main/java/org/msgpack/type/NilValue.java | 8 +++++++- src/test/java/org/msgpack/type/TestEquals.java | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/type/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java index a6363ef66..6d4669303 100644 --- a/src/main/java/org/msgpack/type/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -54,7 +54,13 @@ public void writeTo(Packer pk) throws IOException { } public boolean equals(Object o) { - return o == this; + if(o == this) { + return true; + } + if(!(o instanceof Value)) { + return false; + } + return ((Value) o).isNil(); } public int hashCode() { diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java index d02f216f6..fe829fbeb 100644 --- a/src/test/java/org/msgpack/type/TestEquals.java +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -190,6 +190,12 @@ public void testBigInteger(BigInteger v) throws Exception { } } + @Test + public void testNull() { + Value v1 = ValueFactory.nilValue(); + Value v2 = ValueFactory.nilValue(); + testEquals(v1, v2); + } private boolean compatibleWithByte(long v) { return (long)Byte.MIN_VALUE <= v && v <= (long)Byte.MAX_VALUE; From 9a34b06d58cb182ae1a4a09e84fddc0738bd4c9b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 22:21:59 +0900 Subject: [PATCH 121/409] changed template building mechanism --- .../msgpack/template/TemplateRegistry.java | 31 +++++++++---------- .../builder/JavassistTemplateBuilder.java | 2 +- .../ReflectionBeansTemplateBuilder.java | 2 +- .../builder/ReflectionTemplateBuilder.java | 2 +- 4 files changed, 17 insertions(+), 20 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index b1e844a51..745cd159b 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -153,27 +153,26 @@ public synchronized void unregister() { } public synchronized Template lookup(Type targetType) { - return lookupImpl(targetType, true, false, true); + return lookupImpl(targetType, true, false); } public synchronized Template lookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, true, forceBuild, true); + return lookupImpl(targetType, true, forceBuild); } public synchronized Template lookup(Type targetType, final boolean forceLoad, final boolean forceBuild) { - return lookupImpl(targetType, forceLoad, forceBuild, true); + return lookupImpl(targetType, forceLoad, forceBuild); } public synchronized Template tryLookup(Type targetType) { - return lookupImpl(targetType, true, false, false); + return lookupImpl(targetType, true, false); } public synchronized Template tryLookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, true, forceBuild, false); + return lookupImpl(targetType, true, forceBuild); } - private synchronized Template lookupImpl(Type targetType, - final boolean forceLoad, final boolean forceBuild, final boolean fallbackDefault) { + private synchronized Template lookupImpl(Type targetType, final boolean forceLoad, final boolean forceBuild) { Template tmpl; if (targetType instanceof ParameterizedType) { @@ -269,22 +268,20 @@ private synchronized Template lookupImpl(Type targetType, } } } + } - if (forceBuild) { - tmpl = chain.select(targetClass, true).buildTemplate(targetClass); + // not annotation + if (forceBuild) { + try { + tmpl = chain.select(targetClass, !forceBuild).buildTemplate(targetClass); register(targetClass, tmpl); return tmpl; + } catch (NullPointerException e) { // ignore } } - if (fallbackDefault) { - tmpl = new DefaultTemplate(this, (Class) targetClass); - register(targetClass, tmpl); - return tmpl; - } else { - throw new MessageTypeException( - "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); - } + throw new MessageTypeException( + "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } public synchronized Template lookupGeneric(final Type targetType) { diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 743961527..2d5b60650 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -123,7 +123,7 @@ private Template[] toTemplate(FieldEntry[] from) { if(!e.isAvailable()) { tmpls[i] = null; } else { - Template tmpl = registry.lookup(e.getGenericType(), true); + Template tmpl = registry.lookup(e.getGenericType(), false); tmpls[i] = tmpl; } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 4dd7643f6..659860e76 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -99,7 +99,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { if (type.isPrimitive()) { tmpls[i] = new ReflectionBeansFieldTemplate(e); } else { - Template tmpl = registry.lookup(e.getGenericType(), true); + Template tmpl = registry.lookup(e.getGenericType(), false); tmpls[i] = new FieldTemplateImpl(e, tmpl); } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index c987c3998..0d6419bb8 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -187,7 +187,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { for (int i = 0; i < entries.length; i++) { FieldEntry entry = entries[i]; Class t = entry.getType(); - Template template = registry.lookup(entry.getGenericType(), true); + Template template = registry.lookup(entry.getGenericType(), false); templates[i] = new FieldTemplateImpl(entry, template); } return templates; From 8fe3bad6394f194f67fc7cde76f100fb91d3ef0e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 22:34:17 +0900 Subject: [PATCH 122/409] deleted DefaultTemplate.java --- .../org/msgpack/template/DefaultTemplate.java | 80 ------------------- .../msgpack/template/TemplateRegistry.java | 14 ---- 2 files changed, 94 deletions(-) delete mode 100644 src/main/java/org/msgpack/template/DefaultTemplate.java diff --git a/src/main/java/org/msgpack/template/DefaultTemplate.java b/src/main/java/org/msgpack/template/DefaultTemplate.java deleted file mode 100644 index b4b59b2ef..000000000 --- a/src/main/java/org/msgpack/template/DefaultTemplate.java +++ /dev/null @@ -1,80 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.template; - -import java.io.IOException; -import java.lang.reflect.Type; - -import org.msgpack.MessagePackable; -import org.msgpack.MessageTypeException; -import org.msgpack.packer.Packer; -import org.msgpack.unpacker.Unpacker; - - -public class DefaultTemplate extends AbstractTemplate { - private TemplateRegistry registry; - - // this field should be deleted? - //private Class targetClass; - - private Type lookupType; - - private boolean messagePackable; - - public DefaultTemplate(TemplateRegistry registry, Class targetClass) { - this(registry, targetClass, (Type) targetClass); - } - - public DefaultTemplate(TemplateRegistry registry, Class targetClass, Type lookupType) { - this.registry = registry; - //this.targetClass = targetClass; - this.lookupType = lookupType; - this.messagePackable = MessagePackable.class.isAssignableFrom(targetClass); - } - - public void write(Packer pk, Object target, boolean required) throws IOException { - if (messagePackable) { - if (target == null) { - if (required) { - throw new NullPointerException("Attempted to write nil"); - } - pk.writeNil(); - return; - } - ((MessagePackable) target).writeTo(pk); - return; - } - Template tmpl = registry.tryLookup(lookupType); - if (tmpl == this || tmpl == null) { - throw new MessageTypeException("Template lookup fail: " + lookupType); - } - tmpl.write(pk, target); - } - - public Object read(Unpacker u, Object to, boolean required) throws IOException { - if (!required && u.trySkipNil()) { - return null; - } - // TODO #MN - Template tmpl = registry.tryLookup(lookupType); - if (tmpl == this || tmpl == null) { - throw new MessageTypeException("Template lookup fail: " + lookupType); - } - return tmpl.read(u, to); - } -} diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 745cd159b..1381df14e 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -32,7 +32,6 @@ import org.msgpack.template.BooleanTemplate; import org.msgpack.template.ByteArrayTemplate; import org.msgpack.template.ByteTemplate; -import org.msgpack.template.DefaultTemplate; import org.msgpack.template.DoubleArrayTemplate; import org.msgpack.template.DoubleTemplate; import org.msgpack.template.FieldList; @@ -284,19 +283,6 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } - public synchronized Template lookupGeneric(final Type targetType) { - if (targetType instanceof ParameterizedType) { - ParameterizedType parameterizedType = (ParameterizedType)targetType; - Template tmpl = lookupGenericImpl(parameterizedType); - if (tmpl != null) { - return tmpl; - } - return new DefaultTemplate(this, (Class) parameterizedType.getRawType(), parameterizedType); - } else { - throw new IllegalArgumentException("Actual types of the generic type are erased: "+targetType); - } - } - private synchronized Template lookupGenericImpl(final ParameterizedType targetType) { Type rawType = targetType.getRawType(); GenericTemplate tmpl = genericCache.get(rawType); From 56473bef2ed60385b8d4510d9a6c9221eced57bf Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 12 Aug 2011 23:38:28 +0900 Subject: [PATCH 123/409] added TemplateReference class and changed template building mechanism again --- .../msgpack/template/TemplateReference.java | 53 +++++++++++++++++++ .../msgpack/template/TemplateRegistry.java | 49 ++++++++++++++++- 2 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/msgpack/template/TemplateReference.java diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java new file mode 100644 index 000000000..769b1940e --- /dev/null +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -0,0 +1,53 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; + +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + + +public class TemplateReference extends AbstractTemplate { + + private Template actualTemplate; + + public void setTemplate(Template actualTemplate) { + this.actualTemplate = actualTemplate; + } + + @Override + public void write(Packer pk, T v, boolean required) throws IOException { + actualTemplate.write(pk, v, required); + } + + @Override + public void write(Packer pk, T v) throws IOException { + actualTemplate.write(pk, v, false); + } + + @Override + public T read(Unpacker u, T to, boolean required) throws IOException { + return actualTemplate.read(u, to, required); + } + + @Override + public T read(Unpacker u, T to) throws IOException { + return actualTemplate.read(u, to, false); + } +} diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 1381df14e..aef3c76d3 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -17,6 +17,7 @@ // package org.msgpack.template; +import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Map; @@ -62,6 +63,8 @@ public class TemplateRegistry { private Map genericCache; + private Map> templateReferences; + public TemplateRegistry() { this(null); } @@ -70,6 +73,7 @@ public TemplateRegistry(TemplateRegistry registry) { parent = registry; cache = new HashMap>(); genericCache = new HashMap(); + templateReferences = new HashMap>(); if (parent == null) { registerTemplates(); chain = new TemplateBuilderChain(); @@ -79,6 +83,29 @@ public TemplateRegistry(TemplateRegistry registry) { } } + private boolean notBuilding(Type targetType) { + return !templateReferences.containsKey(targetType); + } + + private void startBuilding(Type targetType) { + List list = new ArrayList(); + templateReferences.put(targetType, list); + } + + private Template getTemplateReference(Type targetType) { + List list = templateReferences.get(targetType); + TemplateReference tmpl = new TemplateReference(); + list.add(tmpl); + return tmpl; + } + + private void finishBuilding(Type targetType, Template actualTemplate) { + List list = templateReferences.remove(targetType); + for (TemplateReference tmpl : list) { + tmpl.setTemplate(actualTemplate); + } + } + private void registerTemplates() { register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); @@ -123,7 +150,15 @@ public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - register(targetClass, chain.select(targetClass, false).buildTemplate(targetClass, flist)); + Template tmpl; + if (notBuilding(targetClass)) { + startBuilding(targetClass); + tmpl = chain.select(targetClass, false).buildTemplate(targetClass, flist); + finishBuilding(targetClass, tmpl); + } else { + tmpl = getTemplateReference(targetClass); + } + register(targetClass, tmpl); } public synchronized void register(final Type targetType, final Template tmpl) { @@ -173,6 +208,18 @@ public synchronized Template tryLookup(Type targetType, final boolean forceBuild private synchronized Template lookupImpl(Type targetType, final boolean forceLoad, final boolean forceBuild) { Template tmpl; + if (notBuilding(targetType)) { + startBuilding(targetType); + tmpl = lookupImpl0(targetType, forceLoad, forceBuild); + finishBuilding(targetType, tmpl); + } else { + tmpl = getTemplateReference(targetType); + } + return tmpl; + } + + private synchronized Template lookupImpl0(Type targetType, final boolean forceLoad, final boolean forceBuild) { + Template tmpl; if (targetType instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) targetType; From a9a89b4013a237cfe87cc3b31426846e7f4882cf Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 13 Aug 2011 05:20:19 +0900 Subject: [PATCH 124/409] Packer.write() accepts null --- .../org/msgpack/packer/AbstractPacker.java | 12 +++--- src/main/java/org/msgpack/packer/Packer.java | 2 - .../msgpack/unpacker/AbstractUnpacker.java | 24 ------------ .../java/org/msgpack/unpacker/Unpacker.java | 8 ---- .../java/org/msgpack/TestSimplePackable.java | 39 ++++++++++++------- 5 files changed, 31 insertions(+), 54 deletions(-) diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index 3d53c0dc0..d6ad2f777 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -44,20 +44,20 @@ public void writeMapEnd() throws IOException { } public Packer write(Object o) throws IOException { + if(o == null) { + writeNil(); + return this; + } Template tmpl = msgpack.lookup(o.getClass()); tmpl.write(this, o); return this; } - public Packer writeOptional(Object o) throws IOException { - if(o == null) { + public Packer write(Value v) throws IOException { + if(v == null) { writeNil(); return this; } - return write(o); - } - - public Packer write(Value v) throws IOException { v.writeTo(this); return this; } diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 8157f5f6b..ca85e6182 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -67,8 +67,6 @@ public interface Packer extends Closeable { public Packer write(Object o) throws IOException; - public Packer writeOptional(Object o) throws IOException; - public Packer write(Value v) throws IOException; } diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 1fb64a825..d492622fa 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -78,30 +78,6 @@ public T read(T to) throws IOException { return (T) tmpl.read(this, to); } - public T readOptional(Class klass) throws IOException { - return readOptional(klass, null); - } - - public T readOptional(Class klass, T defaultValue) throws IOException { - if(trySkipNil()) { - return defaultValue; - } - Template tmpl = (Template) msgpack.lookup(klass); - return (T) tmpl.read(this, null); - } - - public T readOptional(T to, T defaultValue) throws IOException { - if(trySkipNil()) { - return defaultValue; - } - Template tmpl = msgpack.lookup((Class) to.getClass()); - return (T) tmpl.read(this, to); - } - - public T readOptional(T to) throws IOException { - return readOptional(to, null); - } - public void close() throws IOException { } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 1d042f8c0..99981737b 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -84,13 +84,5 @@ public interface Unpacker extends Iterable, Closeable { public T read(Class klass) throws IOException; public T read(T to) throws IOException; - - public T readOptional(Class klass) throws IOException; - - public T readOptional(Class klass, T defaultValue) throws IOException; - - public T readOptional(T to, T defaultValue) throws IOException; - - public T readOptional(T to) throws IOException; } diff --git a/src/test/java/org/msgpack/TestSimplePackable.java b/src/test/java/org/msgpack/TestSimplePackable.java index 08ff9e7f0..21cd7a6d4 100644 --- a/src/test/java/org/msgpack/TestSimplePackable.java +++ b/src/test/java/org/msgpack/TestSimplePackable.java @@ -94,30 +94,41 @@ public void testSample01() throws IOException { assertEquals(a.f2, b.f2); } - // some files are NULLABLE or OPTIONAL + // some files are OPTIONAL or NULLABLE public static class Sample02 implements MessagePackable { public String f0; // nullable - public Long f1; // optional - public Integer f2; // nullable + public long f1; // primitive + public Integer f2; // required public String f3; // optional public Sample02() { } public void writeTo(Packer pk) throws IOException { pk.writeArrayBegin(4); - pk.writeOptional(f0); - pk.writeOptional(f1); - pk.writeOptional(f2); - pk.writeOptional(f3); + pk.write(f0); + pk.writeLong(f1); + if(f2 == null) { + throw new MessageTypeException("f2 is required but null"); + } + pk.write(f2); + pk.write(f3); pk.writeArrayEnd(); } public void readFrom(Unpacker u) throws IOException { u.readArrayBegin(); - f0 = u.readOptional(String.class); - f1 = u.readOptional(Long.class); - f2 = u.readOptional(Integer.class); - f3 = u.readOptional(String.class); + f0 = u.read(String.class); + f1 = u.readLong(); + if(u.trySkipNil()) { + f2 = null; + } else { + f2 = u.read(Integer.class); + } + if(u.trySkipNil()) { + f3 = null; + } else { + f3 = u.read(String.class); + } u.readArrayEnd(); } } @@ -128,9 +139,9 @@ public void testSample02() throws IOException { Sample02 a = new Sample02(); a.f0 = "aaa"; - a.f1 = null; - a.f2 = null; - a.f3 = "bbb"; + a.f1 = 1; + a.f2 = 22; + a.f3 = null; BufferPacker pk = msgpack.createBufferPacker(); a.writeTo(pk); From 5598d58d1c75f9837b6abd7a7f98173c886fcb3c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 13 Aug 2011 17:25:48 +0900 Subject: [PATCH 125/409] refined template building mechanism --- .../msgpack/template/TemplateReference.java | 30 ++++- .../msgpack/template/TemplateRegistry.java | 124 ++++++++---------- 2 files changed, 81 insertions(+), 73 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java index 769b1940e..b51da497a 100644 --- a/src/main/java/org/msgpack/template/TemplateReference.java +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -18,36 +18,56 @@ package org.msgpack.template; import java.io.IOException; +import java.lang.reflect.Type; +import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; public class TemplateReference extends AbstractTemplate { - private Template actualTemplate; + private TemplateRegistry registry; - public void setTemplate(Template actualTemplate) { - this.actualTemplate = actualTemplate; + private Type targetType; + + private Template actualTemplate; + + public TemplateReference(TemplateRegistry registry, Type targetType) { + this.registry = registry; + this.targetType = targetType; + } + + private void validateActualTemplate() { + if (actualTemplate == null) { + actualTemplate = registry.cache.get(targetType); + if (actualTemplate == null) { + throw new MessageTypeException("Actual template have not been created"); + } + } } @Override public void write(Packer pk, T v, boolean required) throws IOException { + validateActualTemplate(); actualTemplate.write(pk, v, required); } @Override public void write(Packer pk, T v) throws IOException { + validateActualTemplate(); actualTemplate.write(pk, v, false); } @Override public T read(Unpacker u, T to, boolean required) throws IOException { - return actualTemplate.read(u, to, required); + validateActualTemplate(); + return (T) actualTemplate.read(u, to, required); } @Override public T read(Unpacker u, T to) throws IOException { - return actualTemplate.read(u, to, false); + validateActualTemplate(); + return (T) actualTemplate.read(u, to, false); } } diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index aef3c76d3..4b8ccafad 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -17,7 +17,6 @@ // package org.msgpack.template; -import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.Map; @@ -59,12 +58,10 @@ public class TemplateRegistry { private TemplateBuilderChain chain; - private Map> cache; + Map> cache; private Map genericCache; - private Map> templateReferences; - public TemplateRegistry() { this(null); } @@ -73,7 +70,6 @@ public TemplateRegistry(TemplateRegistry registry) { parent = registry; cache = new HashMap>(); genericCache = new HashMap(); - templateReferences = new HashMap>(); if (parent == null) { registerTemplates(); chain = new TemplateBuilderChain(); @@ -83,29 +79,6 @@ public TemplateRegistry(TemplateRegistry registry) { } } - private boolean notBuilding(Type targetType) { - return !templateReferences.containsKey(targetType); - } - - private void startBuilding(Type targetType) { - List list = new ArrayList(); - templateReferences.put(targetType, list); - } - - private Template getTemplateReference(Type targetType) { - List list = templateReferences.get(targetType); - TemplateReference tmpl = new TemplateReference(); - list.add(tmpl); - return tmpl; - } - - private void finishBuilding(Type targetType, Template actualTemplate) { - List list = templateReferences.remove(targetType); - for (TemplateReference tmpl : list) { - tmpl.setTemplate(actualTemplate); - } - } - private void registerTemplates() { register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); @@ -143,26 +116,21 @@ private void registerTemplates() { } public void register(final Class targetClass) { - register(targetClass, chain.select(targetClass, false).buildTemplate(targetClass)); + buildAndRegister(null, targetClass, false, null, false); } public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - Template tmpl; - if (notBuilding(targetClass)) { - startBuilding(targetClass); - tmpl = chain.select(targetClass, false).buildTemplate(targetClass, flist); - finishBuilding(targetClass, tmpl); - } else { - tmpl = getTemplateReference(targetClass); - } - register(targetClass, tmpl); + buildAndRegister(null, targetClass, false, flist, false); } public synchronized void register(final Type targetType, final Template tmpl) { - if (targetType instanceof ParameterizedType) { + if (tmpl == null) { + throw new NullPointerException("Template object is null"); + } + if (targetType instanceof ParameterizedType) { cache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { cache.put(targetType, tmpl); @@ -186,40 +154,28 @@ public synchronized void unregister() { cache.clear(); } - public synchronized Template lookup(Type targetType) { + public Template lookup(Type targetType) { return lookupImpl(targetType, true, false); } - public synchronized Template lookup(Type targetType, final boolean forceBuild) { + public Template lookup(Type targetType, final boolean forceBuild) { return lookupImpl(targetType, true, forceBuild); } - public synchronized Template lookup(Type targetType, final boolean forceLoad, final boolean forceBuild) { + public Template lookup(Type targetType, final boolean forceLoad, final boolean forceBuild) { return lookupImpl(targetType, forceLoad, forceBuild); } - public synchronized Template tryLookup(Type targetType) { + public Template tryLookup(Type targetType) { return lookupImpl(targetType, true, false); } - public synchronized Template tryLookup(Type targetType, final boolean forceBuild) { + public Template tryLookup(Type targetType, final boolean forceBuild) { return lookupImpl(targetType, true, forceBuild); } private synchronized Template lookupImpl(Type targetType, final boolean forceLoad, final boolean forceBuild) { Template tmpl; - if (notBuilding(targetType)) { - startBuilding(targetType); - tmpl = lookupImpl0(targetType, forceLoad, forceBuild); - finishBuilding(targetType, tmpl); - } else { - tmpl = getTemplateReference(targetType); - } - return tmpl; - } - - private synchronized Template lookupImpl0(Type targetType, final boolean forceLoad, final boolean forceBuild) { - Template tmpl; if (targetType instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) targetType; @@ -258,20 +214,19 @@ private synchronized Template lookupImpl0(Type targetType, final boolean forceLo return tmpl; } - // find match TemplateBuilder + // find matched template builder TemplateBuilder builder = chain.select(targetClass, true); if (builder != null) { if (forceLoad) { - tmpl = builder.loadTemplate(targetClass); + tmpl = buildAndRegister(builder, targetClass, true, null, true); if (tmpl != null) { register(targetClass, tmpl); return tmpl; } } - tmpl = builder.buildTemplate(targetClass); + tmpl = buildAndRegister(builder, targetClass, true, null, false); if (tmpl != null) { - register(targetClass, tmpl); return tmpl; } } @@ -316,21 +271,16 @@ private synchronized Template lookupImpl0(Type targetType, final boolean forceLo } } - // not annotation + // if targetClass does not have annotations if (forceBuild) { - try { - tmpl = chain.select(targetClass, !forceBuild).buildTemplate(targetClass); - register(targetClass, tmpl); - return tmpl; - } catch (NullPointerException e) { // ignore - } + buildAndRegister(null, targetClass, !forceBuild, null, false); } throw new MessageTypeException( "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } - private synchronized Template lookupGenericImpl(final ParameterizedType targetType) { + private Template lookupGenericImpl(final ParameterizedType targetType) { Type rawType = targetType.getRawType(); GenericTemplate tmpl = genericCache.get(rawType); if (tmpl == null) { @@ -345,4 +295,42 @@ private synchronized Template lookupGenericImpl(final ParameterizedType targetTy return tmpl.build(tmpls); } + + private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, + final boolean hasAnnotation, final FieldList flist, final boolean isLoad) { + Template newTmpl = null; + Template oldTmpl = null; + try { + if (cache.containsKey(targetClass)) { + oldTmpl = cache.get(targetClass); + } + newTmpl = new TemplateReference(this, targetClass); + cache.put(targetClass, newTmpl); + if (builder == null) { + builder = chain.select(targetClass, hasAnnotation); + } + if (isLoad) { + newTmpl = builder.loadTemplate(targetClass); + } else { + if (flist != null) { + newTmpl = builder.buildTemplate(targetClass, flist); + } else { + newTmpl = builder.buildTemplate(targetClass); + } + } + return newTmpl; + } catch (Exception e) { + if (oldTmpl != null) { + cache.put(targetClass, oldTmpl); + } else { + cache.remove(targetClass); + } + newTmpl = null; + return oldTmpl; + } finally { + if (newTmpl != null) { + cache.put(targetClass, newTmpl); + } + } + } } From 03879cf2336c432e0f83d7fe81ecac19f5f7e3fd Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 14 Aug 2011 08:35:44 +0900 Subject: [PATCH 126/409] fixed JSONPacker.escape --- .../java/org/msgpack/packer/JSONPacker.java | 73 +++++++++++++++++-- 1 file changed, 68 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/msgpack/packer/JSONPacker.java b/src/main/java/org/msgpack/packer/JSONPacker.java index f41726e58..bd4c64e9a 100644 --- a/src/main/java/org/msgpack/packer/JSONPacker.java +++ b/src/main/java/org/msgpack/packer/JSONPacker.java @@ -44,6 +44,8 @@ public class JSONPacker extends AbstractPacker { private static final byte RIGHT_BR = 0x5d; private static final byte LEFT_WN = 0x7b; private static final byte RIGHT_WN = 0x7d; + private static final byte BACKSLASH = 0x5c; + private static final byte ZERO = 0x30; private static final int FLAG_FIRST_ELEMENT = 0x01; private static final int FLAG_MAP_KEY = 0x02; @@ -275,11 +277,72 @@ private void escape(Output out, ByteBuffer bb) throws IOException { escape(out, str); } - private void escape(Output out, String s) throws IOException { - // TODO optimize - String e = JSONValue.escape(s); - byte[] raw = e.getBytes(); - out.write(raw, 0, raw.length); + private final static int[] ESCAPE_TABLE; + private final static byte[] HEX_TABLE; + + static { + ESCAPE_TABLE = new int[128]; + for (int i = 0; i < 0x20; ++i) { + // control char + ESCAPE_TABLE[i] = -1; + } + ESCAPE_TABLE['"'] = '"'; + ESCAPE_TABLE['\\'] = '\\'; + ESCAPE_TABLE[0x08] = 'b'; + ESCAPE_TABLE[0x09] = 't'; + ESCAPE_TABLE[0x0C] = 'f'; + ESCAPE_TABLE[0x0A] = 'n'; + ESCAPE_TABLE[0x0D] = 'r'; + + char[] hex = "0123456789ABCDEF".toCharArray(); + HEX_TABLE = new byte[hex.length]; + for (int i = 0; i < hex.length; ++i) { + HEX_TABLE[i] = (byte) hex[i]; + } + } + + private static void escape(Output out, String s) throws IOException { + byte[] tmp = new byte[] { (byte) '\\', (byte) 'u', 0, 0, 0, 0 }; + char[] chars = s.toCharArray(); + for(int i=0; i < chars.length; i++) { + int ch = chars[i]; + if (ch <= 0x7f) { + int e = ESCAPE_TABLE[ch]; + if (e == 0) { + tmp[2] = (byte) ch; + out.write(tmp, 2, 1); + } else if (e > 0) { + tmp[2] = BACKSLASH; + tmp[3] = (byte) e; + out.write(tmp, 2, 2); + } else { + // control char + tmp[2] = ZERO; + tmp[3] = ZERO; + tmp[4] = HEX_TABLE[ch >> 4]; + tmp[5] = HEX_TABLE[ch & 0x0f]; + out.write(tmp, 0, 6); + } + } else if (ch <= 0x7ff) { + // 2-bytes char + tmp[2] = (byte) (0xc0 | (ch >> 6)); + tmp[3] = (byte) (0x80 | (ch & 0x3f)); + out.write(tmp, 2, 2); + } else if (ch >= 0xd800 && ch <= 0xdfff) { + // outside of BMP + tmp[2] = HEX_TABLE[(ch >> 12) & 0x0f]; + tmp[3] = HEX_TABLE[(ch >> 8) & 0x0f]; + tmp[4] = HEX_TABLE[(ch >> 4) & 0x0f]; + tmp[5] = HEX_TABLE[ch & 0x0f]; + out.write(tmp, 0, 6); + } else { + // 3-bytes char + tmp[2] = (byte) (0xe0 | (ch >> 12)); + tmp[3] = (byte) (0x80 | ((ch >> 6) & 0x3f)); + tmp[4] = (byte) (0x80 | (ch & 0x3f)); + out.write(tmp, 2, 3); + } + } } } From 10aa4510e9b3145822199532c06630a10d304c54 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 14 Aug 2011 09:43:10 +0900 Subject: [PATCH 127/409] fixed AbstractRawValue.toString --- .../java/org/msgpack/packer/JSONPacker.java | 34 +- .../org/msgpack/type/AbstractRawValue.java | 20 +- .../msgpack/TestValueToStringJSONUnpack.java | 314 ++++++++++++++++++ 3 files changed, 346 insertions(+), 22 deletions(-) create mode 100644 src/test/java/org/msgpack/TestValueToStringJSONUnpack.java diff --git a/src/main/java/org/msgpack/packer/JSONPacker.java b/src/main/java/org/msgpack/packer/JSONPacker.java index bd4c64e9a..a49fb0745 100644 --- a/src/main/java/org/msgpack/packer/JSONPacker.java +++ b/src/main/java/org/msgpack/packer/JSONPacker.java @@ -307,21 +307,23 @@ private static void escape(Output out, String s) throws IOException { for(int i=0; i < chars.length; i++) { int ch = chars[i]; if (ch <= 0x7f) { - int e = ESCAPE_TABLE[ch]; - if (e == 0) { - tmp[2] = (byte) ch; - out.write(tmp, 2, 1); - } else if (e > 0) { - tmp[2] = BACKSLASH; - tmp[3] = (byte) e; - out.write(tmp, 2, 2); - } else { - // control char - tmp[2] = ZERO; - tmp[3] = ZERO; - tmp[4] = HEX_TABLE[ch >> 4]; - tmp[5] = HEX_TABLE[ch & 0x0f]; - out.write(tmp, 0, 6); + int e = ESCAPE_TABLE[ch]; + if (e == 0) { + // ascii char + tmp[2] = (byte) ch; + out.write(tmp, 2, 1); + } else if (e > 0) { + // popular control char + tmp[2] = BACKSLASH; + tmp[3] = (byte) e; + out.write(tmp, 2, 2); + } else { + // control char uXXXXXX + tmp[2] = ZERO; + tmp[3] = ZERO; + tmp[4] = HEX_TABLE[ch >> 4]; + tmp[5] = HEX_TABLE[ch & 0x0f]; + out.write(tmp, 0, 6); } } else if (ch <= 0x7ff) { // 2-bytes char @@ -329,7 +331,7 @@ private static void escape(Output out, String s) throws IOException { tmp[3] = (byte) (0x80 | (ch & 0x3f)); out.write(tmp, 2, 2); } else if (ch >= 0xd800 && ch <= 0xdfff) { - // outside of BMP + // surrogates tmp[2] = HEX_TABLE[(ch >> 12) & 0x0f]; tmp[3] = HEX_TABLE[(ch >> 8) & 0x0f]; tmp[4] = HEX_TABLE[(ch >> 4) & 0x0f]; diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 477febd45..1b78fcf05 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -78,10 +78,11 @@ public StringBuilder toString(StringBuilder sb) { sb.append("\\b"); break; default: + // control chars escapeChar(sb, ch); break; } - } else { + } else if(ch <= 0x7f) { switch(ch) { case '\\': sb.append("\\\\"); @@ -93,18 +94,25 @@ public StringBuilder toString(StringBuilder sb) { sb.append(ch); break; } + } else if(ch >= 0xd800 && ch <= 0xdfff) { + // surrogates + escapeChar(sb, ch); + } else { + sb.append(ch); } } sb.append("\""); return sb; } - private void escapeChar(StringBuilder sb, char ch) { + private final static char[] HEX_TABLE = "0123456789ABCDEF".toCharArray(); + + private void escapeChar(StringBuilder sb, int ch) { sb.append("\\u"); - sb.append(((int)ch >> 12) & 0xF); - sb.append(((int)ch >> 8) & 0xF); - sb.append(((int)ch >> 4) & 0xF); - sb.append((int)ch & 0xF); + sb.append(HEX_TABLE[(ch >> 12) & 0x0f]); + sb.append(HEX_TABLE[(ch >> 8) & 0x0f]); + sb.append(HEX_TABLE[(ch >> 4) & 0x0f]); + sb.append(HEX_TABLE[ch & 0x0f]); } } diff --git a/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java new file mode 100644 index 000000000..eeedef0cd --- /dev/null +++ b/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java @@ -0,0 +1,314 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.packer.Unconverter; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + + +public class TestValueToStringJSONUnpack extends TestSet { + + @Test @Override + public void testBoolean() throws Exception { + super.testBoolean(); + } + + @Override + public void testBoolean(boolean v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBoolean(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); + } + + @Test @Override + public void testByte() throws Exception { + super.testByte(); + } + + @Override + public void testByte(byte v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeByte(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + byte ret = unpacker.readByte(); + assertEquals(v, ret); + } + + @Test @Override + public void testShort() throws Exception { + super.testShort(); + } + + @Override + public void testShort(short v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeShort(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + short ret = unpacker.readShort(); + assertEquals(v, ret); + } + + @Test @Override + public void testInteger() throws Exception { + super.testInteger(); + } + + @Override + public void testInteger(int v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeInt(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + int ret = unpacker.readInt(); + assertEquals(v, ret); + } + + @Test @Override + public void testLong() throws Exception { + super.testLong(); + } + + @Override + public void testLong(long v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeLong(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + long ret = unpacker.readLong(); + assertEquals(v, ret); + } + + @Test @Override + public void testFloat() throws Exception { + super.testFloat(); + } + + @Override + public void testFloat(float v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + if(((Float)v).isInfinite()) { + packer.writeDouble(v); + String str = packer.getResult().toString(); + if(v < 0) { + assertEquals("-Infinity", str); + } else { + assertEquals("Infinity", str); + } + return; + } else if(((Float)v).isNaN()) { + packer.writeDouble(v); + String str = packer.getResult().toString(); + assertEquals("NaN", str); + return; + } + packer.writeFloat(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testDouble() throws Exception { + super.testDouble(); + } + + @Override + public void testDouble(double v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + if(((Double)v).isInfinite()) { + packer.writeDouble(v); + String str = packer.getResult().toString(); + if(v < 0) { + assertEquals("-Infinity", str); + } else { + assertEquals("Infinity", str); + } + return; + } else if(((Double)v).isNaN()) { + packer.writeDouble(v); + String str = packer.getResult().toString(); + assertEquals("NaN", str); + return; + } + packer.writeDouble(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); + } + + @Test @Override + public void testNil() throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeNil(); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.readNil(); + } + + //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeBigInteger(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + BigInteger ret = unpacker.readBigInteger(); + assertEquals(v, ret); + } + + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + packer.writeString(v); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + String ret = unpacker.readString(); + assertEquals(v, ret); + } + + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + // FIXME JSONPacker doesn't support bytes + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + //packer.writeByteArray(v); + String str = new String(v); + packer.writeString(str); + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + //byte[] ret = unpacker.readByteArray(); + String ret = unpacker.readString(); + assertEquals(str, ret); + } + + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + Unconverter packer = new Unconverter(msgpack); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + } + byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); + if(!keyElementClass.equals(String.class)) { + // TODO JSONUnpacker rejects maps whose keys are not string + return; + } + Unpacker unpacker = msgpack.createBufferUnpacker(bytes); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } +} From 51fe55a24e910cd79704b20ee6795880aa2e52a1 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 14 Aug 2011 12:08:28 +0900 Subject: [PATCH 128/409] deleted unnecessary log4j.properties files --- src/main/resources/log4j.properties | 14 -------------- src/test/resources/log4j.properties | 14 -------------- 2 files changed, 28 deletions(-) delete mode 100644 src/main/resources/log4j.properties delete mode 100644 src/test/resources/log4j.properties diff --git a/src/main/resources/log4j.properties b/src/main/resources/log4j.properties deleted file mode 100644 index 6fae205c9..000000000 --- a/src/main/resources/log4j.properties +++ /dev/null @@ -1,14 +0,0 @@ -### direct log messages to stdout ### -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.Target=System.out -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%d %5p %c{1} - %m%n - -### direct messages to file mylog.log ### -log4j.appender.file=org.apache.log4j.FileAppender -log4j.appender.file.File=mylog.log -log4j.appender.file.Append=true -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=%d %5p %c{1} - %m%n - -log4j.rootLogger=info, stdout diff --git a/src/test/resources/log4j.properties b/src/test/resources/log4j.properties deleted file mode 100644 index 4e8e88d6e..000000000 --- a/src/test/resources/log4j.properties +++ /dev/null @@ -1,14 +0,0 @@ -### direct log messages to stdout ### -log4j.appender.stdout=org.apache.log4j.ConsoleAppender -log4j.appender.stdout.Target=System.out -log4j.appender.stdout.layout=org.apache.log4j.PatternLayout -log4j.appender.stdout.layout.ConversionPattern=%d %5p %c{1} - %m%n - -### direct messages to file mylog.log ### -log4j.appender.file=org.apache.log4j.FileAppender -log4j.appender.file.File=mylog.log -log4j.appender.file.Append=true -log4j.appender.file.layout=org.apache.log4j.PatternLayout -log4j.appender.file.layout.ConversionPattern=%d %5p %c{1} - %m%n - -log4j.rootLogger=off, stdout From ad2c61d004ebee673ea12254a38a8735197d1e4f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 14 Aug 2011 12:11:33 +0900 Subject: [PATCH 129/409] modified TemplateReference.java --- src/main/java/org/msgpack/template/TemplateReference.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java index b51da497a..fdb0d6bb0 100644 --- a/src/main/java/org/msgpack/template/TemplateReference.java +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -31,7 +31,7 @@ public class TemplateReference extends AbstractTemplate { private Type targetType; - private Template actualTemplate; + private Template actualTemplate; public TemplateReference(TemplateRegistry registry, Type targetType) { this.registry = registry; @@ -40,7 +40,7 @@ public TemplateReference(TemplateRegistry registry, Type targetType) { private void validateActualTemplate() { if (actualTemplate == null) { - actualTemplate = registry.cache.get(targetType); + actualTemplate = (Template) registry.cache.get(targetType); if (actualTemplate == null) { throw new MessageTypeException("Actual template have not been created"); } @@ -62,12 +62,12 @@ public void write(Packer pk, T v) throws IOException { @Override public T read(Unpacker u, T to, boolean required) throws IOException { validateActualTemplate(); - return (T) actualTemplate.read(u, to, required); + return actualTemplate.read(u, to, required); } @Override public T read(Unpacker u, T to) throws IOException { validateActualTemplate(); - return (T) actualTemplate.read(u, to, false); + return actualTemplate.read(u, to, false); } } From 97357ddcc1e589024aaf19ed9d89d627caa217a2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 14 Aug 2011 21:32:17 +0900 Subject: [PATCH 130/409] refined template building mechanism again --- .../msgpack/template/TemplateRegistry.java | 25 +++++++------------ .../template/builder/BeansBuildContext.java | 2 +- .../template/builder/BuildContext.java | 5 ++-- .../template/builder/DefaultBuildContext.java | 5 +--- .../builder/JavassistTemplateBuilder.java | 9 +------ 5 files changed, 14 insertions(+), 32 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 4b8ccafad..d235a0628 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -116,14 +116,14 @@ private void registerTemplates() { } public void register(final Class targetClass) { - buildAndRegister(null, targetClass, false, null, false); + buildAndRegister(null, targetClass, false, null); } public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } - buildAndRegister(null, targetClass, false, flist, false); + buildAndRegister(null, targetClass, false, flist); } public synchronized void register(final Type targetType, final Template tmpl) { @@ -218,14 +218,14 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa TemplateBuilder builder = chain.select(targetClass, true); if (builder != null) { if (forceLoad) { - tmpl = buildAndRegister(builder, targetClass, true, null, true); + tmpl = builder.loadTemplate(targetClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; } } - tmpl = buildAndRegister(builder, targetClass, true, null, false); + tmpl = buildAndRegister(builder, targetClass, true, null); if (tmpl != null) { return tmpl; } @@ -273,7 +273,7 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa // if targetClass does not have annotations if (forceBuild) { - buildAndRegister(null, targetClass, !forceBuild, null, false); + buildAndRegister(null, targetClass, !forceBuild, null); } throw new MessageTypeException( @@ -282,6 +282,7 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa private Template lookupGenericImpl(final ParameterizedType targetType) { Type rawType = targetType.getRawType(); + GenericTemplate tmpl = genericCache.get(rawType); if (tmpl == null) { return null; @@ -289,7 +290,7 @@ private Template lookupGenericImpl(final ParameterizedType targetType) { Type[] types = targetType.getActualTypeArguments(); Template[] tmpls = new Template[types.length]; - for (int i=0; i < types.length; ++i) { + for (int i = 0; i < types.length; ++i) { tmpls[i] = lookup(types[i]); } @@ -297,7 +298,7 @@ private Template lookupGenericImpl(final ParameterizedType targetType) { } private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, - final boolean hasAnnotation, final FieldList flist, final boolean isLoad) { + final boolean hasAnnotation, final FieldList flist) { Template newTmpl = null; Template oldTmpl = null; try { @@ -309,15 +310,7 @@ private synchronized Template buildAndRegister(TemplateBuilder builder, final Cl if (builder == null) { builder = chain.select(targetClass, hasAnnotation); } - if (isLoad) { - newTmpl = builder.loadTemplate(targetClass); - } else { - if (flist != null) { - newTmpl = builder.buildTemplate(targetClass, flist); - } else { - newTmpl = builder.buildTemplate(targetClass); - } - } + newTmpl = flist != null ? builder.buildTemplate(targetClass, flist) : builder.buildTemplate(targetClass); return newTmpl; } catch (Exception e) { if (oldTmpl != null) { diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index f9959b4e2..2b9208194 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -181,7 +181,7 @@ public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, Templ } @Override - public Template loadTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { + public Template loadTemplate(Class targetClass) { return null; } } diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 52984eb53..3dd20c6b3 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -240,13 +240,12 @@ protected void write(final String className, final String directoryName) { } } - protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); + protected abstract Template loadTemplate(Class targetClass); protected Template load(final String className) { String tmplName = className + "_$$_Template"; try { - Class tmplClass = getClass().getClassLoader() - .loadClass(tmplName); + Class tmplClass = getClass().getClassLoader().loadClass(tmplName); return buildInstance(tmplClass); } catch (ClassNotFoundException e) { return null; diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 91d761133..13d4e11a6 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -17,7 +17,6 @@ // package org.msgpack.template.builder; -import java.io.IOException; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; @@ -234,9 +233,7 @@ public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] } @Override - public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; + public Template loadTemplate(Class targetClass) { this.origClass = targetClass; this.origName = origClass.getName(); return load(origName); diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 2d5b60650..f6991f8e1 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -149,14 +149,7 @@ private void writeTemplate(Class targetClass, FieldEntry[] entries, String di public Template loadTemplate(Type targetType) { Class targetClass = (Class) targetType; checkClassValidation(targetClass); - FieldOption implicitOption = getFieldOption(targetClass); - FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); - return loadTemplate(targetClass, entries); - } - - private Template loadTemplate(Class targetClass, FieldEntry[] entries) { - Template[] tmpls = toTemplate(entries); BuildContext bc = createBuildContext(); - return bc.loadTemplate(targetClass, entries, tmpls); + return bc.loadTemplate(targetClass); } } From 8bf04b82cc336077171c94ee614fb5b56935f172 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 15 Aug 2011 11:43:02 +0900 Subject: [PATCH 131/409] added test programs for checking behaviors of template builders to build reference cycle templates --- .../TestJavassistBufferPackBufferUnpack.java | 42 ++++++ .../TestJavassistBufferPackConvert.java | 46 +++++++ .../TestJavassistBufferPackUnpack.java | 40 ++++++ .../TestJavassistPackBufferUnpack.java | 44 +++++++ .../builder/TestJavassistPackConvert.java | 48 +++++++ ...pack.java => TestJavassistPackUnpack.java} | 44 ++++++- ...ReflectionBeansBufferPackBufferUnpack.java | 42 ++++++ .../TestReflectionBeansBufferPackConvert.java | 46 +++++++ .../TestReflectionBeansBufferPackUnpack.java | 40 ++++++ .../TestReflectionBeansPackBufferUnpack.java | 44 +++++++ .../TestReflectionBeansPackConvert.java | 48 +++++++ ...ava => TestReflectionBeansPackUnpack.java} | 44 ++++++- .../TestReflectionBufferPackBufferUnpack.java | 42 ++++++ .../TestReflectionBufferPackConvert.java | 46 +++++++ .../TestReflectionBufferPackUnpack.java | 40 ++++++ .../TestReflectionPackBufferUnpack.java | 44 +++++++ .../builder/TestReflectionPackConvert.java | 48 +++++++ ...ack.java => TestReflectionPackUnpack.java} | 44 ++++++- .../org/msgpack/template/builder/TestSet.java | 40 ++++++ .../ReferenceCycleTypeFieldsClass.java | 115 ++++++++++++++++ ...erenceCycleTypeFieldsClassNotNullable.java | 123 ++++++++++++++++++ 21 files changed, 1067 insertions(+), 3 deletions(-) rename src/test/java/org/msgpack/template/builder/{TestJavassistPackStreamUnpack.java => TestJavassistPackUnpack.java} (89%) rename src/test/java/org/msgpack/template/builder/{TestReflectionBeansPackStreamUnpack.java => TestReflectionBeansPackUnpack.java} (89%) rename src/test/java/org/msgpack/template/builder/{TestReflectionPackStreamUnpack.java => TestReflectionPackUnpack.java} (89%) create mode 100644 src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClass.java create mode 100644 src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClassNotNullable.java diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index ca5da4a1d..9ba74742c 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -316,6 +318,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index 1af5dc8c1..1fb5caf2e 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -344,6 +346,50 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index ffaf48da2..5646f0065 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -305,6 +307,44 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index e7042687f..1fd56a4ba 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -331,6 +333,48 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java index 95f21d42f..735fc0ca3 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -359,6 +361,52 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java similarity index 89% rename from src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java rename to src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index cecfadda1..619f56f4e 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -27,6 +27,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -34,7 +36,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestJavassistPackStreamUnpack extends TestSet { +public class TestJavassistPackUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { @@ -319,6 +321,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 81b6214fc..fe7973e9c 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -316,6 +318,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index d23ac1aff..b508c2102 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -344,6 +346,50 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index d9a640a08..f9f23398b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -305,6 +307,44 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index 757c4970f..3000e4aa5 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -331,6 +333,48 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index 1fa790fe4..805b75039 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -359,6 +361,52 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java similarity index 89% rename from src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 1119d2091..242503870 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -27,6 +27,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -34,7 +36,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestReflectionBeansPackStreamUnpack extends TestSet { +public class TestReflectionBeansPackUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { @@ -319,6 +321,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 09e64de80..939a53fd6 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -316,6 +318,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index ba2d5abcf..dc1dfec2a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -344,6 +346,50 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index 75939c62e..f424b90fe 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -305,6 +307,44 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index d2f3d829e..6549d2e0f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -331,6 +333,48 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index 185016926..db48018d8 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -26,6 +26,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -359,6 +361,52 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java similarity index 89% rename from src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java rename to src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index d3d360bf1..bb4601cef 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackStreamUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -27,6 +27,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -34,7 +36,7 @@ import org.msgpack.unpacker.Unpacker; -public class TestReflectionPackStreamUnpack extends TestSet { +public class TestReflectionPackUnpack extends TestSet { @Test @Override public void testPrimitiveTypeFieldsClass() throws Exception { @@ -319,6 +321,46 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass assertEquals(v, ret); } + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index a3858b6be..ad9df27dc 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -24,6 +24,8 @@ import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; import org.msgpack.testclasses.PrimitiveTypeFieldsClass; import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; import org.msgpack.testclasses.ReferenceTypeFieldsClass; import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; import org.msgpack.testclasses.UserDefinedTypeFieldsClass; @@ -341,6 +343,44 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { } + public void testReferenceCycleTypeFieldsClass() throws Exception { + testReferenceCycleTypeFieldsClass(null); + testReferenceCycleTypeFieldsClass(new ReferenceCycleTypeFieldsClass()); + ReferenceCycleTypeFieldsClass v = new ReferenceCycleTypeFieldsClass(); + v.f0 = new ReferenceCycleTypeFieldsClass(); + v.f1 = new ReferenceCycleTypeFieldsClass.NestedClass(); + v.f1.f0 = new ReferenceCycleTypeFieldsClass(); + v.f2 = "muga"; + testReferenceCycleTypeFieldsClass(v); + } + + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + } + + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + testReferenceCycleTypeFieldsClassNotNullable(null); + try { + testReferenceCycleTypeFieldsClassNotNullable(new ReferenceCycleTypeFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } + try { + ReferenceCycleTypeFieldsClassNotNullable v = new ReferenceCycleTypeFieldsClassNotNullable(); + v.f0 = new ReferenceCycleTypeFieldsClassNotNullable(); + v.f1 = new ReferenceCycleTypeFieldsClassNotNullable.NestedClass(); + v.f1.f0 = new ReferenceCycleTypeFieldsClassNotNullable(); + v.f2 = "muga"; + testReferenceCycleTypeFieldsClassNotNullable(v); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } + } + + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + } + public void testInheritanceClass() throws Exception { testInheritanceClass(null); testInheritanceClass(new InheritanceClass()); diff --git a/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClass.java new file mode 100644 index 000000000..1efa70a43 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClass.java @@ -0,0 +1,115 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Beans; +import org.msgpack.annotation.Message; + + +@Ignore @Message @Beans +public class ReferenceCycleTypeFieldsClass { + + public ReferenceCycleTypeFieldsClass f0; + + public NestedClass f1; + + public String f2; + + public ReferenceCycleTypeFieldsClass() {} + + public void setF0(ReferenceCycleTypeFieldsClass f0) { + this.f0 = f0; + } + + public ReferenceCycleTypeFieldsClass getF0() { + return f0; + } + + public void setF1(NestedClass f1) { + this.f1 = f1; + } + + public NestedClass getF1() { + return f1; + } + + public void setF2(String f2) { + this.f2 = f2; + } + + public String getF2() { + return f2; + } + + @Override + public boolean equals(Object o) { + if (!(o instanceof ReferenceCycleTypeFieldsClass)) { + return false; + } + ReferenceCycleTypeFieldsClass that = (ReferenceCycleTypeFieldsClass) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (!f0.equals(that.f0)) { + return false; + } + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (that.f1 != null) { + if (!f1.equals(that.f1)) { + return false; + } + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (that.f2 != null) { + if (!f2.equals(that.f2)) { + return false; + } + } + return true; + } + + @Ignore @Message @Beans + public static class NestedClass { + public ReferenceCycleTypeFieldsClass f0; + + public NestedClass() {} + + public ReferenceCycleTypeFieldsClass getF0() { + return f0; + } + + public void setF0(ReferenceCycleTypeFieldsClass f0) { + this.f0 = f0; + } + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + NestedClass that = (NestedClass) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } + } + return true; + } + } +} diff --git a/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClassNotNullable.java new file mode 100644 index 000000000..db97f5568 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/ReferenceCycleTypeFieldsClassNotNullable.java @@ -0,0 +1,123 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Beans; +import org.msgpack.annotation.Message; +import org.msgpack.annotation.NotNullable; + + +@Ignore @Message @Beans +public class ReferenceCycleTypeFieldsClassNotNullable { + + @NotNullable + public ReferenceCycleTypeFieldsClassNotNullable f0; + + @NotNullable + public NestedClass f1; + + @NotNullable + public String f2; + + public ReferenceCycleTypeFieldsClassNotNullable() {} + + @NotNullable + public ReferenceCycleTypeFieldsClassNotNullable getF0() { + return f0; + } + + @NotNullable + public void setF1(NestedClass f1) { + this.f1 = f1; + } + + @NotNullable + public NestedClass getF1() { + return f1; + } + + @NotNullable + public void setF2(String f2) { + this.f2 = f2; + } + + @NotNullable + public String getF2() { + return f2; + } + + @Override + public boolean equals(Object o) { + if (!(o instanceof ReferenceCycleTypeFieldsClassNotNullable)) { + return false; + } + ReferenceCycleTypeFieldsClassNotNullable that = (ReferenceCycleTypeFieldsClassNotNullable) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (!f0.equals(that.f0)) { + return false; + } + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (that.f1 != null) { + if (!f1.equals(that.f1)) { + return false; + } + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (that.f2 != null) { + if (!f2.equals(that.f2)) { + return false; + } + } + return true; + } + + @Ignore @Message @Beans + public static class NestedClass { + @NotNullable + public ReferenceCycleTypeFieldsClassNotNullable f0; + + public NestedClass() {} + + @NotNullable + public ReferenceCycleTypeFieldsClassNotNullable getF0() { + return f0; + } + + @NotNullable + public void setF0(ReferenceCycleTypeFieldsClassNotNullable f0) { + this.f0 = f0; + } + + @Override + public boolean equals(Object o) { + if (! (o instanceof NestedClass)) { + return false; + } + NestedClass that = (NestedClass) o; + if (f0 == null) { + if (that.f0 != null) { + return false; + } + } + if (that.f0 != null) { + if (! f0.equals(that.f0)) { + return false; + } + } + return true; + } + } +} \ No newline at end of file From 08624d0468921fc1d6dd6b542769732ed9607583 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 16 Aug 2011 12:50:12 +0900 Subject: [PATCH 132/409] added DateTemplate and BigDecimalTemplate objects to template map as pre-defined templates --- src/main/java/org/msgpack/template/TemplateRegistry.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index d235a0628..48d1c54c2 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -18,11 +18,13 @@ package org.msgpack.template; import java.util.Collection; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.HashMap; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.math.BigDecimal; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -95,6 +97,8 @@ private void registerTemplates() { register(double.class, DoubleTemplate.getInstance()); register(Double.class, DoubleTemplate.getInstance()); register(BigInteger.class, BigIntegerTemplate.getInstance()); + register(BigDecimal.class, BigDecimalTemplate.getInstance()); + register(Date.class, DateTemplate.getInstance()); register(boolean[].class, BooleanArrayTemplate.getInstance()); register(short[].class, ShortArrayTemplate.getInstance()); register(int[].class, IntegerArrayTemplate.getInstance()); From 816c21d58575d6ef172e8ef81dd45f51d37e6010 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 16 Aug 2011 14:42:28 +0900 Subject: [PATCH 133/409] reverted TemplateRegistry.java to original one --- src/main/java/org/msgpack/template/TemplateRegistry.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 48d1c54c2..d235a0628 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -18,13 +18,11 @@ package org.msgpack.template; import java.util.Collection; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.HashMap; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; -import java.math.BigDecimal; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -97,8 +95,6 @@ private void registerTemplates() { register(double.class, DoubleTemplate.getInstance()); register(Double.class, DoubleTemplate.getInstance()); register(BigInteger.class, BigIntegerTemplate.getInstance()); - register(BigDecimal.class, BigDecimalTemplate.getInstance()); - register(Date.class, DateTemplate.getInstance()); register(boolean[].class, BooleanArrayTemplate.getInstance()); register(short[].class, ShortArrayTemplate.getInstance()); register(int[].class, IntegerArrayTemplate.getInstance()); From 106a2814ff001cd8deaec25e8180cd0fd486786a Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Wed, 17 Aug 2011 10:22:10 +0900 Subject: [PATCH 134/409] MessagePack.write accepts null value --- src/main/java/org/msgpack/MessagePack.java | 25 ++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index df4c54b27..12d718a68 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -81,7 +81,14 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { public byte[] write(Object v) throws IOException { - return write(v, registry.lookup(v.getClass())); + BufferPacker pk = createBufferPacker(); + if(v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } + return pk.toByteArray(); } public byte[] write(T v, Template tmpl) throws IOException { // TODO IOException @@ -91,7 +98,13 @@ public byte[] write(T v, Template tmpl) throws IOException { // TODO IOEx } public void write(OutputStream out, Object v) throws IOException { - write(out, v, registry.lookup(v.getClass())); + Packer pk = createPacker(out); + if(v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } } public void write(OutputStream out, T v, Template tmpl) throws IOException { @@ -168,9 +181,13 @@ public T convert(Value v, Class c) throws IOException { } public Value unconvert(T v) throws IOException { - Template tmpl = registry.lookup(v.getClass()); Unconverter pk = new Unconverter(this); - tmpl.write(pk, v); + if(v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } return pk.getResult(); } From 2f23bc7914948c821cadca345679f11ba0432b52 Mon Sep 17 00:00:00 2001 From: Watabiki Naoya Date: Wed, 17 Aug 2011 11:32:39 +0900 Subject: [PATCH 135/409] java: add CharacterTemplate --- .../msgpack/template/CharacterTemplate.java | 42 +++++++ .../msgpack/template/TemplateRegistry.java | 2 + src/test/java/org/msgpack/TestSet.java | 16 ++- .../template/TestCharacterTemplate.java | 115 ++++++++++++++++++ 4 files changed, 173 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/msgpack/template/CharacterTemplate.java create mode 100644 src/test/java/org/msgpack/template/TestCharacterTemplate.java diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java new file mode 100644 index 000000000..f65e793a9 --- /dev/null +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -0,0 +1,42 @@ +package org.msgpack.template; + +import java.io.IOException; +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + +/** + * CharacterTemplate
+ * + * @author watabiki + */ +public class CharacterTemplate extends AbstractTemplate { + + private CharacterTemplate() { } + + @Override + public void write(Packer pk, Character v, boolean required) throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; + } + pk.writeInt(v.charValue()); + } + + @Override + public Character read(Unpacker u, Character to, boolean required) throws IOException { + if (!required && u.trySkipNil()) { + return null; + } + return (char) u.readInt(); + } + + static public CharacterTemplate getInstance() { + return instance; + } + + static final CharacterTemplate instance = new CharacterTemplate(); +} diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index d235a0628..16830e64e 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -95,6 +95,8 @@ private void registerTemplates() { register(double.class, DoubleTemplate.getInstance()); register(Double.class, DoubleTemplate.getInstance()); register(BigInteger.class, BigIntegerTemplate.getInstance()); + register(char.class, CharacterTemplate.getInstance()); + register(Character.class, CharacterTemplate.getInstance()); register(boolean[].class, BooleanArrayTemplate.getInstance()); register(short[].class, ShortArrayTemplate.getInstance()); register(int[].class, IntegerArrayTemplate.getInstance()); diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index f8ea72fdf..a9820b5a2 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -25,7 +25,7 @@ public void testBoolean(boolean v) throws Exception { } public void testBooleanArray() throws Exception { - testBooleanArray(null); + testBooleanArray(null); testBooleanArray(new boolean[0]); testBooleanArray(new boolean[] { true }); testBooleanArray(new boolean[] { false }); @@ -278,7 +278,7 @@ public void testNil() throws Exception { } public void testString() throws Exception { - // TODO testString(null); // #MN considering next version + // TODO testString(null); // #MN considering next version testString(""); testString("a"); testString("ab"); @@ -436,4 +436,16 @@ public void testDate() throws Exception { public void testDate(Date v) throws Exception { } + public void testCharacter() throws Exception { + testCharacter(null); + testCharacter('a'); + testCharacter('あ'); + testCharacter((char) 1); + testCharacter(Character.MIN_VALUE); + testCharacter(Character.MAX_VALUE); + } + + public void testCharacter(Character v) throws Exception { + } + } diff --git a/src/test/java/org/msgpack/template/TestCharacterTemplate.java b/src/test/java/org/msgpack/template/TestCharacterTemplate.java new file mode 100644 index 000000000..31ebe092e --- /dev/null +++ b/src/test/java/org/msgpack/template/TestCharacterTemplate.java @@ -0,0 +1,115 @@ +package org.msgpack.template; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Unpacker; + +public class TestCharacterTemplate { + + @Test + public void testPackUnpack() throws Exception { + new TestPackUnpack().testCharacter(); + } + + @Test + public void testPackBufferUnpack() throws Exception { + new TestPackBufferUnpack().testCharacter(); + } + + @Test + public void testBufferPackBufferUnpack() throws Exception { + new TestBufferPackBufferUnpack().testCharacter(); + } + + @Test + public void testBufferPackUnpack() throws Exception { + new TestBufferPackUnpack().testCharacter(); + } + + private static class TestPackUnpack extends TestSet { + @Test @Override + public void testCharacter() throws Exception { + super.testCharacter(); + } + + @Override + public void testCharacter(Character v) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tmpl = CharacterTemplate.instance; + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Character ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestPackBufferUnpack extends TestSet { + @Test @Override + public void testCharacter() throws Exception { + super.testCharacter(); + } + + @Override + public void testCharacter(Character v) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tmpl = CharacterTemplate.instance; + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Character ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackBufferUnpack extends TestSet { + @Test @Override + public void testCharacter() throws Exception { + super.testCharacter(); + } + + @Override + public void testCharacter(Character v) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tmpl = CharacterTemplate.instance; + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + Character ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } + + private static class TestBufferPackUnpack extends TestSet { + @Test @Override + public void testCharacter() throws Exception { + super.testCharacter(); + } + + @Override + public void testCharacter(Character v) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tmpl = CharacterTemplate.instance; + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Character ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } + } +} From 98f8fc22a13da62be07c90f06c1dd87c1b227b71 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 17 Aug 2011 13:32:23 +0900 Subject: [PATCH 136/409] added copyright to CharacterTemplate.java and refined it --- .../msgpack/template/CharacterTemplate.java | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java index f65e793a9..4391f411f 100644 --- a/src/main/java/org/msgpack/template/CharacterTemplate.java +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -1,3 +1,20 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// package org.msgpack.template; import java.io.IOException; @@ -5,6 +22,7 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; + /** * CharacterTemplate
* @@ -15,15 +33,15 @@ public class CharacterTemplate extends AbstractTemplate { private CharacterTemplate() { } @Override - public void write(Packer pk, Character v, boolean required) throws IOException { - if (v == null) { + public void write(Packer pk, Character target, boolean required) throws IOException { + if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } - pk.writeInt(v.charValue()); + pk.writeInt((char) target); } @Override @@ -31,7 +49,7 @@ public Character read(Unpacker u, Character to, boolean required) throws IOExcep if (!required && u.trySkipNil()) { return null; } - return (char) u.readInt(); + return (char) u.readInt(); } static public CharacterTemplate getInstance() { From 1a1dfc9abaef028e4ec4d1d457bcb4a7b3092152 Mon Sep 17 00:00:00 2001 From: Watabiki Naoya Date: Fri, 19 Aug 2011 13:38:26 +0900 Subject: [PATCH 137/409] modified BuildContext for primitive type character --- .../org/msgpack/template/builder/BuildContext.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 3dd20c6b3..518adad01 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -57,14 +57,14 @@ public BuildContext(JavassistTemplateBuilder director) { protected Template build(final String className) { try { reset(className, false); - LOG.debug("started generating template class %s for original class %s", + LOG.debug("started generating template class %s for original class %s", new Object[] { tmplCtClass.getName(), className }); buildClass(); buildConstructor(); buildMethodInit(); buildWriteMethod(); buildReadMethod(); - LOG.debug("finished generating template class %s for original class %s", + LOG.debug("finished generating template class %s for original class %s", new Object[] { tmplCtClass.getName(), className }); return buildInstance(createClass()); } catch (Exception e) { @@ -113,7 +113,7 @@ protected void buildWriteMethod() throws CannotCompileException, director.getCtClass(Object.class.getName()), CtClass.booleanType }; - CtClass[] exceptTypes = new CtClass[] { + CtClass[] exceptTypes = new CtClass[] { director.getCtClass(IOException.class.getName()) }; LOG.debug("compiling write method body: %s", new Object[] { mbody }); @@ -195,6 +195,8 @@ protected String primitiveWriteName(Class type) { return "writeFloat"; } else if (type == double.class) { return "writeDouble"; + } else if (type == char.class) { + return "writeInt"; } return null; } @@ -214,6 +216,8 @@ protected String primitiveReadName(Class type) { return "readFloat"; } else if (type == double.class) { return "readDouble"; + } else if (type == char.class) { + return "readInt"; } return null; } From 7fd833b8f5d50946e3ba7af593a5a3dc28245a08 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 12:32:34 +0900 Subject: [PATCH 138/409] fixed bug in template building mechanism --- src/main/java/org/msgpack/template/TemplateRegistry.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 16830e64e..b76f32e74 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -244,7 +244,7 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa try { tmpl = parent.cache.get(infType); if (tmpl != null) { - parent.register(targetClass, tmpl); + register(targetClass, tmpl); return tmpl; } } catch (NullPointerException e) { // ignore From 70bc01f39412abc849cd77abd2abb29b224393f9 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 16:49:29 +0900 Subject: [PATCH 139/409] deleted forceLoad flag in TemplateRegistry --- .../msgpack/template/TemplateRegistry.java | 24 +++++++------------ 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index b76f32e74..7a1fe6848 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -157,26 +157,22 @@ public synchronized void unregister() { } public Template lookup(Type targetType) { - return lookupImpl(targetType, true, false); + return lookupImpl(targetType, false); } public Template lookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, true, forceBuild); - } - - public Template lookup(Type targetType, final boolean forceLoad, final boolean forceBuild) { - return lookupImpl(targetType, forceLoad, forceBuild); + return lookupImpl(targetType, forceBuild); } public Template tryLookup(Type targetType) { - return lookupImpl(targetType, true, false); + return lookupImpl(targetType, false); } public Template tryLookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, true, forceBuild); + return lookupImpl(targetType, forceBuild); } - private synchronized Template lookupImpl(Type targetType, final boolean forceLoad, final boolean forceBuild) { + private synchronized Template lookupImpl(Type targetType, final boolean forceBuild) { Template tmpl; if (targetType instanceof ParameterizedType) { @@ -219,12 +215,10 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceLoa // find matched template builder TemplateBuilder builder = chain.select(targetClass, true); if (builder != null) { - if (forceLoad) { - tmpl = builder.loadTemplate(targetClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } + tmpl = builder.loadTemplate(targetClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; } tmpl = buildAndRegister(builder, targetClass, true, null); From 0bfebbda03faa7f4b2c28477b56c033be89729da Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 16:54:03 +0900 Subject: [PATCH 140/409] deleted forceBuild flag in TemplateBuilder --- .../msgpack/template/TemplateRegistry.java | 19 +++---------------- .../builder/JavassistTemplateBuilder.java | 2 +- .../ReflectionBeansTemplateBuilder.java | 2 +- .../builder/ReflectionTemplateBuilder.java | 2 +- 4 files changed, 6 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7a1fe6848..c43a33a4b 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -157,22 +157,14 @@ public synchronized void unregister() { } public Template lookup(Type targetType) { - return lookupImpl(targetType, false); - } - - public Template lookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, forceBuild); + return lookupImpl(targetType); } public Template tryLookup(Type targetType) { - return lookupImpl(targetType, false); - } - - public Template tryLookup(Type targetType, final boolean forceBuild) { - return lookupImpl(targetType, forceBuild); + return lookupImpl(targetType); } - private synchronized Template lookupImpl(Type targetType, final boolean forceBuild) { + private synchronized Template lookupImpl(Type targetType) { Template tmpl; if (targetType instanceof ParameterizedType) { @@ -267,11 +259,6 @@ private synchronized Template lookupImpl(Type targetType, final boolean forceBui } } - // if targetClass does not have annotations - if (forceBuild) { - buildAndRegister(null, targetClass, !forceBuild, null); - } - throw new MessageTypeException( "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index f6991f8e1..6724285fd 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -123,7 +123,7 @@ private Template[] toTemplate(FieldEntry[] from) { if(!e.isAvailable()) { tmpls[i] = null; } else { - Template tmpl = registry.lookup(e.getGenericType(), false); + Template tmpl = registry.lookup(e.getGenericType()); tmpls[i] = tmpl; } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 659860e76..f40a7dbe7 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -99,7 +99,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { if (type.isPrimitive()) { tmpls[i] = new ReflectionBeansFieldTemplate(e); } else { - Template tmpl = registry.lookup(e.getGenericType(), false); + Template tmpl = registry.lookup(e.getGenericType()); tmpls[i] = new FieldTemplateImpl(e, tmpl); } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 0d6419bb8..c6a0fc4e0 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -187,7 +187,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { for (int i = 0; i < entries.length; i++) { FieldEntry entry = entries[i]; Class t = entry.getType(); - Template template = registry.lookup(entry.getGenericType(), false); + Template template = registry.lookup(entry.getGenericType()); templates[i] = new FieldTemplateImpl(entry, template); } return templates; From e08abdbf2c14f068c2bacb2a279c688311331f1f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 16:55:51 +0900 Subject: [PATCH 141/409] deleted tryLookup(Type) method in TemplateRegistry --- src/main/java/org/msgpack/template/TemplateRegistry.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index c43a33a4b..3e54e774f 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -160,10 +160,6 @@ public Template lookup(Type targetType) { return lookupImpl(targetType); } - public Template tryLookup(Type targetType) { - return lookupImpl(targetType); - } - private synchronized Template lookupImpl(Type targetType) { Template tmpl; From bff895ab5708cceb5eb9572a513680cd0a62fe3d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 18:19:42 +0900 Subject: [PATCH 142/409] refactored TemplateRegistry.java --- src/main/java/org/msgpack/MessagePack.java | 2 +- .../msgpack/template/TemplateRegistry.java | 148 ++++++++++++------ .../org/msgpack/util/TemplatePrecompiler.java | 2 +- .../TestJavassistBufferPackBufferUnpack.java | 42 ++--- .../TestJavassistBufferPackConvert.java | 42 ++--- .../TestJavassistBufferPackUnpack.java | 42 ++--- .../TestJavassistPackBufferUnpack.java | 42 ++--- .../builder/TestJavassistPackConvert.java | 42 ++--- .../builder/TestJavassistPackUnpack.java | 42 ++--- ...TestOrdinalEnumBufferPackBufferUnpack.java | 4 +- .../TestOrdinalEnumBufferPackConvert.java | 4 +- .../TestOrdinalEnumBufferPackUnpack.java | 4 +- .../TestOrdinalEnumPackBufferUnpack.java | 4 +- .../builder/TestOrdinalEnumPackConvert.java | 4 +- .../builder/TestOrdinalEnumPackUnpack.java | 4 +- ...ReflectionBeansBufferPackBufferUnpack.java | 42 ++--- .../TestReflectionBeansBufferPackConvert.java | 42 ++--- .../TestReflectionBeansBufferPackUnpack.java | 42 ++--- .../TestReflectionBeansPackBufferUnpack.java | 42 ++--- .../TestReflectionBeansPackConvert.java | 42 ++--- .../TestReflectionBeansPackUnpack.java | 42 ++--- .../TestReflectionBufferPackBufferUnpack.java | 42 ++--- .../TestReflectionBufferPackConvert.java | 42 ++--- .../TestReflectionBufferPackUnpack.java | 42 ++--- .../TestReflectionPackBufferUnpack.java | 42 ++--- .../builder/TestReflectionPackConvert.java | 42 ++--- .../builder/TestReflectionPackUnpack.java | 42 ++--- 27 files changed, 493 insertions(+), 439 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 12d718a68..1cb33b79b 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -40,7 +40,7 @@ public class MessagePack { private TemplateRegistry registry; public MessagePack() { - registry = new TemplateRegistry(); + registry = new TemplateRegistry(null); } public MessagePack(MessagePack msgpack) { diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 3e54e774f..7690dd231 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -62,21 +62,31 @@ public class TemplateRegistry { private Map genericCache; - public TemplateRegistry() { - this(null); + /** + * create TemplateRegistry object of root. + */ + private TemplateRegistry() { + parent = null; + chain = new TemplateBuilderChain(); + chain.init(this); + cache = new HashMap>(); // FIXME #MN cache must be immutable map + genericCache = new HashMap(); + registerTemplates(); } + /** + * + * @param registry + */ public TemplateRegistry(TemplateRegistry registry) { - parent = registry; - cache = new HashMap>(); - genericCache = new HashMap(); - if (parent == null) { - registerTemplates(); - chain = new TemplateBuilderChain(); - chain.init(this); + if (registry != null) { + parent = registry; } else { - chain = registry.chain; + parent = new TemplateRegistry(); } + chain = parent.chain; + cache = new HashMap>(); + genericCache = new HashMap(); } private void registerTemplates() { @@ -163,15 +173,57 @@ public Template lookup(Type targetType) { private synchronized Template lookupImpl(Type targetType) { Template tmpl; + tmpl = lookupGenericImpl(targetType); + if (tmpl != null) { + return tmpl; + } + + tmpl = lookupCacheImpl(targetType); + if (tmpl != null) { + return tmpl; + } + + Class targetClass = (Class) targetType; + + if (MessagePackable.class.isAssignableFrom(targetClass)) { + tmpl = new MessagePackableTemplate(targetClass); + register(targetClass, tmpl); + return tmpl; + } + + // find matched template builder + tmpl = lookupWithTemplateBuilderImpl(targetClass); + if (tmpl != null) { + return tmpl; + } + + // lookup template of interface type + tmpl = lookupInterfacesImpl(targetClass); + if (tmpl != null) { + return tmpl; + } + + // lookup template of superclass type + tmpl = lookupSuperclassesImpl(targetClass); + if (tmpl != null) { + return tmpl; + } + + throw new MessageTypeException( + "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); + } + + private Template lookupGenericImpl(Type targetType) { + Template tmpl = null; if (targetType instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) targetType; // ParameterizedType is not a Class? - tmpl = lookupGenericImpl(pType); + tmpl = lookupGenericImpl0(pType); if (tmpl != null) { return tmpl; } try { - tmpl = parent.lookupGenericImpl(pType); + tmpl = parent.lookupGenericImpl0(pType); if (tmpl != null) { return tmpl; } @@ -179,29 +231,44 @@ private synchronized Template lookupImpl(Type targetType) { } targetType = pType.getRawType(); } + return tmpl; + } + + private Template lookupGenericImpl0(final ParameterizedType targetType) { + Type rawType = targetType.getRawType(); + + GenericTemplate tmpl = genericCache.get(rawType); + if (tmpl == null) { + return null; + } + + Type[] types = targetType.getActualTypeArguments(); + Template[] tmpls = new Template[types.length]; + for (int i = 0; i < types.length; ++i) { + tmpls[i] = lookup(types[i]); + } + + return tmpl.build(tmpls); + } - tmpl = cache.get(targetType); + private Template lookupCacheImpl(Type targetType) { + Template tmpl = cache.get(targetType); if (tmpl != null) { return tmpl; } try { - tmpl = parent.cache.get(targetType); + tmpl = parent.lookupCacheImpl(targetType); if (tmpl != null) { return tmpl; } } catch (NullPointerException e) { // ignore } + return tmpl; + } - Class targetClass = (Class) targetType; - - if (MessagePackable.class.isAssignableFrom(targetClass)) { - tmpl = new MessagePackableTemplate(targetClass); - register(targetClass, tmpl); - return tmpl; - } - - // find matched template builder + private Template lookupWithTemplateBuilderImpl(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); + Template tmpl = null; if (builder != null) { tmpl = builder.loadTemplate(targetClass); if (tmpl != null) { @@ -214,9 +281,12 @@ private synchronized Template lookupImpl(Type targetType) { return tmpl; } } + return tmpl; + } - // lookup template of interface type + private Template lookupInterfacesImpl(Class targetClass) { Class[] infTypes = targetClass.getInterfaces(); + Template tmpl = null; for (Class infType : infTypes) { tmpl = cache.get(infType); if (tmpl != null) { @@ -224,7 +294,7 @@ private synchronized Template lookupImpl(Type targetType) { return tmpl; } else { try { - tmpl = parent.cache.get(infType); + tmpl = parent.lookupCacheImpl(infType); if (tmpl != null) { register(targetClass, tmpl); return tmpl; @@ -233,9 +303,12 @@ private synchronized Template lookupImpl(Type targetType) { } } } + return tmpl; + } - // lookup template of superclass type + private Template lookupSuperclassesImpl(Class targetClass) { Class superClass = targetClass.getSuperclass(); + Template tmpl = null; if (superClass != null) { for (; superClass != Object.class; superClass = superClass.getSuperclass()) { tmpl = cache.get(superClass); @@ -244,7 +317,7 @@ private synchronized Template lookupImpl(Type targetType) { return tmpl; } else { try { - tmpl = parent.cache.get(superClass); + tmpl = parent.lookupCacheImpl(superClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; @@ -254,26 +327,7 @@ private synchronized Template lookupImpl(Type targetType) { } } } - - throw new MessageTypeException( - "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); - } - - private Template lookupGenericImpl(final ParameterizedType targetType) { - Type rawType = targetType.getRawType(); - - GenericTemplate tmpl = genericCache.get(rawType); - if (tmpl == null) { - return null; - } - - Type[] types = targetType.getActualTypeArguments(); - Template[] tmpls = new Template[types.length]; - for (int i = 0; i < types.length; ++i) { - tmpls[i] = lookup(types[i]); - } - - return tmpl.build(tmpls); + return null; } private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index 8e8dcb349..4e30827e6 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -55,7 +55,7 @@ public class TemplatePrecompiler { public static void saveTemplates(final String[] classNames) throws IOException, ClassNotFoundException { // TODO #MN - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); List ret = new ArrayList(); for (String className : classNames) { matchClassNames(ret, className); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 9ba74742c..e6c344a0b 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -43,7 +43,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -63,7 +63,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -123,7 +123,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -143,7 +143,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -163,7 +163,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -183,7 +183,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -203,7 +203,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -217,7 +217,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -228,7 +228,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -246,7 +246,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -266,7 +266,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -286,7 +286,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -306,7 +306,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -326,7 +326,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -346,7 +346,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -366,7 +366,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -386,7 +386,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -406,7 +406,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -426,7 +426,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index 1fb5caf2e..b5a810363 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -67,7 +67,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -89,7 +89,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -111,7 +111,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -133,7 +133,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -155,7 +155,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -177,7 +177,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -199,7 +199,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -221,7 +221,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -237,7 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -248,7 +248,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -266,7 +266,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -288,7 +288,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -332,7 +332,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -354,7 +354,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -376,7 +376,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -398,7 +398,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -420,7 +420,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -442,7 +442,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -464,7 +464,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index 5646f0065..4c8591946 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -64,7 +64,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -102,7 +102,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -121,7 +121,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -140,7 +140,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -159,7 +159,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -178,7 +178,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -197,7 +197,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -210,7 +210,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -221,7 +221,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -239,7 +239,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -258,7 +258,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -277,7 +277,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -296,7 +296,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -315,7 +315,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -334,7 +334,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -353,7 +353,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -372,7 +372,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -391,7 +391,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -410,7 +410,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 1fd56a4ba..207d974cb 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -87,7 +87,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -108,7 +108,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -129,7 +129,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -150,7 +150,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -171,7 +171,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -192,7 +192,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -213,7 +213,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -228,7 +228,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -239,7 +239,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -257,7 +257,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -278,7 +278,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -299,7 +299,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -320,7 +320,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -341,7 +341,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -362,7 +362,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -383,7 +383,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -404,7 +404,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -425,7 +425,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -446,7 +446,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java index 735fc0ca3..3d19ed35c 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -47,7 +47,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -70,7 +70,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -93,7 +93,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -139,7 +139,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -162,7 +162,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -185,7 +185,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -208,7 +208,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -231,7 +231,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -248,7 +248,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -259,7 +259,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -277,7 +277,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -300,7 +300,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -323,7 +323,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -346,7 +346,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -392,7 +392,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -415,7 +415,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -438,7 +438,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -461,7 +461,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -484,7 +484,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index 619f56f4e..b21ffc614 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -46,7 +46,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -86,7 +86,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -106,7 +106,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -126,7 +126,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -146,7 +146,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -166,7 +166,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -186,7 +186,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -206,7 +206,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -220,7 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -231,7 +231,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -249,7 +249,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -269,7 +269,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -289,7 +289,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -309,7 +309,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -329,7 +329,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -389,7 +389,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -409,7 +409,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -429,7 +429,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index 6e978bde5..ff00fe452 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -22,7 +22,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -44,7 +44,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index 55c8074e4..edbd51ce6 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -24,7 +24,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -48,7 +48,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index abe1667ab..2f3c04a87 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -24,7 +24,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -45,7 +45,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index 2ab6fc4d3..c59ff0ed7 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -24,7 +24,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -47,7 +47,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index 1cf6e6291..7bb46e09f 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -26,7 +26,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -51,7 +51,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index a1ad8eaff..e1810f433 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -25,7 +25,7 @@ public void testEnumTypeFieldsClass() throws Exception { @Override public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClass.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClass.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); @@ -47,7 +47,7 @@ public void testEnumTypeFieldsClassNotNullable() throws Exception { @Override public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); registry.register(EnumTypeFieldsClassNotNullable.SampleEnum.class, new OrdinalEnumTemplateBuilder(registry).buildTemplate(EnumTypeFieldsClassNotNullable.SampleEnum.class)); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index fe7973e9c..600159b10 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -43,7 +43,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -63,7 +63,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -123,7 +123,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -143,7 +143,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -163,7 +163,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -183,7 +183,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -203,7 +203,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -217,7 +217,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -228,7 +228,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -246,7 +246,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -266,7 +266,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -286,7 +286,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -306,7 +306,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -326,7 +326,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -346,7 +346,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -366,7 +366,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -386,7 +386,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -406,7 +406,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -426,7 +426,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index b508c2102..77b57650f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -67,7 +67,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -89,7 +89,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -111,7 +111,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -133,7 +133,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -155,7 +155,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -177,7 +177,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -199,7 +199,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -221,7 +221,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -237,7 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -248,7 +248,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -266,7 +266,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -288,7 +288,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -332,7 +332,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -354,7 +354,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -376,7 +376,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -398,7 +398,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -420,7 +420,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -442,7 +442,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -464,7 +464,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index f9f23398b..b229b0c8b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -64,7 +64,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -102,7 +102,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -121,7 +121,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -140,7 +140,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -159,7 +159,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -178,7 +178,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -197,7 +197,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -210,7 +210,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -221,7 +221,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -239,7 +239,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -258,7 +258,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -277,7 +277,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -296,7 +296,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -315,7 +315,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -334,7 +334,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -353,7 +353,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -372,7 +372,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -391,7 +391,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -410,7 +410,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index 3000e4aa5..a8d0187f3 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -87,7 +87,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -108,7 +108,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -129,7 +129,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -150,7 +150,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -171,7 +171,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -192,7 +192,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -213,7 +213,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -228,7 +228,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -239,7 +239,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -257,7 +257,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -278,7 +278,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -299,7 +299,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -320,7 +320,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -341,7 +341,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -362,7 +362,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -383,7 +383,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -404,7 +404,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -425,7 +425,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -446,7 +446,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index 805b75039..c2f0f1604 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -47,7 +47,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -70,7 +70,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -93,7 +93,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -139,7 +139,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -162,7 +162,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -185,7 +185,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -208,7 +208,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -231,7 +231,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -248,7 +248,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -259,7 +259,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -277,7 +277,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -300,7 +300,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -323,7 +323,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -346,7 +346,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -392,7 +392,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -415,7 +415,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -438,7 +438,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -461,7 +461,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -484,7 +484,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 242503870..96271fdaa 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -46,7 +46,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -86,7 +86,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -106,7 +106,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -126,7 +126,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -146,7 +146,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -166,7 +166,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -186,7 +186,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -206,7 +206,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -220,7 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -231,7 +231,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -249,7 +249,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -269,7 +269,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -289,7 +289,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -309,7 +309,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -329,7 +329,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -389,7 +389,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -409,7 +409,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -429,7 +429,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 939a53fd6..730d8188b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -43,7 +43,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -63,7 +63,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -123,7 +123,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -143,7 +143,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -163,7 +163,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -183,7 +183,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -203,7 +203,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -217,7 +217,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -228,7 +228,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -246,7 +246,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -266,7 +266,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -286,7 +286,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -306,7 +306,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -326,7 +326,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -346,7 +346,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -366,7 +366,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -386,7 +386,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -406,7 +406,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -426,7 +426,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index dc1dfec2a..991b36e33 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -67,7 +67,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -89,7 +89,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -111,7 +111,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -133,7 +133,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -155,7 +155,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -177,7 +177,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -199,7 +199,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -221,7 +221,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -237,7 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -248,7 +248,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -266,7 +266,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -288,7 +288,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -332,7 +332,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -354,7 +354,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -376,7 +376,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -398,7 +398,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -420,7 +420,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -442,7 +442,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -464,7 +464,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index f424b90fe..c04c73be2 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -64,7 +64,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -83,7 +83,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -102,7 +102,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -121,7 +121,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -140,7 +140,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -159,7 +159,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -178,7 +178,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -197,7 +197,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -210,7 +210,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -221,7 +221,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -239,7 +239,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -258,7 +258,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -277,7 +277,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -296,7 +296,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -315,7 +315,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -334,7 +334,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -353,7 +353,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -372,7 +372,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -391,7 +391,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); BufferPacker packer = msgpack.createBufferPacker(); @@ -410,7 +410,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); BufferPacker packer = msgpack.createBufferPacker(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index 6549d2e0f..702ef61ab 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -45,7 +45,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -87,7 +87,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -108,7 +108,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -129,7 +129,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -150,7 +150,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -171,7 +171,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -192,7 +192,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -213,7 +213,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -228,7 +228,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -239,7 +239,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -257,7 +257,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -278,7 +278,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -299,7 +299,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -320,7 +320,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -341,7 +341,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -362,7 +362,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -383,7 +383,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -404,7 +404,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -425,7 +425,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -446,7 +446,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index db48018d8..be7ed750d 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -47,7 +47,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -70,7 +70,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -93,7 +93,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -139,7 +139,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -162,7 +162,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -185,7 +185,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -208,7 +208,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -231,7 +231,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -248,7 +248,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -259,7 +259,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -277,7 +277,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -300,7 +300,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -323,7 +323,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -346,7 +346,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -392,7 +392,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -415,7 +415,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -438,7 +438,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -461,7 +461,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -484,7 +484,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index bb4601cef..bae3dbb0a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -46,7 +46,7 @@ public void testPrimitiveTypeFieldsClass() throws Exception { @Override public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -66,7 +66,7 @@ public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { @Override public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(PrimitiveTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -86,7 +86,7 @@ public void testReferenceTypeFieldsClass() throws Exception { @Override public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -106,7 +106,7 @@ public void testReferenceTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -126,7 +126,7 @@ public void testListTypeFieldsClass() throws Exception { @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -146,7 +146,7 @@ public void testListTypeFieldsClassNotNullable() throws Exception { @Override public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ListTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -166,7 +166,7 @@ public void testMapTypeFieldsClass() throws Exception { @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -186,7 +186,7 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { @Override public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MapTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -206,7 +206,7 @@ public void testFinalClass() throws Exception { @Override public void testFinalClass(FinalClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(FinalClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -220,7 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { @Test @Override public void testAbstractClass() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); @@ -231,7 +231,7 @@ public void testAbstractClass() throws Exception { @Test @Override public void testInterface() throws Exception { - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(Interface.class); @@ -249,7 +249,7 @@ public void testModifiersFieldsClass() throws Exception { @Override public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -269,7 +269,7 @@ public void testModifiersFieldsClassNotNullable() throws Exception { @Override public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ModifiersFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -289,7 +289,7 @@ public void testUserDefinedTypeFieldsClass() throws Exception { @Override public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -309,7 +309,7 @@ public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { @Override public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(UserDefinedTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -329,7 +329,7 @@ public void testReferenceCycleTypeFieldsClass() throws Exception { @Override public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { @Override public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(ReferenceCycleTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -369,7 +369,7 @@ public void testInheritanceClass() throws Exception { @Override public void testInheritanceClass(InheritanceClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -389,7 +389,7 @@ public void testInheritanceClassNotNullable() throws Exception { @Override public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(InheritanceClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -409,7 +409,7 @@ public void testMessagePackableTypeFieldsClass() throws Exception { @Override public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClass.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); @@ -429,7 +429,7 @@ public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { @Override public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { MessagePack msgpack = new MessagePack(); - TemplateRegistry registry = new TemplateRegistry(); + TemplateRegistry registry = new TemplateRegistry(null); ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); Template tmpl = builder.buildTemplate(MessagePackableTypeFieldsClassNotNullable.class); ByteArrayOutputStream out = new ByteArrayOutputStream(); From 3ebb46cc3daa856a4648ed8609509c6386744877 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 20 Aug 2011 18:26:15 +0900 Subject: [PATCH 143/409] refactored TemplateRegistry.java again --- .../org/msgpack/template/TemplateRegistry.java | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7690dd231..0549179e3 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -191,7 +191,7 @@ private synchronized Template lookupImpl(Type targetType) { return tmpl; } - // find matched template builder + // find matched template builder and build template tmpl = lookupWithTemplateBuilderImpl(targetClass); if (tmpl != null) { return tmpl; @@ -214,7 +214,7 @@ private synchronized Template lookupImpl(Type targetType) { } private Template lookupGenericImpl(Type targetType) { - Template tmpl = null; + Template tmpl; if (targetType instanceof ParameterizedType) { ParameterizedType pType = (ParameterizedType) targetType; // ParameterizedType is not a Class? @@ -231,7 +231,7 @@ private Template lookupGenericImpl(Type targetType) { } targetType = pType.getRawType(); } - return tmpl; + return null; } private Template lookupGenericImpl0(final ParameterizedType targetType) { @@ -256,6 +256,7 @@ private Template lookupCacheImpl(Type targetType) { if (tmpl != null) { return tmpl; } + try { tmpl = parent.lookupCacheImpl(targetType); if (tmpl != null) { @@ -263,12 +264,13 @@ private Template lookupCacheImpl(Type targetType) { } } catch (NullPointerException e) { // ignore } - return tmpl; + return null; } private Template lookupWithTemplateBuilderImpl(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); - Template tmpl = null; + + Template tmpl; if (builder != null) { tmpl = builder.loadTemplate(targetClass); if (tmpl != null) { @@ -281,12 +283,12 @@ private Template lookupWithTemplateBuilderImpl(Class targetClass) { return tmpl; } } - return tmpl; + return null; } private Template lookupInterfacesImpl(Class targetClass) { Class[] infTypes = targetClass.getInterfaces(); - Template tmpl = null; + Template tmpl; for (Class infType : infTypes) { tmpl = cache.get(infType); if (tmpl != null) { @@ -303,7 +305,7 @@ private Template lookupInterfacesImpl(Class targetClass) { } } } - return tmpl; + return null; } private Template lookupSuperclassesImpl(Class targetClass) { From 9c3432e6671234503ac44696997fd146599be1dd Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 07:27:23 +0900 Subject: [PATCH 144/409] strict handling of byte[] -> String encoding error --- .../org/msgpack/packer/MessagePackPacker.java | 13 +- .../msgpack/type/ByteArrayRawValueImpl.java | 16 ++- .../org/msgpack/type/StringRawValueImpl.java | 4 +- .../msgpack/unpacker/AbstractUnpacker.java | 5 - .../org/msgpack/unpacker/StringAccept.java | 15 +- .../unpacker/TestMalformedEncoding.java | 130 ++++++++++++++++++ 6 files changed, 166 insertions(+), 17 deletions(-) create mode 100644 src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index e14a1f1bb..39965d9be 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -22,6 +22,11 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; +import java.nio.charset.Charset; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.CharsetEncoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; @@ -30,6 +35,7 @@ public class MessagePackPacker extends AbstractPacker { protected final Output out; + protected CharsetEncoder encoder; private PackerStack stack = new PackerStack(); @@ -43,6 +49,9 @@ public MessagePackPacker(MessagePack msgpack, OutputStream stream) { protected MessagePackPacker(MessagePack msgpack, Output out) { super(msgpack); + this.encoder = Charset.forName("UTF-8").newEncoder(). + onMalformedInput(CodingErrorAction.REPORT). + onUnmappableCharacter(CodingErrorAction.REPORT); this.out = out; } @@ -235,12 +244,12 @@ public void writeByteBuffer(ByteBuffer bb) throws IOException { @Override public void writeString(String s) throws IOException { - // TODO encoding error byte[] b; try { + // TODO encoding error? b = s.getBytes("UTF-8"); } catch (UnsupportedEncodingException ex) { - throw new MessageTypeException(); + throw new MessageTypeException(ex); } writeByteArray(b, 0, b.length); stack.reduceCount(); diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index afe510427..2a3779bed 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -20,6 +20,12 @@ import java.util.Arrays; import java.io.UnsupportedEncodingException; import java.io.IOException; +import java.nio.ByteBuffer; +import java.nio.charset.Charset; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; @@ -52,11 +58,13 @@ public byte[] getByteArray() { } public String getString() { - // TODO encoding error + CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder(). + onMalformedInput(CodingErrorAction.REPORT). + onUnmappableCharacter(CodingErrorAction.REPORT); try { - return new String(bytes, "UTF-8"); - } catch (UnsupportedEncodingException ex) { - throw new MessageTypeException(); + return decoder.decode(ByteBuffer.wrap(bytes)).toString(); + } catch (CharacterCodingException ex) { + throw new MessageTypeException(ex); } } diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index a787a78ad..28998071f 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -31,11 +31,11 @@ class StringRawValueImpl extends AbstractRawValue { } public byte[] getByteArray() { - // TODO encoding error try { + // TODO encoding error? return string.getBytes("UTF-8"); } catch (UnsupportedEncodingException ex) { - throw new MessageTypeException(); + throw new MessageTypeException(ex); } } diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index d492622fa..87cf1093b 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -50,11 +50,6 @@ public void readMapEnd() throws IOException { } - public String readString() throws IOException { - // TODO encoding exception - return new String(readByteArray(), "UTF-8"); - } - public UnpackerIterator iterator() { return new UnpackerIterator(this); } diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index f64b27e17..cf9e34d22 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -24,6 +24,7 @@ import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; import java.nio.charset.MalformedInputException; +import org.msgpack.MessageTypeException; final class StringAccept extends Accept { @@ -38,8 +39,11 @@ public StringAccept() { @Override void acceptRaw(byte[] raw) { - // TODO encoding error - this.value = new String(raw); + try { + this.value = decoder.decode(ByteBuffer.wrap(raw)).toString(); + } catch (CharacterCodingException ex) { + throw new MessageTypeException(ex); + } } @Override @@ -49,8 +53,11 @@ void acceptEmptyRaw() { @Override public void refer(ByteBuffer bb, boolean gift) throws IOException { - // TODO encoding error - this.value = decoder.decode(bb).toString(); + try { + this.value = decoder.decode(bb).toString(); + } catch (CharacterCodingException ex) { + throw new MessageTypeException(ex); + } } } diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java new file mode 100644 index 000000000..2cdcd6d0b --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -0,0 +1,130 @@ +package org.msgpack.unpacker; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.nio.charset.CharacterCodingException; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.JSON; +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.packer.BufferPacker; +import org.msgpack.packer.JSONPacker; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.unpacker.Converter; +import org.msgpack.type.Value; +import org.msgpack.type.RawValue; +import org.msgpack.type.ValueFactory; + +public class TestMalformedEncoding { + private byte[][] malforms = new byte[][] { + { (byte)0xc0, (byte)0xaf }, // '/' in 2 bytes + { (byte)0xe0, (byte)0x80, (byte)0xaf } // '/' in 3 bytes + }; + + @Test + public void testRawValueGetString() throws Exception { + for(byte[] malform : malforms) { + RawValue r = ValueFactory.rawValue(malform); + try { + r.getString(); + fail("no exception"); + } catch (MessageTypeException expected) { + } + byte[] a = r.getByteArray(); + assertArrayEquals(malform, a); + } + } + + @Test + public void testBufferUnpackerUnpackString() throws Exception { + for(byte[] malform : malforms) { + MessagePack msgpack = new MessagePack(); + BufferPacker pk = msgpack.createBufferPacker(); + pk.writeByteArray(malform); + byte[] b = pk.toByteArray(); + Unpacker u = msgpack.createBufferUnpacker(b); + try { + u.readString(); + fail("no exception"); + } catch (MessageTypeException expected) { + } + byte[] a = u.readByteArray(); + assertArrayEquals(malform, a); + } + } + + @Test + public void testUnpackerUnpackString() throws Exception { + for(byte[] malform : malforms) { + MessagePack msgpack = new MessagePack(); + BufferPacker pk = msgpack.createBufferPacker(); + pk.writeByteArray(malform); + byte[] b = pk.toByteArray(); + Unpacker u = msgpack.createUnpacker(new ByteArrayInputStream(b)); + try { + u.readString(); + fail("no exception"); + } catch (MessageTypeException expected) { + } + byte[] a = u.readByteArray(); + assertArrayEquals(malform, a); + } + } + + @Test + public void testConverterUnpackString() throws Exception { + for(byte[] malform : malforms) { + MessagePack msgpack = new MessagePack(); + RawValue r = ValueFactory.rawValue(malform); + Converter u = new Converter(msgpack, r); + try { + u.readString(); + fail("no exception"); + } catch (MessageTypeException expected) { + } + byte[] a = u.readByteArray(); + assertArrayEquals(malform, a); + } + } + + @Test + public void testJSONPackerWriteString() throws Exception { + for(byte[] malform : malforms) { + JSON json = new JSON(); + Packer pk = json.createPacker(new ByteArrayOutputStream()); + try { + pk.writeByteArray(malform); + fail("no exception"); + } catch (CharacterCodingException expected) { + } + } + } + + @Test + public void testJSONBufferPackerWriteString() throws Exception { + for(byte[] malform : malforms) { + JSON json = new JSON(); + Packer pk = json.createBufferPacker(); + try { + pk.writeByteArray(malform); + fail("no exception"); + } catch (CharacterCodingException expected) { + } + } + } +} + From 08280127cb2d3f61cda6436dedb868b44a16baf2 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 07:50:18 +0900 Subject: [PATCH 145/409] move JSON classes to org.msgpack.util.json package --- src/main/java/org/msgpack/packer/PackerStack.java | 5 +++-- src/main/java/org/msgpack/unpacker/UnpackerStack.java | 5 +++-- src/main/java/org/msgpack/{ => util/json}/JSON.java | 8 +++----- .../msgpack/{packer => util/json}/JSONBufferPacker.java | 4 +++- .../{unpacker => util/json}/JSONBufferUnpacker.java | 4 +++- .../org/msgpack/{packer => util/json}/JSONPacker.java | 5 ++++- .../org/msgpack/{unpacker => util/json}/JSONUnpacker.java | 4 +++- .../java/org/msgpack/TestJSONBufferPackBufferUnpack.java | 1 + src/test/java/org/msgpack/TestJSONBufferPackUnpack.java | 1 + src/test/java/org/msgpack/TestJSONPackBufferUnpack.java | 1 + src/test/java/org/msgpack/TestJSONPackUnpack.java | 1 + src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java | 5 +++-- .../java/org/msgpack/TestValueToStringJSONUnpack.java | 1 + .../java/org/msgpack/unpacker/TestMalformedEncoding.java | 4 ++-- 14 files changed, 32 insertions(+), 17 deletions(-) rename src/main/java/org/msgpack/{ => util/json}/JSON.java (91%) rename src/main/java/org/msgpack/{packer => util/json}/JSONBufferPacker.java (93%) rename src/main/java/org/msgpack/{unpacker => util/json}/JSONBufferUnpacker.java (96%) rename src/main/java/org/msgpack/{packer => util/json}/JSONPacker.java (98%) rename src/main/java/org/msgpack/{unpacker => util/json}/JSONUnpacker.java (97%) diff --git a/src/main/java/org/msgpack/packer/PackerStack.java b/src/main/java/org/msgpack/packer/PackerStack.java index 794440ef3..584f6c99e 100644 --- a/src/main/java/org/msgpack/packer/PackerStack.java +++ b/src/main/java/org/msgpack/packer/PackerStack.java @@ -19,12 +19,13 @@ import org.msgpack.MessageTypeException; -final class PackerStack { +public final class PackerStack { private int top; private byte[] types; private int[] counts; - static final int MAX_STACK_SIZE = 128; + public static final int MAX_STACK_SIZE = 128; + private static final byte TYPE_INVALID = 0; private static final byte TYPE_ARRAY = 1; private static final byte TYPE_MAP = 2; diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index 8bb9987ad..fa501575d 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -21,12 +21,13 @@ import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; -final class UnpackerStack { +public final class UnpackerStack { private int top; private byte[] types; private int[] counts; - static final int MAX_STACK_SIZE = 128; + public static final int MAX_STACK_SIZE = 128; + private static final byte TYPE_INVALID = 0; private static final byte TYPE_ARRAY = 1; private static final byte TYPE_MAP = 2; diff --git a/src/main/java/org/msgpack/JSON.java b/src/main/java/org/msgpack/util/json/JSON.java similarity index 91% rename from src/main/java/org/msgpack/JSON.java rename to src/main/java/org/msgpack/util/json/JSON.java index ac8157877..8e9c0a50e 100644 --- a/src/main/java/org/msgpack/JSON.java +++ b/src/main/java/org/msgpack/util/json/JSON.java @@ -15,19 +15,17 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack; +package org.msgpack.util.json; import java.io.InputStream; import java.io.OutputStream; import java.nio.ByteBuffer; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.JSONPacker; -import org.msgpack.packer.JSONBufferPacker; import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.JSONUnpacker; -import org.msgpack.unpacker.JSONBufferUnpacker; public class JSON extends MessagePack { diff --git a/src/main/java/org/msgpack/packer/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java similarity index 93% rename from src/main/java/org/msgpack/packer/JSONBufferPacker.java rename to src/main/java/org/msgpack/util/json/JSONBufferPacker.java index d720bef9a..b0a4a7df4 100644 --- a/src/main/java/org/msgpack/packer/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -15,11 +15,13 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.packer; +package org.msgpack.util.json; import org.msgpack.MessagePack; import org.msgpack.io.Output; import org.msgpack.io.LinkedBufferOutput; +import org.msgpack.packer.Packer; +import org.msgpack.packer.BufferPacker; public class JSONBufferPacker extends JSONPacker implements BufferPacker { diff --git a/src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java similarity index 96% rename from src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java rename to src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 69b2fb4ac..4b437b757 100644 --- a/src/main/java/org/msgpack/unpacker/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.unpacker; +package org.msgpack.util.json; import java.io.IOException; import java.io.EOFException; @@ -26,6 +26,8 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.type.Value; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.BufferUnpacker; public class JSONBufferUnpacker extends JSONUnpacker implements BufferUnpacker { diff --git a/src/main/java/org/msgpack/packer/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java similarity index 98% rename from src/main/java/org/msgpack/packer/JSONPacker.java rename to src/main/java/org/msgpack/util/json/JSONPacker.java index a49fb0745..fd8bb44f5 100644 --- a/src/main/java/org/msgpack/packer/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.packer; +package org.msgpack.util.json; import java.io.IOException; import java.io.OutputStream; @@ -31,6 +31,9 @@ import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; +import org.msgpack.packer.Packer; +import org.msgpack.packer.AbstractPacker; +import org.msgpack.packer.PackerStack; public class JSONPacker extends AbstractPacker { diff --git a/src/main/java/org/msgpack/unpacker/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java similarity index 97% rename from src/main/java/org/msgpack/unpacker/JSONUnpacker.java rename to src/main/java/org/msgpack/util/json/JSONUnpacker.java index bd64a6bbe..8054caf9d 100644 --- a/src/main/java/org/msgpack/unpacker/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -15,7 +15,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // -package org.msgpack.unpacker; +package org.msgpack.util.json; import java.io.IOException; import java.io.EOFException; @@ -33,6 +33,8 @@ //import org.msgpack.io.StreamInput; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; diff --git a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java index 38531744d..52e233539 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java @@ -17,6 +17,7 @@ import org.junit.Test; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; +import org.msgpack.util.json.JSON; public class TestJSONBufferPackBufferUnpack extends TestSet { diff --git a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java index b4c171a6c..015e56b33 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java @@ -17,6 +17,7 @@ import org.junit.Test; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; +import org.msgpack.util.json.JSON; public class TestJSONBufferPackUnpack extends TestSet { diff --git a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java index 259303bca..36f6199fa 100644 --- a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java @@ -18,6 +18,7 @@ import org.junit.Test; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; +import org.msgpack.util.json.JSON; public class TestJSONPackBufferUnpack extends TestSet { diff --git a/src/test/java/org/msgpack/TestJSONPackUnpack.java b/src/test/java/org/msgpack/TestJSONPackUnpack.java index 799ccfcc3..ef3e9117c 100644 --- a/src/test/java/org/msgpack/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestJSONPackUnpack.java @@ -18,6 +18,7 @@ import org.junit.Test; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; +import org.msgpack.util.json.JSON; public class TestJSONPackUnpack extends TestSet { diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java index 5e700d83c..5fa5bb4f0 100644 --- a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java @@ -15,10 +15,11 @@ import org.junit.Test; import org.msgpack.MessagePack; -import org.msgpack.packer.JSONBufferPacker; -import org.msgpack.unpacker.JSONBufferUnpacker; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; +import org.msgpack.util.json.JSON; +import org.msgpack.util.json.JSONBufferPacker; +import org.msgpack.util.json.JSONBufferUnpacker; import org.junit.Test; diff --git a/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java index eeedef0cd..13c97f14c 100644 --- a/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java +++ b/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java @@ -22,6 +22,7 @@ import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; +import org.msgpack.util.json.JSON; public class TestValueToStringJSONUnpack extends TestSet { diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index 2cdcd6d0b..04af0cc26 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -17,17 +17,17 @@ import org.junit.Test; import org.msgpack.MessagePack; -import org.msgpack.JSON; import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; -import org.msgpack.packer.JSONPacker; import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; import org.msgpack.type.RawValue; import org.msgpack.type.ValueFactory; +import org.msgpack.util.json.JSON; +import org.msgpack.util.json.JSONPacker; public class TestMalformedEncoding { private byte[][] malforms = new byte[][] { From a7aa362308cc4390fff9313a45e756189ee3e435 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 08:38:59 +0900 Subject: [PATCH 146/409] Converter and Unconverter don't throw IOException --- .../org/msgpack/packer/AbstractPacker.java | 6 + .../java/org/msgpack/packer/Unconverter.java | 19 ++ .../unpacker/AbstractIndirectUnpacker.java | 170 ++++++++++++++++++ .../msgpack/unpacker/AbstractUnpacker.java | 8 + .../java/org/msgpack/unpacker/Converter.java | 44 +++++ .../msgpack/util/json/JSONBufferUnpacker.java | 23 ++- .../org/msgpack/util/json/JSONUnpacker.java | 11 +- 7 files changed, 267 insertions(+), 14 deletions(-) create mode 100644 src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index d6ad2f777..c0c72f2ee 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -30,19 +30,23 @@ protected AbstractPacker(MessagePack msgpack) { this.msgpack = msgpack; } + @Override public void writeByteArray(byte[] b) throws IOException { writeByteArray(b, 0, b.length); } + @Override public void writeArrayEnd() throws IOException { writeArrayEnd(true); } + @Override public void writeMapEnd() throws IOException { writeMapEnd(true); } + @Override public Packer write(Object o) throws IOException { if(o == null) { writeNil(); @@ -53,6 +57,7 @@ public Packer write(Object o) throws IOException { return this; } + @Override public Packer write(Value v) throws IOException { if(v == null) { writeNil(); @@ -63,6 +68,7 @@ public Packer write(Value v) throws IOException { } + @Override public void close() throws IOException { } diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 65426cfc0..98372c4b3 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -95,6 +95,11 @@ public void writeDouble(double v) { put(ValueFactory.floatValue(v)); } + @Override + public void writeByteArray(byte[] b) { + writeByteArray(b, 0, b.length); + } + @Override public void writeByteArray(byte[] b, int off, int len) { put(ValueFactory.rawValue(b, off, len)); @@ -125,6 +130,11 @@ public void writeArrayBegin(int size) { } } + @Override + public void writeArrayEnd() { + writeArrayEnd(true); + } + @Override public void writeArrayEnd(boolean check) { if(!stack.topIsArray()) { @@ -161,6 +171,11 @@ public void writeMapBegin(int size) { } } + @Override + public void writeMapEnd() { + writeMapEnd(true); + } + @Override public void writeMapEnd(boolean check) { if(!stack.topIsMap()) { @@ -209,5 +224,9 @@ private void putContainer(Value v) { stack.reduceCount(); } } + + @Override + public void close() { + } } diff --git a/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java new file mode 100644 index 000000000..9195274d1 --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java @@ -0,0 +1,170 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import java.io.IOException; +import java.util.List; +import java.util.Map; +import java.util.Iterator; +import java.math.BigInteger; +import org.msgpack.MessagePack; +import org.msgpack.MessageTypeException; +import org.msgpack.packer.Unconverter; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + +public abstract class AbstractIndirectUnpacker extends AbstractUnpacker { + protected abstract Value nextValue() throws IOException; + + protected Converter converter; + + public AbstractIndirectUnpacker(MessagePack msgpack) { + super(msgpack); + this.converter = new Converter(msgpack, null); + } + + private void ensureValue() throws IOException { + if(converter.getSourceValue() == null) { + converter.getSourceValue(nextValue()); + } + } + + @Override + public boolean tryReadNil() throws IOException { + ensureValue(); + return converter.tryReadNil(); + } + + @Override + public boolean trySkipNil() throws IOException { + ensureValue(); + return converter.trySkipNil(); + } + + @Override + public void readNil() throws IOException { + ensureValue(); + converter.readNil(); + } + + + @Override + public boolean readBoolean() throws IOException { + ensureValue(); + return converter.readBoolean(); + } + + @Override + public byte readByte() throws IOException { + ensureValue(); + return converter.readByte(); + } + + @Override + public short readShort() throws IOException { + ensureValue(); + return converter.readShort(); + } + + @Override + public int readInt() throws IOException { + ensureValue(); + return converter.readInt(); + } + + @Override + public long readLong() throws IOException { + ensureValue(); + return converter.readLong(); + } + + @Override + public BigInteger readBigInteger() throws IOException { + ensureValue(); + return converter.readBigInteger(); + } + + @Override + public float readFloat() throws IOException { + ensureValue(); + return converter.readFloat(); + } + + @Override + public double readDouble() throws IOException { + ensureValue(); + return converter.readDouble(); + } + + @Override + public byte[] readByteArray() throws IOException { + ensureValue(); + return converter.readByteArray(); + } + + + @Override + public int readArrayBegin() throws IOException { + ensureValue(); + return converter.readArrayBegin(); + } + + @Override + public void readArrayEnd(boolean check) throws IOException { + ensureValue(); + converter.readArrayEnd(check); + } + + + @Override + public int readMapBegin() throws IOException { + ensureValue(); + return converter.readMapBegin(); + } + + @Override + public void readMapEnd(boolean check) throws IOException { + ensureValue(); + converter.readMapEnd(check); + } + + + @Override + public String readString() throws IOException { + ensureValue(); + return converter.readString(); + } + + + @Override + protected void readValue(Unconverter uc) throws IOException { + ensureValue(); + converter.readValue(uc); + } + + @Override + public void skip() throws IOException { + converter.skip(); + } + + @Override + public void close() throws IOException { + converter.close(); + } +} + diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 87cf1093b..4d40fa33c 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -35,27 +35,32 @@ protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; } + @Override public ByteBuffer readByteBuffer() throws IOException { return ByteBuffer.wrap(readByteArray()); } + @Override public void readArrayEnd() throws IOException { readArrayEnd(false); } + @Override public void readMapEnd() throws IOException { readMapEnd(false); } + @Override public UnpackerIterator iterator() { return new UnpackerIterator(this); } protected abstract void readValue(Unconverter uc) throws IOException; + @Override public Value readValue() throws IOException { Unconverter uc = new Unconverter(msgpack); readValue(uc); @@ -63,17 +68,20 @@ public Value readValue() throws IOException { } + @Override public T read(Class klass) throws IOException { Template tmpl = msgpack.lookup(klass); return (T) tmpl.read(this, null); } + @Override public T read(T to) throws IOException { Template tmpl = msgpack.lookup((Class) to.getClass()); return (T) tmpl.read(this, to); } + @Override public void close() throws IOException { } } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 4cfbab7e2..1582b7ba7 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -19,6 +19,7 @@ import java.io.EOFException; import java.math.BigInteger; +import java.nio.ByteBuffer; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; @@ -44,6 +45,14 @@ public Converter(MessagePack msgpack, Value value) { this.value = value; } + Value getSourceValue() { + return value; + } + + void getSourceValue(Value value) { + this.value = value; + } + // FIXME throws IOException? protected Value nextValue() { // FIXME EOFError? @@ -176,6 +185,11 @@ public double readDouble() { return v; } + @Override + public ByteBuffer readByteBuffer() { + return ByteBuffer.wrap(readByteArray()); + } + @Override public byte[] readByteArray() { byte[] raw = getTop().asRawValue().getByteArray(); @@ -209,6 +223,11 @@ public int readArrayBegin() { return a.size(); } + @Override + public void readArrayEnd() { + readArrayEnd(false); + } + @Override public void readArrayEnd(boolean check) { if(!stack.topIsArray()) { @@ -244,6 +263,11 @@ public int readMapBegin() { return m.size(); } + @Override + public void readMapEnd() { + readMapEnd(false); + } + @Override public void readMapEnd(boolean check) { if(!stack.topIsMap()) { @@ -281,6 +305,22 @@ private Value getTop() { return array[array.length - stack.getTopCount()]; } + @Override + public Value readValue() { + if(stack.getDepth() == 0) { + if(value == null) { + return nextValue(); + } else { + Value v = value; + value = null; + return v; + } + } + Unconverter uc = new Unconverter(msgpack); + readValue(uc); + return uc.getResult(); + } + @Override protected void readValue(Unconverter uc) { if(uc.getResult() != null) { @@ -385,6 +425,10 @@ public void skip() { } } + @Override + public void close() { + } + public void reset() { stack.reset(); value = null; diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 4b437b757..771df7d5b 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -46,54 +46,59 @@ public JSONBufferUnpacker(MessagePack msgpack) { } public JSONBufferUnpacker(MessagePack msgpack, int bufferSize) { - super(msgpack, (Reader)null); + super(msgpack, new InputStreamReader(new ByteArrayInputStream(new byte[0]))); } @Override - protected Value nextValue() { - if(in == null) { - // FIXME exception - throw new MessageTypeException(new EOFException()); - } - return super.nextValue(); - } - public JSONBufferUnpacker wrap(byte[] b) { return wrap(b, 0, b.length); } + @Override public JSONBufferUnpacker wrap(byte[] b, int off, int len) { ByteArrayInputStream in = new ByteArrayInputStream(b, off, len); this.in = new InputStreamReader(in); return this; } + @Override public JSONBufferUnpacker wrap(ByteBuffer buf) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support wrap(ByteBuffer buf)"); } + @Override public JSONBufferUnpacker feed(byte[] b) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + @Override public JSONBufferUnpacker feed(byte[] b, boolean nocopy) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + @Override public JSONBufferUnpacker feed(byte[] b, int off, int len) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + @Override public JSONBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + @Override public JSONBufferUnpacker feed(ByteBuffer buf) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + @Override public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + + @Override + public void reset() { + converter.reset(); + } } diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 8054caf9d..71f8b3b09 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -35,13 +35,14 @@ import org.msgpack.MessageTypeException; import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.Converter; +import org.msgpack.unpacker.AbstractIndirectUnpacker; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; -public class JSONUnpacker extends Converter { +public class JSONUnpacker extends AbstractIndirectUnpacker { protected Reader in; - protected JSONParser parser; + private JSONParser parser; public JSONUnpacker(InputStream in) { this(new MessagePack(), in); @@ -52,14 +53,13 @@ public JSONUnpacker(MessagePack msgpack, InputStream in) { } JSONUnpacker(MessagePack msgpack, Reader in) { - super(msgpack, null); + super(msgpack); this.in = in; this.parser = new JSONParser(); } @Override - // FIXME throws IOException? - protected Value nextValue() { + protected Value nextValue() throws IOException { try { Object obj = parser.parse(in); return objectToValue(obj); @@ -111,6 +111,7 @@ private Value mapToValue(Map map) { public void close() throws IOException { in.close(); + super.close(); } } From 356eb3636f9e4a31bbbb746b26eaf84b06596ca8 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 09:04:12 +0900 Subject: [PATCH 147/409] Converter and Unconverter throw IOException --- src/main/java/org/msgpack/MessagePack.java | 20 +-- .../java/org/msgpack/packer/Unconverter.java | 54 ++---- .../unpacker/AbstractIndirectUnpacker.java | 170 ------------------ .../java/org/msgpack/unpacker/Accept.java | 38 ++-- .../java/org/msgpack/unpacker/Converter.java | 82 +++------ .../org/msgpack/unpacker/ValueAccept.java | 34 ++-- .../msgpack/util/json/JSONBufferUnpacker.java | 5 - .../org/msgpack/util/json/JSONUnpacker.java | 5 +- 8 files changed, 92 insertions(+), 316 deletions(-) delete mode 100644 src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 1cb33b79b..353a1918c 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -91,7 +91,7 @@ public byte[] write(Object v) throws IOException { return pk.toByteArray(); } - public byte[] write(T v, Template tmpl) throws IOException { // TODO IOException + public byte[] write(T v, Template tmpl) throws IOException { BufferPacker pk = createBufferPacker(); tmpl.write(pk, v); return pk.toByteArray(); @@ -112,22 +112,22 @@ public void write(OutputStream out, T v, Template tmpl) throws IOExceptio tmpl.write(pk, v); } - public byte[] write(Value v) throws IOException { // TODO IOException + public byte[] write(Value v) throws IOException { // FIXME ValueTemplate should do this BufferPacker pk = createBufferPacker(); pk.write(v); return pk.toByteArray(); } - public Value read(byte[] b) throws IOException { // TODO IOException + public Value read(byte[] b) throws IOException { return read(b, 0, b.length); } - public Value read(byte[] b, int off, int len) throws IOException { // TODO IOException + public Value read(byte[] b, int off, int len) throws IOException { return createBufferUnpacker(b, off, len).readValue(); } - public Value read(ByteBuffer buf) throws IOException { // TODO IOException + public Value read(ByteBuffer buf) throws IOException { return createBufferUnpacker(buf).readValue(); } @@ -135,26 +135,26 @@ public Value read(InputStream in) throws IOException { return createUnpacker(in).readValue(); } - public T read(byte[] b, T v) throws IOException { // TODO IOException + public T read(byte[] b, T v) throws IOException { // TODO Template tmpl = registry.lookup(v.getClass()); BufferUnpacker u = createBufferUnpacker(b); return (T) tmpl.read(u, v); } - public T read(byte[] b, Class c) throws IOException { // TODO IOException + public T read(byte[] b, Class c) throws IOException { Template tmpl = registry.lookup(c); BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, null); } - public T read(ByteBuffer b, T v) throws IOException { // TODO IOException + public T read(ByteBuffer b, T v) throws IOException { Template tmpl = registry.lookup(v.getClass()); BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, v); } - public T read(ByteBuffer b, Class c) { // TODO IOException + public T read(ByteBuffer b, Class c) { Template tmpl = registry.lookup(c); BufferUnpacker u = createBufferUnpacker(b); return null; @@ -170,7 +170,7 @@ public T read(InputStream in, Class c) throws IOException { return tmpl.read(createUnpacker(in), null); } - public T convert(Value v, T to) throws IOException { // TODO IOException + public T convert(Value v, T to) throws IOException { Template tmpl = registry.lookup(to.getClass()); return tmpl.read(new Converter(this, v), to); } diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 98372c4b3..3c2a88d7d 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -17,6 +17,7 @@ // package org.msgpack.packer; +import java.io.IOException; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -51,72 +52,67 @@ public void resetResult() { } @Override - public void writeNil() { + public void writeNil() throws IOException { put(ValueFactory.nilValue()); } @Override - public void writeBoolean(boolean v) { + public void writeBoolean(boolean v) throws IOException { put(ValueFactory.booleanValue(v)); } @Override - public void writeByte(byte v) { + public void writeByte(byte v) throws IOException { put(ValueFactory.integerValue(v)); } @Override - public void writeShort(short v) { + public void writeShort(short v) throws IOException { put(ValueFactory.integerValue(v)); } @Override - public void writeInt(int v) { + public void writeInt(int v) throws IOException { put(ValueFactory.integerValue(v)); } @Override - public void writeBigInteger(BigInteger v) { + public void writeBigInteger(BigInteger v) throws IOException { put(ValueFactory.integerValue(v)); } @Override - public void writeLong(long v) { + public void writeLong(long v) throws IOException { put(ValueFactory.integerValue(v)); } @Override - public void writeFloat(float v) { + public void writeFloat(float v) throws IOException { put(ValueFactory.floatValue(v)); } @Override - public void writeDouble(double v) { + public void writeDouble(double v) throws IOException { put(ValueFactory.floatValue(v)); } @Override - public void writeByteArray(byte[] b) { - writeByteArray(b, 0, b.length); - } - - @Override - public void writeByteArray(byte[] b, int off, int len) { + public void writeByteArray(byte[] b, int off, int len) throws IOException { put(ValueFactory.rawValue(b, off, len)); } @Override - public void writeByteBuffer(ByteBuffer bb) { + public void writeByteBuffer(ByteBuffer bb) throws IOException { put(ValueFactory.rawValue(bb)); } @Override - public void writeString(String s) { + public void writeString(String s) throws IOException { put(ValueFactory.rawValue(s)); } @Override - public void writeArrayBegin(int size) { + public void writeArrayBegin(int size) throws IOException { if(size == 0) { Value[] array = new Value[size]; putContainer(ValueFactory.arrayValue()); @@ -131,12 +127,7 @@ public void writeArrayBegin(int size) { } @Override - public void writeArrayEnd() { - writeArrayEnd(true); - } - - @Override - public void writeArrayEnd(boolean check) { + public void writeArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); } @@ -157,7 +148,7 @@ public void writeArrayEnd(boolean check) { } @Override - public void writeMapBegin(int size) { + public void writeMapBegin(int size) throws IOException { stack.checkCount(); if(size == 0) { putContainer(ValueFactory.mapValue()); @@ -172,12 +163,7 @@ public void writeMapBegin(int size) { } @Override - public void writeMapEnd() { - writeMapEnd(true); - } - - @Override - public void writeMapEnd(boolean check) { + public void writeMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); } @@ -198,7 +184,7 @@ public void writeMapEnd(boolean check) { } @Override - public Packer write(Value v) { + public Packer write(Value v) throws IOException { put(v); return this; } @@ -224,9 +210,5 @@ private void putContainer(Value v) { stack.reduceCount(); } } - - @Override - public void close() { - } } diff --git a/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java deleted file mode 100644 index 9195274d1..000000000 --- a/src/main/java/org/msgpack/unpacker/AbstractIndirectUnpacker.java +++ /dev/null @@ -1,170 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.unpacker; - -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.Iterator; -import java.math.BigInteger; -import org.msgpack.MessagePack; -import org.msgpack.MessageTypeException; -import org.msgpack.packer.Unconverter; -import org.msgpack.type.Value; -import org.msgpack.type.ValueFactory; - -public abstract class AbstractIndirectUnpacker extends AbstractUnpacker { - protected abstract Value nextValue() throws IOException; - - protected Converter converter; - - public AbstractIndirectUnpacker(MessagePack msgpack) { - super(msgpack); - this.converter = new Converter(msgpack, null); - } - - private void ensureValue() throws IOException { - if(converter.getSourceValue() == null) { - converter.getSourceValue(nextValue()); - } - } - - @Override - public boolean tryReadNil() throws IOException { - ensureValue(); - return converter.tryReadNil(); - } - - @Override - public boolean trySkipNil() throws IOException { - ensureValue(); - return converter.trySkipNil(); - } - - @Override - public void readNil() throws IOException { - ensureValue(); - converter.readNil(); - } - - - @Override - public boolean readBoolean() throws IOException { - ensureValue(); - return converter.readBoolean(); - } - - @Override - public byte readByte() throws IOException { - ensureValue(); - return converter.readByte(); - } - - @Override - public short readShort() throws IOException { - ensureValue(); - return converter.readShort(); - } - - @Override - public int readInt() throws IOException { - ensureValue(); - return converter.readInt(); - } - - @Override - public long readLong() throws IOException { - ensureValue(); - return converter.readLong(); - } - - @Override - public BigInteger readBigInteger() throws IOException { - ensureValue(); - return converter.readBigInteger(); - } - - @Override - public float readFloat() throws IOException { - ensureValue(); - return converter.readFloat(); - } - - @Override - public double readDouble() throws IOException { - ensureValue(); - return converter.readDouble(); - } - - @Override - public byte[] readByteArray() throws IOException { - ensureValue(); - return converter.readByteArray(); - } - - - @Override - public int readArrayBegin() throws IOException { - ensureValue(); - return converter.readArrayBegin(); - } - - @Override - public void readArrayEnd(boolean check) throws IOException { - ensureValue(); - converter.readArrayEnd(check); - } - - - @Override - public int readMapBegin() throws IOException { - ensureValue(); - return converter.readMapBegin(); - } - - @Override - public void readMapEnd(boolean check) throws IOException { - ensureValue(); - converter.readMapEnd(check); - } - - - @Override - public String readString() throws IOException { - ensureValue(); - return converter.readString(); - } - - - @Override - protected void readValue(Unconverter uc) throws IOException { - ensureValue(); - converter.readValue(uc); - } - - @Override - public void skip() throws IOException { - converter.skip(); - } - - @Override - public void close() throws IOException { - converter.close(); - } -} - diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index ca09cbd73..ab39dfbb8 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -24,79 +24,79 @@ abstract class Accept implements BufferReferer { - void acceptBoolean(boolean v) { + void acceptBoolean(boolean v) throws IOException { throw new MessageTypeException("Unexpected boolean value"); } - void acceptInteger(byte v) { + void acceptInteger(byte v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptInteger(short v) { + void acceptInteger(short v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptInteger(int v) { + void acceptInteger(int v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptInteger(long v) { + void acceptInteger(long v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptUnsignedInteger(byte v) { + void acceptUnsignedInteger(byte v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptUnsignedInteger(short v) { + void acceptUnsignedInteger(short v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptUnsignedInteger(int v) { + void acceptUnsignedInteger(int v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - void acceptUnsignedInteger(long v) { + void acceptUnsignedInteger(long v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - //void checkRawAcceptable() { + //void checkRawAcceptable() throws IOException { // throw new MessageTypeException("Unexpected raw value"); //} - void acceptRaw(byte[] raw) { + void acceptRaw(byte[] raw) throws IOException { throw new MessageTypeException("Unexpected raw value"); } - void acceptEmptyRaw() { + void acceptEmptyRaw() throws IOException { throw new MessageTypeException("Unexpected raw value"); } - //void checkArrayAcceptable(int size) { + //void checkArrayAcceptable(int size) throws IOException { // throw new MessageTypeException("Unexpected array value"); //} - void acceptArray(int size) { + void acceptArray(int size) throws IOException { throw new MessageTypeException("Unexpected array value"); } - //void checkMapAcceptable(int size) { + //void checkMapAcceptable(int size) throws IOException { // throw new MessageTypeException("Unexpected map value"); //} - void acceptMap(int size) { + void acceptMap(int size) throws IOException { throw new MessageTypeException("Unexpected map value"); } - void acceptNil() { + void acceptNil() throws IOException { throw new MessageTypeException("Unexpected nil value"); } - void acceptFloat(float v) { + void acceptFloat(float v) throws IOException { throw new MessageTypeException("Unexpected float value"); } - void acceptDouble(double v) { + void acceptDouble(double v) throws IOException { throw new MessageTypeException("Unexpected float value"); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 1582b7ba7..41fd6b087 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; +import java.io.IOException; import java.io.EOFException; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -45,28 +46,18 @@ public Converter(MessagePack msgpack, Value value) { this.value = value; } - Value getSourceValue() { - return value; + protected Value nextValue() throws IOException { + throw new EOFException(); } - void getSourceValue(Value value) { - this.value = value; - } - - // FIXME throws IOException? - protected Value nextValue() { - // FIXME EOFError? - throw new NullPointerException("Value is not set"); - } - - private void ensureValue() { + private void ensureValue() throws IOException { if(value == null) { value = nextValue(); } } @Override - public boolean tryReadNil() { + public boolean tryReadNil() throws IOException { stack.checkCount(); if(getTop().isNil()) { stack.reduceCount(); @@ -79,7 +70,7 @@ public boolean tryReadNil() { } @Override - public boolean trySkipNil() { + public boolean trySkipNil() throws IOException { ensureValue(); if(stack.getDepth() > 0 && stack.getTopCount() <= 0) { @@ -98,7 +89,7 @@ public boolean trySkipNil() { } @Override - public void readNil() { + public void readNil() throws IOException { if(!getTop().isNil()) { throw new MessageTypeException("Expected nil but got not nil value"); } @@ -109,14 +100,14 @@ public void readNil() { } @Override - public boolean readBoolean() { + public boolean readBoolean() throws IOException { boolean v = getTop().asBooleanValue().getBoolean(); stack.reduceCount(); return v; } @Override - public byte readByte() { + public byte readByte() throws IOException { byte v = getTop().asIntegerValue().getByte(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -126,7 +117,7 @@ public byte readByte() { } @Override - public short readShort() { + public short readShort() throws IOException { short v = getTop().asIntegerValue().getShort(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -136,7 +127,7 @@ public short readShort() { } @Override - public int readInt() { + public int readInt() throws IOException { int v = getTop().asIntegerValue().getInt(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -146,7 +137,7 @@ public int readInt() { } @Override - public long readLong() { + public long readLong() throws IOException { long v = getTop().asIntegerValue().getLong(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -156,7 +147,7 @@ public long readLong() { } @Override - public BigInteger readBigInteger() { + public BigInteger readBigInteger() throws IOException { BigInteger v = getTop().asIntegerValue().getBigInteger(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -166,7 +157,7 @@ public BigInteger readBigInteger() { } @Override - public float readFloat() { + public float readFloat() throws IOException { float v = getTop().asFloatValue().getFloat(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -176,7 +167,7 @@ public float readFloat() { } @Override - public double readDouble() { + public double readDouble() throws IOException { double v = getTop().asFloatValue().getDouble(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -186,12 +177,7 @@ public double readDouble() { } @Override - public ByteBuffer readByteBuffer() { - return ByteBuffer.wrap(readByteArray()); - } - - @Override - public byte[] readByteArray() { + public byte[] readByteArray() throws IOException { byte[] raw = getTop().asRawValue().getByteArray(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -201,7 +187,7 @@ public byte[] readByteArray() { } @Override - public String readString() { + public String readString() throws IOException { String str = getTop().asRawValue().getString(); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -211,7 +197,7 @@ public String readString() { } @Override - public int readArrayBegin() { + public int readArrayBegin() throws IOException { Value v = getTop(); if(!v.isArray()) { throw new MessageTypeException("Expected array but got not array value"); @@ -224,12 +210,7 @@ public int readArrayBegin() { } @Override - public void readArrayEnd() { - readArrayEnd(false); - } - - @Override - public void readArrayEnd(boolean check) { + public void readArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("readArrayEnd() is called but readArrayBegin() is not called"); } @@ -251,7 +232,7 @@ public void readArrayEnd(boolean check) { } @Override - public int readMapBegin() { + public int readMapBegin() throws IOException { Value v = getTop(); if(!v.isMap()) { throw new MessageTypeException("Expected map but got not map value"); @@ -264,12 +245,7 @@ public int readMapBegin() { } @Override - public void readMapEnd() { - readMapEnd(false); - } - - @Override - public void readMapEnd(boolean check) { + public void readMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("readMapEnd() is called but readMapBegin() is not called"); } @@ -290,7 +266,7 @@ public void readMapEnd(boolean check) { } } - private Value getTop() { + private Value getTop() throws IOException { ensureValue(); stack.checkCount(); @@ -306,7 +282,7 @@ private Value getTop() { } @Override - public Value readValue() { + public Value readValue() throws IOException { if(stack.getDepth() == 0) { if(value == null) { return nextValue(); @@ -316,13 +292,11 @@ public Value readValue() { return v; } } - Unconverter uc = new Unconverter(msgpack); - readValue(uc); - return uc.getResult(); + return super.readValue(); } @Override - protected void readValue(Unconverter uc) { + protected void readValue(Unconverter uc) throws IOException { if(uc.getResult() != null) { uc.resetResult(); } @@ -383,7 +357,7 @@ protected void readValue(Unconverter uc) { } @Override - public void skip() { + public void skip() throws IOException { stack.checkCount(); Value v = getTop(); if(!v.isArray() && !v.isMap()) { @@ -425,10 +399,6 @@ public void skip() { } } - @Override - public void close() { - } - public void reset() { stack.reset(); value = null; diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index dc857425a..24da89279 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -27,47 +27,47 @@ final class ValueAccept extends Accept { private Unconverter uc = null; - void setUnconverter(Unconverter uc) { + void setUnconverter(Unconverter uc) throws IOException { this.uc = uc; } @Override - void acceptBoolean(boolean v) { + void acceptBoolean(boolean v) throws IOException { uc.write(ValueFactory.booleanValue(v)); } @Override - void acceptInteger(byte v) { + void acceptInteger(byte v) throws IOException { uc.write(ValueFactory.integerValue(v)); } @Override - void acceptInteger(short v) { + void acceptInteger(short v) throws IOException { uc.write(ValueFactory.integerValue(v)); } @Override - void acceptInteger(int v) { + void acceptInteger(int v) throws IOException { uc.write(ValueFactory.integerValue(v)); } @Override - void acceptInteger(long v) { + void acceptInteger(long v) throws IOException { uc.write(ValueFactory.integerValue(v)); } @Override - void acceptUnsignedInteger(byte v) { + void acceptUnsignedInteger(byte v) throws IOException { uc.write(ValueFactory.integerValue(v & 0xff)); } @Override - void acceptUnsignedInteger(short v) { + void acceptUnsignedInteger(short v) throws IOException { uc.write(ValueFactory.integerValue(v & 0xffff)); } @Override - void acceptUnsignedInteger(int v) { + void acceptUnsignedInteger(int v) throws IOException { if(v < 0) { long value = (long)(v & 0x7fffffff) + 0x80000000L; uc.write(ValueFactory.integerValue(value)); @@ -77,7 +77,7 @@ void acceptUnsignedInteger(int v) { } @Override - void acceptUnsignedInteger(long v) { + void acceptUnsignedInteger(long v) throws IOException { if(v < 0L) { BigInteger value = BigInteger.valueOf(v+Long.MAX_VALUE+1L).setBit(63); uc.write(ValueFactory.integerValue(value)); @@ -87,12 +87,12 @@ void acceptUnsignedInteger(long v) { } @Override - void acceptRaw(byte[] raw) { + void acceptRaw(byte[] raw) throws IOException { uc.write(ValueFactory.rawValue(raw)); } @Override - void acceptEmptyRaw() { + void acceptEmptyRaw() throws IOException { uc.write(ValueFactory.rawValue()); } @@ -105,27 +105,27 @@ public void refer(ByteBuffer bb, boolean gift) throws IOException { } @Override - void acceptArray(int size) { + void acceptArray(int size) throws IOException { uc.writeArrayBegin(size); } @Override - void acceptMap(int size) { + void acceptMap(int size) throws IOException { uc.writeMapBegin(size); } @Override - void acceptNil() { + void acceptNil() throws IOException { uc.write(ValueFactory.nilValue()); } @Override - void acceptFloat(float v) { + void acceptFloat(float v) throws IOException { uc.write(ValueFactory.floatValue(v)); } @Override - void acceptDouble(double v) { + void acceptDouble(double v) throws IOException { uc.write(ValueFactory.floatValue(v)); } } diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 771df7d5b..d7e9b6579 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -95,10 +95,5 @@ public JSONBufferUnpacker feed(ByteBuffer buf) { public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } - - @Override - public void reset() { - converter.reset(); - } } diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 71f8b3b09..15c4ae4ff 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -35,12 +35,11 @@ import org.msgpack.MessageTypeException; import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.Converter; -import org.msgpack.unpacker.AbstractIndirectUnpacker; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; -public class JSONUnpacker extends AbstractIndirectUnpacker { +public class JSONUnpacker extends Converter { protected Reader in; private JSONParser parser; @@ -53,7 +52,7 @@ public JSONUnpacker(MessagePack msgpack, InputStream in) { } JSONUnpacker(MessagePack msgpack, Reader in) { - super(msgpack); + super(msgpack, null); this.in = in; this.parser = new JSONParser(); } From b1eea859f16d7a19270daec7f81e458b7436f397 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 09:10:10 +0900 Subject: [PATCH 148/409] MessagePackUnpacker throws IOException on parse error --- .../java/org/msgpack/unpacker/MessagePackUnpacker.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index aa68e62f8..5bd8a90a3 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -230,7 +230,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Raw size too large"); + throw new IOException("Raw size too large"); // TODO error } if(count == 0) { a.acceptEmptyRaw(); @@ -261,7 +261,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Array size too large"); + throw new IOException("Array size too large"); // TODO error } a.acceptArray(count); stack.reduceCount(); @@ -284,7 +284,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Map size too large"); + throw new IOException("Map size too large"); // TODO error } a.acceptMap(count); stack.reduceCount(); @@ -297,7 +297,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti //System.out.println("unknown b "+(b&0xff)); // headByte = CS_INVALID headByte = REQUIRE_TO_READ_HEAD; - throw new MessageTypeException("Invalid byte: "+b); // TODO error + throw new IOException("Invalid byte: "+b); // TODO error } } From 3320e0706c5a41bbf4ae08b200335206447b3753 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 09:12:10 +0900 Subject: [PATCH 149/409] JSONUnpacker throws IOException on parse error --- .../java/org/msgpack/unpacker/MessagePackUnpacker.java | 8 ++++---- src/main/java/org/msgpack/util/json/JSONUnpacker.java | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 5bd8a90a3..823c143af 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -230,7 +230,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Raw size too large"); // TODO error + throw new IOException("Raw size too large"); // TODO error MessageSizeException } if(count == 0) { a.acceptEmptyRaw(); @@ -261,7 +261,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Array size too large"); // TODO error + throw new IOException("Array size too large"); // TODO error MessageSizeException } a.acceptArray(count); stack.reduceCount(); @@ -284,7 +284,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti { int count = in.getInt(); if(count < 0) { - throw new IOException("Map size too large"); // TODO error + throw new IOException("Map size too large"); // TODO error MessageSizeException } a.acceptMap(count); stack.reduceCount(); @@ -297,7 +297,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti //System.out.println("unknown b "+(b&0xff)); // headByte = CS_INVALID headByte = REQUIRE_TO_READ_HEAD; - throw new IOException("Invalid byte: "+b); // TODO error + throw new IOException("Invalid byte: "+b); // TODO error FormatException } } diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 15c4ae4ff..daa01320e 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -62,10 +62,10 @@ protected Value nextValue() throws IOException { try { Object obj = parser.parse(in); return objectToValue(obj); - } catch (ParseException e) { // FIXME exception - throw new MessageTypeException(e); - } catch (IOException e) { // FIXME exception - throw new MessageTypeException(e); + } catch (ParseException e) { + throw new IOException(e); // TODO error FormatException + } catch (IOException e) { + throw new IOException(e); // TODO error FormatException } } From 5455445e3b9c44709090454065367a27e72f9538 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 09:53:28 +0900 Subject: [PATCH 150/409] RawValue.toString ignores malformed bytes instead of throwing MessageTypeException --- .../org/msgpack/type/AbstractRawValue.java | 26 ++++++++++++++++++- .../unpacker/TestMalformedEncoding.java | 10 +++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 1b78fcf05..a766c4d36 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -18,6 +18,12 @@ package org.msgpack.type; import java.util.Arrays; +import java.nio.ByteBuffer; +import java.nio.charset.Charset; +import java.nio.charset.CharacterCodingException; +import java.nio.charset.CharsetDecoder; +import java.nio.charset.CodingErrorAction; +import java.nio.charset.MalformedInputException; abstract class AbstractRawValue extends AbstractValue implements RawValue { public ValueType getType() { @@ -56,7 +62,24 @@ public String toString() { } public StringBuilder toString(StringBuilder sb) { - String s = getString(); + String s; + if(getClass() == StringRawValueImpl.class) { + // StringRawValueImpl.getString never throws exception + s = getString(); + } else { + // don't throw encoding error exception + // ignore malformed bytes + CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder(). + onMalformedInput(CodingErrorAction.IGNORE). + onUnmappableCharacter(CodingErrorAction.IGNORE); + try { + s = decoder.decode(ByteBuffer.wrap(getByteArray())).toString(); + } catch (CharacterCodingException ex) { + // never comes here + s = new String(getByteArray()); + } + } + sb.append("\""); for(int i=0; i < s.length(); i++) { char ch = s.charAt(i); @@ -102,6 +125,7 @@ public StringBuilder toString(StringBuilder sb) { } } sb.append("\""); + return sb; } diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index 04af0cc26..f008abdab 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -126,5 +126,15 @@ public void testJSONBufferPackerWriteString() throws Exception { } } } + + @Test + public void testValueToString() throws Exception { + for(byte[] malform : malforms) { + RawValue r = ValueFactory.rawValue(malform); + String str = r.toString(); + // malformed bytes will be ignored + assertEquals("\"\"", str); + } + } } From 16d3e342d574206cb5fde758bbca4a2ba631727e Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sun, 21 Aug 2011 10:06:57 +0900 Subject: [PATCH 151/409] added BufferPacker#clear and BufferUnpacker#clear --- .../packer/MessagePackBufferPacker.java | 3 ++ .../org/msgpack/packer/MessagePackPacker.java | 4 +++ .../java/org/msgpack/packer/PackerStack.java | 4 +++ .../org/msgpack/unpacker/BufferUnpacker.java | 2 +- .../java/org/msgpack/unpacker/Converter.java | 2 +- .../unpacker/MessagePackBufferUnpacker.java | 15 ++++++++++ .../msgpack/unpacker/MessagePackUnpacker.java | 2 +- .../org/msgpack/unpacker/UnpackerStack.java | 2 +- .../msgpack/util/json/JSONBufferPacker.java | 3 ++ .../msgpack/util/json/JSONBufferUnpacker.java | 12 +++++++- .../org/msgpack/util/json/JSONPacker.java | 29 ++++++++++++++++--- 11 files changed, 69 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 2dc3c2cd4..9fea01dd0 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -40,11 +40,14 @@ public MessagePackBufferPacker(MessagePack msgpack, int bufferSize) { super(msgpack, new LinkedBufferOutput(bufferSize)); } + @Override public byte[] toByteArray() { return ((LinkedBufferOutput) out).toByteArray(); } + @Override public void clear() { + reset(); ((LinkedBufferOutput) out).clear(); } } diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 39965d9be..769f361f3 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -321,6 +321,10 @@ public void writeMapEnd(boolean check) throws IOException { stack.pop(); } + public void reset() { + stack.clear(); + } + public void close() throws IOException { out.close(); } diff --git a/src/main/java/org/msgpack/packer/PackerStack.java b/src/main/java/org/msgpack/packer/PackerStack.java index 584f6c99e..1dedbf0ad 100644 --- a/src/main/java/org/msgpack/packer/PackerStack.java +++ b/src/main/java/org/msgpack/packer/PackerStack.java @@ -89,5 +89,9 @@ public boolean topIsArray() { public boolean topIsMap() { return types[top] == TYPE_MAP; } + + public void clear() { + top = 0; + } } diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 516a6ffa5..a15572bd8 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -42,6 +42,6 @@ public interface BufferUnpacker extends Unpacker { public BufferUnpacker feed(ByteBuffer buf, boolean nocopy); - public void reset(); + public void clear(); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 41fd6b087..8c03b5940 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -400,7 +400,7 @@ public void skip() throws IOException { } public void reset() { - stack.reset(); + stack.clear(); value = null; } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 2ea54b3a9..783e96df5 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -42,50 +42,65 @@ public MessagePackBufferUnpacker(MessagePack msgpack, int bufferSize) { super(msgpack, new LinkedBufferInput(bufferSize)); } + @Override public MessagePackBufferUnpacker wrap(byte[] b) { return wrap(b, 0, b.length); } + @Override public MessagePackBufferUnpacker wrap(byte[] b, int off, int len) { ((LinkedBufferInput) in).clear(); ((LinkedBufferInput) in).feed(b, off, len, true); return this; } + @Override public MessagePackBufferUnpacker wrap(ByteBuffer buf) { ((LinkedBufferInput) in).clear(); ((LinkedBufferInput) in).feed(buf, true); return this; } + @Override public MessagePackBufferUnpacker feed(byte[] b) { ((LinkedBufferInput) in).feed(b); return this; } + @Override public MessagePackBufferUnpacker feed(byte[] b, boolean nocopy) { ((LinkedBufferInput) in).feed(b, nocopy); return this; } + @Override public MessagePackBufferUnpacker feed(byte[] b, int off, int len) { ((LinkedBufferInput) in).feed(b, off, len); return this; } + @Override public MessagePackBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { ((LinkedBufferInput) in).feed(b, off, len, nocopy); return this; } + @Override public MessagePackBufferUnpacker feed(ByteBuffer b) { ((LinkedBufferInput) in).feed(b); return this; } + @Override public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { ((LinkedBufferInput) in).feed(buf, nocopy); return this; } + + @Override + public void clear() { + ((LinkedBufferInput) in).clear(); + reset(); + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 823c143af..2b68b2288 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -556,7 +556,7 @@ public void skip() throws IOException { public void reset() { raw = null; - stack.reset(); + stack.clear(); } public void close() throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index fa501575d..1503d6d5d 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -92,7 +92,7 @@ public boolean topIsMap() { return types[top] == TYPE_MAP; } - public void reset() { + public void clear() { top = 0; } } diff --git a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java index b0a4a7df4..e46ff62db 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -43,11 +43,14 @@ public JSONBufferPacker(MessagePack msgpack, int bufferSize) { super(msgpack, new LinkedBufferOutput(bufferSize)); } + @Override public byte[] toByteArray() { return ((LinkedBufferOutput) out).toByteArray(); } + @Override public void clear() { + reset(); ((LinkedBufferOutput) out).clear(); } } diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index d7e9b6579..e4183fff6 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -46,7 +46,7 @@ public JSONBufferUnpacker(MessagePack msgpack) { } public JSONBufferUnpacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new InputStreamReader(new ByteArrayInputStream(new byte[0]))); + super(msgpack, newEmptyReader()); } @Override @@ -95,5 +95,15 @@ public JSONBufferUnpacker feed(ByteBuffer buf) { public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); } + + @Override + public void clear() { + reset(); + in = newEmptyReader(); + } + + private static Reader newEmptyReader() { + return new InputStreamReader(new ByteArrayInputStream(new byte[0])); + } } diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index fd8bb44f5..aaa4a0759 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -79,12 +79,14 @@ protected JSONPacker(MessagePack msgpack, Output out) { onUnmappableCharacter(CodingErrorAction.REPORT); } + @Override public void writeNil() throws IOException { beginElement(); out.write(NULL, 0, NULL.length); endElement(); } + @Override public void writeBoolean(boolean v) throws IOException { beginElement(); if(v) { @@ -95,6 +97,7 @@ public void writeBoolean(boolean v) throws IOException { endElement(); } + @Override public void writeByte(byte v) throws IOException { beginElement(); byte[] b = Byte.toString(v).getBytes(); // TODO optimize @@ -102,6 +105,7 @@ public void writeByte(byte v) throws IOException { endElement(); } + @Override public void writeShort(short v) throws IOException { beginElement(); byte[] b = Short.toString(v).getBytes(); // TODO optimize @@ -109,6 +113,7 @@ public void writeShort(short v) throws IOException { endElement(); } + @Override public void writeInt(int v) throws IOException { beginElement(); byte[] b = Integer.toString(v).getBytes(); // TODO optimize @@ -116,6 +121,7 @@ public void writeInt(int v) throws IOException { endElement(); } + @Override public void writeLong(long v) throws IOException { beginElement(); byte[] b = Long.toString(v).getBytes(); // TODO optimize @@ -123,6 +129,7 @@ public void writeLong(long v) throws IOException { endElement(); } + @Override public void writeBigInteger(BigInteger v) throws IOException { beginElement(); byte[] b = v.toString().getBytes(); // TODO optimize @@ -130,6 +137,7 @@ public void writeBigInteger(BigInteger v) throws IOException { endElement(); } + @Override public void writeFloat(float v) throws IOException { beginElement(); Float r = v; @@ -141,6 +149,7 @@ public void writeFloat(float v) throws IOException { endElement(); } + @Override public void writeDouble(double v) throws IOException { beginElement(); Double r = v; @@ -152,6 +161,7 @@ public void writeDouble(double v) throws IOException { endElement(); } + @Override public void writeByteArray(byte[] b, int off, int len) throws IOException { beginStringElement(); out.writeByte(QUOTE); @@ -160,6 +170,7 @@ public void writeByteArray(byte[] b, int off, int len) throws IOException { endElement(); } + @Override public void writeByteBuffer(ByteBuffer bb) throws IOException { beginStringElement(); out.writeByte(QUOTE); @@ -173,6 +184,7 @@ public void writeByteBuffer(ByteBuffer bb) throws IOException { endElement(); } + @Override public void writeString(String s) throws IOException { beginStringElement(); out.writeByte(QUOTE); @@ -181,6 +193,7 @@ public void writeString(String s) throws IOException { endElement(); } + @Override public void writeArrayBegin(int size) throws IOException { beginElement(); out.writeByte(LEFT_BR); @@ -189,6 +202,7 @@ public void writeArrayBegin(int size) throws IOException { flags[stack.getDepth()] = FLAG_FIRST_ELEMENT; } + @Override public void writeArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); @@ -208,6 +222,7 @@ public void writeArrayEnd(boolean check) throws IOException { out.writeByte(RIGHT_BR); } + @Override public void writeMapBegin(int size) throws IOException { beginElement(); out.writeByte(LEFT_WN); @@ -216,6 +231,7 @@ public void writeMapBegin(int size) throws IOException { flags[stack.getDepth()] = FLAG_FIRST_ELEMENT | FLAG_MAP_KEY; } + @Override public void writeMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); @@ -235,6 +251,15 @@ public void writeMapEnd(boolean check) throws IOException { out.writeByte(RIGHT_WN); } + @Override + public void close() throws IOException { + out.close(); + } + + public void reset() { + stack.clear(); + } + private void beginElement() throws IOException { int flag = flags[stack.getDepth()]; if((flag & FLAG_MAP_KEY) != 0) { @@ -266,10 +291,6 @@ private void endElement() throws IOException { stack.reduceCount(); } - public void close() throws IOException { - out.close(); - } - private void escape(Output out, byte[] b, int off, int len) throws IOException { escape(out, ByteBuffer.wrap(b, off, len)); } From 4a1a27158f0f0c9d9629b81777d3c8b7396e419e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 25 Aug 2011 22:58:34 +0900 Subject: [PATCH 152/409] fixed bug: TemplateRegistry has stamped out thrown exceptions --- .../msgpack/template/TemplateRegistry.java | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 0549179e3..310d2114d 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -18,6 +18,7 @@ package org.msgpack.template; import java.util.Collection; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.HashMap; @@ -69,6 +70,13 @@ private TemplateRegistry() { parent = null; chain = new TemplateBuilderChain(); chain.init(this); + cache = new HashMap>(); + genericCache = new HashMap(); + registerTemplates(); + cache = Collections.unmodifiableMap(cache); + genericCache = Collections.unmodifiableMap(genericCache);// FIXME + + // TODO cache = new HashMap>(); // FIXME #MN cache must be immutable map genericCache = new HashMap(); registerTemplates(); @@ -86,7 +94,8 @@ public TemplateRegistry(TemplateRegistry registry) { } chain = parent.chain; cache = new HashMap>(); - genericCache = new HashMap(); + //genericCache = new HashMap(); + genericCache = parent.genericCache; // FIXME } private void registerTemplates() { @@ -150,7 +159,7 @@ public synchronized void register(final Type targetType, final Template tmpl) { } public synchronized void registerGeneric(final Type targetType, final GenericTemplate tmpl) { - if(targetType instanceof ParameterizedType) { + if (targetType instanceof ParameterizedType) { genericCache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { genericCache.put(targetType, tmpl); @@ -170,6 +179,10 @@ public Template lookup(Type targetType) { return lookupImpl(targetType); } +// public Template lookup(Type targetType, boolean isRecursived) { +// return lookupImpl(targetType, isRecursived); +// } + private synchronized Template lookupImpl(Type targetType) { Template tmpl; @@ -354,7 +367,11 @@ private synchronized Template buildAndRegister(TemplateBuilder builder, final Cl cache.remove(targetClass); } newTmpl = null; - return oldTmpl; + if (e instanceof MessageTypeException) { + throw (MessageTypeException) e; + } else { + throw new MessageTypeException(e); + } } finally { if (newTmpl != null) { cache.put(targetClass, newTmpl); From dd2bfb793e60527a92cbeeb396bdc023da05be83 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 26 Aug 2011 17:46:25 +0900 Subject: [PATCH 153/409] template cache that has root of template registry is unmodifiable --- .../org/msgpack/template/TemplateRegistry.java | 16 ++++------------ .../template/builder/TemplateBuilderChain.java | 5 +++-- 2 files changed, 7 insertions(+), 14 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 310d2114d..7f8235c82 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -68,18 +68,11 @@ public class TemplateRegistry { */ private TemplateRegistry() { parent = null; - chain = new TemplateBuilderChain(); - chain.init(this); - cache = new HashMap>(); + chain = new TemplateBuilderChain(this); genericCache = new HashMap(); + cache = new HashMap>(); registerTemplates(); cache = Collections.unmodifiableMap(cache); - genericCache = Collections.unmodifiableMap(genericCache);// FIXME - - // TODO - cache = new HashMap>(); // FIXME #MN cache must be immutable map - genericCache = new HashMap(); - registerTemplates(); } /** @@ -92,10 +85,9 @@ public TemplateRegistry(TemplateRegistry registry) { } else { parent = new TemplateRegistry(); } - chain = parent.chain; + chain = new TemplateBuilderChain(this); cache = new HashMap>(); - //genericCache = new HashMap(); - genericCache = parent.genericCache; // FIXME + genericCache = parent.genericCache; } private void registerTemplates() { diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index c868154bf..9ea5870ae 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -36,11 +36,12 @@ private static boolean enableDynamicCodeGeneration(){ protected List templateBuilders; - public TemplateBuilderChain() { + public TemplateBuilderChain(TemplateRegistry registry) { templateBuilders = new ArrayList(); + init(registry); } - public void init(TemplateRegistry registry) { + private void init(TemplateRegistry registry) { if (registry == null) { throw new NullPointerException("registry is null"); } From f07e119c66b671019e57952e0666384ad91cabe0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 10:32:59 +0900 Subject: [PATCH 154/409] renamed package of test programs for JSONPacker/Unpacker to org.msgpack.util.json --- src/main/java/org/msgpack/MessagePack.java | 1 - .../{ => util/json}/TestJSONBufferPackBufferUnpack.java | 4 +++- .../org/msgpack/{ => util/json}/TestJSONBufferPackUnpack.java | 4 +++- .../org/msgpack/{ => util/json}/TestJSONPackBufferUnpack.java | 4 +++- .../java/org/msgpack/{ => util/json}/TestJSONPackUnpack.java | 4 +++- .../org/msgpack/{ => util/json}/TestSimpleJSONPackUnpack.java | 2 +- .../msgpack/{ => util/json}/TestValueToStringJSONUnpack.java | 4 +++- 7 files changed, 16 insertions(+), 7 deletions(-) rename src/test/java/org/msgpack/{ => util/json}/TestJSONBufferPackBufferUnpack.java (98%) rename src/test/java/org/msgpack/{ => util/json}/TestJSONBufferPackUnpack.java (98%) rename src/test/java/org/msgpack/{ => util/json}/TestJSONPackBufferUnpack.java (99%) rename src/test/java/org/msgpack/{ => util/json}/TestJSONPackUnpack.java (99%) rename src/test/java/org/msgpack/{ => util/json}/TestSimpleJSONPackUnpack.java (98%) rename src/test/java/org/msgpack/{ => util/json}/TestValueToStringJSONUnpack.java (99%) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 353a1918c..776026c11 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -79,7 +79,6 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { return createBufferUnpacker().wrap(bb); } - public byte[] write(Object v) throws IOException { BufferPacker pk = createBufferPacker(); if(v == null) { diff --git a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java similarity index 98% rename from src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java rename to src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java index 52e233539..a592b609b 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; @@ -15,6 +15,8 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; diff --git a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java similarity index 98% rename from src/test/java/org/msgpack/TestJSONBufferPackUnpack.java rename to src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java index 015e56b33..9401fc729 100644 --- a/src/test/java/org/msgpack/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; @@ -15,6 +15,8 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; diff --git a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java similarity index 99% rename from src/test/java/org/msgpack/TestJSONPackBufferUnpack.java rename to src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java index 36f6199fa..c67407167 100644 --- a/src/test/java/org/msgpack/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; @@ -16,6 +16,8 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; diff --git a/src/test/java/org/msgpack/TestJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java similarity index 99% rename from src/test/java/org/msgpack/TestJSONPackUnpack.java rename to src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java index ef3e9117c..eddab593f 100644 --- a/src/test/java/org/msgpack/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; @@ -16,6 +16,8 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; diff --git a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java similarity index 98% rename from src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java rename to src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java index 5fa5bb4f0..ffeb403d7 100644 --- a/src/test/java/org/msgpack/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; diff --git a/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java similarity index 99% rename from src/test/java/org/msgpack/TestValueToStringJSONUnpack.java rename to src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java index 13c97f14c..581002edf 100644 --- a/src/test/java/org/msgpack/TestValueToStringJSONUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.util.json; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; @@ -16,6 +16,8 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.TestSet; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; import org.msgpack.packer.Unconverter; From 9735e8e79193d7e5e96980ca61ef1c09411a8393 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 10:39:37 +0900 Subject: [PATCH 155/409] refined source code of test programs for JSONPacker/Unpacker --- .../util/json/TestJSONBufferPackBufferUnpack.java | 4 ++-- .../msgpack/util/json/TestJSONBufferPackUnpack.java | 3 ++- .../msgpack/util/json/TestJSONPackBufferUnpack.java | 4 ++-- .../org/msgpack/util/json/TestJSONPackUnpack.java | 3 ++- .../msgpack/util/json/TestSimpleJSONPackUnpack.java | 11 ----------- .../util/json/TestValueToStringJSONUnpack.java | 12 ++---------- 6 files changed, 10 insertions(+), 27 deletions(-) diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java index a592b609b..998ce0e0b 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java @@ -1,11 +1,9 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import java.io.ByteArrayInputStream; import java.io.IOException; import java.math.BigInteger; import java.util.ArrayList; @@ -221,6 +219,7 @@ public void testList() throws Exception { super.testList(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); @@ -259,6 +258,7 @@ public void testMap() throws Exception { super.testMap(); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java index 9401fc729..7e7b68930 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java @@ -1,7 +1,6 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -221,6 +220,7 @@ public void testList() throws Exception { super.testList(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); @@ -259,6 +259,7 @@ public void testMap() throws Exception { super.testMap(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java index c67407167..67fd63254 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java @@ -1,11 +1,9 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.math.BigInteger; @@ -234,6 +232,7 @@ public void testList() throws Exception { super.testList(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); @@ -273,6 +272,7 @@ public void testMap() throws Exception { super.testMap(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java index eddab593f..9806e5ddf 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java @@ -1,7 +1,6 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -234,6 +233,7 @@ public void testList() throws Exception { super.testList(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); @@ -273,6 +273,7 @@ public void testMap() throws Exception { super.testMap(); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); diff --git a/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java index ffeb403d7..9a983c5d2 100644 --- a/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java @@ -1,27 +1,16 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import java.math.BigInteger; -import java.nio.ByteBuffer; import java.io.IOException; -import java.io.ByteArrayOutputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; -import org.msgpack.util.json.JSON; import org.msgpack.util.json.JSONBufferPacker; import org.msgpack.util.json.JSONBufferUnpacker; -import org.junit.Test; public class TestSimpleJSONPackUnpack { @Test diff --git a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java index 581002edf..2221e126c 100644 --- a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java @@ -1,13 +1,7 @@ package org.msgpack.util.json; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; -import java.io.IOException; import java.math.BigInteger; import java.util.ArrayList; import java.util.HashMap; @@ -18,12 +12,8 @@ import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; -import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; import org.msgpack.packer.Unconverter; -import org.msgpack.unpacker.Converter; -import org.msgpack.type.Value; -import org.msgpack.type.ValueFactory; import org.msgpack.util.json.JSON; @@ -238,6 +228,7 @@ public void testList() throws Exception { super.testList(); } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new JSON(); @@ -276,6 +267,7 @@ public void testMap() throws Exception { super.testMap(); } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Override public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new JSON(); From d3b822645726711eb1600277907ea5fcf5d63bda Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 11:28:37 +0900 Subject: [PATCH 156/409] refined TemplateRegistry.java --- .../msgpack/template/TemplateRegistry.java | 65 +++++++++---------- 1 file changed, 29 insertions(+), 36 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7f8235c82..1395be507 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -136,6 +136,7 @@ public void register(final Class targetClass, final FieldList flist) { if (flist == null) { throw new NullPointerException("FieldList object is null"); } + buildAndRegister(null, targetClass, false, flist); } @@ -143,6 +144,7 @@ public synchronized void register(final Type targetType, final Template tmpl) { if (tmpl == null) { throw new NullPointerException("Template object is null"); } + if (targetType instanceof ParameterizedType) { cache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { @@ -171,10 +173,6 @@ public Template lookup(Type targetType) { return lookupImpl(targetType); } -// public Template lookup(Type targetType, boolean isRecursived) { -// return lookupImpl(targetType, isRecursived); -// } - private synchronized Template lookupImpl(Type targetType) { Template tmpl; @@ -218,25 +216,28 @@ private synchronized Template lookupImpl(Type targetType) { "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } - private Template lookupGenericImpl(Type targetType) { - Template tmpl; + @SuppressWarnings("unchecked") + private Template lookupGenericImpl(Type targetType) { + Template tmpl = null; if (targetType instanceof ParameterizedType) { - ParameterizedType pType = (ParameterizedType) targetType; + ParameterizedType paramedType = (ParameterizedType) targetType; + // ParameterizedType is not a Class? - tmpl = lookupGenericImpl0(pType); + tmpl = lookupGenericImpl0(paramedType); if (tmpl != null) { return tmpl; } + try { - tmpl = parent.lookupGenericImpl0(pType); + tmpl = parent.lookupGenericImpl0(paramedType); if (tmpl != null) { return tmpl; } } catch (NullPointerException e) { // ignore } - targetType = pType.getRawType(); + targetType = paramedType.getRawType(); } - return null; + return tmpl; } private Template lookupGenericImpl0(final ParameterizedType targetType) { @@ -256,52 +257,44 @@ private Template lookupGenericImpl0(final ParameterizedType targetType) { return tmpl.build(tmpls); } - private Template lookupCacheImpl(Type targetType) { - Template tmpl = cache.get(targetType); + private Template lookupCacheImpl(Type targetType) { + Template tmpl = cache.get(targetType); if (tmpl != null) { return tmpl; } try { tmpl = parent.lookupCacheImpl(targetType); - if (tmpl != null) { - return tmpl; - } } catch (NullPointerException e) { // ignore } - return null; + return tmpl; } - private Template lookupWithTemplateBuilderImpl(Class targetClass) { + private Template lookupWithTemplateBuilderImpl(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); - - Template tmpl; + Template tmpl = null; if (builder != null) { tmpl = builder.loadTemplate(targetClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; } - tmpl = buildAndRegister(builder, targetClass, true, null); - if (tmpl != null) { - return tmpl; - } } - return null; + return tmpl; } - private Template lookupInterfacesImpl(Class targetClass) { + private Template lookupInterfacesImpl(Class targetClass) { Class[] infTypes = targetClass.getInterfaces(); - Template tmpl; + Template tmpl = null; for (Class infType : infTypes) { - tmpl = cache.get(infType); + tmpl = (Template) cache.get(infType); if (tmpl != null) { register(targetClass, tmpl); return tmpl; } else { try { - tmpl = parent.lookupCacheImpl(infType); + tmpl = (Template) parent.lookupCacheImpl(infType); if (tmpl != null) { register(targetClass, tmpl); return tmpl; @@ -310,21 +303,21 @@ private Template lookupInterfacesImpl(Class targetClass) { } } } - return null; + return tmpl; } - private Template lookupSuperclassesImpl(Class targetClass) { + private Template lookupSuperclassesImpl(Class targetClass) { Class superClass = targetClass.getSuperclass(); - Template tmpl = null; + Template tmpl = null; if (superClass != null) { for (; superClass != Object.class; superClass = superClass.getSuperclass()) { - tmpl = cache.get(superClass); + tmpl = (Template) cache.get(superClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; } else { try { - tmpl = parent.lookupCacheImpl(superClass); + tmpl = (Template) parent.lookupCacheImpl(superClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; @@ -334,10 +327,10 @@ private Template lookupSuperclassesImpl(Class targetClass) { } } } - return null; + return tmpl; } - private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, + private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, final boolean hasAnnotation, final FieldList flist) { Template newTmpl = null; Template oldTmpl = null; From 653b2c1123807993c5906ffc5175992fc99f5eef Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 11:41:43 +0900 Subject: [PATCH 157/409] defined setClassLoader method in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 4 ++++ .../org/msgpack/template/TemplateRegistry.java | 4 ++++ .../template/builder/TemplateBuilderChain.java | 15 +++++++++++---- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 776026c11..03b386232 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -47,6 +47,10 @@ public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } + public void setClassLoader(final ClassLoader cl) { + registry.setClassLoader(cl); + } + public Packer createPacker(OutputStream stream) { return new MessagePackPacker(this, stream); } diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 1395be507..767946f9b 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -90,6 +90,10 @@ public TemplateRegistry(TemplateRegistry registry) { genericCache = parent.genericCache; } + public void setClassLoader(final ClassLoader cl) { + chain = new TemplateBuilderChain(this, cl); + } + private void registerTemplates() { register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 9ea5870ae..61dc6e65d 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -36,12 +36,16 @@ private static boolean enableDynamicCodeGeneration(){ protected List templateBuilders; - public TemplateBuilderChain(TemplateRegistry registry) { + public TemplateBuilderChain(final TemplateRegistry registry) { + this(registry, null); + } + + public TemplateBuilderChain(final TemplateRegistry registry, final ClassLoader cl) { templateBuilders = new ArrayList(); - init(registry); + reset(registry, cl); } - private void init(TemplateRegistry registry) { + private void reset(final TemplateRegistry registry, final ClassLoader cl) { if (registry == null) { throw new NullPointerException("registry is null"); } @@ -51,6 +55,9 @@ private void init(TemplateRegistry registry) { templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); if (enableDynamicCodeGeneration()) { // use dynamic code generation builder = new JavassistTemplateBuilder(registry); + if (cl != null) { + ((JavassistTemplateBuilder) builder).addClassLoader(cl); + } templateBuilders.add(builder); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); } else { // use reflection @@ -61,7 +68,7 @@ private void init(TemplateRegistry registry) { } } - public TemplateBuilder select(Type targetType, boolean hasAnnotation) { + public TemplateBuilder select(final Type targetType, final boolean hasAnnotation) { for (TemplateBuilder tb : templateBuilders) { if (tb.matchType(targetType, hasAnnotation)) { return tb; From 8f5a3247ee946ecd2c3e5ca998ac620cc5e7d9db Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 11:59:38 +0900 Subject: [PATCH 158/409] refined test programs --- src/test/java/org/msgpack/TestCrossLang.java | 7 +------ src/test/java/org/msgpack/TestSimpleArrays.java | 3 +++ .../org/msgpack/TestSimpleConvertUnconvert.java | 11 +---------- .../java/org/msgpack/TestSimplePackUnpack.java | 11 +---------- .../java/org/msgpack/TestSimplePackable.java | 8 +------- .../org/msgpack/io/TestLinkedBufferInput.java | 13 +------------ .../org/msgpack/io/TestLinkedBufferOutput.java | 12 +----------- .../org/msgpack/template/TestListTemplate.java | 9 ++++----- .../org/msgpack/template/TestMapTemplate.java | 10 ++++------ src/test/java/org/msgpack/type/TestEquals.java | 14 +++----------- src/test/java/org/msgpack/type/TestHashCode.java | 8 -------- .../org/msgpack/unpacker/TestBufferUnpacker.java | 16 ++-------------- .../msgpack/unpacker/TestMalformedEncoding.java | 11 +---------- 13 files changed, 23 insertions(+), 110 deletions(-) diff --git a/src/test/java/org/msgpack/TestCrossLang.java b/src/test/java/org/msgpack/TestCrossLang.java index b8ccf18dd..58ea2d2b0 100644 --- a/src/test/java/org/msgpack/TestCrossLang.java +++ b/src/test/java/org/msgpack/TestCrossLang.java @@ -5,16 +5,10 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertArrayEquals; -import java.math.BigInteger; -import java.nio.ByteBuffer; import java.io.IOException; import java.io.ByteArrayOutputStream; import java.io.FileInputStream; -import java.util.ArrayList; -import java.util.HashMap; import java.util.Iterator; -import java.util.List; -import java.util.Map; import org.msgpack.MessagePack; import org.msgpack.type.Value; @@ -23,6 +17,7 @@ import org.junit.Test; + public class TestCrossLang { private byte[] readData(String path) throws IOException { ByteArrayOutputStream bo = new ByteArrayOutputStream(); diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java index 0bc9e141e..447576655 100644 --- a/src/test/java/org/msgpack/TestSimpleArrays.java +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -203,6 +203,7 @@ public GenericsTest() { } } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Test public void testGenerics() throws Exception { MessagePack msgpack = new MessagePack(); @@ -270,6 +271,7 @@ public Dim2Test() { } } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Test public void testDim2() throws Exception { MessagePack msgpack = new MessagePack(); @@ -334,6 +336,7 @@ public Dim3Test() { } } + @SuppressWarnings({ "unchecked", "rawtypes" }) @Test public void testDim3() throws Exception { MessagePack msgpack = new MessagePack(); diff --git a/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java b/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java index 78de49137..ce3fa956d 100644 --- a/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java +++ b/src/test/java/org/msgpack/TestSimpleConvertUnconvert.java @@ -1,25 +1,16 @@ package org.msgpack; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertArrayEquals; -import java.math.BigInteger; -import java.nio.ByteBuffer; import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; import org.msgpack.MessagePack; import org.msgpack.type.Value; -import org.msgpack.unpacker.Converter; -import org.msgpack.packer.Unconverter; import org.junit.Test; + public class TestSimpleConvertUnconvert { @Test public void testSimpleConvert() throws IOException { diff --git a/src/test/java/org/msgpack/TestSimplePackUnpack.java b/src/test/java/org/msgpack/TestSimplePackUnpack.java index 595d259f8..6e8c20c20 100644 --- a/src/test/java/org/msgpack/TestSimplePackUnpack.java +++ b/src/test/java/org/msgpack/TestSimplePackUnpack.java @@ -1,24 +1,15 @@ package org.msgpack; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.math.BigInteger; import java.nio.ByteBuffer; import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.type.Value; -import org.junit.Test; public class TestSimplePackUnpack { + @SuppressWarnings("unused") @Test public void testSimplePackUnpack() throws IOException { MessagePack msgpack = new MessagePack(); diff --git a/src/test/java/org/msgpack/TestSimplePackable.java b/src/test/java/org/msgpack/TestSimplePackable.java index 21cd7a6d4..c3c7976ae 100644 --- a/src/test/java/org/msgpack/TestSimplePackable.java +++ b/src/test/java/org/msgpack/TestSimplePackable.java @@ -1,20 +1,13 @@ package org.msgpack; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.assertArrayEquals; -import java.math.BigInteger; -import java.nio.ByteBuffer; import java.io.IOException; import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; import java.util.List; -import java.util.Map; import org.msgpack.MessagePack; -import org.msgpack.type.Value; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; @@ -22,6 +15,7 @@ import org.junit.Test; + public class TestSimplePackable { // all files are REQUIRED public static class Sample01 implements MessagePackable { diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java index 2c7dbfde7..c22df636c 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java @@ -1,29 +1,18 @@ package org.msgpack.io; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import java.math.BigInteger; import java.nio.ByteBuffer; import java.io.IOException; -import java.io.EOFException; import java.io.DataInputStream; import java.io.ByteArrayInputStream; import java.io.DataOutputStream; import java.io.ByteArrayOutputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Arrays; - -import org.msgpack.MessagePack; -import org.msgpack.type.Value; import org.junit.Test; + public class TestLinkedBufferInput { @Test public void testReadByte() throws IOException { diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java b/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java index 25731a310..0e0cef1f0 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferOutput.java @@ -3,23 +3,13 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertArrayEquals; -import java.math.BigInteger; -import java.nio.ByteBuffer; import java.io.IOException; import java.io.DataOutputStream; import java.io.ByteArrayOutputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Arrays; - -import org.msgpack.MessagePack; -import org.msgpack.type.Value; import org.junit.Test; + public class TestLinkedBufferOutput { @Test public void testGetSize() throws IOException { diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 0fb29fb1d..8d8f77edd 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -6,7 +6,6 @@ import java.io.ByteArrayOutputStream; import java.util.List; -import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -48,7 +47,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); - Template> tmpl = new ListTemplate(elementTemplate); + Template> tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); @@ -69,7 +68,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); - Template> tmpl = new ListTemplate(elementTemplate); + Template> tmpl = new ListTemplate(elementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); @@ -90,7 +89,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); - Template> tmpl = new ListTemplate(elementTemplate); + Template> tmpl = new ListTemplate(elementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -110,7 +109,7 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); Template elementTemplate = msgpack.lookup(elementClass); - Template> tmpl = new ListTemplate(elementTemplate); + Template> tmpl = new ListTemplate(elementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index d48cdc75d..c3072a775 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -4,10 +4,8 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; -import java.util.List; import java.util.Map; -import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -50,7 +48,7 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); @@ -72,7 +70,7 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); tmpl.write(packer, v); @@ -94,7 +92,7 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); @@ -115,7 +113,7 @@ public void testMap(Map v, Class keyElementClass, Class value MessagePack msgpack = new MessagePack(); Template keyElementTemplate = msgpack.lookup(keyElementClass); Template valueElementTemplate = msgpack.lookup(valueElementClass); - Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); + Template> tmpl = new MapTemplate(keyElementTemplate, valueElementTemplate); BufferPacker packer = msgpack.createBufferPacker(); tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java index fe829fbeb..22a94dcb3 100644 --- a/src/test/java/org/msgpack/type/TestEquals.java +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -1,22 +1,11 @@ package org.msgpack.type; -import static org.junit.Assert.assertArrayEquals; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; import org.junit.Test; -import org.msgpack.MessagePack; import org.msgpack.TestSet; -import org.msgpack.packer.BufferPacker; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -197,14 +186,17 @@ public void testNull() { testEquals(v1, v2); } + @SuppressWarnings("unused") private boolean compatibleWithByte(long v) { return (long)Byte.MIN_VALUE <= v && v <= (long)Byte.MAX_VALUE; } + @SuppressWarnings("unused") private boolean compatibleWithShort(long v) { return (long)Short.MIN_VALUE <= v && v <= (long)Short.MAX_VALUE; } + @SuppressWarnings("unused") private boolean compatibleWithInt(long v) { return (long)Integer.MIN_VALUE <= v && v <= (long)Integer.MAX_VALUE; } diff --git a/src/test/java/org/msgpack/type/TestHashCode.java b/src/test/java/org/msgpack/type/TestHashCode.java index eb43cec71..01d3ca3d9 100644 --- a/src/test/java/org/msgpack/type/TestHashCode.java +++ b/src/test/java/org/msgpack/type/TestHashCode.java @@ -1,15 +1,7 @@ package org.msgpack.type; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.assertNotSame; -import java.math.BigInteger; -import java.nio.ByteBuffer; -import java.util.Random; -import java.io.UnsupportedEncodingException; - -import org.junit.Test; public class TestHashCode extends TestEquals { @Override diff --git a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java index 7272d13c6..198d37c6e 100644 --- a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java +++ b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java @@ -2,22 +2,9 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.math.BigInteger; -import java.nio.ByteBuffer; -import java.io.IOException; -import java.io.EOFException; -import java.io.DataInputStream; -import java.io.ByteArrayInputStream; -import java.io.DataOutputStream; -import java.io.ByteArrayOutputStream; + import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; import java.util.List; -import java.util.Map; -import java.util.Arrays; import java.util.Random; import org.msgpack.MessagePack; @@ -29,6 +16,7 @@ import org.junit.Test; + public class TestBufferUnpacker { @Test public void testEachByte() throws Exception { diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index f008abdab..fe924f99e 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -2,15 +2,8 @@ import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.nio.charset.CharacterCodingException; @@ -21,13 +14,11 @@ import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; -import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; -import org.msgpack.type.Value; import org.msgpack.type.RawValue; import org.msgpack.type.ValueFactory; import org.msgpack.util.json.JSON; -import org.msgpack.util.json.JSONPacker; + public class TestMalformedEncoding { private byte[][] malforms = new byte[][] { From 74216a1cd9b768213e053ec9343ee6a351d62afc Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 12:23:48 +0900 Subject: [PATCH 159/409] refactored TemplateRegistry.java --- .../msgpack/template/TemplateRegistry.java | 38 +++++++++---------- 1 file changed, 17 insertions(+), 21 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 767946f9b..3b223663a 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -173,19 +173,15 @@ public synchronized void unregister() { cache.clear(); } - public Template lookup(Type targetType) { - return lookupImpl(targetType); - } - - private synchronized Template lookupImpl(Type targetType) { + public synchronized Template lookup(Type targetType) { Template tmpl; - tmpl = lookupGenericImpl(targetType); + tmpl = lookupGenericType(targetType); if (tmpl != null) { return tmpl; } - tmpl = lookupCacheImpl(targetType); + tmpl = lookupCache(targetType); if (tmpl != null) { return tmpl; } @@ -199,19 +195,19 @@ private synchronized Template lookupImpl(Type targetType) { } // find matched template builder and build template - tmpl = lookupWithTemplateBuilderImpl(targetClass); + tmpl = lookupAfterBuilding(targetClass); if (tmpl != null) { return tmpl; } // lookup template of interface type - tmpl = lookupInterfacesImpl(targetClass); + tmpl = lookupInterfaceTypes(targetClass); if (tmpl != null) { return tmpl; } // lookup template of superclass type - tmpl = lookupSuperclassesImpl(targetClass); + tmpl = lookupSuperclasses(targetClass); if (tmpl != null) { return tmpl; } @@ -221,19 +217,19 @@ private synchronized Template lookupImpl(Type targetType) { } @SuppressWarnings("unchecked") - private Template lookupGenericImpl(Type targetType) { + private Template lookupGenericType(Type targetType) { Template tmpl = null; if (targetType instanceof ParameterizedType) { ParameterizedType paramedType = (ParameterizedType) targetType; // ParameterizedType is not a Class? - tmpl = lookupGenericImpl0(paramedType); + tmpl = lookupGenericTypeImpl(paramedType); if (tmpl != null) { return tmpl; } try { - tmpl = parent.lookupGenericImpl0(paramedType); + tmpl = parent.lookupGenericTypeImpl(paramedType); if (tmpl != null) { return tmpl; } @@ -244,7 +240,7 @@ private Template lookupGenericImpl(Type targetType) { return tmpl; } - private Template lookupGenericImpl0(final ParameterizedType targetType) { + private Template lookupGenericTypeImpl(final ParameterizedType targetType) { Type rawType = targetType.getRawType(); GenericTemplate tmpl = genericCache.get(rawType); @@ -261,20 +257,20 @@ private Template lookupGenericImpl0(final ParameterizedType targetType) { return tmpl.build(tmpls); } - private Template lookupCacheImpl(Type targetType) { + private Template lookupCache(Type targetType) { Template tmpl = cache.get(targetType); if (tmpl != null) { return tmpl; } try { - tmpl = parent.lookupCacheImpl(targetType); + tmpl = parent.lookupCache(targetType); } catch (NullPointerException e) { // ignore } return tmpl; } - private Template lookupWithTemplateBuilderImpl(Class targetClass) { + private Template lookupAfterBuilding(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); Template tmpl = null; if (builder != null) { @@ -288,7 +284,7 @@ private Template lookupWithTemplateBuilderImpl(Class targetClass) { return tmpl; } - private Template lookupInterfacesImpl(Class targetClass) { + private Template lookupInterfaceTypes(Class targetClass) { Class[] infTypes = targetClass.getInterfaces(); Template tmpl = null; for (Class infType : infTypes) { @@ -298,7 +294,7 @@ private Template lookupInterfacesImpl(Class targetClass) { return tmpl; } else { try { - tmpl = (Template) parent.lookupCacheImpl(infType); + tmpl = (Template) parent.lookupCache(infType); if (tmpl != null) { register(targetClass, tmpl); return tmpl; @@ -310,7 +306,7 @@ private Template lookupInterfacesImpl(Class targetClass) { return tmpl; } - private Template lookupSuperclassesImpl(Class targetClass) { + private Template lookupSuperclasses(Class targetClass) { Class superClass = targetClass.getSuperclass(); Template tmpl = null; if (superClass != null) { @@ -321,7 +317,7 @@ private Template lookupSuperclassesImpl(Class targetClass) { return tmpl; } else { try { - tmpl = (Template) parent.lookupCacheImpl(superClass); + tmpl = (Template) parent.lookupCache(superClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; From 3334a9631e3c142a37ce2953501df4a40918863f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 12:40:04 +0900 Subject: [PATCH 160/409] appended @Ignore to test programs for unsupported functions in JSONPacker/Unpacker --- src/main/java/org/msgpack/template/TemplateRegistry.java | 4 ++++ .../msgpack/util/json/TestJSONBufferPackBufferUnpack.java | 6 +++--- .../org/msgpack/util/json/TestJSONBufferPackUnpack.java | 6 +++--- .../org/msgpack/util/json/TestJSONPackBufferUnpack.java | 7 +++---- .../java/org/msgpack/util/json/TestJSONPackUnpack.java | 7 +++---- .../org/msgpack/util/json/TestValueToStringJSONUnpack.java | 6 +++--- 6 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 3b223663a..9c3a67485 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -188,7 +188,11 @@ public synchronized Template lookup(Type targetType) { Class targetClass = (Class) targetType; + // MessagePackable interface is implemented if (MessagePackable.class.isAssignableFrom(targetClass)) { + // FIXME #MN + // following processing should be merged into lookAfterBuilding + // or lookupInterfaceTypes method in next version tmpl = new MessagePackableTemplate(targetClass); register(targetClass, tmpl); return tmpl; diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java index 998ce0e0b..8bb25de32 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java @@ -12,6 +12,7 @@ import java.util.List; import java.util.Map; +import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -162,7 +163,7 @@ public void testNil() throws Exception { unpacker.readNil(); } - //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger (bug) + @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) public void testBigInteger() throws Exception { super.testBigInteger(); } @@ -194,14 +195,13 @@ public void testString(String v) throws Exception { assertEquals(v, ret); } - @Test @Override + @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - // FIXME JSONPacker doesn't support bytes MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); //packer.writeByteArray(v); diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java index 7e7b68930..29261e0dc 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java @@ -13,6 +13,7 @@ import java.util.List; import java.util.Map; +import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -163,7 +164,7 @@ public void testNil() throws Exception { unpacker.readNil(); } - //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger (bug) + @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) public void testBigInteger() throws Exception { super.testBigInteger(); } @@ -195,14 +196,13 @@ public void testString(String v) throws Exception { assertEquals(v, ret); } - @Test @Override + @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - // FIXME JSONPacker doesn't support bytes MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); //packer.writeByteArray(v); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java index 67fd63254..0f95d9f15 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java @@ -13,6 +13,7 @@ import java.util.List; import java.util.Map; +import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -171,8 +172,7 @@ public void testNil() throws Exception { unpacker.readNil(); } - //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger - ByteArrayOutputStream out = new ByteArrayOutputStream(); + @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger public void testBigInteger() throws Exception { super.testBigInteger(); } @@ -206,14 +206,13 @@ public void testString(String v) throws Exception { assertEquals(v, ret); } - @Test @Override + @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - // FIXME JSONPacker doesn't support bytes MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java index 9806e5ddf..f9bc422bd 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java @@ -14,6 +14,7 @@ import java.util.List; import java.util.Map; +import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -172,8 +173,7 @@ public void testNil() throws Exception { unpacker.readNil(); } - //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger - ByteArrayOutputStream out = new ByteArrayOutputStream(); + @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger public void testBigInteger() throws Exception { super.testBigInteger(); } @@ -207,14 +207,13 @@ public void testString(String v) throws Exception { assertEquals(v, ret); } - @Test @Override + @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - // FIXME JSONPacker doesn't support bytes MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); diff --git a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java index 2221e126c..ceb44bbeb 100644 --- a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java @@ -9,6 +9,7 @@ import java.util.List; import java.util.Map; +import org.junit.Ignore; import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.TestSet; @@ -171,7 +172,7 @@ public void testNil() throws Exception { unpacker.readNil(); } - //@Test @Override // FIXME JSON Unpacker doesn't support BigInteger + @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger public void testBigInteger() throws Exception { super.testBigInteger(); } @@ -203,14 +204,13 @@ public void testString(String v) throws Exception { assertEquals(v, ret); } - @Test @Override + @Ignore @Test @Override // FIXME JSONPacker doesn't support bytes public void testByteArray() throws Exception { super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - // FIXME JSONPacker doesn't support bytes MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); //packer.writeByteArray(v); From b5679358445c48c0acd36ef6f254438c08362974 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 1 Sep 2011 12:54:00 +0900 Subject: [PATCH 161/409] deleted dead codes --- src/main/java/org/msgpack/packer/MessagePackPacker.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 769f361f3..789288810 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -23,10 +23,8 @@ import java.nio.ByteBuffer; import java.math.BigInteger; import java.nio.charset.Charset; -import java.nio.charset.CharacterCodingException; import java.nio.charset.CharsetEncoder; import java.nio.charset.CodingErrorAction; -import java.nio.charset.MalformedInputException; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; From 95114fda09f09f8f8606eec3612b7a1264269a18 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 8 Sep 2011 12:38:08 +0900 Subject: [PATCH 162/409] added javadoc to MessagePack class --- src/main/java/org/msgpack/MessagePack.java | 370 +++++++++++++++--- .../java/org/msgpack/MessagePackable.java | 1 + 2 files changed, 326 insertions(+), 45 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 03b386232..6864a1b13 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -35,54 +35,144 @@ import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; - +/** + * Basic class to use MessagePack for Java. It creates serializers and + * deserializers for objects of classes. + * + */ public class MessagePack { private TemplateRegistry registry; + /** + * + * @version 0.6.0 + */ public MessagePack() { registry = new TemplateRegistry(null); } + /** + * + * @version 0.6.0 + * @param msgpack nested {@link org.msgpack.MessagePack} object + */ public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } + /** + * + * @version 0.6.0 + * @param cl + */ public void setClassLoader(final ClassLoader cl) { registry.setClassLoader(cl); } - public Packer createPacker(OutputStream stream) { - return new MessagePackPacker(this, stream); - } - + /** + * Returns serializer that enables serializing objects into + * {@link java.io.OutputStream} object. + * + * @version 0.6.0 + * @param out output stream + * @return stream-based serializer + */ + public Packer createPacker(OutputStream out) { + return new MessagePackPacker(this, out); + } + + /** + * Returns serializer that enables serializing objects into + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @return buffer-based serializer + */ public BufferPacker createBufferPacker() { return new MessagePackBufferPacker(this); } + /** + * Returns serializer that enables serializing objects into + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @param bufferSize initial size of buffer + * @return buffer-based serializer + */ public BufferPacker createBufferPacker(int bufferSize) { return new MessagePackBufferPacker(this, bufferSize); } - public Unpacker createUnpacker(InputStream stream) { - return new MessagePackUnpacker(this, stream); - } - + /** + * Returns deserializer that enables deserializing + * {@link java.io.InputStream} object. + * + * @version 0.6.0 + * @param in input stream + * @return stream-based deserializer + */ + public Unpacker createUnpacker(InputStream in) { + return new MessagePackUnpacker(this, in); + } + + /** + * Returns empty deserializer that enables deserializing + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @return buffer-based deserializer + */ public BufferUnpacker createBufferUnpacker() { return new MessagePackBufferUnpacker(); } - public BufferUnpacker createBufferUnpacker(byte[] b) { - return createBufferUnpacker().wrap(b); - } - - public BufferUnpacker createBufferUnpacker(byte[] b, int off, int len) { - return createBufferUnpacker().wrap(b, off, len); - } - - public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { - return createBufferUnpacker().wrap(bb); - } - + /** + * Returns deserializer that enables deserializing + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @param bytes input byte array + * @return buffer-based deserializer + */ + public BufferUnpacker createBufferUnpacker(byte[] bytes) { + return createBufferUnpacker().wrap(bytes); + } + + /** + * Returns deserializer that enables deserializing + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @param bytes + * @param off + * @param len + * @return buffer-based deserializer + */ + public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { + return createBufferUnpacker().wrap(bytes, off, len); + } + + /** + * Returns deserializer that enables deserializing + * {@link java.nio.ByteBuffer} object. + * + * @version 0.6.0 + * @param buffer input {@link java.nio.ByteBuffer} object + * @return buffer-based deserializer + */ + public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { + return createBufferUnpacker().wrap(buffer); + } + + /** + * Serializes specified object. + * + * @version 0.6.0 + * @param v serialized object + * @return output byte array + * @throws IOException + */ public byte[] write(Object v) throws IOException { BufferPacker pk = createBufferPacker(); if(v == null) { @@ -94,12 +184,30 @@ public byte[] write(Object v) throws IOException { return pk.toByteArray(); } - public byte[] write(T v, Template tmpl) throws IOException { + /** + * Serializes specified object. It allows serializing object by specified + * template. + * + * @version 0.6.0 + * @param v + * @param template + * @return + * @throws IOException + */ + public byte[] write(T v, Template template) throws IOException { BufferPacker pk = createBufferPacker(); - tmpl.write(pk, v); + template.write(pk, v); return pk.toByteArray(); } + /** + * Serializes specified object to output stream. + * + * @version 0.6.0 + * @param out output stream + * @param v serialized object + * @throws IOException + */ public void write(OutputStream out, Object v) throws IOException { Packer pk = createPacker(out); if(v == null) { @@ -110,11 +218,28 @@ public void write(OutputStream out, Object v) throws IOException { } } - public void write(OutputStream out, T v, Template tmpl) throws IOException { + /** + * Serializes object to output stream by specified template. + * + * @version 0.6.0 + * @param out output stream + * @param v serialized object + * @param template serializer/deserializer for the object + * @throws IOException + */ + public void write(OutputStream out, T v, Template template) throws IOException { Packer pk = createPacker(out); - tmpl.write(pk, v); + template.write(pk, v); } + /** + * Serializes {@link org.msgpack.type.Value} object to byte array. + * + * @version 0.6.0 + * @param v serialized {@link org.msgpack.type.Value} object + * @return output byte array + * @throws IOException + */ public byte[] write(Value v) throws IOException { // FIXME ValueTemplate should do this BufferPacker pk = createBufferPacker(); @@ -122,67 +247,184 @@ public byte[] write(Value v) throws IOException { return pk.toByteArray(); } - public Value read(byte[] b) throws IOException { - return read(b, 0, b.length); - } - - public Value read(byte[] b, int off, int len) throws IOException { - return createBufferUnpacker(b, off, len).readValue(); - } - - public Value read(ByteBuffer buf) throws IOException { - return createBufferUnpacker(buf).readValue(); - } - + /** + * Deserializes specified byte array to {@link org.msgpack.type.Value} + * object. + * + * @version 0.6.0 + * @param bytes input byte array + * @return + * @throws IOException + */ + public Value read(byte[] bytes) throws IOException { + return read(bytes, 0, bytes.length); + } + + /** + * Deserializes byte array to {@link org.msgpack.type.Value} object. + * + * @version 0.6.0 + * @param bytes + * @param off + * @param len + * @return + * @throws IOException + */ + public Value read(byte[] bytes, int off, int len) throws IOException { + return createBufferUnpacker(bytes, off, len).readValue(); + } + + /** + * Deserializes {@link java.nio.ByteBuffer} object to + * {@link org.msgpack.type.Value} object. + * + * @version 0.6.0 + * @param buffer input buffer + * @return + * @throws IOException + */ + public Value read(ByteBuffer buffer) throws IOException { + return createBufferUnpacker(buffer).readValue(); + } + + /** + * Deserializes input stream to {@link org.msgpack.type.Value} object. + * + * @version 0.6.0 + * @param in input stream + * @return deserialized {@link org.msgpack.type.Value} object + * @throws IOException + */ public Value read(InputStream in) throws IOException { return createUnpacker(in).readValue(); } - public T read(byte[] b, T v) throws IOException { - // TODO + /** + * Deserializes byte array to object. + * + * @version 0.6.0 + * @param bytes input byte array + * @param v deserialized object + * @return + * @throws IOException + */ + public T read(byte[] bytes, T v) throws IOException { + // TODO #MN if T is null? Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = createBufferUnpacker(b); + BufferUnpacker u = createBufferUnpacker(bytes); return (T) tmpl.read(u, v); } + /** + * Deserializes byte array to object of specified class. + * + * @version 0.6.0 + * @param b input {@link java.nio.ByteBuffer} object + * @param c + * @return + * @throws IOException + */ public T read(byte[] b, Class c) throws IOException { Template tmpl = registry.lookup(c); BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, null); } + /** + * Deserializes buffer to object. + * + * @version 0.6.0 + * @param b input {@link java.nio.ByteBuffer} object + * @param v + * @return + * @throws IOException + */ public T read(ByteBuffer b, T v) throws IOException { + // TODO #MN if T is null? Template tmpl = registry.lookup(v.getClass()); BufferUnpacker u = createBufferUnpacker(b); return tmpl.read(u, v); } + /** + * Deserializes buffer to object of specified class. + * + * @version 0.6.0 + * @param b + * @param c + * @return + */ public T read(ByteBuffer b, Class c) { Template tmpl = registry.lookup(c); BufferUnpacker u = createBufferUnpacker(b); return null; } + /** + * Deserializes input stream to object. + * + * @version 0.6.0 + * @param in input stream + * @param v + * @return + * @throws IOException + */ public T read(InputStream in, T v) throws IOException { Template tmpl = registry.lookup(v.getClass()); return tmpl.read(createUnpacker(in), v); } + /** + * Deserializes input stream to object of specified class. + * + * @version 0.6.0 + * @param in + * @param c + * @return + * @throws IOException + */ public T read(InputStream in, Class c) throws IOException { Template tmpl = registry.lookup(c); return tmpl.read(createUnpacker(in), null); } + /** + * Converts specified {@link org.msgpack.type.Value} object to object. + * + * @version 0.6.0 + * @param v + * @param to + * @return + * @throws IOException + */ public T convert(Value v, T to) throws IOException { + // TODO #MN if T is null? Template tmpl = registry.lookup(to.getClass()); return tmpl.read(new Converter(this, v), to); } + /** + * Converts {@link org.msgpack.type.Value} object to object specified class. + * + * @version 0.6.0 + * @param v + * @param c + * @return + * @throws IOException + */ public T convert(Value v, Class c) throws IOException { Template tmpl = registry.lookup(c); return tmpl.read(new Converter(this, v), null); } + /** + * Unconverts specified object to {@link org.msgpack.type.Value} object. + * + * @version 0.6.0 + * @param v + * @return + * @throws IOException + */ public Value unconvert(T v) throws IOException { Unconverter pk = new Unconverter(this); if(v == null) { @@ -194,23 +436,61 @@ public Value unconvert(T v) throws IOException { return pk.getResult(); } - + /** + * Registers {@link org.msgpack.template.Template} object for objects of + * specified class. Template object is a pair of serializer and + * deserializer for object serialization. It is generated automatically. + * + * @version 0.6.0 + * @param type + */ public void register(Class type) { registry.register(type); } - public void register(Class type, Template tmpl) { - registry.register(type, tmpl); - } - + /** + * Registers specified {@link org.msgpack.template.Template} object + * associated by class. + * + * @see #register(Class) + * @version 0.6.0 + * @param type + * @param template + */ + public void register(Class type, Template template) { + registry.register(type, template); + } + + /** + * Unregisters {@link org.msgpack.template.Template} object for objects of + * specified class. + * + * @version 0.6.0 + * @param type + * @return + */ public boolean unregister(Class type) { return registry.unregister(type); } + /** + * Unregisters all {@link org.msgpack.template.Template} objects that have + * been registered in advance. + * + * @version 0.6.0 + */ public void unregister() { registry.unregister(); } + /** + * Looks up a {@link org.msgpack.template.Template} object, which is + * serializer/deserializer associated by specified class. + * + * @version 0.6.0 + * @param type + * @return + */ public Template lookup(Class type) { return registry.lookup(type); } diff --git a/src/main/java/org/msgpack/MessagePackable.java b/src/main/java/org/msgpack/MessagePackable.java index 29b159b9c..f6ccd9124 100644 --- a/src/main/java/org/msgpack/MessagePackable.java +++ b/src/main/java/org/msgpack/MessagePackable.java @@ -21,6 +21,7 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; + public interface MessagePackable { public void writeTo(Packer pk) throws IOException; public void readFrom(Unpacker u) throws IOException; From 6c042ecc3d957dfa72d458d68bb001073354ff12 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 8 Sep 2011 16:54:46 +0900 Subject: [PATCH 163/409] added document in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 292 ++++++++++++++---- .../java/org/msgpack/packer/BufferPacker.java | 7 +- src/main/java/org/msgpack/packer/Packer.java | 8 +- .../org/msgpack/unpacker/BufferUnpacker.java | 10 +- .../java/org/msgpack/unpacker/Unpacker.java | 9 +- 5 files changed, 260 insertions(+), 66 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 6864a1b13..0efc32e4e 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -36,16 +36,93 @@ import org.msgpack.type.Value; /** - * Basic class to use MessagePack for Java. It creates serializers and + *

+ * This is basic class to use MessagePack for Java. It creates serializers and * deserializers for objects of classes. - * + *

+ * + *

Overview

+ * + *

+ * MessagePack is a binary-based efficient object serialization library. It + * enables to exchange structured objects between many languages like JSON. But + * unlike JSON, it is very fast and small. + *

+ * + *

+ * MessagePack for Java is one of MessagePack libraries in pure Java. See jvm-serializers, + * which is one of well-known benchmarks for comparing Java libraries of data + * serialization. + *

+ * + *

Quick Start MessagePack for Java

+ * + *

+ * @Message enables you to serialize objects of your own classes + * like this. + *

+ * + *
+ * @Message
+ * public class MyMessage {
+ *     public String name;
+ *     public double version;
+ * }
+ * 
+ * + *

+ * MessagePack recommends that serialized class and field declarations include + * public modifier. The following is code to serialize objects of + * class annotated by @Message. + *

+ * + *
+ * public class Main {
+ *     public static void main(String[] args) {
+ * 	MyMessage src = new MyMessage();
+ * 	src.name = "msgpack";
+ * 	src.version = 0.6;
+ * 
+ * 	MessagePack msgpack = new MessagePack();
+ * 	// serialize src data to byte array
+ * 	byte[] bytes = msgpack.write(src);
+ * 	// deserialize byte array to MyMessage object
+ * 	MyMessage dst = msgpack.read(bytes, MyMessage.class);
+ *     }
+ * }
+ * 
+ * + *

Without Annotations

+ * + *

+ * If you cannot append @Message to classes representing objects + * that you want to serialize, {@link #register} method enables you to serialize + * the objects. + *

+ *

+ * + *
+ * MessagePack msgpack = new MessagePack();
+ * msgpack.register(MyMessage.class);
+ * 
+ * + *

+ * For example, if MyMessage class is included in external library, + * you cannot easily modify the class declaration and append + * @Message to it. {@link #register} method allows to generate + * serializer/deserializer of MyMessage class automatically. You + * can serialize objects of MyMessage class after executing the + * method. + *

+ * */ public class MessagePack { private TemplateRegistry registry; /** * - * @version 0.6.0 + * @since 0.6.0 */ public MessagePack() { registry = new TemplateRegistry(null); @@ -53,7 +130,7 @@ public MessagePack() { /** * - * @version 0.6.0 + * @since 0.6.0 * @param msgpack nested {@link org.msgpack.MessagePack} object */ public MessagePack(MessagePack msgpack) { @@ -62,7 +139,7 @@ public MessagePack(MessagePack msgpack) { /** * - * @version 0.6.0 + * @since 0.6.0 * @param cl */ public void setClassLoader(final ClassLoader cl) { @@ -73,7 +150,7 @@ public void setClassLoader(final ClassLoader cl) { * Returns serializer that enables serializing objects into * {@link java.io.OutputStream} object. * - * @version 0.6.0 + * @since 0.6.0 * @param out output stream * @return stream-based serializer */ @@ -85,7 +162,7 @@ public Packer createPacker(OutputStream out) { * Returns serializer that enables serializing objects into * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @return buffer-based serializer */ public BufferPacker createBufferPacker() { @@ -96,7 +173,7 @@ public BufferPacker createBufferPacker() { * Returns serializer that enables serializing objects into * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @param bufferSize initial size of buffer * @return buffer-based serializer */ @@ -108,7 +185,7 @@ public BufferPacker createBufferPacker(int bufferSize) { * Returns deserializer that enables deserializing * {@link java.io.InputStream} object. * - * @version 0.6.0 + * @since 0.6.0 * @param in input stream * @return stream-based deserializer */ @@ -120,7 +197,7 @@ public Unpacker createUnpacker(InputStream in) { * Returns empty deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker() { @@ -131,7 +208,7 @@ public BufferUnpacker createBufferUnpacker() { * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @param bytes input byte array * @return buffer-based deserializer */ @@ -143,7 +220,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes) { * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @param bytes * @param off * @param len @@ -157,7 +234,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. * - * @version 0.6.0 + * @since 0.6.0 * @param buffer input {@link java.nio.ByteBuffer} object * @return buffer-based deserializer */ @@ -168,7 +245,7 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { /** * Serializes specified object. * - * @version 0.6.0 + * @since 0.6.0 * @param v serialized object * @return output byte array * @throws IOException @@ -188,7 +265,7 @@ public byte[] write(Object v) throws IOException { * Serializes specified object. It allows serializing object by specified * template. * - * @version 0.6.0 + * @since 0.6.0 * @param v * @param template * @return @@ -203,7 +280,7 @@ public byte[] write(T v, Template template) throws IOException { /** * Serializes specified object to output stream. * - * @version 0.6.0 + * @since 0.6.0 * @param out output stream * @param v serialized object * @throws IOException @@ -221,7 +298,7 @@ public void write(OutputStream out, Object v) throws IOException { /** * Serializes object to output stream by specified template. * - * @version 0.6.0 + * @since 0.6.0 * @param out output stream * @param v serialized object * @param template serializer/deserializer for the object @@ -235,7 +312,7 @@ public void write(OutputStream out, T v, Template template) throws IOExce /** * Serializes {@link org.msgpack.type.Value} object to byte array. * - * @version 0.6.0 + * @since 0.6.0 * @param v serialized {@link org.msgpack.type.Value} object * @return output byte array * @throws IOException @@ -251,7 +328,7 @@ public byte[] write(Value v) throws IOException { * Deserializes specified byte array to {@link org.msgpack.type.Value} * object. * - * @version 0.6.0 + * @since 0.6.0 * @param bytes input byte array * @return * @throws IOException @@ -263,7 +340,7 @@ public Value read(byte[] bytes) throws IOException { /** * Deserializes byte array to {@link org.msgpack.type.Value} object. * - * @version 0.6.0 + * @since 0.6.0 * @param bytes * @param off * @param len @@ -278,7 +355,7 @@ public Value read(byte[] bytes, int off, int len) throws IOException { * Deserializes {@link java.nio.ByteBuffer} object to * {@link org.msgpack.type.Value} object. * - * @version 0.6.0 + * @since 0.6.0 * @param buffer input buffer * @return * @throws IOException @@ -290,7 +367,7 @@ public Value read(ByteBuffer buffer) throws IOException { /** * Deserializes input stream to {@link org.msgpack.type.Value} object. * - * @version 0.6.0 + * @since 0.6.0 * @param in input stream * @return deserialized {@link org.msgpack.type.Value} object * @throws IOException @@ -302,7 +379,7 @@ public Value read(InputStream in) throws IOException { /** * Deserializes byte array to object. * - * @version 0.6.0 + * @since 0.6.0 * @param bytes input byte array * @param v deserialized object * @return @@ -318,7 +395,7 @@ public T read(byte[] bytes, T v) throws IOException { /** * Deserializes byte array to object of specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param b input {@link java.nio.ByteBuffer} object * @param c * @return @@ -333,7 +410,7 @@ public T read(byte[] b, Class c) throws IOException { /** * Deserializes buffer to object. * - * @version 0.6.0 + * @since 0.6.0 * @param b input {@link java.nio.ByteBuffer} object * @param v * @return @@ -349,7 +426,7 @@ public T read(ByteBuffer b, T v) throws IOException { /** * Deserializes buffer to object of specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param b * @param c * @return @@ -363,7 +440,7 @@ public T read(ByteBuffer b, Class c) { /** * Deserializes input stream to object. * - * @version 0.6.0 + * @since 0.6.0 * @param in input stream * @param v * @return @@ -377,7 +454,7 @@ public T read(InputStream in, T v) throws IOException { /** * Deserializes input stream to object of specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param in * @param c * @return @@ -391,7 +468,7 @@ public T read(InputStream in, Class c) throws IOException { /** * Converts specified {@link org.msgpack.type.Value} object to object. * - * @version 0.6.0 + * @since 0.6.0 * @param v * @param to * @return @@ -406,7 +483,7 @@ public T convert(Value v, T to) throws IOException { /** * Converts {@link org.msgpack.type.Value} object to object specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param v * @param c * @return @@ -420,7 +497,7 @@ public T convert(Value v, Class c) throws IOException { /** * Unconverts specified object to {@link org.msgpack.type.Value} object. * - * @version 0.6.0 + * @since 0.6.0 * @param v * @return * @throws IOException @@ -441,7 +518,7 @@ public Value unconvert(T v) throws IOException { * specified class. Template object is a pair of serializer and * deserializer for object serialization. It is generated automatically. * - * @version 0.6.0 + * @since 0.6.0 * @param type */ public void register(Class type) { @@ -453,7 +530,7 @@ public void register(Class type) { * associated by class. * * @see #register(Class) - * @version 0.6.0 + * @since 0.6.0 * @param type * @param template */ @@ -465,7 +542,7 @@ public void register(Class type, Template template) { * Unregisters {@link org.msgpack.template.Template} object for objects of * specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param type * @return */ @@ -477,7 +554,7 @@ public boolean unregister(Class type) { * Unregisters all {@link org.msgpack.template.Template} objects that have * been registered in advance. * - * @version 0.6.0 + * @since 0.6.0 */ public void unregister() { registry.unregister(); @@ -487,7 +564,7 @@ public void unregister() { * Looks up a {@link org.msgpack.template.Template} object, which is * serializer/deserializer associated by specified class. * - * @version 0.6.0 + * @since 0.6.0 * @param type * @return */ @@ -497,73 +574,176 @@ public Template lookup(Class type) { private static final MessagePack globalMessagePack = new MessagePack(); + /** + * Serializes specified object and returns the byte array. + * + * @deprecated {@link MessagePack#write(Object)} + * @param v + * @return + * @throws IOException + */ @Deprecated - public static byte[] pack(Object obj) throws IOException { // TODO IOException - return globalMessagePack.write(obj); + public static byte[] pack(Object v) throws IOException { // TODO IOException + return globalMessagePack.write(v); } + /** + * Serializes specified object to output stream. + * + * @deprecated {@link MessagePack#write(OutputStream, Object)} + * @param out + * @param v + * @throws IOException + */ @Deprecated - public static void pack(OutputStream out, Object obj) throws IOException { - globalMessagePack.write(out, obj); + public static void pack(OutputStream out, Object v) throws IOException { + globalMessagePack.write(out, v); } + /** + * Serializes object by specified template and return the byte array. + * + * @deprecated {@link MessagePack#write(Object, Template)} + * @param v + * @param template + * @return + * @throws IOException + */ @Deprecated - public static byte[] pack(T obj, Template tmpl) throws IOException { // TODO IOException - return globalMessagePack.write(obj, tmpl); + public static byte[] pack(T v, Template template) throws IOException { // TODO IOException + return globalMessagePack.write(v, template); } + /** + * Serializes object to output stream. The object is serialized by specified + * template. + * + * @deprecated {@link MessagePack#write(OutputStream, Object, Template)} + * @param out + * @param v + * @param template + * @throws IOException + */ @Deprecated - public static void pack(OutputStream out, T obj, Template tmpl) throws IOException { - globalMessagePack.write(out, obj, tmpl); + public static void pack(OutputStream out, T v, Template template) throws IOException { + globalMessagePack.write(out, v, template); } + /** + * Converts byte array to {@linke org.msgpack.type.Value} object. + * + * @deprecated {@linke MessagePack#read(byte[])} + * @param bytes + * @return + * @throws IOException + */ @Deprecated - public static Value unpack(byte[] buffer) throws IOException { - return globalMessagePack.read(buffer); + public static Value unpack(byte[] bytes) throws IOException { + return globalMessagePack.read(bytes); } @Deprecated - public static T unpack(byte[] buffer, Template tmpl) throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(buffer); - return tmpl.read(u, null); + public static T unpack(byte[] bytes, Template template) throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); + return template.read(u, null); } @Deprecated - public static T unpack(byte[] buffer, Template tmpl, T to) throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(buffer); - return tmpl.read(u, to); + public static T unpack(byte[] bytes, Template template, T to) throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); + return template.read(u, to); } + /** + * Deserializes byte array to object of specified class. + * + * @deprecated {@link MessagePack#read(byte[], Class)} + * @param bytes + * @param klass + * @return + * @throws IOException + */ @Deprecated - public static T unpack(byte[] buffer, Class klass) throws IOException { - return globalMessagePack.read(buffer, klass); + public static T unpack(byte[] bytes, Class klass) throws IOException { + return globalMessagePack.read(bytes, klass); } + /** + * Deserializes byte array to object. + * + * @param bytes + * @param to + * @return + * @throws IOException + */ @Deprecated - public static T unpack(byte[] buffer, T to) throws IOException { - return globalMessagePack.read(buffer, to); + public static T unpack(byte[] bytes, T to) throws IOException { + return globalMessagePack.read(bytes, to); } + /** + * Converts input stream to {@link org.msgpack.type.Value} object. + * + * @deprecated {@link MessagePack#read(InputStream)} + * @param in + * @return + * @throws IOException + */ @Deprecated public static Value unpack(InputStream in) throws IOException { return globalMessagePack.read(in); } + /** + * @deprecated + * @param in + * @param tmpl + * @return + * @throws IOException + * @throws MessageTypeException + */ @Deprecated public static T unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); } + /** + * @deprecated + * @param in + * @param tmpl + * @param to + * @return + * @throws IOException + * @throws MessageTypeException + */ @Deprecated public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { return (T) tmpl.read(new MessagePackUnpacker(globalMessagePack, in), to); } + /** + * Deserializes input stream to object of specified class. + * + * @deprecated {@link MessagePack#read(InputStream, Class)} + * @param in + * @param klass + * @return + * @throws IOException + */ @Deprecated public static T unpack(InputStream in, Class klass) throws IOException { return globalMessagePack.read(in, klass); } + /** + * Deserializes input stream to object. + * + * @deprecated {@link MessagePack#read(InputStream, Object)} + * @param in + * @param to + * @return + * @throws IOException + */ @Deprecated public static T unpack(InputStream in, T to) throws IOException { return globalMessagePack.read(in, to); diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index d3f7eb096..32b02be57 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -17,7 +17,12 @@ // package org.msgpack.packer; - +/** + * This class is buffer-specific serializer. + * + * @version 0.6.0 + * @see {@link org.msgpack.packer.Packer} + */ public interface BufferPacker extends Packer { public byte[] toByteArray(); diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index ca85e6182..d809c82f4 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -23,7 +23,13 @@ import java.nio.ByteBuffer; import org.msgpack.type.Value; - +/** + * Standard serializer in MessagePack for Java. It allows users to serialize + * objects like String, List, Map, byte[], + * primitive types and so on. + * + * @version 0.6.0 + */ public interface Packer extends Closeable { public void writeNil() throws IOException; diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index a15572bd8..1ef8b2ce2 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -19,10 +19,12 @@ import java.nio.ByteBuffer; -import org.msgpack.MessagePack; -import org.msgpack.io.LinkedBufferInput; - - +/** + * This class is buffer-specific deserializer. + * + * @version 0.6.0 + * @see {@link org.msgpack.packer.Unpacker} + */ public interface BufferUnpacker extends Unpacker { public BufferUnpacker wrap(byte[] b); diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 99981737b..b1e17709a 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -23,11 +23,12 @@ import java.math.BigInteger; import java.lang.Iterable; import org.msgpack.type.Value; -import org.msgpack.MessagePack; -import org.msgpack.template.Template; -import org.msgpack.packer.Unconverter; - +/** + * Standard deserializer. + * + * @version 0.6.0 + */ public interface Unpacker extends Iterable, Closeable { public boolean tryReadNil() throws IOException; From 15b2d01613d542fc9fb173b26068555ccbad96f8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 8 Sep 2011 19:07:48 +0900 Subject: [PATCH 164/409] appended document in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 0efc32e4e..8a923a063 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -93,6 +93,48 @@ * } * * + *

+ * If you want to serialize multiple objects sequentially, MessagePack + * recommends use of {@link org.msgpack.packer.Packer} and + * {@link org.msgpack.unpacker.Unpacker} objects. Because {@link #write(Object)} + * and {@link #read(byte[])} method invocations create + * {@link org.msgpack.packer.Packer} and {@link org.msgpack.unpacker.Unpacker} + * objects every times. To use Packer and Unpacker + * objects, you call {@link #createPacker(OutputStream)} and + * {@link #createUnpacker(byte[])}. + *

+ * + *
+ * public class Main2 {
+ *     public static void main(String[] args) {
+ * 	MyMessage src1 = new MyMessage();
+ * 	src1.name = "msgpack";
+ * 	src1.version = 0.6;
+ * 	MyMessage src2 = new MyMessage();
+ * 	src2.name = "muga";
+ * 	src2.version = 10.0;
+ * 	MyMessage src3 = new MyMessage();
+ * 	src3.name = "frsyukik";
+ * 	src3.version = 1.0;
+ * 
+ * 	MessagePack msgpack = new MessagePack();
+ * 	// serialize src data to byte array
+ * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
+ * 	Packer packer = msgpack.createPacker(out);
+ * 	packer.write(src1);
+ * 	packer.write(src2);
+ * 	packer.write(src3);
+ * 	byte[] bytes = out.toByteArray();
+ * 	// deserialize byte array to MyMessage object
+ * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
+ * 	Unpacker unpacker = msgpack.createUnpacker(in);
+ * 	MyMessage dst1 = unpacker.read(bytes, MyMessage.class);
+ * 	MyMessage dst2 = unpacker.read(bytes, MyMessage.class);
+ * 	MyMessage dst3 = unpacker.read(bytes, MyMessage.class);
+ *     }
+ * }
+ * 
+ * *

Without Annotations

* *

From 679d4ddf2910813e66ecca640c01600e790dde6d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 10 Sep 2011 17:51:30 +0900 Subject: [PATCH 165/409] modified javadoc comments in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 395 +++++++++++---------- 1 file changed, 213 insertions(+), 182 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 8a923a063..9e12841af 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -44,13 +44,14 @@ *

Overview

* *

- * MessagePack is a binary-based efficient object serialization library. It - * enables to exchange structured objects between many languages like JSON. But - * unlike JSON, it is very fast and small. + * MessagePack is a binary-based efficient object serialization library for + * cross languages. It enables to exchange structured objects between many + * languages like JSON. But unlike JSON, it is very fast and small. *

* *

- * MessagePack for Java is one of MessagePack libraries in pure Java. See jvm-serializers, * which is one of well-known benchmarks for comparing Java libraries of data * serialization. @@ -140,21 +141,21 @@ *

* If you cannot append @Message to classes representing objects * that you want to serialize, {@link #register} method enables you to serialize - * the objects. + * the objects of the classes. *

*

* *
  * MessagePack msgpack = new MessagePack();
- * msgpack.register(MyMessage.class);
+ * msgpack.register(MyMessage2.class);
  * 
* *

- * For example, if MyMessage class is included in external library, - * you cannot easily modify the class declaration and append + * For example, if MyMessage2 class is included in external + * library, you cannot easily modify the class declaration and append * @Message to it. {@link #register} method allows to generate - * serializer/deserializer of MyMessage class automatically. You - * can serialize objects of MyMessage class after executing the + * serializer/deserializer of MyMessage2 class automatically. You + * can serialize objects of MyMessage2 class after executing the * method. *

* @@ -163,24 +164,24 @@ public class MessagePack { private TemplateRegistry registry; /** - * + * * @since 0.6.0 */ public MessagePack() { - registry = new TemplateRegistry(null); + registry = new TemplateRegistry(null); } /** - * + * * @since 0.6.0 - * @param msgpack nested {@link org.msgpack.MessagePack} object + * @param msgpack */ public MessagePack(MessagePack msgpack) { - registry = new TemplateRegistry(msgpack.registry); + registry = new TemplateRegistry(msgpack.registry); } /** - * + * * @since 0.6.0 * @param cl */ @@ -191,122 +192,128 @@ public void setClassLoader(final ClassLoader cl) { /** * Returns serializer that enables serializing objects into * {@link java.io.OutputStream} object. - * + * * @since 0.6.0 - * @param out output stream - * @return stream-based serializer + * @param out + * output stream + * @return stream-based serializer */ public Packer createPacker(OutputStream out) { - return new MessagePackPacker(this, out); + return new MessagePackPacker(this, out); } /** - * Returns serializer that enables serializing objects into + * Returns serializer that enables serializing objects into * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 - * @return buffer-based serializer + * @return buffer-based serializer */ public BufferPacker createBufferPacker() { - return new MessagePackBufferPacker(this); + return new MessagePackBufferPacker(this); } /** * Returns serializer that enables serializing objects into * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 - * @param bufferSize initial size of buffer - * @return buffer-based serializer + * @param bufferSize + * initial size of buffer + * @return buffer-based serializer */ public BufferPacker createBufferPacker(int bufferSize) { - return new MessagePackBufferPacker(this, bufferSize); + return new MessagePackBufferPacker(this, bufferSize); } /** * Returns deserializer that enables deserializing * {@link java.io.InputStream} object. - * + * * @since 0.6.0 - * @param in input stream - * @return stream-based deserializer + * @param in + * input stream + * @return stream-based deserializer */ public Unpacker createUnpacker(InputStream in) { - return new MessagePackUnpacker(this, in); + return new MessagePackUnpacker(this, in); } /** * Returns empty deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 - * @return buffer-based deserializer + * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker() { - return new MessagePackBufferUnpacker(); + return new MessagePackBufferUnpacker(); } /** * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 - * @param bytes input byte array - * @return buffer-based deserializer + * @param bytes + * input byte array + * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(byte[] bytes) { - return createBufferUnpacker().wrap(bytes); + return createBufferUnpacker().wrap(bytes); } /** * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 * @param bytes * @param off * @param len - * @return buffer-based deserializer + * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { - return createBufferUnpacker().wrap(bytes, off, len); + return createBufferUnpacker().wrap(bytes, off, len); } /** * Returns deserializer that enables deserializing * {@link java.nio.ByteBuffer} object. - * + * * @since 0.6.0 - * @param buffer input {@link java.nio.ByteBuffer} object - * @return buffer-based deserializer + * @param buffer + * input {@link java.nio.ByteBuffer} object + * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { - return createBufferUnpacker().wrap(buffer); + return createBufferUnpacker().wrap(buffer); } /** * Serializes specified object. - * + * * @since 0.6.0 - * @param v serialized object - * @return output byte array + * @param v + * serialized object + * @return output byte array * @throws IOException */ public byte[] write(Object v) throws IOException { - BufferPacker pk = createBufferPacker(); - if(v == null) { - pk.writeNil(); - } else { - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } - return pk.toByteArray(); + BufferPacker pk = createBufferPacker(); + if (v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } + return pk.toByteArray(); } /** * Serializes specified object. It allows serializing object by specified * template. - * + * * @since 0.6.0 * @param v * @param template @@ -314,74 +321,82 @@ public byte[] write(Object v) throws IOException { * @throws IOException */ public byte[] write(T v, Template template) throws IOException { - BufferPacker pk = createBufferPacker(); - template.write(pk, v); - return pk.toByteArray(); + BufferPacker pk = createBufferPacker(); + template.write(pk, v); + return pk.toByteArray(); } /** * Serializes specified object to output stream. - * + * * @since 0.6.0 - * @param out output stream - * @param v serialized object + * @param out + * output stream + * @param v + * serialized object * @throws IOException */ public void write(OutputStream out, Object v) throws IOException { - Packer pk = createPacker(out); - if(v == null) { - pk.writeNil(); - } else { - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } + Packer pk = createPacker(out); + if (v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } } /** * Serializes object to output stream by specified template. - * + * * @since 0.6.0 - * @param out output stream - * @param v serialized object - * @param template serializer/deserializer for the object + * @param out + * output stream + * @param v + * serialized object + * @param template + * serializer/deserializer for the object * @throws IOException */ - public void write(OutputStream out, T v, Template template) throws IOException { - Packer pk = createPacker(out); - template.write(pk, v); + public void write(OutputStream out, T v, Template template) + throws IOException { + Packer pk = createPacker(out); + template.write(pk, v); } /** * Serializes {@link org.msgpack.type.Value} object to byte array. - * + * * @since 0.6.0 - * @param v serialized {@link org.msgpack.type.Value} object - * @return output byte array + * @param v + * serialized {@link org.msgpack.type.Value} object + * @return output byte array * @throws IOException */ public byte[] write(Value v) throws IOException { - // FIXME ValueTemplate should do this - BufferPacker pk = createBufferPacker(); - pk.write(v); - return pk.toByteArray(); + // FIXME ValueTemplate should do this + BufferPacker pk = createBufferPacker(); + pk.write(v); + return pk.toByteArray(); } /** * Deserializes specified byte array to {@link org.msgpack.type.Value} * object. - * + * * @since 0.6.0 - * @param bytes input byte array + * @param bytes + * input byte array * @return * @throws IOException */ public Value read(byte[] bytes) throws IOException { - return read(bytes, 0, bytes.length); + return read(bytes, 0, bytes.length); } /** * Deserializes byte array to {@link org.msgpack.type.Value} object. - * + * * @since 0.6.0 * @param bytes * @param off @@ -390,112 +405,119 @@ public Value read(byte[] bytes) throws IOException { * @throws IOException */ public Value read(byte[] bytes, int off, int len) throws IOException { - return createBufferUnpacker(bytes, off, len).readValue(); + return createBufferUnpacker(bytes, off, len).readValue(); } /** * Deserializes {@link java.nio.ByteBuffer} object to * {@link org.msgpack.type.Value} object. - * + * * @since 0.6.0 - * @param buffer input buffer + * @param buffer + * input buffer * @return * @throws IOException */ public Value read(ByteBuffer buffer) throws IOException { - return createBufferUnpacker(buffer).readValue(); + return createBufferUnpacker(buffer).readValue(); } /** * Deserializes input stream to {@link org.msgpack.type.Value} object. - * + * * @since 0.6.0 - * @param in input stream - * @return deserialized {@link org.msgpack.type.Value} object + * @param in + * input stream + * @return deserialized {@link org.msgpack.type.Value} object * @throws IOException */ public Value read(InputStream in) throws IOException { - return createUnpacker(in).readValue(); + return createUnpacker(in).readValue(); } /** * Deserializes byte array to object. - * + * * @since 0.6.0 - * @param bytes input byte array - * @param v deserialized object + * @param bytes + * input byte array + * @param v + * deserialized object * @return * @throws IOException */ public T read(byte[] bytes, T v) throws IOException { - // TODO #MN if T is null? - Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = createBufferUnpacker(bytes); - return (T) tmpl.read(u, v); + // TODO #MN if T is null? + Template tmpl = registry.lookup(v.getClass()); + BufferUnpacker u = createBufferUnpacker(bytes); + return (T) tmpl.read(u, v); } /** * Deserializes byte array to object of specified class. - * + * * @since 0.6.0 - * @param b input {@link java.nio.ByteBuffer} object + * @param b + * input {@link java.nio.ByteBuffer} object * @param c * @return * @throws IOException */ public T read(byte[] b, Class c) throws IOException { - Template tmpl = registry.lookup(c); - BufferUnpacker u = createBufferUnpacker(b); - return tmpl.read(u, null); + Template tmpl = registry.lookup(c); + BufferUnpacker u = createBufferUnpacker(b); + return tmpl.read(u, null); } /** * Deserializes buffer to object. - * + * * @since 0.6.0 - * @param b input {@link java.nio.ByteBuffer} object + * @param b + * input {@link java.nio.ByteBuffer} object * @param v * @return * @throws IOException */ public T read(ByteBuffer b, T v) throws IOException { // TODO #MN if T is null? - Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = createBufferUnpacker(b); - return tmpl.read(u, v); + Template tmpl = registry.lookup(v.getClass()); + BufferUnpacker u = createBufferUnpacker(b); + return tmpl.read(u, v); } /** * Deserializes buffer to object of specified class. - * + * * @since 0.6.0 * @param b * @param c * @return */ public T read(ByteBuffer b, Class c) { - Template tmpl = registry.lookup(c); - BufferUnpacker u = createBufferUnpacker(b); - return null; + Template tmpl = registry.lookup(c); + BufferUnpacker u = createBufferUnpacker(b); + return null; } /** * Deserializes input stream to object. - * + * * @since 0.6.0 - * @param in input stream + * @param in + * input stream * @param v * @return * @throws IOException */ public T read(InputStream in, T v) throws IOException { - Template tmpl = registry.lookup(v.getClass()); - return tmpl.read(createUnpacker(in), v); + Template tmpl = registry.lookup(v.getClass()); + return tmpl.read(createUnpacker(in), v); } /** * Deserializes input stream to object of specified class. - * + * * @since 0.6.0 * @param in * @param c @@ -503,13 +525,13 @@ public T read(InputStream in, T v) throws IOException { * @throws IOException */ public T read(InputStream in, Class c) throws IOException { - Template tmpl = registry.lookup(c); - return tmpl.read(createUnpacker(in), null); + Template tmpl = registry.lookup(c); + return tmpl.read(createUnpacker(in), null); } /** * Converts specified {@link org.msgpack.type.Value} object to object. - * + * * @since 0.6.0 * @param v * @param to @@ -518,13 +540,13 @@ public T read(InputStream in, Class c) throws IOException { */ public T convert(Value v, T to) throws IOException { // TODO #MN if T is null? - Template tmpl = registry.lookup(to.getClass()); - return tmpl.read(new Converter(this, v), to); + Template tmpl = registry.lookup(to.getClass()); + return tmpl.read(new Converter(this, v), to); } /** * Converts {@link org.msgpack.type.Value} object to object specified class. - * + * * @since 0.6.0 * @param v * @param c @@ -532,58 +554,58 @@ public T convert(Value v, T to) throws IOException { * @throws IOException */ public T convert(Value v, Class c) throws IOException { - Template tmpl = registry.lookup(c); - return tmpl.read(new Converter(this, v), null); + Template tmpl = registry.lookup(c); + return tmpl.read(new Converter(this, v), null); } /** * Unconverts specified object to {@link org.msgpack.type.Value} object. - * + * * @since 0.6.0 * @param v * @return * @throws IOException */ public Value unconvert(T v) throws IOException { - Unconverter pk = new Unconverter(this); - if(v == null) { - pk.writeNil(); - } else { - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } - return pk.getResult(); + Unconverter pk = new Unconverter(this); + if (v == null) { + pk.writeNil(); + } else { + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } + return pk.getResult(); } /** * Registers {@link org.msgpack.template.Template} object for objects of * specified class. Template object is a pair of serializer and * deserializer for object serialization. It is generated automatically. - * + * * @since 0.6.0 * @param type */ public void register(Class type) { - registry.register(type); + registry.register(type); } /** * Registers specified {@link org.msgpack.template.Template} object * associated by class. - * + * * @see #register(Class) * @since 0.6.0 * @param type * @param template */ public void register(Class type, Template template) { - registry.register(type, template); + registry.register(type, template); } /** * Unregisters {@link org.msgpack.template.Template} object for objects of * specified class. - * + * * @since 0.6.0 * @param type * @return @@ -595,7 +617,7 @@ public boolean unregister(Class type) { /** * Unregisters all {@link org.msgpack.template.Template} objects that have * been registered in advance. - * + * * @since 0.6.0 */ public void unregister() { @@ -605,33 +627,33 @@ public void unregister() { /** * Looks up a {@link org.msgpack.template.Template} object, which is * serializer/deserializer associated by specified class. - * + * * @since 0.6.0 * @param type * @return */ public Template lookup(Class type) { - return registry.lookup(type); + return registry.lookup(type); } private static final MessagePack globalMessagePack = new MessagePack(); /** * Serializes specified object and returns the byte array. - * + * * @deprecated {@link MessagePack#write(Object)} * @param v * @return * @throws IOException */ @Deprecated - public static byte[] pack(Object v) throws IOException { // TODO IOException - return globalMessagePack.write(v); + public static byte[] pack(Object v) throws IOException { // TODO IOException + return globalMessagePack.write(v); } /** * Serializes specified object to output stream. - * + * * @deprecated {@link MessagePack#write(OutputStream, Object)} * @param out * @param v @@ -639,12 +661,12 @@ public static byte[] pack(Object v) throws IOException { // TODO IOException */ @Deprecated public static void pack(OutputStream out, Object v) throws IOException { - globalMessagePack.write(out, v); + globalMessagePack.write(out, v); } /** * Serializes object by specified template and return the byte array. - * + * * @deprecated {@link MessagePack#write(Object, Template)} * @param v * @param template @@ -652,8 +674,9 @@ public static void pack(OutputStream out, Object v) throws IOException { * @throws IOException */ @Deprecated - public static byte[] pack(T v, Template template) throws IOException { // TODO IOException - return globalMessagePack.write(v, template); + public static byte[] pack(T v, Template template) throws IOException { // TODO + // IOException + return globalMessagePack.write(v, template); } /** @@ -667,13 +690,14 @@ public static byte[] pack(T v, Template template) throws IOException { / * @throws IOException */ @Deprecated - public static void pack(OutputStream out, T v, Template template) throws IOException { - globalMessagePack.write(out, v, template); + public static void pack(OutputStream out, T v, Template template) + throws IOException { + globalMessagePack.write(out, v, template); } /** * Converts byte array to {@linke org.msgpack.type.Value} object. - * + * * @deprecated {@linke MessagePack#read(byte[])} * @param bytes * @return @@ -681,24 +705,28 @@ public static void pack(OutputStream out, T v, Template template) throws */ @Deprecated public static Value unpack(byte[] bytes) throws IOException { - return globalMessagePack.read(bytes); + return globalMessagePack.read(bytes); } @Deprecated - public static T unpack(byte[] bytes, Template template) throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); - return template.read(u, null); + public static T unpack(byte[] bytes, Template template) + throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack) + .wrap(bytes); + return template.read(u, null); } @Deprecated - public static T unpack(byte[] bytes, Template template, T to) throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); - return template.read(u, to); + public static T unpack(byte[] bytes, Template template, T to) + throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack) + .wrap(bytes); + return template.read(u, to); } /** * Deserializes byte array to object of specified class. - * + * * @deprecated {@link MessagePack#read(byte[], Class)} * @param bytes * @param klass @@ -707,7 +735,7 @@ public static T unpack(byte[] bytes, Template template, T to) throws IOEx */ @Deprecated public static T unpack(byte[] bytes, Class klass) throws IOException { - return globalMessagePack.read(bytes, klass); + return globalMessagePack.read(bytes, klass); } /** @@ -720,12 +748,12 @@ public static T unpack(byte[] bytes, Class klass) throws IOException { */ @Deprecated public static T unpack(byte[] bytes, T to) throws IOException { - return globalMessagePack.read(bytes, to); + return globalMessagePack.read(bytes, to); } /** * Converts input stream to {@link org.msgpack.type.Value} object. - * + * * @deprecated {@link MessagePack#read(InputStream)} * @param in * @return @@ -733,7 +761,7 @@ public static T unpack(byte[] bytes, T to) throws IOException { */ @Deprecated public static Value unpack(InputStream in) throws IOException { - return globalMessagePack.read(in); + return globalMessagePack.read(in); } /** @@ -745,12 +773,13 @@ public static Value unpack(InputStream in) throws IOException { * @throws MessageTypeException */ @Deprecated - public static T unpack(InputStream in, Template tmpl) throws IOException, MessageTypeException { - return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); + public static T unpack(InputStream in, Template tmpl) + throws IOException, MessageTypeException { + return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); } /** - * @deprecated + * @deprecated * @param in * @param tmpl * @param to @@ -759,13 +788,15 @@ public static T unpack(InputStream in, Template tmpl) throws IOException, * @throws MessageTypeException */ @Deprecated - public static T unpack(InputStream in, Template tmpl, T to) throws IOException, MessageTypeException { - return (T) tmpl.read(new MessagePackUnpacker(globalMessagePack, in), to); + public static T unpack(InputStream in, Template tmpl, T to) + throws IOException, MessageTypeException { + return (T) tmpl + .read(new MessagePackUnpacker(globalMessagePack, in), to); } /** * Deserializes input stream to object of specified class. - * + * * @deprecated {@link MessagePack#read(InputStream, Class)} * @param in * @param klass @@ -773,13 +804,14 @@ public static T unpack(InputStream in, Template tmpl, T to) throws IOExce * @throws IOException */ @Deprecated - public static T unpack(InputStream in, Class klass) throws IOException { - return globalMessagePack.read(in, klass); + public static T unpack(InputStream in, Class klass) + throws IOException { + return globalMessagePack.read(in, klass); } /** * Deserializes input stream to object. - * + * * @deprecated {@link MessagePack#read(InputStream, Object)} * @param in * @param to @@ -788,7 +820,6 @@ public static T unpack(InputStream in, Class klass) throws IOException { */ @Deprecated public static T unpack(InputStream in, T to) throws IOException { - return globalMessagePack.read(in, to); + return globalMessagePack.read(in, to); } } - From 77c6c06f5b316797c2be78f64df72fa3337c532d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 10 Sep 2011 20:51:28 +0900 Subject: [PATCH 166/409] modified javadoc comments in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 9e12841af..1b43a90fc 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -204,7 +204,7 @@ public Packer createPacker(OutputStream out) { /** * Returns serializer that enables serializing objects into - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @return buffer-based serializer @@ -215,7 +215,7 @@ public BufferPacker createBufferPacker() { /** * Returns serializer that enables serializing objects into - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @param bufferSize @@ -241,7 +241,7 @@ public Unpacker createUnpacker(InputStream in) { /** * Returns empty deserializer that enables deserializing - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @return buffer-based deserializer @@ -252,7 +252,7 @@ public BufferUnpacker createBufferUnpacker() { /** * Returns deserializer that enables deserializing - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @param bytes @@ -265,7 +265,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes) { /** * Returns deserializer that enables deserializing - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @param bytes @@ -279,7 +279,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { /** * Returns deserializer that enables deserializing - * {@link java.nio.ByteBuffer} object. + * buffer. * * @since 0.6.0 * @param buffer From e1ee245c518d8731a04c5ff9464f66454c360896 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 01:56:30 +0900 Subject: [PATCH 167/409] updated interface Packer --- .../org/msgpack/packer/AbstractPacker.java | 338 ++++++++++-------- .../org/msgpack/packer/MessagePackPacker.java | 38 +- src/main/java/org/msgpack/packer/Packer.java | 49 ++- .../msgpack/template/BigDecimalTemplate.java | 2 +- .../msgpack/template/BigIntegerTemplate.java | 2 +- .../template/BooleanArrayTemplate.java | 2 +- .../org/msgpack/template/BooleanTemplate.java | 2 +- .../msgpack/template/ByteArrayTemplate.java | 2 +- .../msgpack/template/ByteBufferTemplate.java | 2 +- .../org/msgpack/template/ByteTemplate.java | 2 +- .../msgpack/template/CharacterTemplate.java | 2 +- .../org/msgpack/template/DateTemplate.java | 2 +- .../msgpack/template/DoubleArrayTemplate.java | 2 +- .../org/msgpack/template/DoubleTemplate.java | 2 +- .../msgpack/template/FloatArrayTemplate.java | 2 +- .../org/msgpack/template/FloatTemplate.java | 2 +- .../template/IntegerArrayTemplate.java | 2 +- .../org/msgpack/template/IntegerTemplate.java | 2 +- .../msgpack/template/LongArrayTemplate.java | 2 +- .../org/msgpack/template/LongTemplate.java | 2 +- .../msgpack/template/OrdinalEnumTemplate.java | 2 +- .../msgpack/template/ShortArrayTemplate.java | 2 +- .../org/msgpack/template/ShortTemplate.java | 2 +- .../org/msgpack/template/StringTemplate.java | 2 +- .../org/msgpack/template/ValueTemplate.java | 2 +- .../template/builder/BuildContext.java | 19 +- .../org/msgpack/type/BigIntegerValueImpl.java | 2 +- .../msgpack/type/ByteArrayRawValueImpl.java | 2 +- .../org/msgpack/type/DoubleValueImpl.java | 2 +- .../java/org/msgpack/type/FalseValueImpl.java | 2 +- .../java/org/msgpack/type/FloatValueImpl.java | 2 +- .../java/org/msgpack/type/IntValueImpl.java | 2 +- .../java/org/msgpack/type/LongValueImpl.java | 2 +- .../org/msgpack/type/StringRawValueImpl.java | 2 +- .../java/org/msgpack/type/TrueValueImpl.java | 2 +- .../org/msgpack/util/json/JSONPacker.java | 36 +- .../msgpack/TestBufferPackBufferUnpack.java | 20 +- .../org/msgpack/TestBufferPackConvert.java | 20 +- .../org/msgpack/TestBufferPackUnpack.java | 20 +- .../org/msgpack/TestPackBufferUnpack.java | 20 +- .../java/org/msgpack/TestPackConvert.java | 20 +- src/test/java/org/msgpack/TestPackUnpack.java | 20 +- .../java/org/msgpack/TestSimplePackable.java | 8 +- .../org/msgpack/TestUnconvertConvert.java | 20 +- .../org/msgpack/TestUnconvertReconvert.java | 20 +- .../MessagePackableTypeFieldsClass.java | 6 +- ...agePackableTypeFieldsClassNotNullable.java | 6 +- .../unpacker/TestMalformedEncoding.java | 8 +- .../json/TestJSONBufferPackBufferUnpack.java | 26 +- .../util/json/TestJSONBufferPackUnpack.java | 26 +- .../util/json/TestJSONPackBufferUnpack.java | 26 +- .../msgpack/util/json/TestJSONPackUnpack.java | 26 +- .../json/TestValueToStringJSONUnpack.java | 30 +- 53 files changed, 454 insertions(+), 410 deletions(-) diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index c0c72f2ee..a23bd805f 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -17,6 +17,8 @@ // package org.msgpack.packer; +import java.math.BigInteger; +import java.nio.ByteBuffer; import java.io.IOException; import org.msgpack.type.Value; import org.msgpack.MessagePack; @@ -31,29 +33,175 @@ protected AbstractPacker(MessagePack msgpack) { } @Override - public void writeByteArray(byte[] b) throws IOException { - writeByteArray(b, 0, b.length); + public Packer write(boolean o) throws IOException { + writeBoolean(o); + return this; } + @Override + public Packer write(byte o) throws IOException { + writeByte(o); + return this; + } @Override - public void writeArrayEnd() throws IOException { - writeArrayEnd(true); + public Packer write(short o) throws IOException { + writeShort(o); + return this; } @Override - public void writeMapEnd() throws IOException { - writeMapEnd(true); + public Packer write(int o) throws IOException { + writeInt(o); + return this; + } + + @Override + public Packer write(long o) throws IOException { + writeLong(o); + return this; + } + + @Override + public Packer write(float o) throws IOException { + writeFloat(o); + return this; + } + + @Override + public Packer write(double o) throws IOException { + writeDouble(o); + return this; + } + + @Override + public Packer write(Boolean o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeBoolean(o); + } + return this; + } + + @Override + public Packer write(Byte o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeByte(o); + } + return this; + } + + @Override + public Packer write(Short o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeShort(o); + } + return this; + } + + @Override + public Packer write(Integer o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeInt(o); + } + return this; + } + + @Override + public Packer write(Long o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeLong(o); + } + return this; + } + + @Override + public Packer write(BigInteger o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeBigInteger(o); + } + return this; + } + + @Override + public Packer write(Float o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeFloat(o); + } + return this; + } + + @Override + public Packer write(Double o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeDouble(o); + } + return this; + } + + @Override + public Packer write(byte[] o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeByteArray(o); + } + return this; + } + + @Override + public Packer write(byte[] o, int off, int len) throws IOException { + if(o == null) { + writeNil(); + } else { + writeByteArray(o, off, len); + } + return this; + } + + @Override + public Packer write(ByteBuffer o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeByteBuffer(o); + } + return this; + } + + @Override + public Packer write(String o) throws IOException { + if(o == null) { + writeNil(); + } else { + writeString(o); + } + return this; } @Override public Packer write(Object o) throws IOException { if(o == null) { writeNil(); - return this; + } else { + Template tmpl = msgpack.lookup(o.getClass()); + tmpl.write(this, o); } - Template tmpl = msgpack.lookup(o.getClass()); - tmpl.write(this, o); return this; } @@ -61,148 +209,52 @@ public Packer write(Object o) throws IOException { public Packer write(Value v) throws IOException { if(v == null) { writeNil(); - return this; + } else { + v.writeTo(this); } - v.writeTo(this); return this; } + + @Override + public void writeArrayEnd() throws IOException { + writeArrayEnd(true); + } + + @Override + public void writeMapEnd() throws IOException { + writeMapEnd(true); + } + @Override public void close() throws IOException { } -// public Packer write(Object o) throws IOException { -// msgpack.lookup(o.getClass()).write(this, o); -// return this; -// } -// -// public Packer write(Value v) throws IOException { -// v.writeTo(this); -// return this; -// } -// -// public Packer write(MessagePackable v) throws IOException { -// v.writeTo(this); -// return this; -// } -// -// public Packer write(boolean v) throws IOException { -// writeBoolean(v); -// return this; -// } -// -// public Packer write(byte v) throws IOException { -// writeByte(v); -// return this; -// } -// -// public Packer write(short v) throws IOException { -// writeShort(v); -// return this; -// } -// -// public Packer write(int v) throws IOException { -// writeInt(v); -// return this; -// } -// -// public Packer write(long v) throws IOException { -// writeLong(v); -// return this; -// } -// -// public Packer write(float v) throws IOException { -// writeFloat(v); -// return this; -// } -// -// public Packer write(double v) throws IOException { -// writeDouble(v); -// return this; -// } -// -// public Packer write(Boolean v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeBoolean(v); -// } -// return this; -// } -// -// public Packer write(Byte v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeByte(v); -// } -// return this; -// } -// -// public Packer write(Short v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeShort(v); -// } -// return this; -// } -// -// public Packer write(Integer v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeInt(v); -// } -// return this; -// } -// -// public Packer write(Long v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeLong(v); -// } -// return this; -// } -// -// public Packer write(Float v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeFloat(v); -// } -// return this; -// } -// -// public Packer write(Double v) throws IOException { -// if(v == null) { -// writeNil(); -// } else { -// writeDouble(v); -// } -// return this; -// } -// -// public Packer write(String s) throws IOException { -// writeString(s); -// return this; -// } -// -// public Packer write(byte[] b) throws IOException { -// writeByteArray(b); -// return this; -// } -// -// public Packer write(byte[] b, int off, int len) throws IOException { -// writeByteArray(b, off, len); -// return this; -// } -// -// //public Packer write(ByteBuffer b) throws IOException { -// // writeByteBuffer(b); -// // return this; -// //} + abstract protected void writeBoolean(boolean v) throws IOException; + + abstract protected void writeByte(byte v) throws IOException; + + abstract protected void writeShort(short v) throws IOException; + + abstract protected void writeInt(int v) throws IOException; + + abstract protected void writeLong(long v) throws IOException; + + abstract protected void writeBigInteger(BigInteger v) throws IOException; + + abstract protected void writeFloat(float v) throws IOException; + + abstract protected void writeDouble(double v) throws IOException; + + protected void writeByteArray(byte[] b) throws IOException { + writeByteArray(b, 0, b.length); + } + + abstract protected void writeByteArray(byte[] b, int off, int len) throws IOException; + + abstract protected void writeByteBuffer(ByteBuffer bb) throws IOException; + + abstract protected void writeString(String s) throws IOException; } diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 789288810..02b5e2e38 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -33,7 +33,6 @@ public class MessagePackPacker extends AbstractPacker { protected final Output out; - protected CharsetEncoder encoder; private PackerStack stack = new PackerStack(); @@ -47,14 +46,11 @@ public MessagePackPacker(MessagePack msgpack, OutputStream stream) { protected MessagePackPacker(MessagePack msgpack, Output out) { super(msgpack); - this.encoder = Charset.forName("UTF-8").newEncoder(). - onMalformedInput(CodingErrorAction.REPORT). - onUnmappableCharacter(CodingErrorAction.REPORT); this.out = out; } @Override - public void writeByte(byte d) throws IOException { + protected void writeByte(byte d) throws IOException { if(d < -(1<<5)) { out.writeByteAndByte((byte)0xd0, d); } else { @@ -64,7 +60,7 @@ public void writeByte(byte d) throws IOException { } @Override - public void writeShort(short d) throws IOException { + protected void writeShort(short d) throws IOException { if(d < -(1<<5)) { if(d < -(1<<7)) { // signed 16 @@ -89,7 +85,7 @@ public void writeShort(short d) throws IOException { } @Override - public void writeInt(int d) throws IOException { + protected void writeInt(int d) throws IOException { if(d < -(1<<5)) { if(d < -(1<<15)) { // signed 32 @@ -120,7 +116,7 @@ public void writeInt(int d) throws IOException { } @Override - public void writeLong(long d) throws IOException { + protected void writeLong(long d) throws IOException { if(d < -(1L<<5)) { if(d < -(1L<<15)) { if(d < -(1L<<31)) { @@ -165,7 +161,7 @@ public void writeLong(long d) throws IOException { } @Override - public void writeBigInteger(BigInteger d) throws IOException { + protected void writeBigInteger(BigInteger d) throws IOException { if(d.bitLength() <= 63) { writeLong(d.longValue()); stack.reduceCount(); @@ -179,25 +175,19 @@ public void writeBigInteger(BigInteger d) throws IOException { } @Override - public void writeFloat(float d) throws IOException { + protected void writeFloat(float d) throws IOException { out.writeByteAndFloat((byte)0xca, d); stack.reduceCount(); } @Override - public void writeDouble(double d) throws IOException { + protected void writeDouble(double d) throws IOException { out.writeByteAndDouble((byte)0xcb, d); stack.reduceCount(); } @Override - public void writeNil() throws IOException { - out.writeByte((byte)0xc0); - stack.reduceCount(); - } - - @Override - public void writeBoolean(boolean d) throws IOException { + protected void writeBoolean(boolean d) throws IOException { if(d) { // true out.writeByte((byte)0xc3); @@ -209,7 +199,7 @@ public void writeBoolean(boolean d) throws IOException { } @Override - public void writeByteArray(byte[] b, int off, int len) throws IOException { + protected void writeByteArray(byte[] b, int off, int len) throws IOException { if(len < 32) { out.writeByte((byte)(0xa0 | len)); } else if(len < 65536) { @@ -222,7 +212,7 @@ public void writeByteArray(byte[] b, int off, int len) throws IOException { } @Override - public void writeByteBuffer(ByteBuffer bb) throws IOException { + protected void writeByteBuffer(ByteBuffer bb) throws IOException { int len = bb.remaining(); if(len < 32) { out.writeByte((byte)(0xa0 | len)); @@ -241,7 +231,7 @@ public void writeByteBuffer(ByteBuffer bb) throws IOException { } @Override - public void writeString(String s) throws IOException { + protected void writeString(String s) throws IOException { byte[] b; try { // TODO encoding error? @@ -253,6 +243,12 @@ public void writeString(String s) throws IOException { stack.reduceCount(); } + @Override + public void writeNil() throws IOException { + out.writeByte((byte)0xc0); + stack.reduceCount(); + } + @Override public void writeArrayBegin(int size) throws IOException { // TODO check size < 0? diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index d809c82f4..0c2737720 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -31,33 +31,51 @@ * @version 0.6.0 */ public interface Packer extends Closeable { - public void writeNil() throws IOException; + public Packer write(boolean o) throws IOException; + + public Packer write(byte o) throws IOException; + + public Packer write(short o) throws IOException; + + public Packer write(int o) throws IOException; + + public Packer write(long o) throws IOException; + + public Packer write(float o) throws IOException; + + public Packer write(double o) throws IOException; + + public Packer write(Boolean o) throws IOException; + + public Packer write(Byte o) throws IOException; - public void writeBoolean(boolean v) throws IOException; + public Packer write(Short o) throws IOException; - public void writeByte(byte v) throws IOException; + public Packer write(Integer o) throws IOException; - public void writeShort(short v) throws IOException; + public Packer write(Long o) throws IOException; - public void writeInt(int v) throws IOException; + public Packer write(Float o) throws IOException; - public void writeLong(long v) throws IOException; + public Packer write(Double o) throws IOException; - public void writeBigInteger(BigInteger v) throws IOException; + public Packer write(BigInteger o) throws IOException; - public void writeFloat(float v) throws IOException; + public Packer write(byte[] o) throws IOException; - public void writeDouble(double v) throws IOException; + public Packer write(byte[] o, int off, int len) throws IOException; - public void writeByteArray(byte[] b) throws IOException; + public Packer write(ByteBuffer o) throws IOException; - public void writeByteArray(byte[] b, int off, int len) throws IOException; + public Packer write(String o) throws IOException; - public void writeByteBuffer(ByteBuffer bb) throws IOException; + public Packer write(Value v) throws IOException; - public void writeString(String s) throws IOException; + public Packer write(Object o) throws IOException; + public void writeNil() throws IOException; + public void writeArrayBegin(int size) throws IOException; public void writeArrayEnd(boolean check) throws IOException; @@ -69,10 +87,5 @@ public interface Packer extends Closeable { public void writeMapEnd(boolean check) throws IOException; public void writeMapEnd() throws IOException; - - - public Packer write(Object o) throws IOException; - - public Packer write(Value v) throws IOException; } diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index 26be32a73..7518f4a2e 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -35,7 +35,7 @@ public void write(Packer pk, BigDecimal target, boolean required) throws IOExcep pk.writeNil(); return; } - pk.writeString(target.toString()); + pk.write(target.toString()); } public BigDecimal read(Unpacker u, BigDecimal to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index ad5d2de5d..2c34c639d 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -35,7 +35,7 @@ public void write(Packer pk, BigInteger target, boolean required) throws IOExcep pk.writeNil(); return; } - pk.writeBigInteger((BigInteger)target); + pk.write((BigInteger)target); } public BigInteger read(Unpacker u, BigInteger to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index ed42e0d38..c3c07cf7c 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, boolean[] target, boolean required) throws IOExcept } pk.writeArrayBegin(target.length); for (boolean a : target) { - pk.writeBoolean(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index 6ad233724..dffab8283 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Boolean target, boolean required) throws IOExceptio pk.writeNil(); return; } - pk.writeBoolean(target); + pk.write((boolean)target); } public Boolean read(Unpacker u, Boolean to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index 155ed5ffc..9609cf2c2 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, byte[] target, boolean required) throws IOException pk.writeNil(); return; } - pk.writeByteArray(target); + pk.write(target); } public byte[] read(Unpacker u, byte[] to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index 6c5fb4944..7533e4c52 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, ByteBuffer target, boolean required) throws IOExcep pk.writeNil(); return; } - pk.writeByteBuffer(target); + pk.write(target); } public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 8c89cfe04..ff709b216 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Byte target, boolean required) throws IOException { pk.writeNil(); return; } - pk.writeByte(target); + pk.write((byte) target); } public Byte read(Unpacker u, Byte to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java index 4391f411f..eab9ee384 100644 --- a/src/main/java/org/msgpack/template/CharacterTemplate.java +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -41,7 +41,7 @@ public void write(Packer pk, Character target, boolean required) throws IOExcept pk.writeNil(); return; } - pk.writeInt((char) target); + pk.write((int)(char)target); } @Override diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index 58cf90e4c..a73f455db 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, Date target, boolean required) throws IOException { pk.writeNil(); return; } - pk.writeLong(target.getTime()); + pk.write((long)target.getTime()); } public Date read(Unpacker u, Date to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index 2a05e1a48..80342ca4e 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, double[] target, boolean required) throws IOExcepti } pk.writeArrayBegin(target.length); for (double a : target) { - pk.writeDouble(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index 1b27686da..1357453ad 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Double target, boolean required) throws IOException pk.writeNil(); return; } - pk.writeDouble(target); + pk.write((double)target); } public Double read(Unpacker u, Double to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index 402837f79..bbb627e0c 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, float[] target, boolean required) throws IOExceptio } pk.writeArrayBegin(target.length); for (float a : target) { - pk.writeFloat(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index e2e474c23..ffa28449a 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Float target, boolean required) throws IOException pk.writeNil(); return; } - pk.writeFloat(target); + pk.write((float)target); } public Float read(Unpacker u, Float to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 80b6ad1fc..369d41c89 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, int[] target, boolean required) throws IOException } pk.writeArrayBegin(target.length); for (int a : target) { - pk.writeInt(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index fedb2a6cb..22b95ea6b 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Integer target, boolean required) throws IOExceptio pk.writeNil(); return; } - pk.writeInt(target); + pk.write((int)target); } public Integer read(Unpacker u, Integer to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index ff8c41094..f9a9cd890 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, long[] target, boolean required) throws IOException } pk.writeArrayBegin(target.length); for (long a : target) { - pk.writeLong(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index 267b57386..2d85ac65a 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Long target, boolean required) throws IOException { pk.writeNil(); return; } - pk.writeLong(target); + pk.write((long)target); } public Long read(Unpacker u, Long to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 6a74bba91..18803bb6a 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -43,7 +43,7 @@ public void write(Packer pk, T target, boolean required) throws IOException { if(ordinal == null) { throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); } - pk.writeInt((int) ordinal); + pk.write((int)ordinal); } @Override diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index e168b9861..1f188ca1d 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -36,7 +36,7 @@ public void write(Packer pk, short[] target, boolean required) throws IOExceptio } pk.writeArrayBegin(target.length); for (short a : target) { - pk.writeShort(a); + pk.write(a); } pk.writeArrayEnd(); } diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index b6fd15e4c..11b3ae70d 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, Short target, boolean required) throws IOException pk.writeNil(); return; } - pk.writeShort(target); + pk.write(target); } public Short read(Unpacker u, Short to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index 682b396e6..d64795dd1 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -34,7 +34,7 @@ public void write(Packer pk, String target, boolean required) throws IOException pk.writeNil(); return; } - pk.writeString(target); + pk.write(target); } public String read(Unpacker u, String to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 75a13cba6..63cd23f53 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -35,7 +35,7 @@ public void write(Packer pk, Value target, boolean required) throws IOException pk.writeNil(); return; } - pk.write(target); + target.writeTo(pk); } public Value read(Unpacker u, Value to, boolean required) throws IOException { diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 518adad01..88cfc8f68 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -181,24 +181,7 @@ protected String getBuiltString() { } protected String primitiveWriteName(Class type) { - if (type == boolean.class) { - return "writeBoolean"; - } else if (type == byte.class) { - return "writeByte"; - } else if (type == short.class) { - return "writeShort"; - } else if (type == int.class) { - return "writeInt"; - } else if (type == long.class) { - return "writeLong"; - } else if (type == float.class) { - return "writeFloat"; - } else if (type == double.class) { - return "writeDouble"; - } else if (type == char.class) { - return "writeInt"; - } - return null; + return "write"; } protected String primitiveReadName(Class type) { diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index 8742b1dc6..c8f0d000b 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -100,7 +100,7 @@ public double doubleValue() { } public void writeTo(Packer pk) throws IOException { - pk.writeBigInteger(value); + pk.write(value); } // TODO compareTo diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 2a3779bed..7bb4b9b2d 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -69,7 +69,7 @@ public String getString() { } public void writeTo(Packer pk) throws IOException { - pk.writeByteArray(bytes); + pk.write(bytes); } public boolean equals(Object o) { diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index 7117154bb..a10bc8e29 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -67,7 +67,7 @@ public double doubleValue() { } public void writeTo(Packer pk) throws IOException { - pk.writeDouble(value); + pk.write(value); } public boolean equals(Object o) { diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index 2b4df4b0b..d87daf333 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -34,7 +34,7 @@ public boolean getBoolean() { } public void writeTo(Packer pk) throws IOException { - pk.writeBoolean(false); + pk.write(false); } public boolean equals(Object o) { diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index 95604b6cc..6a303b01e 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -82,7 +82,7 @@ public boolean equals(Object o) { } public void writeTo(Packer pk) throws IOException { - pk.writeFloat(value); + pk.write(value); } // TODO compareTo diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index f7c1e57f0..94c036414 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -90,7 +90,7 @@ public double doubleValue() { } public void writeTo(Packer pk) throws IOException { - pk.writeInt(value); + pk.write(value); } // TODO compareTo diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index 6872c9a52..1df578ee7 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -95,7 +95,7 @@ public double doubleValue() { } public void writeTo(Packer pk) throws IOException { - pk.writeLong(value); + pk.write(value); } // TODO compareTo diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index 28998071f..83778511d 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -44,7 +44,7 @@ public String getString() { } public void writeTo(Packer pk) throws IOException { - pk.writeString(string); + pk.write(string); } public boolean equals(Object o) { diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index 9e5549520..cb3d59e7e 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -34,7 +34,7 @@ public boolean getBoolean() { } public void writeTo(Packer pk) throws IOException { - pk.writeBoolean(true); + pk.write(true); } public boolean equals(Object o) { diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index aaa4a0759..2deba773d 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -80,14 +80,7 @@ protected JSONPacker(MessagePack msgpack, Output out) { } @Override - public void writeNil() throws IOException { - beginElement(); - out.write(NULL, 0, NULL.length); - endElement(); - } - - @Override - public void writeBoolean(boolean v) throws IOException { + protected void writeBoolean(boolean v) throws IOException { beginElement(); if(v) { out.write(TRUE, 0, TRUE.length); @@ -98,7 +91,7 @@ public void writeBoolean(boolean v) throws IOException { } @Override - public void writeByte(byte v) throws IOException { + protected void writeByte(byte v) throws IOException { beginElement(); byte[] b = Byte.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); @@ -106,7 +99,7 @@ public void writeByte(byte v) throws IOException { } @Override - public void writeShort(short v) throws IOException { + protected void writeShort(short v) throws IOException { beginElement(); byte[] b = Short.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); @@ -114,7 +107,7 @@ public void writeShort(short v) throws IOException { } @Override - public void writeInt(int v) throws IOException { + protected void writeInt(int v) throws IOException { beginElement(); byte[] b = Integer.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); @@ -122,7 +115,7 @@ public void writeInt(int v) throws IOException { } @Override - public void writeLong(long v) throws IOException { + protected void writeLong(long v) throws IOException { beginElement(); byte[] b = Long.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); @@ -130,7 +123,7 @@ public void writeLong(long v) throws IOException { } @Override - public void writeBigInteger(BigInteger v) throws IOException { + protected void writeBigInteger(BigInteger v) throws IOException { beginElement(); byte[] b = v.toString().getBytes(); // TODO optimize out.write(b, 0, b.length); @@ -138,7 +131,7 @@ public void writeBigInteger(BigInteger v) throws IOException { } @Override - public void writeFloat(float v) throws IOException { + protected void writeFloat(float v) throws IOException { beginElement(); Float r = v; if(r.isInfinite() || r.isNaN()) { @@ -150,7 +143,7 @@ public void writeFloat(float v) throws IOException { } @Override - public void writeDouble(double v) throws IOException { + protected void writeDouble(double v) throws IOException { beginElement(); Double r = v; if(r.isInfinite() || r.isNaN()) { @@ -162,7 +155,7 @@ public void writeDouble(double v) throws IOException { } @Override - public void writeByteArray(byte[] b, int off, int len) throws IOException { + protected void writeByteArray(byte[] b, int off, int len) throws IOException { beginStringElement(); out.writeByte(QUOTE); escape(out, b, off, len); @@ -171,7 +164,7 @@ public void writeByteArray(byte[] b, int off, int len) throws IOException { } @Override - public void writeByteBuffer(ByteBuffer bb) throws IOException { + protected void writeByteBuffer(ByteBuffer bb) throws IOException { beginStringElement(); out.writeByte(QUOTE); int pos = bb.position(); @@ -185,7 +178,7 @@ public void writeByteBuffer(ByteBuffer bb) throws IOException { } @Override - public void writeString(String s) throws IOException { + protected void writeString(String s) throws IOException { beginStringElement(); out.writeByte(QUOTE); escape(out, s); @@ -193,6 +186,13 @@ public void writeString(String s) throws IOException { endElement(); } + @Override + public void writeNil() throws IOException { + beginElement(); + out.write(NULL, 0, NULL.length); + endElement(); + } + @Override public void writeArrayBegin(int size) throws IOException { beginElement(); diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 0b3737ec2..eaa03837d 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -26,7 +26,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); @@ -42,7 +42,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); @@ -58,7 +58,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); @@ -74,7 +74,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); @@ -90,7 +90,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); @@ -106,7 +106,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); @@ -122,7 +122,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); @@ -148,7 +148,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); @@ -164,7 +164,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); @@ -180,7 +180,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByteArray(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index c88cf3827..c0d26790b 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -29,7 +29,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -47,7 +47,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -65,7 +65,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -83,7 +83,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -101,7 +101,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -119,7 +119,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -137,7 +137,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -167,7 +167,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -185,7 +185,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -203,7 +203,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByteArray(v); + packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index f212cd440..7c390a2e5 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -27,7 +27,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); @@ -43,7 +43,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); @@ -59,7 +59,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); @@ -75,7 +75,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); @@ -91,7 +91,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); @@ -107,7 +107,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); @@ -123,7 +123,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); @@ -149,7 +149,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); @@ -165,7 +165,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); @@ -181,7 +181,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByteArray(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java index 50c69965b..b24c342c7 100644 --- a/src/test/java/org/msgpack/TestPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -28,7 +28,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); @@ -45,7 +45,7 @@ public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByte(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); @@ -62,7 +62,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeShort(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); @@ -79,7 +79,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeInt(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); @@ -96,7 +96,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeLong(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); @@ -113,7 +113,7 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); @@ -130,7 +130,7 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); @@ -158,7 +158,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); @@ -175,7 +175,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeString(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); @@ -192,7 +192,7 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 0c8ea96bc..4dea1bd0f 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -31,7 +31,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -50,7 +50,7 @@ public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByte(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -69,7 +69,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeShort(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -88,7 +88,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeInt(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -107,7 +107,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeLong(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -126,7 +126,7 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -145,7 +145,7 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -177,7 +177,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -196,7 +196,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeString(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); @@ -215,7 +215,7 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); + packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index 2470c5898..0cf274da3 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -29,7 +29,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); boolean ret = unpacker.readBoolean(); @@ -46,7 +46,7 @@ public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByte(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); byte ret = unpacker.readByte(); @@ -63,7 +63,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeShort(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); short ret = unpacker.readShort(); @@ -80,7 +80,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeInt(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); int ret = unpacker.readInt(); @@ -97,7 +97,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeLong(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); long ret = unpacker.readLong(); @@ -109,7 +109,7 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeFloat(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); float ret = unpacker.readFloat(); @@ -126,7 +126,7 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeDouble(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); double ret = unpacker.readDouble(); @@ -154,7 +154,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); BigInteger ret = unpacker.readBigInteger(); @@ -171,7 +171,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeString(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); String ret = unpacker.readString(); @@ -188,7 +188,7 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByteArray(v); + packer.write(v); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); Unpacker unpacker = msgpack.createUnpacker(in); byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/TestSimplePackable.java b/src/test/java/org/msgpack/TestSimplePackable.java index c3c7976ae..14804067e 100644 --- a/src/test/java/org/msgpack/TestSimplePackable.java +++ b/src/test/java/org/msgpack/TestSimplePackable.java @@ -27,15 +27,15 @@ public Sample01() { } public void writeTo(Packer pk) throws IOException { pk.writeArrayBegin(3); - pk.writeString(f0); + pk.write(f0); pk.writeArrayBegin(f1.length); for(int e : f1) { - pk.writeInt(e); + pk.write(e); } pk.writeArrayEnd(); pk.writeArrayBegin(f2.size()); for(String e : f2) { - pk.writeString(e); + pk.write(e); } pk.writeArrayEnd(); pk.writeArrayEnd(); @@ -100,7 +100,7 @@ public Sample02() { } public void writeTo(Packer pk) throws IOException { pk.writeArrayBegin(4); pk.write(f0); - pk.writeLong(f1); + pk.write(f1); if(f2 == null) { throw new MessageTypeException("f2 is required but null"); } diff --git a/src/test/java/org/msgpack/TestUnconvertConvert.java b/src/test/java/org/msgpack/TestUnconvertConvert.java index a5bb2934b..c08df2c03 100644 --- a/src/test/java/org/msgpack/TestUnconvertConvert.java +++ b/src/test/java/org/msgpack/TestUnconvertConvert.java @@ -27,7 +27,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeBoolean(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); boolean ret = unpacker.readBoolean(); @@ -43,7 +43,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeByte(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); byte ret = unpacker.readByte(); @@ -59,7 +59,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeShort(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); short ret = unpacker.readShort(); @@ -75,7 +75,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeInt(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); int ret = unpacker.readInt(); @@ -91,7 +91,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeLong(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); long ret = unpacker.readLong(); @@ -107,7 +107,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeFloat(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); float ret = unpacker.readFloat(); @@ -123,7 +123,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeDouble(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); double ret = unpacker.readDouble(); @@ -149,7 +149,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeBigInteger(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); BigInteger ret = unpacker.readBigInteger(); @@ -165,7 +165,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeString(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); String ret = unpacker.readString(); @@ -181,7 +181,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeByteArray(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/TestUnconvertReconvert.java b/src/test/java/org/msgpack/TestUnconvertReconvert.java index ab3917544..d7a8fd03b 100644 --- a/src/test/java/org/msgpack/TestUnconvertReconvert.java +++ b/src/test/java/org/msgpack/TestUnconvertReconvert.java @@ -23,7 +23,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeBoolean(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -39,7 +39,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeByte(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -55,7 +55,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeShort(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -71,7 +71,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeInt(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -87,7 +87,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeLong(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -103,7 +103,7 @@ public void testFloat() throws Exception { public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeFloat(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -119,7 +119,7 @@ public void testDouble() throws Exception { public void testDouble(double v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeDouble(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -145,7 +145,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeBigInteger(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -161,7 +161,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeString(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); @@ -177,7 +177,7 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new MessagePack(); Unconverter packer = new Unconverter(msgpack); - packer.writeByteArray(v); + packer.write(v); Value r = packer.getResult(); Converter unpacker = new Converter(msgpack, r); Value ret = unpacker.readValue(); diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java index de3dbc338..7e5388dac 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClass.java @@ -105,18 +105,18 @@ public void setF2(List f2) { public void writeTo(Packer packer) throws IOException { packer.writeArrayBegin(3); { - packer.writeString(f0); + packer.write(f0); packer.writeArrayBegin(f1.length); { for(int e : f1) { - packer.writeInt(e); + packer.write(e); } } packer.writeArrayEnd(); packer.writeArrayBegin(f2.size()); { for(String e : f2) { - packer.writeString(e); + packer.write(e); } } packer.writeArrayEnd(); diff --git a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java index 4e5bb997d..44bc1baa2 100644 --- a/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MessagePackableTypeFieldsClassNotNullable.java @@ -118,15 +118,15 @@ public void setF2(List f2) { public void writeTo(Packer packer) throws IOException { packer.writeArrayBegin(3); - packer.writeString(f0); + packer.write(f0); packer.writeArrayBegin(f1.length); for(int e : f1) { - packer.writeInt(e); + packer.write(e); } packer.writeArrayEnd(); packer.writeArrayBegin(f2.size()); for(String e : f2) { - packer.writeString(e); + packer.write(e); } packer.writeArrayEnd(); packer.writeArrayEnd(); diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index fe924f99e..c81741c70 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -45,7 +45,7 @@ public void testBufferUnpackerUnpackString() throws Exception { for(byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); BufferPacker pk = msgpack.createBufferPacker(); - pk.writeByteArray(malform); + pk.write(malform); byte[] b = pk.toByteArray(); Unpacker u = msgpack.createBufferUnpacker(b); try { @@ -63,7 +63,7 @@ public void testUnpackerUnpackString() throws Exception { for(byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); BufferPacker pk = msgpack.createBufferPacker(); - pk.writeByteArray(malform); + pk.write(malform); byte[] b = pk.toByteArray(); Unpacker u = msgpack.createUnpacker(new ByteArrayInputStream(b)); try { @@ -98,7 +98,7 @@ public void testJSONPackerWriteString() throws Exception { JSON json = new JSON(); Packer pk = json.createPacker(new ByteArrayOutputStream()); try { - pk.writeByteArray(malform); + pk.write(malform); fail("no exception"); } catch (CharacterCodingException expected) { } @@ -111,7 +111,7 @@ public void testJSONBufferPackerWriteString() throws Exception { JSON json = new JSON(); Packer pk = json.createBufferPacker(); try { - pk.writeByteArray(malform); + pk.write(malform); fail("no exception"); } catch (CharacterCodingException expected) { } diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java index 8bb25de32..95306471c 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java @@ -32,7 +32,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); @@ -48,7 +48,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); @@ -64,7 +64,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); @@ -80,7 +80,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); @@ -96,7 +96,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); @@ -114,14 +114,14 @@ public void testFloat(float v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); if(((Float)v).isInfinite() || ((Float)v).isNaN()) { try { - packer.writeFloat(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); @@ -139,14 +139,14 @@ public void testDouble(double v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); if(((Double)v).isInfinite() || ((Double)v).isNaN()) { try { - packer.writeDouble(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); @@ -172,7 +172,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); @@ -188,7 +188,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); @@ -204,9 +204,9 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - //packer.writeByteArray(v); + //packer.write(v); String str = new String(v); - packer.writeString(str); + packer.write(str); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); //byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java index 29261e0dc..409646ba1 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java @@ -33,7 +33,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); @@ -49,7 +49,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); @@ -65,7 +65,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); @@ -81,7 +81,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); @@ -97,7 +97,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); @@ -115,14 +115,14 @@ public void testFloat(float v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); if(((Float)v).isInfinite() || ((Float)v).isNaN()) { try { - packer.writeFloat(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); @@ -140,14 +140,14 @@ public void testDouble(double v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); if(((Double)v).isInfinite() || ((Double)v).isNaN()) { try { - packer.writeDouble(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); @@ -173,7 +173,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); @@ -189,7 +189,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); @@ -205,9 +205,9 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new JSON(); BufferPacker packer = msgpack.createBufferPacker(); - //packer.writeByteArray(v); + //packer.write(v); String str = new String(v); - packer.writeString(str); + packer.write(str); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); //byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java index 0f95d9f15..7ed1c045f 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java @@ -34,7 +34,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); @@ -51,7 +51,7 @@ public void testByte(byte v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByte(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); @@ -68,7 +68,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeShort(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); @@ -85,7 +85,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeInt(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); @@ -102,7 +102,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeLong(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); @@ -121,14 +121,14 @@ public void testFloat(float v) throws Exception { Packer packer = msgpack.createPacker(out); if(((Float)v).isInfinite() || ((Float)v).isNaN()) { try { - packer.writeFloat(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeFloat(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); @@ -147,14 +147,14 @@ public void testDouble(double v) throws Exception { Packer packer = msgpack.createPacker(out); if(((Double)v).isInfinite() || ((Double)v).isNaN()) { try { - packer.writeDouble(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeDouble(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); @@ -182,7 +182,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); @@ -199,7 +199,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeString(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); @@ -216,9 +216,9 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - //packer.writeByteArray(v); + //packer.write(v); String str = new String(v); - packer.writeString(str); + packer.write(str); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); //byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java index f9bc422bd..160b8a2e5 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java @@ -35,7 +35,7 @@ public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); @@ -52,7 +52,7 @@ public void testByte(byte v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeByte(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); @@ -69,7 +69,7 @@ public void testShort(short v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeShort(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); @@ -86,7 +86,7 @@ public void testInteger(int v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeInt(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); @@ -103,7 +103,7 @@ public void testLong(long v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeLong(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); @@ -122,14 +122,14 @@ public void testFloat(float v) throws Exception { Packer packer = msgpack.createPacker(out); if(((Float)v).isInfinite() || ((Float)v).isNaN()) { try { - packer.writeFloat(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeFloat(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); @@ -148,14 +148,14 @@ public void testDouble(double v) throws Exception { Packer packer = msgpack.createPacker(out); if(((Double)v).isInfinite() || ((Double)v).isNaN()) { try { - packer.writeDouble(v); + packer.write(v); fail("JSONPacker should reject infinite and NaN value"); } catch (IOException ex) { assertTrue(ex instanceof IOException); } return; } - packer.writeDouble(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); @@ -183,7 +183,7 @@ public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.readBigInteger(); @@ -200,7 +200,7 @@ public void testString(String v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - packer.writeString(v); + packer.write(v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.readString(); @@ -217,9 +217,9 @@ public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new JSON(); ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); - //packer.writeByteArray(v); + //packer.write(v); String str = new String(v); - packer.writeString(str); + packer.write(str); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); //byte[] ret = unpacker.readByteArray(); diff --git a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java index ceb44bbeb..6ac13a9a3 100644 --- a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java @@ -29,7 +29,7 @@ public void testBoolean() throws Exception { public void testBoolean(boolean v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeBoolean(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); @@ -45,7 +45,7 @@ public void testByte() throws Exception { public void testByte(byte v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeByte(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); @@ -61,7 +61,7 @@ public void testShort() throws Exception { public void testShort(short v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeShort(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); @@ -77,7 +77,7 @@ public void testInteger() throws Exception { public void testInteger(int v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeInt(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); @@ -93,7 +93,7 @@ public void testLong() throws Exception { public void testLong(long v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeLong(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); @@ -110,7 +110,7 @@ public void testFloat(float v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); if(((Float)v).isInfinite()) { - packer.writeDouble(v); + packer.write(v); String str = packer.getResult().toString(); if(v < 0) { assertEquals("-Infinity", str); @@ -119,12 +119,12 @@ public void testFloat(float v) throws Exception { } return; } else if(((Float)v).isNaN()) { - packer.writeDouble(v); + packer.write(v); String str = packer.getResult().toString(); assertEquals("NaN", str); return; } - packer.writeFloat(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); @@ -141,7 +141,7 @@ public void testDouble(double v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); if(((Double)v).isInfinite()) { - packer.writeDouble(v); + packer.write(v); String str = packer.getResult().toString(); if(v < 0) { assertEquals("-Infinity", str); @@ -150,12 +150,12 @@ public void testDouble(double v) throws Exception { } return; } else if(((Double)v).isNaN()) { - packer.writeDouble(v); + packer.write(v); String str = packer.getResult().toString(); assertEquals("NaN", str); return; } - packer.writeDouble(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); @@ -181,7 +181,7 @@ public void testBigInteger() throws Exception { public void testBigInteger(BigInteger v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeBigInteger(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.readBigInteger(); @@ -197,7 +197,7 @@ public void testString() throws Exception { public void testString(String v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - packer.writeString(v); + packer.write(v); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.readString(); @@ -213,9 +213,9 @@ public void testByteArray() throws Exception { public void testByteArray(byte[] v) throws Exception { MessagePack msgpack = new JSON(); Unconverter packer = new Unconverter(msgpack); - //packer.writeByteArray(v); + //packer.write(v); String str = new String(v); - packer.writeString(str); + packer.write(str); byte[] bytes = packer.getResult().toString().getBytes("UTF-8"); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); //byte[] ret = unpacker.readByteArray(); From 1a65c3305d0c51625a2c97cbf5cda83ae91a3adf Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 02:44:20 +0900 Subject: [PATCH 168/409] updated interface Packer and Unpacker --- .../org/msgpack/packer/AbstractPacker.java | 6 +++-- .../org/msgpack/packer/MessagePackPacker.java | 15 +++++++---- src/main/java/org/msgpack/packer/Packer.java | 14 +++++----- .../java/org/msgpack/packer/Unconverter.java | 23 +++++++++------- .../java/org/msgpack/unpacker/Converter.java | 24 ++++++++--------- .../msgpack/unpacker/MessagePackUnpacker.java | 26 +++++++++---------- .../java/org/msgpack/unpacker/Unpacker.java | 25 +++++++----------- .../org/msgpack/util/json/JSONPacker.java | 15 +++++++---- 8 files changed, 80 insertions(+), 68 deletions(-) diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index a23bd805f..5d1bd9c92 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -218,13 +218,15 @@ public Packer write(Value v) throws IOException { @Override - public void writeArrayEnd() throws IOException { + public Packer writeArrayEnd() throws IOException { writeArrayEnd(true); + return this; } @Override - public void writeMapEnd() throws IOException { + public Packer writeMapEnd() throws IOException { writeMapEnd(true); + return this; } @Override diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 02b5e2e38..9cf1277a8 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -244,13 +244,14 @@ protected void writeString(String s) throws IOException { } @Override - public void writeNil() throws IOException { + public Packer writeNil() throws IOException { out.writeByte((byte)0xc0); stack.reduceCount(); + return this; } @Override - public void writeArrayBegin(int size) throws IOException { + public Packer writeArrayBegin(int size) throws IOException { // TODO check size < 0? if(size < 16) { // FixArray @@ -262,10 +263,11 @@ public void writeArrayBegin(int size) throws IOException { } stack.reduceCount(); stack.pushArray(size); + return this; } @Override - public void writeArrayEnd(boolean check) throws IOException { + public Packer writeArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); } @@ -280,10 +282,11 @@ public void writeArrayEnd(boolean check) throws IOException { } } stack.pop(); + return this; } @Override - public void writeMapBegin(int size) throws IOException { + public Packer writeMapBegin(int size) throws IOException { // TODO check size < 0? if(size < 16) { // FixMap @@ -295,10 +298,11 @@ public void writeMapBegin(int size) throws IOException { } stack.reduceCount(); stack.pushMap(size); + return this; } @Override - public void writeMapEnd(boolean check) throws IOException { + public Packer writeMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); } @@ -313,6 +317,7 @@ public void writeMapEnd(boolean check) throws IOException { } } stack.pop(); + return this; } public void reset() { diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 0c2737720..56503d32a 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -74,18 +74,18 @@ public interface Packer extends Closeable { public Packer write(Object o) throws IOException; - public void writeNil() throws IOException; + public Packer writeNil() throws IOException; - public void writeArrayBegin(int size) throws IOException; + public Packer writeArrayBegin(int size) throws IOException; - public void writeArrayEnd(boolean check) throws IOException; + public Packer writeArrayEnd(boolean check) throws IOException; - public void writeArrayEnd() throws IOException; + public Packer writeArrayEnd() throws IOException; - public void writeMapBegin(int size) throws IOException; + public Packer writeMapBegin(int size) throws IOException; - public void writeMapEnd(boolean check) throws IOException; + public Packer writeMapEnd(boolean check) throws IOException; - public void writeMapEnd() throws IOException; + public Packer writeMapEnd() throws IOException; } diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 3c2a88d7d..ddcd169d3 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -51,11 +51,6 @@ public void resetResult() { this.result = null; } - @Override - public void writeNil() throws IOException { - put(ValueFactory.nilValue()); - } - @Override public void writeBoolean(boolean v) throws IOException { put(ValueFactory.booleanValue(v)); @@ -112,7 +107,13 @@ public void writeString(String s) throws IOException { } @Override - public void writeArrayBegin(int size) throws IOException { + public Packer writeNil() throws IOException { + put(ValueFactory.nilValue()); + return this; + } + + @Override + public Packer writeArrayBegin(int size) throws IOException { if(size == 0) { Value[] array = new Value[size]; putContainer(ValueFactory.arrayValue()); @@ -124,10 +125,11 @@ public void writeArrayBegin(int size) throws IOException { stack.pushArray(size); values[stack.getDepth()] = array; } + return this; } @Override - public void writeArrayEnd(boolean check) throws IOException { + public Packer writeArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); } @@ -145,10 +147,11 @@ public void writeArrayEnd(boolean check) throws IOException { if(stack.getDepth() <= 0) { this.result = (Value) values[0]; } + return this; } @Override - public void writeMapBegin(int size) throws IOException { + public Packer writeMapBegin(int size) throws IOException { stack.checkCount(); if(size == 0) { putContainer(ValueFactory.mapValue()); @@ -160,10 +163,11 @@ public void writeMapBegin(int size) throws IOException { stack.pushMap(size); values[stack.getDepth()] = array; } + return this; } @Override - public void writeMapEnd(boolean check) throws IOException { + public Packer writeMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); } @@ -181,6 +185,7 @@ public void writeMapEnd(boolean check) throws IOException { if(stack.getDepth() <= 0) { this.result = (Value) values[0]; } + return this; } @Override diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 8c03b5940..d84e2b562 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -56,18 +56,18 @@ private void ensureValue() throws IOException { } } - @Override - public boolean tryReadNil() throws IOException { - stack.checkCount(); - if(getTop().isNil()) { - stack.reduceCount(); - if(stack.getDepth() == 0) { - value = null; - } - return true; - } - return false; - } + //@Override + //public boolean tryReadNil() throws IOException { + // stack.checkCount(); + // if(getTop().isNil()) { + // stack.reduceCount(); + // if(stack.getDepth() == 0) { + // value = null; + // } + // return true; + // } + // return false; + //} @Override public boolean trySkipNil() throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 2b68b2288..3d34dc7b4 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -319,19 +319,19 @@ private void readRawBodyCont() throws IOException { } } - @Override - public boolean tryReadNil() throws IOException { - stack.checkCount(); - int b = getHeadByte() & 0xff; - if(b == 0xc0) { - // nil is read - stack.reduceCount(); - headByte = REQUIRE_TO_READ_HEAD; - return true; - } - // not nil - return false; - } + //@Override + //public boolean tryReadNil() throws IOException { + // stack.checkCount(); + // int b = getHeadByte() & 0xff; + // if(b == 0xc0) { + // // nil is read + // stack.reduceCount(); + // headByte = REQUIRE_TO_READ_HEAD; + // return true; + // } + // // not nil + // return false; + //} @Override public boolean trySkipNil() throws IOException { diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index b1e17709a..892e7799d 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -30,13 +30,6 @@ * @version 0.6.0 */ public interface Unpacker extends Iterable, Closeable { - public boolean tryReadNil() throws IOException; - - public boolean trySkipNil() throws IOException; - - public void readNil() throws IOException; - - public boolean readBoolean() throws IOException; public byte readByte() throws IOException; @@ -57,6 +50,12 @@ public interface Unpacker extends Iterable, Closeable { public ByteBuffer readByteBuffer() throws IOException; + public String readString() throws IOException; + + public Value readValue() throws IOException; + + + public void readNil() throws IOException; public int readArrayBegin() throws IOException; @@ -64,7 +63,6 @@ public interface Unpacker extends Iterable, Closeable { public void readArrayEnd() throws IOException; - public int readMapBegin() throws IOException; public void readMapEnd(boolean check) throws IOException; @@ -72,18 +70,15 @@ public interface Unpacker extends Iterable, Closeable { public void readMapEnd() throws IOException; - public String readString() throws IOException; - - public UnpackerIterator iterator(); + public boolean trySkipNil() throws IOException; public void skip() throws IOException; - - public Value readValue() throws IOException; - - public T read(Class klass) throws IOException; public T read(T to) throws IOException; + + + public UnpackerIterator iterator(); } diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index 2deba773d..61514d60d 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -187,23 +187,25 @@ protected void writeString(String s) throws IOException { } @Override - public void writeNil() throws IOException { + public Packer writeNil() throws IOException { beginElement(); out.write(NULL, 0, NULL.length); endElement(); + return this; } @Override - public void writeArrayBegin(int size) throws IOException { + public Packer writeArrayBegin(int size) throws IOException { beginElement(); out.writeByte(LEFT_BR); endElement(); stack.pushArray(size); flags[stack.getDepth()] = FLAG_FIRST_ELEMENT; + return this; } @Override - public void writeArrayEnd(boolean check) throws IOException { + public Packer writeArrayEnd(boolean check) throws IOException { if(!stack.topIsArray()) { throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); } @@ -220,19 +222,21 @@ public void writeArrayEnd(boolean check) throws IOException { stack.pop(); out.writeByte(RIGHT_BR); + return this; } @Override - public void writeMapBegin(int size) throws IOException { + public Packer writeMapBegin(int size) throws IOException { beginElement(); out.writeByte(LEFT_WN); endElement(); stack.pushMap(size); flags[stack.getDepth()] = FLAG_FIRST_ELEMENT | FLAG_MAP_KEY; + return this; } @Override - public void writeMapEnd(boolean check) throws IOException { + public Packer writeMapEnd(boolean check) throws IOException { if(!stack.topIsMap()) { throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); } @@ -249,6 +253,7 @@ public void writeMapEnd(boolean check) throws IOException { stack.pop(); out.writeByte(RIGHT_WN); + return this; } @Override From 75763c74ce7828e4fc1d102da500f655a487c1c9 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 02:56:56 +0900 Subject: [PATCH 169/409] Packer implements Flushable --- src/main/java/org/msgpack/io/BufferedOutput.java | 15 +++++++++++++++ .../java/org/msgpack/io/ByteBufferOutput.java | 16 ++++++++++++++++ .../java/org/msgpack/io/LinkedBufferOutput.java | 2 ++ src/main/java/org/msgpack/io/Output.java | 3 ++- src/main/java/org/msgpack/io/StreamOutput.java | 16 ++++++++++++++++ .../org/msgpack/packer/MessagePackPacker.java | 6 ++++++ src/main/java/org/msgpack/packer/Packer.java | 3 ++- .../java/org/msgpack/packer/Unconverter.java | 8 ++++++++ .../org/msgpack/unpacker/AbstractUnpacker.java | 5 ----- .../java/org/msgpack/util/json/JSONPacker.java | 5 +++++ 10 files changed, 72 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index d8bfcaa80..e7bdbdae1 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -53,6 +53,7 @@ private void reserve(int len) throws IOException { } } + @Override public void write(byte[] b, int off, int len) throws IOException { if(buffer == null) { if(bufferSize < len) { @@ -77,6 +78,7 @@ public void write(byte[] b, int off, int len) throws IOException { } } + @Override public void write(ByteBuffer bb) throws IOException { int len = bb.remaining(); if(buffer == null) { @@ -102,47 +104,55 @@ public void write(ByteBuffer bb) throws IOException { } } + @Override public void writeByte(byte v) throws IOException { reserve(1); buffer[filled++] = v; } + @Override public void writeShort(short v) throws IOException { reserve(2); castByteBuffer.putShort(filled, v); filled += 2; } + @Override public void writeInt(int v) throws IOException { reserve(4); castByteBuffer.putInt(filled, v); filled += 4; } + @Override public void writeLong(long v) throws IOException { reserve(8); castByteBuffer.putLong(filled, v); filled += 8; } + @Override public void writeFloat(float v) throws IOException { reserve(4); castByteBuffer.putFloat(filled, v); filled += 4; } + @Override public void writeDouble(double v) throws IOException { reserve(8); castByteBuffer.putDouble(filled, v); filled += 8; } + @Override public void writeByteAndByte(byte b, byte v) throws IOException { reserve(2); buffer[filled++] = b; buffer[filled++] = v; } + @Override public void writeByteAndShort(byte b, short v) throws IOException { reserve(3); buffer[filled++] = b; @@ -150,6 +160,7 @@ public void writeByteAndShort(byte b, short v) throws IOException { filled += 2; } + @Override public void writeByteAndInt(byte b, int v) throws IOException { reserve(5); buffer[filled++] = b; @@ -157,6 +168,7 @@ public void writeByteAndInt(byte b, int v) throws IOException { filled += 4; } + @Override public void writeByteAndLong(byte b, long v) throws IOException { reserve(9); buffer[filled++] = b; @@ -164,6 +176,7 @@ public void writeByteAndLong(byte b, long v) throws IOException { filled += 8; } + @Override public void writeByteAndFloat(byte b, float v) throws IOException { reserve(5); buffer[filled++] = b; @@ -171,6 +184,7 @@ public void writeByteAndFloat(byte b, float v) throws IOException { filled += 4; } + @Override public void writeByteAndDouble(byte b, double v) throws IOException { reserve(9); buffer[filled++] = b; @@ -178,6 +192,7 @@ public void writeByteAndDouble(byte b, double v) throws IOException { filled += 8; } + @Override public void flush() throws IOException { if(filled > 0) { if(!flushBuffer(buffer, 0, filled)) { diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index 0792432eb..a7c853ca8 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -48,85 +48,101 @@ private void reserve(int len) throws IOException { buffer = callback.call(buffer, len); } + @Override public void write(byte[] b, int off, int len) throws IOException { reserve(len); buffer.put(b, off, len); } + @Override public void write(ByteBuffer bb) throws IOException { reserve(bb.remaining()); buffer.put(bb); } + @Override public void writeByte(byte v) throws IOException { reserve(1); buffer.put(v); } + @Override public void writeShort(short v) throws IOException { reserve(2); buffer.putShort(v); } + @Override public void writeInt(int v) throws IOException { reserve(4); buffer.putInt(v); } + @Override public void writeLong(long v) throws IOException { reserve(8); buffer.putLong(v); } + @Override public void writeFloat(float v) throws IOException { reserve(4); buffer.putFloat(v); } + @Override public void writeDouble(double v) throws IOException { reserve(8); buffer.putDouble(v); } + @Override public void writeByteAndByte(byte b, byte v) throws IOException { reserve(2); buffer.put(b); buffer.put(v); } + @Override public void writeByteAndShort(byte b, short v) throws IOException { reserve(3); buffer.put(b); buffer.putShort(v); } + @Override public void writeByteAndInt(byte b, int v) throws IOException { reserve(5); buffer.put(b); buffer.putInt(v); } + @Override public void writeByteAndLong(byte b, long v) throws IOException { reserve(9); buffer.put(b); buffer.putLong(v); } + @Override public void writeByteAndFloat(byte b, float v) throws IOException { reserve(5); buffer.put(b); buffer.putFloat(v); } + @Override public void writeByteAndDouble(byte b, double v) throws IOException { reserve(9); buffer.put(b); buffer.putDouble(v); } + @Override public void flush() throws IOException { } + @Override public void close() { } } diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 67c9b963e..5a9aa2a71 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -58,6 +58,7 @@ public int getSize() { return size + filled; } + @Override protected boolean flushBuffer(byte[] b, int off, int len) { link.add(new Link(b, off, len)); size += len; @@ -70,6 +71,7 @@ public void clear() { filled = 0; } + @Override public void close() { } } diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index 7e3958093..278d6fa49 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -19,10 +19,11 @@ import java.io.IOException; import java.io.Closeable; +import java.io.Flushable; import java.nio.ByteBuffer; -public interface Output extends Closeable { +public interface Output extends Closeable, Flushable { public void write(byte[] b, int off, int len) throws IOException; public void write(ByteBuffer bb) throws IOException; diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index 8d0aadefd..2f22488fc 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -29,10 +29,12 @@ public StreamOutput(OutputStream out) { this.out = new DataOutputStream(out); } + @Override public void write(byte[] b, int off, int len) throws IOException { out.write(b, off, len); } + @Override public void write(ByteBuffer bb) throws IOException { if(bb.hasArray()) { byte[] array = bb.array(); @@ -47,63 +49,77 @@ public void write(ByteBuffer bb) throws IOException { } } + @Override public void writeByte(byte v) throws IOException { out.write(v); } + @Override public void writeShort(short v) throws IOException { out.writeShort(v); } + @Override public void writeInt(int v) throws IOException { out.writeInt(v); } + @Override public void writeLong(long v) throws IOException { out.writeLong(v); } + @Override public void writeFloat(float v) throws IOException { out.writeFloat(v); } + @Override public void writeDouble(double v) throws IOException { out.writeDouble(v); } + @Override public void writeByteAndByte(byte b, byte v) throws IOException { out.write(b); out.write(v); } + @Override public void writeByteAndShort(byte b, short v) throws IOException { out.write(b); out.writeShort(v); } + @Override public void writeByteAndInt(byte b, int v) throws IOException { out.write(b); out.writeInt(v); } + @Override public void writeByteAndLong(byte b, long v) throws IOException { out.write(b); out.writeLong(v); } + @Override public void writeByteAndFloat(byte b, float v) throws IOException { out.write(b); out.writeFloat(v); } + @Override public void writeByteAndDouble(byte b, double v) throws IOException { out.write(b); out.writeDouble(v); } + @Override public void flush() throws IOException { } + @Override public void close() throws IOException { out.close(); } diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 9cf1277a8..e10ac132d 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -324,6 +324,12 @@ public void reset() { stack.clear(); } + @Override + public void flush() throws IOException { + out.flush(); + } + + @Override public void close() throws IOException { out.close(); } diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 56503d32a..9663c4381 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -20,6 +20,7 @@ import java.math.BigInteger; import java.io.IOException; import java.io.Closeable; +import java.io.Flushable; import java.nio.ByteBuffer; import org.msgpack.type.Value; @@ -30,7 +31,7 @@ * * @version 0.6.0 */ -public interface Packer extends Closeable { +public interface Packer extends Closeable, Flushable { public Packer write(boolean o) throws IOException; public Packer write(byte o) throws IOException; diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index ddcd169d3..4297a99a5 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -215,5 +215,13 @@ private void putContainer(Value v) { stack.reduceCount(); } } + + @Override + public void flush() throws IOException { + } + + @Override + public void close() throws IOException { + } } diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 4d40fa33c..b5f49f6d8 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -79,10 +79,5 @@ public T read(T to) throws IOException { Template tmpl = msgpack.lookup((Class) to.getClass()); return (T) tmpl.read(this, to); } - - - @Override - public void close() throws IOException { - } } diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index 61514d60d..780cfbf0f 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -256,6 +256,11 @@ public Packer writeMapEnd(boolean check) throws IOException { return this; } + @Override + public void flush() throws IOException { + out.flush(); + } + @Override public void close() throws IOException { out.close(); From e4e3f4c3066d0caa5a142bba07dade43a9a61cac Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 03:03:04 +0900 Subject: [PATCH 170/409] Unpacker#read returns null if nil --- .../msgpack/unpacker/AbstractUnpacker.java | 8 ++++++ .../java/org/msgpack/unpacker/Converter.java | 28 +++++++++++-------- .../msgpack/unpacker/MessagePackUnpacker.java | 26 ++++++++--------- 3 files changed, 37 insertions(+), 25 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index b5f49f6d8..40a1ee296 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -68,14 +68,22 @@ public Value readValue() throws IOException { } + protected abstract boolean tryReadNil() throws IOException; + @Override public T read(Class klass) throws IOException { + if(tryReadNil()) { + return null; + } Template tmpl = msgpack.lookup(klass); return (T) tmpl.read(this, null); } @Override public T read(T to) throws IOException { + if(tryReadNil()) { + return null; + } Template tmpl = msgpack.lookup((Class) to.getClass()); return (T) tmpl.read(this, to); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index d84e2b562..27fdee8a0 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -56,18 +56,18 @@ private void ensureValue() throws IOException { } } - //@Override - //public boolean tryReadNil() throws IOException { - // stack.checkCount(); - // if(getTop().isNil()) { - // stack.reduceCount(); - // if(stack.getDepth() == 0) { - // value = null; - // } - // return true; - // } - // return false; - //} + @Override + public boolean tryReadNil() throws IOException { + stack.checkCount(); + if(getTop().isNil()) { + stack.reduceCount(); + if(stack.getDepth() == 0) { + value = null; + } + return true; + } + return false; + } @Override public boolean trySkipNil() throws IOException { @@ -403,5 +403,9 @@ public void reset() { stack.clear(); value = null; } + + @Override + public void close() throws IOException { + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 3d34dc7b4..984856f90 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -319,19 +319,19 @@ private void readRawBodyCont() throws IOException { } } - //@Override - //public boolean tryReadNil() throws IOException { - // stack.checkCount(); - // int b = getHeadByte() & 0xff; - // if(b == 0xc0) { - // // nil is read - // stack.reduceCount(); - // headByte = REQUIRE_TO_READ_HEAD; - // return true; - // } - // // not nil - // return false; - //} + @Override + protected boolean tryReadNil() throws IOException { + stack.checkCount(); + int b = getHeadByte() & 0xff; + if(b == 0xc0) { + // nil is read + stack.reduceCount(); + headByte = REQUIRE_TO_READ_HEAD; + return true; + } + // not nil + return false; + } @Override public boolean trySkipNil() throws IOException { From 40a15b19e0f6e721538d12b4a1c3ff378750abb2 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 03:09:27 +0900 Subject: [PATCH 171/409] AnyTemplate#write: fixed required flag --- src/main/java/org/msgpack/template/AnyTemplate.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index d3215100f..ecbe6c8e6 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -57,6 +57,10 @@ public T read(Unpacker u, T to, boolean required) throws IOException, MessageTyp if(!required && u.trySkipNil()) { return null; } - return u.read(to); + T o = u.read(to); + if(required && o == null) { + throw new MessageTypeException("Unexpected nil value"); + } + return o; } } From ebc3164c6700e5b5a1c3cf9defdaf627f7ee330e Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 03:14:56 +0900 Subject: [PATCH 172/409] Unpacker: changed order of method declarations --- .../java/org/msgpack/unpacker/Unpacker.java | 46 +++++++++---------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 892e7799d..1e2d095c7 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -30,53 +30,53 @@ * @version 0.6.0 */ public interface Unpacker extends Iterable, Closeable { - public boolean readBoolean() throws IOException; + public T read(Class klass) throws IOException; - public byte readByte() throws IOException; + public T read(T to) throws IOException; - public short readShort() throws IOException; + public void skip() throws IOException; - public int readInt() throws IOException; - public long readLong() throws IOException; + public int readArrayBegin() throws IOException; - public BigInteger readBigInteger() throws IOException; + public void readArrayEnd(boolean check) throws IOException; - public float readFloat() throws IOException; + public void readArrayEnd() throws IOException; - public double readDouble() throws IOException; + public int readMapBegin() throws IOException; - public byte[] readByteArray() throws IOException; + public void readMapEnd(boolean check) throws IOException; - public ByteBuffer readByteBuffer() throws IOException; + public void readMapEnd() throws IOException; - public String readString() throws IOException; + public void readNil() throws IOException; - public Value readValue() throws IOException; + public boolean trySkipNil() throws IOException; - public void readNil() throws IOException; + public boolean readBoolean() throws IOException; - public int readArrayBegin() throws IOException; + public byte readByte() throws IOException; - public void readArrayEnd(boolean check) throws IOException; + public short readShort() throws IOException; - public void readArrayEnd() throws IOException; + public int readInt() throws IOException; - public int readMapBegin() throws IOException; + public long readLong() throws IOException; - public void readMapEnd(boolean check) throws IOException; + public BigInteger readBigInteger() throws IOException; - public void readMapEnd() throws IOException; + public float readFloat() throws IOException; + public double readDouble() throws IOException; - public boolean trySkipNil() throws IOException; + public byte[] readByteArray() throws IOException; - public void skip() throws IOException; + public ByteBuffer readByteBuffer() throws IOException; - public T read(Class klass) throws IOException; + public String readString() throws IOException; - public T read(T to) throws IOException; + public Value readValue() throws IOException; public UnpackerIterator iterator(); From 367d61496d0e4aa828fe684e92fd7c5afadf1f50 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 03:48:37 +0900 Subject: [PATCH 173/409] Value#isXxx -> Value#isXxxValue --- .../org/msgpack/type/AbstractArrayValue.java | 29 +++++++++--- .../msgpack/type/AbstractBooleanValue.java | 5 +- .../org/msgpack/type/AbstractMapValue.java | 29 +++++++++--- .../org/msgpack/type/AbstractRawValue.java | 11 ++++- .../java/org/msgpack/type/AbstractValue.java | 14 +++--- .../java/org/msgpack/type/ArrayValueImpl.java | 13 ++++- .../org/msgpack/type/BigIntegerValueImpl.java | 19 +++++++- .../msgpack/type/ByteArrayRawValueImpl.java | 7 ++- .../org/msgpack/type/DoubleValueImpl.java | 16 ++++++- .../java/org/msgpack/type/FalseValueImpl.java | 8 +++- .../java/org/msgpack/type/FloatValue.java | 4 +- .../java/org/msgpack/type/FloatValueImpl.java | 16 ++++++- .../java/org/msgpack/type/IntValueImpl.java | 19 +++++++- .../java/org/msgpack/type/IntegerValue.java | 7 +-- .../java/org/msgpack/type/LongValueImpl.java | 19 +++++++- src/main/java/org/msgpack/type/NilValue.java | 12 ++++- .../java/org/msgpack/type/NumberValue.java | 30 +++++++++--- .../msgpack/type/SequentialMapValueImpl.java | 26 +++++++++- .../org/msgpack/type/StringRawValueImpl.java | 6 ++- .../java/org/msgpack/type/TrueValueImpl.java | 8 +++- src/main/java/org/msgpack/type/Value.java | 14 +++--- .../java/org/msgpack/unpacker/Converter.java | 22 ++++----- .../org/msgpack/TestBufferPackConvert.java | 22 ++++----- .../java/org/msgpack/TestPackConvert.java | 22 ++++----- .../java/org/msgpack/type/ProxyValue.java | 47 +++++++++++++------ 25 files changed, 322 insertions(+), 103 deletions(-) diff --git a/src/main/java/org/msgpack/type/AbstractArrayValue.java b/src/main/java/org/msgpack/type/AbstractArrayValue.java index da059b2a7..2436b4010 100644 --- a/src/main/java/org/msgpack/type/AbstractArrayValue.java +++ b/src/main/java/org/msgpack/type/AbstractArrayValue.java @@ -21,62 +21,77 @@ import org.msgpack.MessageTypeException; abstract class AbstractArrayValue extends AbstractList implements ArrayValue { + @Override public ValueType getType() { return ValueType.ARRAY; } - public boolean isArray() { + @Override + public boolean isArrayValue() { return true; } + @Override public ArrayValue asArrayValue() { return this; } - public boolean isNil() { + @Override + public boolean isNilValue() { return false; } - public boolean isBoolean() { + @Override + public boolean isBooleanValue() { return false; } - public boolean isInteger() { + @Override + public boolean isIntegerValue() { return false; } - public boolean isFloat() { + @Override + public boolean isFloatValue() { return false; } - public boolean isMap() { + @Override + public boolean isMapValue() { return false; } - public boolean isRaw() { + @Override + public boolean isRawValue() { return false; } + @Override public NilValue asNilValue() { throw new MessageTypeException(); } + @Override public BooleanValue asBooleanValue() { throw new MessageTypeException(); } + @Override public IntegerValue asIntegerValue() { throw new MessageTypeException(); } + @Override public FloatValue asFloatValue() { throw new MessageTypeException(); } + @Override public MapValue asMapValue() { throw new MessageTypeException(); } + @Override public RawValue asRawValue() { throw new MessageTypeException(); } diff --git a/src/main/java/org/msgpack/type/AbstractBooleanValue.java b/src/main/java/org/msgpack/type/AbstractBooleanValue.java index e339e7c9f..e1eb26e49 100644 --- a/src/main/java/org/msgpack/type/AbstractBooleanValue.java +++ b/src/main/java/org/msgpack/type/AbstractBooleanValue.java @@ -18,11 +18,13 @@ package org.msgpack.type; abstract class AbstractBooleanValue extends AbstractValue implements BooleanValue { + @Override public ValueType getType() { return ValueType.BOOLEAN; } - public boolean isBoolean() { + @Override + public boolean isBooleanValue() { return true; } @@ -34,6 +36,7 @@ public boolean isFalse() { return !getBoolean(); } + @Override public BooleanValue asBooleanValue() { return this; } diff --git a/src/main/java/org/msgpack/type/AbstractMapValue.java b/src/main/java/org/msgpack/type/AbstractMapValue.java index b2bee07f3..e7d3098bb 100644 --- a/src/main/java/org/msgpack/type/AbstractMapValue.java +++ b/src/main/java/org/msgpack/type/AbstractMapValue.java @@ -21,62 +21,77 @@ import org.msgpack.MessageTypeException; abstract class AbstractMapValue extends AbstractMap implements MapValue { + @Override public ValueType getType() { return ValueType.MAP; } - public boolean isMap() { + @Override + public boolean isMapValue() { return true; } + @Override public MapValue asMapValue() { return this; } - public boolean isNil() { + @Override + public boolean isNilValue() { return false; } - public boolean isBoolean() { + @Override + public boolean isBooleanValue() { return false; } - public boolean isInteger() { + @Override + public boolean isIntegerValue() { return false; } - public boolean isFloat() { + @Override + public boolean isFloatValue() { return false; } - public boolean isArray() { + @Override + public boolean isArrayValue() { return false; } - public boolean isRaw() { + @Override + public boolean isRawValue() { return false; } + @Override public NilValue asNilValue() { throw new MessageTypeException(); } + @Override public BooleanValue asBooleanValue() { throw new MessageTypeException(); } + @Override public IntegerValue asIntegerValue() { throw new MessageTypeException(); } + @Override public FloatValue asFloatValue() { throw new MessageTypeException(); } + @Override public ArrayValue asArrayValue() { throw new MessageTypeException(); } + @Override public RawValue asRawValue() { throw new MessageTypeException(); } diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index a766c4d36..4806bb7b3 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -26,18 +26,22 @@ import java.nio.charset.MalformedInputException; abstract class AbstractRawValue extends AbstractValue implements RawValue { + @Override public ValueType getType() { return ValueType.RAW; } - public boolean isRaw() { + @Override + public boolean isRawValue() { return true; } + @Override public RawValue asRawValue() { return this; } + @Override public boolean equals(Object o) { if(this == o) { return true; @@ -46,21 +50,24 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isRaw()) { + if(!v.isRawValue()) { return false; } return Arrays.equals(getByteArray(), v.asRawValue().getByteArray()); } + @Override public int hashCode() { return Arrays.hashCode(getByteArray()); } + @Override public String toString() { return toString(new StringBuilder()).toString(); } + @Override public StringBuilder toString(StringBuilder sb) { String s; if(getClass() == StringRawValueImpl.class) { diff --git a/src/main/java/org/msgpack/type/AbstractValue.java b/src/main/java/org/msgpack/type/AbstractValue.java index f98d0bd15..395b605bd 100644 --- a/src/main/java/org/msgpack/type/AbstractValue.java +++ b/src/main/java/org/msgpack/type/AbstractValue.java @@ -24,31 +24,31 @@ import org.msgpack.MessageTypeException; abstract class AbstractValue implements Value { - public boolean isNil() { + public boolean isNilValue() { return false; } - public boolean isBoolean() { + public boolean isBooleanValue() { return false; } - public boolean isInteger() { + public boolean isIntegerValue() { return false; } - public boolean isFloat() { + public boolean isFloatValue() { return false; } - public boolean isArray() { + public boolean isArrayValue() { return false; } - public boolean isMap() { + public boolean isMapValue() { return false; } - public boolean isRaw() { + public boolean isRawValue() { return false; } diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index e37249bd2..050259479 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -32,6 +32,7 @@ public static ArrayValue getEmptyInstance() { private Value[] array; + @Override public Value[] getElementArray() { return array; } @@ -45,14 +46,17 @@ public Value[] getElementArray() { } } + @Override public int size() { return array.length; } + @Override public boolean isEmpty() { return array.length == 0; } + @Override public Value get(int index) { if(index < 0 || array.length <= index) { throw new IndexOutOfBoundsException(); @@ -60,6 +64,7 @@ public Value get(int index) { return array[index]; } + @Override public int indexOf(Object o) { if(o == null) { return -1; // FIXME NullPointerException? @@ -72,6 +77,7 @@ public int indexOf(Object o) { return -1; } + @Override public int lastIndexOf(Object o) { if(o == null) { return -1; // FIXME NullPointerException? @@ -84,6 +90,7 @@ public int lastIndexOf(Object o) { return -1; } + @Override public void writeTo(Packer pk) throws IOException { pk.writeArrayBegin(array.length); for(int i=0; i < array.length; i++) { @@ -92,6 +99,7 @@ public void writeTo(Packer pk) throws IOException { pk.writeArrayEnd(); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -100,7 +108,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isArray()) { + if(!v.isArrayValue()) { return false; } @@ -132,6 +140,7 @@ private boolean equals(ArrayValueImpl o) { // TODO compareTo? + @Override public int hashCode() { int h = 1; for(int i=0; i < array.length; i++) { @@ -141,10 +150,12 @@ public int hashCode() { return h; } + @Override public String toString() { return toString(new StringBuilder()).toString(); } + @Override public StringBuilder toString(StringBuilder sb) { if(array.length == 0) { return sb.append("[]"); diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index c8f0d000b..c094c5633 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -39,6 +39,7 @@ class BigIntegerValueImpl extends IntegerValue { private static BigInteger INT_MIN = BigInteger.valueOf((long)Integer.MIN_VALUE); private static BigInteger LONG_MIN = BigInteger.valueOf((long)Long.MIN_VALUE); + @Override public byte getByte() { if(value.compareTo(BYTE_MAX) > 0 || value.compareTo(BYTE_MIN) < 0) { throw new MessageTypeException(); // TODO message @@ -46,6 +47,7 @@ public byte getByte() { return value.byteValue(); } + @Override public short getShort() { if(value.compareTo(SHORT_MAX) > 0 || value.compareTo(SHORT_MIN) < 0) { throw new MessageTypeException(); // TODO message @@ -53,6 +55,7 @@ public short getShort() { return value.shortValue(); } + @Override public int getInt() { if(value.compareTo(INT_MAX) > 0 || value.compareTo(INT_MIN) < 0) { throw new MessageTypeException(); // TODO message @@ -60,6 +63,7 @@ public int getInt() { return value.intValue(); } + @Override public long getLong() { if(value.compareTo(LONG_MAX) > 0 || value.compareTo(LONG_MIN) < 0) { throw new MessageTypeException(); // TODO message @@ -67,44 +71,54 @@ public long getLong() { return value.longValue(); } + @Override public BigInteger getBigInteger() { return value; } + @Override public byte byteValue() { return value.byteValue(); } + @Override public short shortValue() { return value.shortValue(); } + @Override public int intValue() { return value.intValue(); } + @Override public long longValue() { return value.longValue(); } + @Override public BigInteger bigIntegerValue() { return value; } + @Override public float floatValue() { return value.floatValue(); } + @Override public double doubleValue() { return value.doubleValue(); } + @Override public void writeTo(Packer pk) throws IOException { pk.write(value); } // TODO compareTo + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -113,13 +127,14 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isInteger()) { + if(!v.isIntegerValue()) { return false; } return value.equals(v.asIntegerValue().bigIntegerValue()); } + @Override public int hashCode() { if(INT_MIN.compareTo(value) <= 0 && value.compareTo(INT_MAX) <= 0) { return (int)value.longValue(); @@ -130,10 +145,12 @@ public int hashCode() { return value.hashCode(); } + @Override public String toString() { return value.toString(); } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append(value.toString()); } diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 7bb4b9b2d..c214eba05 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -53,10 +53,12 @@ public static RawValue getEmptyInstance() { System.arraycopy(b, off, this.bytes, 0, len); } + @Override public byte[] getByteArray() { return bytes; } + @Override public String getString() { CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder(). onMalformedInput(CodingErrorAction.REPORT). @@ -68,10 +70,12 @@ public String getString() { } } + @Override public void writeTo(Packer pk) throws IOException { pk.write(bytes); } + @Override public boolean equals(Object o) { if(this == o) { return true; @@ -80,13 +84,14 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isRaw()) { + if(!v.isRawValue()) { return false; } return Arrays.equals(bytes, v.asRawValue().getByteArray()); } + @Override public int hashCode() { return Arrays.hashCode(bytes); } diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index a10bc8e29..65a833bfc 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -30,46 +30,57 @@ class DoubleValueImpl extends FloatValue { this.value = value; } + @Override public float getFloat() { return (float)value; } + @Override public double getDouble() { return value; } + @Override public byte byteValue() { return (byte)value; } + @Override public short shortValue() { return (short)value; } + @Override public int intValue() { return (int)value; } + @Override public long longValue() { return (long)value; } + @Override public BigInteger bigIntegerValue() { return new BigDecimal(value).toBigInteger(); } + @Override public float floatValue() { return (float)value; } + @Override public double doubleValue() { return value; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(value); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -78,7 +89,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isFloat()) { + if(!v.isFloatValue()) { return false; } @@ -87,15 +98,18 @@ public boolean equals(Object o) { // TODO compareTo + @Override public int hashCode() { long v = Double.doubleToLongBits(value); return (int)(v^(v>>>32)); } + @Override public String toString() { return Double.toString(value); } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append(Double.toString(value)); } diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index d87daf333..dfa3d87ec 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -29,14 +29,17 @@ static FalseValueImpl getInstance() { return instance; } + @Override public boolean getBoolean() { return false; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(false); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -45,21 +48,24 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isBoolean()) { + if(!v.isBooleanValue()) { return false; } return v.asBooleanValue().getBoolean() == false; } + @Override public int hashCode() { return 1237; } + @Override public String toString() { return "false"; } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append("false"); } diff --git a/src/main/java/org/msgpack/type/FloatValue.java b/src/main/java/org/msgpack/type/FloatValue.java index 4c2c51f3e..be677e7b7 100644 --- a/src/main/java/org/msgpack/type/FloatValue.java +++ b/src/main/java/org/msgpack/type/FloatValue.java @@ -18,11 +18,13 @@ package org.msgpack.type; public abstract class FloatValue extends NumberValue { + @Override public ValueType getType() { return ValueType.FLOAT; } - public boolean isFloat() { + @Override + public boolean isFloatValue() { return true; } diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index 6a303b01e..e90c6a32d 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -30,42 +30,52 @@ class FloatValueImpl extends FloatValue { this.value = value; } + @Override public float getFloat() { return value; } + @Override public double getDouble() { return (double)value; } + @Override public byte byteValue() { return (byte)value; } + @Override public short shortValue() { return (short)value; } + @Override public int intValue() { return (int)value; } + @Override public long longValue() { return (long)value; } + @Override public BigInteger bigIntegerValue() { return new BigDecimal((double)value).toBigInteger(); } + @Override public float floatValue() { return value; } + @Override public double doubleValue() { return (double)value; } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -74,27 +84,31 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isFloat()) { + if(!v.isFloatValue()) { return false; } return (double)value == v.asFloatValue().getDouble(); } + @Override public void writeTo(Packer pk) throws IOException { pk.write(value); } // TODO compareTo + @Override public int hashCode() { return Float.floatToIntBits(value); } + @Override public String toString() { return Float.toString(value); } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append(Float.toString(value)); } diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index 94c036414..7621b5b46 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -35,6 +35,7 @@ class IntValueImpl extends IntegerValue { private static int BYTE_MIN = (int)Byte.MIN_VALUE; private static int SHORT_MIN = (int)Short.MIN_VALUE; + @Override public byte getByte() { if(value > BYTE_MAX || value < BYTE_MIN) { throw new MessageTypeException(); // TODO message @@ -42,6 +43,7 @@ public byte getByte() { return (byte)value; } + @Override public short getShort() { if(value > SHORT_MAX || value < SHORT_MIN) { throw new MessageTypeException(); // TODO message @@ -49,52 +51,64 @@ public short getShort() { return (short)value; } + @Override public int getInt() { return value; } + @Override public long getLong() { return value; } + @Override public BigInteger getBigInteger() { return BigInteger.valueOf((long)value); } + @Override public byte byteValue() { return (byte)value; } + @Override public short shortValue() { return (short)value; } + @Override public int intValue() { return value; } + @Override public long longValue() { return (long)value; } + @Override public BigInteger bigIntegerValue() { return BigInteger.valueOf((long)value); } + @Override public float floatValue() { return (float)value; } + @Override public double doubleValue() { return (double)value; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(value); } // TODO compareTo + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -103,7 +117,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isInteger()) { + if(!v.isIntegerValue()) { return false; } @@ -115,14 +129,17 @@ public boolean equals(Object o) { } } + @Override public int hashCode() { return value; } + @Override public String toString() { return Integer.toString(value); } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append(Integer.toString(value)); } diff --git a/src/main/java/org/msgpack/type/IntegerValue.java b/src/main/java/org/msgpack/type/IntegerValue.java index cb3eba385..1d4192969 100644 --- a/src/main/java/org/msgpack/type/IntegerValue.java +++ b/src/main/java/org/msgpack/type/IntegerValue.java @@ -21,20 +21,21 @@ import org.msgpack.MessageTypeException; public abstract class IntegerValue extends NumberValue { + @Override public ValueType getType() { return ValueType.INTEGER; } - public boolean isInteger() { + @Override + public boolean isIntegerValue() { return true; } + @Override public IntegerValue asIntegerValue() { return this; } - public abstract BigInteger bigIntegerValue(); - public abstract byte getByte(); public abstract short getShort(); diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index 1df578ee7..1ba03378f 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -37,6 +37,7 @@ class LongValueImpl extends IntegerValue { private static long SHORT_MIN = (long)Short.MIN_VALUE; private static long INT_MIN = (long)Integer.MIN_VALUE; + @Override public byte getByte() { if(value > BYTE_MAX || value < BYTE_MIN) { throw new MessageTypeException(); // TODO message @@ -44,6 +45,7 @@ public byte getByte() { return (byte)value; } + @Override public short getShort() { if(value > SHORT_MAX || value < SHORT_MIN) { throw new MessageTypeException(); // TODO message @@ -51,6 +53,7 @@ public short getShort() { return (short)value; } + @Override public int getInt() { if(value > INT_MAX || value < INT_MIN) { throw new MessageTypeException(); // TODO message @@ -58,48 +61,59 @@ public int getInt() { return (int)value; } + @Override public long getLong() { return value; } + @Override public BigInteger getBigInteger() { return BigInteger.valueOf(value); } + @Override public byte byteValue() { return (byte)value; } + @Override public short shortValue() { return (short)value; } + @Override public int intValue() { return (int)value; } + @Override public long longValue() { return value; } + @Override public BigInteger bigIntegerValue() { return BigInteger.valueOf(value); } + @Override public float floatValue() { return (float)value; } + @Override public double doubleValue() { return (double)value; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(value); } // TODO compareTo + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -108,7 +122,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isInteger()) { + if(!v.isIntegerValue()) { return false; } @@ -120,6 +134,7 @@ public boolean equals(Object o) { } } + @Override public int hashCode() { if(INT_MIN <= value && value <= INT_MAX) { return (int)value; @@ -128,10 +143,12 @@ public int hashCode() { } } + @Override public String toString() { return Long.toString(value); } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append(Long.toString(value)); } diff --git a/src/main/java/org/msgpack/type/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java index 6d4669303..156f0892b 100644 --- a/src/main/java/org/msgpack/type/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -29,30 +29,37 @@ static NilValue getInstance() { return instance; } + @Override public ValueType getType() { return ValueType.NIL; } - public boolean isNil() { + @Override + public boolean isNilValue() { return true; } + @Override public NilValue asNilValue() { return this; } + @Override public String toString() { return "null"; } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append("null"); } + @Override public void writeTo(Packer pk) throws IOException { pk.writeNil(); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -60,9 +67,10 @@ public boolean equals(Object o) { if(!(o instanceof Value)) { return false; } - return ((Value) o).isNil(); + return ((Value) o).isNilValue(); } + @Override public int hashCode() { return 0; } diff --git a/src/main/java/org/msgpack/type/NumberValue.java b/src/main/java/org/msgpack/type/NumberValue.java index 94974d691..9a5c51225 100644 --- a/src/main/java/org/msgpack/type/NumberValue.java +++ b/src/main/java/org/msgpack/type/NumberValue.java @@ -21,60 +21,76 @@ import org.msgpack.MessageTypeException; public abstract class NumberValue extends Number implements Value { - public boolean isNil() { + @Override + public boolean isNilValue() { return false; } - public boolean isBoolean() { + @Override + public boolean isBooleanValue() { return false; } - public boolean isInteger() { + @Override + public boolean isIntegerValue() { return false; } - public boolean isFloat() { + @Override + public boolean isFloatValue() { return false; } - public boolean isArray() { + @Override + public boolean isArrayValue() { return false; } - public boolean isMap() { + @Override + public boolean isMapValue() { return false; } - public boolean isRaw() { + @Override + public boolean isRawValue() { return false; } + @Override public NilValue asNilValue() { throw new MessageTypeException(); } + @Override public BooleanValue asBooleanValue() { throw new MessageTypeException(); } + @Override public IntegerValue asIntegerValue() { throw new MessageTypeException(); } + @Override public FloatValue asFloatValue() { throw new MessageTypeException(); } + @Override public ArrayValue asArrayValue() { throw new MessageTypeException(); } + @Override public MapValue asMapValue() { throw new MessageTypeException(); } + @Override public RawValue asRawValue() { throw new MessageTypeException(); } + + public abstract BigInteger bigIntegerValue(); } diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 1c200ea47..4023ab772 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -37,6 +37,7 @@ public static MapValue getEmptyInstance() { private Value[] array; + @Override public Value[] getKeyValueArray() { return array; } @@ -53,7 +54,8 @@ public Value[] getKeyValueArray() { } } - public Value get(Value key) { + @Override + public Value get(Object key) { if(key == null) { return null; } @@ -72,10 +74,12 @@ private static class EntrySet extends AbstractSet> { this.array = array; } + @Override public int size() { return array.length / 2; } + @Override public Iterator> iterator() { return new EntrySetIterator(array); } @@ -90,10 +94,12 @@ private static class EntrySetIterator implements Iterator this.pos = 0; } + @Override public boolean hasNext() { return pos < array.length; } + @Override public Map.Entry next() { if(pos >= array.length) { throw new NoSuchElementException(); // TODO message @@ -103,6 +109,7 @@ public Map.Entry next() { return pair; } + @Override public void remove() { throw new UnsupportedOperationException(); // TODO message } @@ -115,10 +122,12 @@ private static class KeySet extends AbstractSet { this.array = array; } + @Override public int size() { return array.length / 2; } + @Override public Iterator iterator() { return new ValueIterator(array, 0); } @@ -131,10 +140,12 @@ private static class ValueCollection extends AbstractCollection { this.array = array; } + @Override public int size() { return array.length / 2; } + @Override public Iterator iterator() { return new ValueIterator(array, 1); } @@ -149,10 +160,12 @@ private static class ValueIterator implements Iterator { this.pos = offset; } + @Override public boolean hasNext() { return pos < array.length; } + @Override public Value next() { if(pos >= array.length) { throw new NoSuchElementException(); // TODO message @@ -162,23 +175,28 @@ public Value next() { return v; } + @Override public void remove() { throw new UnsupportedOperationException(); // TODO message } } + @Override public Set> entrySet() { return new EntrySet(array); } + @Override public Set keySet() { return new KeySet(array); } + @Override public Collection values() { return new ValueCollection(array); } + @Override public void writeTo(Packer pk) throws IOException { pk.writeMapBegin(array.length/2); for(int i=0; i < array.length; i++) { @@ -187,6 +205,7 @@ public void writeTo(Packer pk) throws IOException { pk.writeMapEnd(); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -195,7 +214,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isMap()) { + if(!v.isMapValue()) { return false; } @@ -257,6 +276,7 @@ private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { // TODO compareTo? + @Override public int hashCode() { int h = 0; for(int i=0; i < array.length; i+=2) { @@ -265,10 +285,12 @@ public int hashCode() { return h; } + @Override public String toString() { return toString(new StringBuilder()).toString(); } + @Override public StringBuilder toString(StringBuilder sb) { if(array.length == 0) { return sb.append("{}"); diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index 83778511d..baa36f1b1 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -30,6 +30,7 @@ class StringRawValueImpl extends AbstractRawValue { this.string = string; } + @Override public byte[] getByteArray() { try { // TODO encoding error? @@ -39,14 +40,17 @@ public byte[] getByteArray() { } } + @Override public String getString() { return string; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(string); } + @Override public boolean equals(Object o) { if(this == o) { return true; @@ -55,7 +59,7 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isRaw()) { + if(!v.isRawValue()) { return false; } diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index cb3d59e7e..39e28bc8d 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -29,14 +29,17 @@ static TrueValueImpl getInstance() { return instance; } + @Override public boolean getBoolean() { return true; } + @Override public void writeTo(Packer pk) throws IOException { pk.write(true); } + @Override public boolean equals(Object o) { if(o == this) { return true; @@ -45,21 +48,24 @@ public boolean equals(Object o) { return false; } Value v = (Value) o; - if(!v.isBoolean()) { + if(!v.isBooleanValue()) { return false; } return v.asBooleanValue().getBoolean() == true; } + @Override public int hashCode() { return 1231; } + @Override public String toString() { return "true"; } + @Override public StringBuilder toString(StringBuilder sb) { return sb.append("true"); } diff --git a/src/main/java/org/msgpack/type/Value.java b/src/main/java/org/msgpack/type/Value.java index 41bf8dab5..2b4f16795 100644 --- a/src/main/java/org/msgpack/type/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -23,19 +23,19 @@ public interface Value { public ValueType getType(); - public boolean isNil(); + public boolean isNilValue(); - public boolean isBoolean(); + public boolean isBooleanValue(); - public boolean isInteger(); + public boolean isIntegerValue(); - public boolean isFloat(); + public boolean isFloatValue(); - public boolean isArray(); + public boolean isArrayValue(); - public boolean isMap(); + public boolean isMapValue(); - public boolean isRaw(); + public boolean isRawValue(); public NilValue asNilValue(); diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 27fdee8a0..c0db0d97f 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -59,7 +59,7 @@ private void ensureValue() throws IOException { @Override public boolean tryReadNil() throws IOException { stack.checkCount(); - if(getTop().isNil()) { + if(getTop().isNilValue()) { stack.reduceCount(); if(stack.getDepth() == 0) { value = null; @@ -78,7 +78,7 @@ public boolean trySkipNil() throws IOException { return true; } - if(getTop().isNil()) { + if(getTop().isNilValue()) { stack.reduceCount(); if(stack.getDepth() == 0) { value = null; @@ -90,7 +90,7 @@ public boolean trySkipNil() throws IOException { @Override public void readNil() throws IOException { - if(!getTop().isNil()) { + if(!getTop().isNilValue()) { throw new MessageTypeException("Expected nil but got not nil value"); } stack.reduceCount(); @@ -199,7 +199,7 @@ public String readString() throws IOException { @Override public int readArrayBegin() throws IOException { Value v = getTop(); - if(!v.isArray()) { + if(!v.isArrayValue()) { throw new MessageTypeException("Expected array but got not array value"); } ArrayValue a = v.asArrayValue(); @@ -234,7 +234,7 @@ public void readArrayEnd(boolean check) throws IOException { @Override public int readMapBegin() throws IOException { Value v = getTop(); - if(!v.isMap()) { + if(!v.isMapValue()) { throw new MessageTypeException("Expected map but got not map value"); } MapValue m = v.asMapValue(); @@ -303,7 +303,7 @@ protected void readValue(Unconverter uc) throws IOException { stack.checkCount(); Value v = getTop(); - if(!v.isArray() && !v.isMap()) { + if(!v.isArrayValue() && !v.isMapValue()) { uc.write(v); stack.reduceCount(); if(stack.getDepth() == 0) { @@ -335,14 +335,14 @@ protected void readValue(Unconverter uc) throws IOException { stack.checkCount(); v = getTop(); - if(v.isArray()) { + if(v.isArrayValue()) { ArrayValue a = v.asArrayValue(); uc.writeArrayBegin(a.size()); stack.reduceCount(); stack.pushArray(a.size()); values[stack.getDepth()] = a.getElementArray(); - } else if(v.isMap()) { + } else if(v.isMapValue()) { MapValue m = v.asMapValue(); uc.writeMapBegin(m.size()); stack.reduceCount(); @@ -360,7 +360,7 @@ protected void readValue(Unconverter uc) throws IOException { public void skip() throws IOException { stack.checkCount(); Value v = getTop(); - if(!v.isArray() && !v.isMap()) { + if(!v.isArrayValue() && !v.isMapValue()) { stack.reduceCount(); if(stack.getDepth() == 0) { value = null; @@ -381,13 +381,13 @@ public void skip() throws IOException { stack.checkCount(); v = getTop(); - if(v.isArray()) { + if(v.isArrayValue()) { ArrayValue a = v.asArrayValue(); stack.reduceCount(); stack.pushArray(a.size()); values[stack.getDepth()] = a.getElementArray(); - } else if(v.isMap()) { + } else if(v.isMapValue()) { MapValue m = v.asMapValue(); stack.reduceCount(); stack.pushMap(m.size()); diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index c0d26790b..e687e9218 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -33,7 +33,7 @@ public void testBoolean(boolean v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isBoolean()); + assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); } @@ -51,7 +51,7 @@ public void testByte(byte v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); } @@ -69,7 +69,7 @@ public void testShort(short v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); } @@ -87,7 +87,7 @@ public void testInteger(int v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); } @@ -105,7 +105,7 @@ public void testLong(long v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); } @@ -123,7 +123,7 @@ public void testFloat(float v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isFloat()); + assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); } @@ -141,7 +141,7 @@ public void testDouble(double v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isFloat()); + assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); } @@ -154,7 +154,7 @@ public void testNil() throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isNil()); + assertTrue(value.isNilValue()); new Converter(value).readNil(); } @@ -171,7 +171,7 @@ public void testBigInteger(BigInteger v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); BigInteger ret = new Converter(value).readBigInteger(); assertEquals(v, ret); } @@ -189,7 +189,7 @@ public void testString(String v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isRaw()); + assertTrue(value.isRawValue()); String ret = new Converter(value).readString(); assertEquals(v, ret); } @@ -207,7 +207,7 @@ public void testByteArray(byte[] v) throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isRaw()); + assertTrue(value.isRawValue()); byte[] ret = new Converter(value).readByteArray(); assertArrayEquals(v, ret); } diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 4dea1bd0f..a75ab0da7 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -35,7 +35,7 @@ public void testBoolean(boolean v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isBoolean()); + assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); } @@ -54,7 +54,7 @@ public void testByte(byte v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); } @@ -73,7 +73,7 @@ public void testShort(short v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); } @@ -92,7 +92,7 @@ public void testInteger(int v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); } @@ -111,7 +111,7 @@ public void testLong(long v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); } @@ -130,7 +130,7 @@ public void testFloat(float v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isFloat()); + assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); } @@ -149,7 +149,7 @@ public void testDouble(double v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isFloat()); + assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); } @@ -163,7 +163,7 @@ public void testNil() throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isNil()); + assertTrue(value.isNilValue()); new Converter(value).readNil(); } @@ -181,7 +181,7 @@ public void testBigInteger(BigInteger v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isInteger()); + assertTrue(value.isIntegerValue()); BigInteger ret = new Converter(value).readBigInteger(); assertEquals(v, ret); } @@ -200,7 +200,7 @@ public void testString(String v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isRaw()); + assertTrue(value.isRawValue()); String ret = new Converter(value).readString(); assertEquals(v, ret); } @@ -219,7 +219,7 @@ public void testByteArray(byte[] v) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); - assertTrue(value.isRaw()); + assertTrue(value.isRawValue()); byte[] ret = new Converter(value).readByteArray(); assertArrayEquals(v, ret); } diff --git a/src/test/java/org/msgpack/type/ProxyValue.java b/src/test/java/org/msgpack/type/ProxyValue.java index 3c3920abd..1b4e18a39 100644 --- a/src/test/java/org/msgpack/type/ProxyValue.java +++ b/src/test/java/org/msgpack/type/ProxyValue.java @@ -13,78 +13,97 @@ public ValueType getType() { return getValue().getType(); } - public boolean isNil() { - return getValue().isNil(); + @Override + public boolean isNilValue() { + return getValue().isNilValue(); } - public boolean isBoolean() { - return getValue().isBoolean(); + @Override + public boolean isBooleanValue() { + return getValue().isBooleanValue(); } - public boolean isInteger() { - return getValue().isInteger(); + @Override + public boolean isIntegerValue() { + return getValue().isIntegerValue(); } - public boolean isFloat() { - return getValue().isFloat(); + @Override + public boolean isFloatValue() { + return getValue().isFloatValue(); } - public boolean isArray() { - return getValue().isArray(); + @Override + public boolean isArrayValue() { + return getValue().isArrayValue(); } - public boolean isMap() { - return getValue().isMap(); + @Override + public boolean isMapValue() { + return getValue().isMapValue(); } - public boolean isRaw() { - return getValue().isRaw(); + @Override + public boolean isRawValue() { + return getValue().isRawValue(); } + @Override public NilValue asNilValue() { return getValue().asNilValue(); } + @Override public BooleanValue asBooleanValue() { return getValue().asBooleanValue(); } + @Override public IntegerValue asIntegerValue() { return getValue().asIntegerValue(); } + @Override public FloatValue asFloatValue() { return getValue().asFloatValue(); } + @Override public ArrayValue asArrayValue() { return getValue().asArrayValue(); } + @Override public MapValue asMapValue() { return getValue().asMapValue(); } + @Override public RawValue asRawValue() { return getValue().asRawValue(); } + @Override public void writeTo(Packer pk) throws IOException { getValue().writeTo(pk); } + @Override public StringBuilder toString(StringBuilder sb) { return getValue().toString(sb); } + @Override public String toString() { return getValue().toString(); } + @Override public int hashCode() { return getValue().hashCode(); } + @Override public boolean equals(Object o) { return getValue().equals(o); } From 910634b500afd354decaa8d607386029d8001ff8 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 17 Sep 2011 04:41:49 +0900 Subject: [PATCH 174/409] ValueFactory#xxxValue -> ValueFactory#createXxxValue --- .../java/org/msgpack/packer/Unconverter.java | 32 ++-- .../java/org/msgpack/type/ValueFactory.java | 48 +++--- .../org/msgpack/unpacker/ValueAccept.java | 34 ++-- .../org/msgpack/util/json/JSONUnpacker.java | 16 +- .../java/org/msgpack/type/TestEquals.java | 158 +++++++++--------- .../msgpack/unpacker/TestBufferUnpacker.java | 20 +-- .../unpacker/TestMalformedEncoding.java | 6 +- .../util/json/TestSimpleJSONPackUnpack.java | 20 +-- 8 files changed, 167 insertions(+), 167 deletions(-) diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 4297a99a5..5d42e0bde 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -53,62 +53,62 @@ public void resetResult() { @Override public void writeBoolean(boolean v) throws IOException { - put(ValueFactory.booleanValue(v)); + put(ValueFactory.createBooleanValue(v)); } @Override public void writeByte(byte v) throws IOException { - put(ValueFactory.integerValue(v)); + put(ValueFactory.createIntegerValue(v)); } @Override public void writeShort(short v) throws IOException { - put(ValueFactory.integerValue(v)); + put(ValueFactory.createIntegerValue(v)); } @Override public void writeInt(int v) throws IOException { - put(ValueFactory.integerValue(v)); + put(ValueFactory.createIntegerValue(v)); } @Override public void writeBigInteger(BigInteger v) throws IOException { - put(ValueFactory.integerValue(v)); + put(ValueFactory.createIntegerValue(v)); } @Override public void writeLong(long v) throws IOException { - put(ValueFactory.integerValue(v)); + put(ValueFactory.createIntegerValue(v)); } @Override public void writeFloat(float v) throws IOException { - put(ValueFactory.floatValue(v)); + put(ValueFactory.createFloatValue(v)); } @Override public void writeDouble(double v) throws IOException { - put(ValueFactory.floatValue(v)); + put(ValueFactory.createFloatValue(v)); } @Override public void writeByteArray(byte[] b, int off, int len) throws IOException { - put(ValueFactory.rawValue(b, off, len)); + put(ValueFactory.createRawValue(b, off, len)); } @Override public void writeByteBuffer(ByteBuffer bb) throws IOException { - put(ValueFactory.rawValue(bb)); + put(ValueFactory.createRawValue(bb)); } @Override public void writeString(String s) throws IOException { - put(ValueFactory.rawValue(s)); + put(ValueFactory.createRawValue(s)); } @Override public Packer writeNil() throws IOException { - put(ValueFactory.nilValue()); + put(ValueFactory.createNilValue()); return this; } @@ -116,12 +116,12 @@ public Packer writeNil() throws IOException { public Packer writeArrayBegin(int size) throws IOException { if(size == 0) { Value[] array = new Value[size]; - putContainer(ValueFactory.arrayValue()); + putContainer(ValueFactory.createArrayValue()); stack.pushArray(0); values[stack.getDepth()] = null; } else { Value[] array = new Value[size]; - putContainer(ValueFactory.arrayValue(array, true)); + putContainer(ValueFactory.createArrayValue(array, true)); stack.pushArray(size); values[stack.getDepth()] = array; } @@ -154,12 +154,12 @@ public Packer writeArrayEnd(boolean check) throws IOException { public Packer writeMapBegin(int size) throws IOException { stack.checkCount(); if(size == 0) { - putContainer(ValueFactory.mapValue()); + putContainer(ValueFactory.createMapValue()); stack.pushMap(0); values[stack.getDepth()] = null; } else { Value[] array = new Value[size*2]; - putContainer(ValueFactory.mapValue(array, true)); + putContainer(ValueFactory.createMapValue(array, true)); stack.pushMap(size); values[stack.getDepth()] = array; } diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index 9d90efb77..c3fa71b5a 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -23,11 +23,11 @@ import java.util.Map; public final class ValueFactory { - public static NilValue nilValue() { + public static NilValue createNilValue() { return NilValue.getInstance(); } - public static BooleanValue booleanValue(boolean v) { + public static BooleanValue createBooleanValue(boolean v) { if(v) { return TrueValueImpl.getInstance(); } else { @@ -35,55 +35,55 @@ public static BooleanValue booleanValue(boolean v) { } } - public static IntegerValue integerValue(byte v) { + public static IntegerValue createIntegerValue(byte v) { return new IntValueImpl((int)v); } - public static IntegerValue integerValue(short v) { + public static IntegerValue createIntegerValue(short v) { return new IntValueImpl((int)v); } - public static IntegerValue integerValue(int v) { + public static IntegerValue createIntegerValue(int v) { return new IntValueImpl(v); } - public static IntegerValue integerValue(long v) { + public static IntegerValue createIntegerValue(long v) { return new LongValueImpl(v); } - public static IntegerValue integerValue(BigInteger v) { + public static IntegerValue createIntegerValue(BigInteger v) { return new BigIntegerValueImpl(v); } - public static FloatValue floatValue(float v) { + public static FloatValue createFloatValue(float v) { return new FloatValueImpl(v); } - public static FloatValue floatValue(double v) { + public static FloatValue createFloatValue(double v) { return new DoubleValueImpl(v); } - public static RawValue rawValue() { + public static RawValue createRawValue() { return ByteArrayRawValueImpl.getEmptyInstance(); } - public static RawValue rawValue(byte[] b) { - return rawValue(b, false); + public static RawValue createRawValue(byte[] b) { + return createRawValue(b, false); } - public static RawValue rawValue(byte[] b, boolean gift) { + public static RawValue createRawValue(byte[] b, boolean gift) { return new ByteArrayRawValueImpl(b, gift); } - public static RawValue rawValue(byte[] b, int off, int len) { + public static RawValue createRawValue(byte[] b, int off, int len) { return new ByteArrayRawValueImpl(b, off, len); } - public static RawValue rawValue(String s) { + public static RawValue createRawValue(String s) { return new StringRawValueImpl(s); } - public static RawValue rawValue(ByteBuffer bb) { + public static RawValue createRawValue(ByteBuffer bb) { int pos = bb.position(); try { byte[] buf = new byte[bb.remaining()]; @@ -94,19 +94,19 @@ public static RawValue rawValue(ByteBuffer bb) { } } - public static ArrayValue arrayValue() { + public static ArrayValue createArrayValue() { return ArrayValueImpl.getEmptyInstance(); } - public static ArrayValue arrayValue(Value[] array) { + public static ArrayValue createArrayValue(Value[] array) { if(array.length == 0) { // TODO EmptyArrayValueImpl? return ArrayValueImpl.getEmptyInstance(); } - return arrayValue(array, false); + return createArrayValue(array, false); } - public static ArrayValue arrayValue(Value[] array, boolean gift) { + public static ArrayValue createArrayValue(Value[] array, boolean gift) { if(array.length == 0) { // TODO EmptyArrayValueImpl? return ArrayValueImpl.getEmptyInstance(); @@ -114,19 +114,19 @@ public static ArrayValue arrayValue(Value[] array, boolean gift) { return new ArrayValueImpl(array, gift); } - public static MapValue mapValue() { + public static MapValue createMapValue() { return SequentialMapValueImpl.getEmptyInstance(); } - public static MapValue mapValue(Value[] kvs) { + public static MapValue createMapValue(Value[] kvs) { if(kvs.length == 0) { // TODO EmptyMapValueImpl? return SequentialMapValueImpl.getEmptyInstance(); } - return mapValue(kvs, false); + return createMapValue(kvs, false); } - public static MapValue mapValue(Value[] kvs, boolean gift) { + public static MapValue createMapValue(Value[] kvs, boolean gift) { if(kvs.length == 0) { // TODO EmptyMapValueImpl? return SequentialMapValueImpl.getEmptyInstance(); diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 24da89279..bbf0a8a57 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -33,46 +33,46 @@ void setUnconverter(Unconverter uc) throws IOException { @Override void acceptBoolean(boolean v) throws IOException { - uc.write(ValueFactory.booleanValue(v)); + uc.write(ValueFactory.createBooleanValue(v)); } @Override void acceptInteger(byte v) throws IOException { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } @Override void acceptInteger(short v) throws IOException { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } @Override void acceptInteger(int v) throws IOException { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } @Override void acceptInteger(long v) throws IOException { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } @Override void acceptUnsignedInteger(byte v) throws IOException { - uc.write(ValueFactory.integerValue(v & 0xff)); + uc.write(ValueFactory.createIntegerValue(v & 0xff)); } @Override void acceptUnsignedInteger(short v) throws IOException { - uc.write(ValueFactory.integerValue(v & 0xffff)); + uc.write(ValueFactory.createIntegerValue(v & 0xffff)); } @Override void acceptUnsignedInteger(int v) throws IOException { if(v < 0) { long value = (long)(v & 0x7fffffff) + 0x80000000L; - uc.write(ValueFactory.integerValue(value)); + uc.write(ValueFactory.createIntegerValue(value)); } else { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } } @@ -80,20 +80,20 @@ void acceptUnsignedInteger(int v) throws IOException { void acceptUnsignedInteger(long v) throws IOException { if(v < 0L) { BigInteger value = BigInteger.valueOf(v+Long.MAX_VALUE+1L).setBit(63); - uc.write(ValueFactory.integerValue(value)); + uc.write(ValueFactory.createIntegerValue(value)); } else { - uc.write(ValueFactory.integerValue(v)); + uc.write(ValueFactory.createIntegerValue(v)); } } @Override void acceptRaw(byte[] raw) throws IOException { - uc.write(ValueFactory.rawValue(raw)); + uc.write(ValueFactory.createRawValue(raw)); } @Override void acceptEmptyRaw() throws IOException { - uc.write(ValueFactory.rawValue()); + uc.write(ValueFactory.createRawValue()); } @Override @@ -101,7 +101,7 @@ public void refer(ByteBuffer bb, boolean gift) throws IOException { // TODO gift byte[] raw = new byte[bb.remaining()]; bb.get(raw); - uc.write(ValueFactory.rawValue(raw, true)); + uc.write(ValueFactory.createRawValue(raw, true)); } @Override @@ -116,17 +116,17 @@ void acceptMap(int size) throws IOException { @Override void acceptNil() throws IOException { - uc.write(ValueFactory.nilValue()); + uc.write(ValueFactory.createNilValue()); } @Override void acceptFloat(float v) throws IOException { - uc.write(ValueFactory.floatValue(v)); + uc.write(ValueFactory.createFloatValue(v)); } @Override void acceptDouble(double v) throws IOException { - uc.write(ValueFactory.floatValue(v)); + uc.write(ValueFactory.createFloatValue(v)); } } diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index daa01320e..49fd4a3d6 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -71,21 +71,21 @@ protected Value nextValue() throws IOException { private Value objectToValue(Object obj) { if(obj instanceof String) { - return ValueFactory.rawValue((String)obj); + return ValueFactory.createRawValue((String)obj); } else if(obj instanceof Integer) { - return ValueFactory.integerValue((Integer)obj); + return ValueFactory.createIntegerValue((Integer)obj); } else if(obj instanceof Long) { - return ValueFactory.integerValue((Long)obj); + return ValueFactory.createIntegerValue((Long)obj); } else if(obj instanceof Map) { return mapToValue((Map)obj); } else if(obj instanceof List) { return listToValue((List)obj); } else if(obj instanceof Boolean) { - return ValueFactory.booleanValue((Boolean)obj); + return ValueFactory.createBooleanValue((Boolean)obj); } else if(obj instanceof Double) { - return ValueFactory.floatValue((Double)obj); + return ValueFactory.createFloatValue((Double)obj); } else { - return ValueFactory.nilValue(); + return ValueFactory.createNilValue(); } } @@ -94,7 +94,7 @@ private Value listToValue(List list) { for(int i=0; i < array.length; i++) { array[i] = objectToValue(list.get(i)); } - return ValueFactory.arrayValue(array, true); + return ValueFactory.createArrayValue(array, true); } private Value mapToValue(Map map) { @@ -105,7 +105,7 @@ private Value mapToValue(Map map) { kvs[i] = objectToValue(pair.getKey()); kvs[i+1] = objectToValue(pair.getValue()); } - return ValueFactory.mapValue(kvs, true); + return ValueFactory.createMapValue(kvs, true); } public void close() throws IOException { diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java index 22a94dcb3..b4733f154 100644 --- a/src/test/java/org/msgpack/type/TestEquals.java +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -13,8 +13,8 @@ public class TestEquals extends TestSet { @Override public void testBoolean(boolean v) throws Exception { - Value a = ValueFactory.booleanValue(v); - Value b = ValueFactory.booleanValue(v); + Value a = ValueFactory.createBooleanValue(v); + Value b = ValueFactory.createBooleanValue(v); testEquals(a, b); } @@ -23,87 +23,87 @@ public void testBooleanArray(boolean[] v) throws Exception { Value[] vs1 = new Value[v.length]; Value[] vs2 = new Value[v.length]; for(int i=0; i < v.length; i++) { - vs1[i] = ValueFactory.booleanValue(v[i]); - vs2[i] = ValueFactory.booleanValue(v[i]); + vs1[i] = ValueFactory.createBooleanValue(v[i]); + vs2[i] = ValueFactory.createBooleanValue(v[i]); } - Value v1 = ValueFactory.arrayValue(vs1); - Value v2 = ValueFactory.arrayValue(vs2); + Value v1 = ValueFactory.createArrayValue(vs1); + Value v2 = ValueFactory.createArrayValue(vs2); testEquals(v1, v2); } @Override public void testByteArray(byte[] v) throws Exception { - Value v1 = ValueFactory.rawValue(v); - Value v2 = ValueFactory.rawValue(v); + Value v1 = ValueFactory.createRawValue(v); + Value v2 = ValueFactory.createRawValue(v); testEquals(v1, v2); } @Override public void testString(String v) throws Exception { - Value v1 = ValueFactory.rawValue(v); - Value v2 = ValueFactory.rawValue(v); + Value v1 = ValueFactory.createRawValue(v); + Value v2 = ValueFactory.createRawValue(v); testEquals(v1, v2); } @Override public void testFloat(float v) throws Exception { - Value v1 = ValueFactory.floatValue(v); - Value v2 = ValueFactory.floatValue(v); + Value v1 = ValueFactory.createFloatValue(v); + Value v2 = ValueFactory.createFloatValue(v); testEquals(v1, v2); } @Override public void testDouble(double v) throws Exception { - Value v1 = ValueFactory.floatValue(v); - Value v2 = ValueFactory.floatValue(v); + Value v1 = ValueFactory.createFloatValue(v); + Value v2 = ValueFactory.createFloatValue(v); testEquals(v1, v2); } @Test public void testMapOrder() throws Exception { - Value v1 = ValueFactory.mapValue(new Value[] { - ValueFactory.rawValue("k0"), ValueFactory.nilValue(), - ValueFactory.rawValue("k1"), ValueFactory.rawValue("v1"), - ValueFactory.rawValue("k2"), ValueFactory.rawValue("v2"), - ValueFactory.rawValue("k3"), ValueFactory.rawValue("v3"), - ValueFactory.rawValue("k4"), ValueFactory.rawValue("v4"), - ValueFactory.rawValue("k5"), ValueFactory.rawValue("v5"), - ValueFactory.rawValue("k6"), ValueFactory.rawValue("v6"), - ValueFactory.rawValue("k7"), ValueFactory.rawValue("v7"), - ValueFactory.rawValue("k8"), ValueFactory.rawValue("v8"), - ValueFactory.rawValue("k9"), ValueFactory.rawValue("v9"), - ValueFactory.rawValue("k10"), ValueFactory.rawValue("v10"), - ValueFactory.rawValue("k11"), ValueFactory.rawValue("v11"), - ValueFactory.rawValue("k12"), ValueFactory.rawValue("v12"), - ValueFactory.rawValue("k13"), ValueFactory.rawValue("v13"), - ValueFactory.rawValue("k14"), ValueFactory.rawValue("v14"), - ValueFactory.rawValue("k15"), ValueFactory.rawValue("v15"), - ValueFactory.rawValue("k16"), ValueFactory.rawValue("v16"), - ValueFactory.rawValue("k17"), ValueFactory.rawValue("v17"), - ValueFactory.rawValue("k18"), ValueFactory.rawValue("v18"), - ValueFactory.rawValue("k19"), ValueFactory.rawValue("v19"), + Value v1 = ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k0"), ValueFactory.createNilValue(), + ValueFactory.createRawValue("k1"), ValueFactory.createRawValue("v1"), + ValueFactory.createRawValue("k2"), ValueFactory.createRawValue("v2"), + ValueFactory.createRawValue("k3"), ValueFactory.createRawValue("v3"), + ValueFactory.createRawValue("k4"), ValueFactory.createRawValue("v4"), + ValueFactory.createRawValue("k5"), ValueFactory.createRawValue("v5"), + ValueFactory.createRawValue("k6"), ValueFactory.createRawValue("v6"), + ValueFactory.createRawValue("k7"), ValueFactory.createRawValue("v7"), + ValueFactory.createRawValue("k8"), ValueFactory.createRawValue("v8"), + ValueFactory.createRawValue("k9"), ValueFactory.createRawValue("v9"), + ValueFactory.createRawValue("k10"), ValueFactory.createRawValue("v10"), + ValueFactory.createRawValue("k11"), ValueFactory.createRawValue("v11"), + ValueFactory.createRawValue("k12"), ValueFactory.createRawValue("v12"), + ValueFactory.createRawValue("k13"), ValueFactory.createRawValue("v13"), + ValueFactory.createRawValue("k14"), ValueFactory.createRawValue("v14"), + ValueFactory.createRawValue("k15"), ValueFactory.createRawValue("v15"), + ValueFactory.createRawValue("k16"), ValueFactory.createRawValue("v16"), + ValueFactory.createRawValue("k17"), ValueFactory.createRawValue("v17"), + ValueFactory.createRawValue("k18"), ValueFactory.createRawValue("v18"), + ValueFactory.createRawValue("k19"), ValueFactory.createRawValue("v19"), }); - Value v2 = ValueFactory.mapValue(new Value[] { - ValueFactory.rawValue("k3"), ValueFactory.rawValue("v3"), - ValueFactory.rawValue("k11"), ValueFactory.rawValue("v11"), - ValueFactory.rawValue("k4"), ValueFactory.rawValue("v4"), - ValueFactory.rawValue("k10"), ValueFactory.rawValue("v10"), - ValueFactory.rawValue("k5"), ValueFactory.rawValue("v5"), - ValueFactory.rawValue("k6"), ValueFactory.rawValue("v6"), - ValueFactory.rawValue("k15"), ValueFactory.rawValue("v15"), - ValueFactory.rawValue("k7"), ValueFactory.rawValue("v7"), - ValueFactory.rawValue("k14"), ValueFactory.rawValue("v14"), - ValueFactory.rawValue("k8"), ValueFactory.rawValue("v8"), - ValueFactory.rawValue("k13"), ValueFactory.rawValue("v13"), - ValueFactory.rawValue("k9"), ValueFactory.rawValue("v9"), - ValueFactory.rawValue("k12"), ValueFactory.rawValue("v12"), - ValueFactory.rawValue("k0"), ValueFactory.nilValue(), - ValueFactory.rawValue("k1"), ValueFactory.rawValue("v1"), - ValueFactory.rawValue("k2"), ValueFactory.rawValue("v2"), - ValueFactory.rawValue("k18"), ValueFactory.rawValue("v18"), - ValueFactory.rawValue("k19"), ValueFactory.rawValue("v19"), - ValueFactory.rawValue("k16"), ValueFactory.rawValue("v16"), - ValueFactory.rawValue("k17"), ValueFactory.rawValue("v17"), + Value v2 = ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k3"), ValueFactory.createRawValue("v3"), + ValueFactory.createRawValue("k11"), ValueFactory.createRawValue("v11"), + ValueFactory.createRawValue("k4"), ValueFactory.createRawValue("v4"), + ValueFactory.createRawValue("k10"), ValueFactory.createRawValue("v10"), + ValueFactory.createRawValue("k5"), ValueFactory.createRawValue("v5"), + ValueFactory.createRawValue("k6"), ValueFactory.createRawValue("v6"), + ValueFactory.createRawValue("k15"), ValueFactory.createRawValue("v15"), + ValueFactory.createRawValue("k7"), ValueFactory.createRawValue("v7"), + ValueFactory.createRawValue("k14"), ValueFactory.createRawValue("v14"), + ValueFactory.createRawValue("k8"), ValueFactory.createRawValue("v8"), + ValueFactory.createRawValue("k13"), ValueFactory.createRawValue("v13"), + ValueFactory.createRawValue("k9"), ValueFactory.createRawValue("v9"), + ValueFactory.createRawValue("k12"), ValueFactory.createRawValue("v12"), + ValueFactory.createRawValue("k0"), ValueFactory.createNilValue(), + ValueFactory.createRawValue("k1"), ValueFactory.createRawValue("v1"), + ValueFactory.createRawValue("k2"), ValueFactory.createRawValue("v2"), + ValueFactory.createRawValue("k18"), ValueFactory.createRawValue("v18"), + ValueFactory.createRawValue("k19"), ValueFactory.createRawValue("v19"), + ValueFactory.createRawValue("k16"), ValueFactory.createRawValue("v16"), + ValueFactory.createRawValue("k17"), ValueFactory.createRawValue("v17"), }); testEquals(v1, v2); } @@ -131,12 +131,12 @@ public void testLong(long v) throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { if(compatibleWithByte(v)) { - Value vt = ValueFactory.integerValue(v); - Value vByte = ValueFactory.integerValue(v.byteValue()); - Value vShort = ValueFactory.integerValue(v.shortValue()); - Value vInt = ValueFactory.integerValue(v.intValue()); - Value vLong = ValueFactory.integerValue(v.longValue()); - Value vBigInteger = ValueFactory.integerValue(v); + Value vt = ValueFactory.createIntegerValue(v); + Value vByte = ValueFactory.createIntegerValue(v.byteValue()); + Value vShort = ValueFactory.createIntegerValue(v.shortValue()); + Value vInt = ValueFactory.createIntegerValue(v.intValue()); + Value vLong = ValueFactory.createIntegerValue(v.longValue()); + Value vBigInteger = ValueFactory.createIntegerValue(v); testEquals(vt, vByte); testEquals(vt, vShort); testEquals(vt, vInt); @@ -144,36 +144,36 @@ public void testBigInteger(BigInteger v) throws Exception { testEquals(vt, vBigInteger); } if(compatibleWithShort(v)) { - Value vt = ValueFactory.integerValue(v); - Value vShort = ValueFactory.integerValue(v.shortValue()); - Value vInt = ValueFactory.integerValue(v.intValue()); - Value vLong = ValueFactory.integerValue(v.longValue()); - Value vBigInteger = ValueFactory.integerValue(v); + Value vt = ValueFactory.createIntegerValue(v); + Value vShort = ValueFactory.createIntegerValue(v.shortValue()); + Value vInt = ValueFactory.createIntegerValue(v.intValue()); + Value vLong = ValueFactory.createIntegerValue(v.longValue()); + Value vBigInteger = ValueFactory.createIntegerValue(v); testEquals(vt, vShort); testEquals(vt, vInt); testEquals(vt, vLong); testEquals(vt, vBigInteger); } if(compatibleWithInt(v)) { - Value vt = ValueFactory.integerValue(v); - Value vInt = ValueFactory.integerValue(v.intValue()); - Value vLong = ValueFactory.integerValue(v.longValue()); - Value vBigInteger = ValueFactory.integerValue(v); + Value vt = ValueFactory.createIntegerValue(v); + Value vInt = ValueFactory.createIntegerValue(v.intValue()); + Value vLong = ValueFactory.createIntegerValue(v.longValue()); + Value vBigInteger = ValueFactory.createIntegerValue(v); testEquals(vt, vInt); testEquals(vt, vLong); testEquals(vt, vBigInteger); } if(compatibleWithLong(v)) { - Value vt = ValueFactory.integerValue(v); - Value vLong = ValueFactory.integerValue(v.longValue()); - Value vBigInteger = ValueFactory.integerValue(v); + Value vt = ValueFactory.createIntegerValue(v); + Value vLong = ValueFactory.createIntegerValue(v.longValue()); + Value vBigInteger = ValueFactory.createIntegerValue(v); testEquals(vt, vLong); testEquals(vt, vBigInteger); } { - Value vt = ValueFactory.integerValue(v); - Value vInt = ValueFactory.integerValue(v.intValue()); - Value vBigInteger = ValueFactory.integerValue(v); + Value vt = ValueFactory.createIntegerValue(v); + Value vInt = ValueFactory.createIntegerValue(v.intValue()); + Value vBigInteger = ValueFactory.createIntegerValue(v); testEquals(vt, vInt); testEquals(vt, vBigInteger); } @@ -181,8 +181,8 @@ public void testBigInteger(BigInteger v) throws Exception { @Test public void testNull() { - Value v1 = ValueFactory.nilValue(); - Value v2 = ValueFactory.nilValue(); + Value v1 = ValueFactory.createNilValue(); + Value v2 = ValueFactory.createNilValue(); testEquals(v1, v2); } diff --git a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java index 198d37c6e..6aca78f5c 100644 --- a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java +++ b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java @@ -101,17 +101,17 @@ public Value createComplexType() throws Exception { byte[] b2 = new byte[1024]; rand.nextBytes(b2); - Value list = ValueFactory.arrayValue(new Value[] { - ValueFactory.rawValue(b0), - ValueFactory.rawValue(b1), - ValueFactory.rawValue(b2), + Value list = ValueFactory.createArrayValue(new Value[] { + ValueFactory.createRawValue(b0), + ValueFactory.createRawValue(b1), + ValueFactory.createRawValue(b2), }); - Value map = ValueFactory.mapValue(new Value[] { - ValueFactory.integerValue(0), ValueFactory.integerValue(Integer.MIN_VALUE), - ValueFactory.integerValue(rand.nextInt()), ValueFactory.integerValue(Integer.MAX_VALUE), - ValueFactory.floatValue(rand.nextFloat()), ValueFactory.booleanValue(true), - ValueFactory.floatValue(rand.nextDouble()), ValueFactory.nilValue(), + Value map = ValueFactory.createMapValue(new Value[] { + ValueFactory.createIntegerValue(0), ValueFactory.createIntegerValue(Integer.MIN_VALUE), + ValueFactory.createIntegerValue(rand.nextInt()), ValueFactory.createIntegerValue(Integer.MAX_VALUE), + ValueFactory.createFloatValue(rand.nextFloat()), ValueFactory.createBooleanValue(true), + ValueFactory.createFloatValue(rand.nextDouble()), ValueFactory.createNilValue(), }); List values = new ArrayList(); @@ -123,7 +123,7 @@ public Value createComplexType() throws Exception { } } - Value complex = ValueFactory.arrayValue(values.toArray(new Value[values.size()])); + Value complex = ValueFactory.createArrayValue(values.toArray(new Value[values.size()])); return complex; } } diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index c81741c70..1a107620a 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -29,7 +29,7 @@ public class TestMalformedEncoding { @Test public void testRawValueGetString() throws Exception { for(byte[] malform : malforms) { - RawValue r = ValueFactory.rawValue(malform); + RawValue r = ValueFactory.createRawValue(malform); try { r.getString(); fail("no exception"); @@ -80,7 +80,7 @@ public void testUnpackerUnpackString() throws Exception { public void testConverterUnpackString() throws Exception { for(byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); - RawValue r = ValueFactory.rawValue(malform); + RawValue r = ValueFactory.createRawValue(malform); Converter u = new Converter(msgpack, r); try { u.readString(); @@ -121,7 +121,7 @@ public void testJSONBufferPackerWriteString() throws Exception { @Test public void testValueToString() throws Exception { for(byte[] malform : malforms) { - RawValue r = ValueFactory.rawValue(malform); + RawValue r = ValueFactory.createRawValue(malform); String str = r.toString(); // malformed bytes will be ignored assertEquals("\"\"", str); diff --git a/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java index 9a983c5d2..39fb37a54 100644 --- a/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestSimpleJSONPackUnpack.java @@ -17,17 +17,17 @@ public class TestSimpleJSONPackUnpack { public void testSimplePackUnpack() throws IOException { MessagePack msgpack = new MessagePack(); - Value v = ValueFactory.mapValue(new Value[] { - ValueFactory.rawValue("k1"), - ValueFactory.integerValue(1), - ValueFactory.rawValue("k2"), - ValueFactory.arrayValue(new Value[] { - ValueFactory.nilValue(), - ValueFactory.booleanValue(true), - ValueFactory.booleanValue(false) + Value v = ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory.createIntegerValue(1), + ValueFactory.createRawValue("k2"), + ValueFactory.createArrayValue(new Value[] { + ValueFactory.createNilValue(), + ValueFactory.createBooleanValue(true), + ValueFactory.createBooleanValue(false) }), - ValueFactory.rawValue("k3"), - ValueFactory.floatValue(0.1) + ValueFactory.createRawValue("k3"), + ValueFactory.createFloatValue(0.1) }); JSONBufferPacker pk = new JSONBufferPacker(msgpack); From 76ab0011261aaf06f022f226a689d711fee683b3 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 18 Sep 2011 01:14:20 +0900 Subject: [PATCH 175/409] added java document to MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 146 ++++++++++++++++++--- 1 file changed, 127 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 1b43a90fc..f4635e300 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -41,7 +41,7 @@ * deserializers for objects of classes. *

* - *

Overview

+ *

Overview of MessagePack

* *

* MessagePack is a binary-based efficient object serialization library for @@ -97,12 +97,12 @@ *

* If you want to serialize multiple objects sequentially, MessagePack * recommends use of {@link org.msgpack.packer.Packer} and - * {@link org.msgpack.unpacker.Unpacker} objects. Because {@link #write(Object)} - * and {@link #read(byte[])} method invocations create - * {@link org.msgpack.packer.Packer} and {@link org.msgpack.unpacker.Unpacker} - * objects every times. To use Packer and Unpacker - * objects, you call {@link #createPacker(OutputStream)} and - * {@link #createUnpacker(byte[])}. + * {@link org.msgpack.unpacker.Unpacker} objects. Because + * {@link MessagePack#write(Object)} and {@link #read(byte[])} method + * invocations create {@link org.msgpack.packer.Packer} and + * {@link org.msgpack.unpacker.Unpacker} objects every times. To use + * Packer and Unpacker objects, you call + * {@link #createPacker(OutputStream)} and {@link #createUnpacker(byte[])}. *

* *
@@ -136,6 +136,97 @@
  * }
  * 
* + *

Various Types of Values Serialization/Deserialization

+ * + *

+ * Packer/Unpacker allows serializing/deserializing + * values of various types as follows. They enable serializing/deserializing + * values of various types like values of primitive types, values of primitive + * wrapper classes, String objects, byte[] objects, + * ByteBuffer objects, List objects, Map + * objects and so on. As mentioned above, they also enable + * serializing/deserizing objects of your own classes annotated by + * @Message. + *

+ * + *
+ * public class Main3 {
+ *     public static void main(String[] args) {
+ * 	MessagePack msgpack = new MessagePack();
+ * 
+ * 	//
+ * 	// serialization
+ * 	//
+ * 
+ * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
+ * 	Packer packer = msgpack.createPacker(out);
+ * 
+ * 	// serialize values of primitive types
+ * 	packer.write(true); // boolean value
+ * 	packer.write(10) // int value
+ * 	packer.write(10.5); // double value
+ * 
+ * 	// serialize objects of primitive wrapper types
+ * 	packer.write(Boolean.TRUE);
+ * 	packer.write(new Integer(10));
+ * 	packer.write(new Double(10.5));
+ * 	packer.write("MesagePack"); // String object
+ * 
+ * 	// serialize various types of arrays
+ * 	packer.write(new int[] { 1, 2, 3, 4 });
+ * 	packer.write(new Double[] { 10.5, 20.5 });
+ * 	packer.write(new String[] { "msg", "pack", "for", "java" });
+ * 	packer.write(new byte[] { 0x30, 0x31, 0x32 }); // byte array
+ * 
+ * 	// serialize various types of other reference values
+ * 	packer.write(java.nio.ByteBufer.wrap(new byte[] { 0x30, 0x31, 0x32 })); // ByteBuffer object
+ * 	packer.write(java.math.BigInteger.ONE); // BigInteger object
+ * 	java.util.List<String> list = new java.util.ArrayList<String>();
+ * 	list.add("msgpack");
+ * 	list.add("for");
+ * 	list.add("java");
+ * 	packer.write(list); // List object
+ * 	java.util.Map<String, String> map = new java.util.HashMap<String, String>();
+ * 	map.put("sadayuki", "furuhashi");
+ * 	map.put("muga", "nishizawa");
+ * 	packer.write(map); // Map object
+ * 
+ * 	//
+ * 	// deserialization
+ * 	//
+ * 
+ * 	byte[] bytes = out.toByteArray();
+ * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
+ * 	Unpacker unpacker = msgpack.createUnpacker(in);
+ * 
+ * 	// to primitive values
+ * 	boolean b = unpacker.readBoolean(); // boolean value
+ * 	int i = unpacker.readInt(); // int value
+ * 	double d = unpacker.readDouble(); // double value
+ * 
+ * 	// to primitive wrapper value
+ * 	Boolean wb = unpacker.readBoolean();
+ * 	Integer wi = unpacker.readInt();
+ * 	Double wd = unpacker.readDouble();
+ * 	String ws = unpacker.readString();
+ * 
+ * 	// to arrays
+ * 	int[] ia = unpacker.read(int[].class);
+ * 	Double[] da = unpacker.read(Double[].class);
+ * 	String[] sa = unpacker.read(String[].class);
+ * 	byte[] ba = unpacker.readByteArray();
+ * 
+ * 	// to ByteBuffer object, BigInteger object, List object and Map object
+ * 	java.nio.ByteBuffer buf = unpacker.readByteBuffer();
+ * 	java.math.BigInteger bi = unpacker.readBigInteger();
+ * 	java.util.List<String> dstList = new java.util.ArrayList<String>();
+ * 	dstList = unpacker.read(dstList);
+ * 	java.util.Map<String, String> dstMap = new java.util.HashMap<String, String>();
+ * 	dstMap = unpacker.read(dstMap);
+ *     }
+ * }
+ * 
+ * *

Without Annotations

* *

@@ -159,6 +250,29 @@ * method. *

* + *

Optional Fields

+ * + *

+ * You can add new fields maintaining the compatibility. Use the @Optional in + * the new fields. + *

+ * + *
+ * @Message
+ * public class MyMessage {
+ *     public String name;
+ *     public double version;
+ *     // new field
+ *     @Optional
+ *     public int flag = 0;
+ * }
+ * 
+ * + *

+ * If you try to deserialize the old version data, optional fields will be + * ignored. + *

+ * */ public class MessagePack { private TemplateRegistry registry; @@ -203,8 +317,7 @@ public Packer createPacker(OutputStream out) { } /** - * Returns serializer that enables serializing objects into - * buffer. + * Returns serializer that enables serializing objects into buffer. * * @since 0.6.0 * @return buffer-based serializer @@ -214,8 +327,7 @@ public BufferPacker createBufferPacker() { } /** - * Returns serializer that enables serializing objects into - * buffer. + * Returns serializer that enables serializing objects into buffer. * * @since 0.6.0 * @param bufferSize @@ -240,8 +352,7 @@ public Unpacker createUnpacker(InputStream in) { } /** - * Returns empty deserializer that enables deserializing - * buffer. + * Returns empty deserializer that enables deserializing buffer. * * @since 0.6.0 * @return buffer-based deserializer @@ -251,8 +362,7 @@ public BufferUnpacker createBufferUnpacker() { } /** - * Returns deserializer that enables deserializing - * buffer. + * Returns deserializer that enables deserializing buffer. * * @since 0.6.0 * @param bytes @@ -264,8 +374,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes) { } /** - * Returns deserializer that enables deserializing - * buffer. + * Returns deserializer that enables deserializing buffer. * * @since 0.6.0 * @param bytes @@ -278,8 +387,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { } /** - * Returns deserializer that enables deserializing - * buffer. + * Returns deserializer that enables deserializing buffer. * * @since 0.6.0 * @param buffer From 52f81c4c48021a3512d8a3c313f70882670d43be Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 18 Sep 2011 01:43:55 +0900 Subject: [PATCH 176/409] added document to MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index f4635e300..c7db81a70 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -57,6 +57,63 @@ * serialization. *

* + *

Install

+ * + *

+ * The official Maven2 repository for MessagePack for Java is located here. http://msgpack.org/maven2/ + *

+ * + *

+ * You could use the following pom.xml to install MessagePack for + * Java via Maven. + *

+ * + *
+ * <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ *    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ * 
+ *   <modelVersion>4.0.0</modelVersion>
+ *   <groupId>org.sample</groupId>
+ *   <artifactId>sample</artifactId>
+ *   <packaging>jar</packaging>
+ *   <version>0.0.1</version>
+ * 
+ *   <repositories>
+ *     <repository>
+ *     <id>msgpack.org</id>
+ *     <name>MessagePack Repository for Maven</name>
+ *     <url>http://msgpack.org/maven2/</url>
+ *     </repository>
+ *   </repositories>
+ * 
+ *   <dependencies>
+ *     <dependency>
+ *       <groupId>org.msgpack</groupId>
+ *       <artifactId>msgpack</artifactId>
+ *       <version>0.6.0-devel</version>
+ *     </dependency>
+ *   </dependencies>
+ * </project>
+ * 
+ * + *

+ * You can build and install latest source code of MessagePack for Java as + * follows. The source code resides in GitHub. https://github.com/msgpack/msgpack-java/. + *

+ * + *
+ * $ git clone git@github.com:msgpack/msgpack-java.git
+ * $ cd msgpack-java
+ * $ mvn package
+ * 
+ * + *

+ * Then you'll get the jar file of MessagePack for Java in target directory. + *

+ * *

Quick Start MessagePack for Java

* *

From bae63baa3d3b38095477d111cbf8a9eea5317e06 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 18 Sep 2011 01:50:44 +0900 Subject: [PATCH 177/409] trivial modification --- src/main/java/org/msgpack/MessagePack.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index c7db81a70..42bccc608 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -111,7 +111,8 @@ * * *

- * Then you'll get the jar file of MessagePack for Java in target directory. + * Then you'll get the jar file of MessagePack for Java in target + * directory. *

* *

Quick Start MessagePack for Java

@@ -310,8 +311,8 @@ *

Optional Fields

* *

- * You can add new fields maintaining the compatibility. Use the @Optional in - * the new fields. + * You can add new fields maintaining the compatibility. Use the + * @Optional in the new fields. *

* *

From fe765f093bc90dd992d1f2cebfaf4d95a872dfa4 Mon Sep 17 00:00:00 2001
From: Muga Nishizawa 
Date: Sun, 18 Sep 2011 06:50:14 +0900
Subject: [PATCH 178/409] changed test programs

---
 .../msgpack/template/ByteBufferTemplate.java  |  2 +-
 .../msgpack/TestBufferPackBufferUnpack.java   |  6 ++---
 .../org/msgpack/TestBufferPackConvert.java    |  9 +++-----
 .../org/msgpack/TestBufferPackUnpack.java     |  6 ++---
 .../java/org/msgpack/TestMessagePack.java     | 14 ++++++++++++
 .../org/msgpack/TestPackBufferUnpack.java     |  6 ++---
 .../java/org/msgpack/TestPackConvert.java     |  9 +++-----
 src/test/java/org/msgpack/TestPackUnpack.java |  6 ++---
 src/test/java/org/msgpack/TestSet.java        |  8 +++----
 .../org/msgpack/TestUnconvertConvert.java     |  6 ++---
 .../template/TestByteArrayTemplate.java       | 22 +++++--------------
 .../template/TestByteBufferTemplate.java      |  3 +++
 .../json/TestJSONBufferPackBufferUnpack.java  |  7 +++---
 .../util/json/TestJSONBufferPackUnpack.java   |  7 +++---
 .../util/json/TestJSONPackBufferUnpack.java   |  7 +++---
 .../msgpack/util/json/TestJSONPackUnpack.java |  7 +++---
 .../json/TestValueToStringJSONUnpack.java     |  7 +++---
 17 files changed, 63 insertions(+), 69 deletions(-)
 create mode 100644 src/test/java/org/msgpack/TestMessagePack.java

diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java
index 7533e4c52..48a6d7176 100644
--- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java
+++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java
@@ -43,7 +43,7 @@ public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) throws IOExc
         if (!required && u.trySkipNil()) {
             return null;
         }
-	return u.readByteBuffer();  // TODO read to 'to' obj?
+        return u.readByteBuffer();  // TODO read to 'to' obj?
     }
 
     static public ByteBufferTemplate getInstance() {
diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java
index eaa03837d..0274c1ed5 100644
--- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java
+++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java
@@ -151,7 +151,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -167,7 +167,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -183,7 +183,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	byte[] ret = unpacker.readByteArray();
+	byte[] ret = unpacker.read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java
index e687e9218..ef61545ab 100644
--- a/src/test/java/org/msgpack/TestBufferPackConvert.java
+++ b/src/test/java/org/msgpack/TestBufferPackConvert.java
@@ -171,8 +171,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isIntegerValue());
-	BigInteger ret = new Converter(value).readBigInteger();
+	BigInteger ret = new Converter(value).read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -189,8 +188,7 @@ public void testString(String v) throws Exception {
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isRawValue());
-	String ret = new Converter(value).readString();
+	String ret = new Converter(value).read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -207,8 +205,7 @@ public void testByteArray(byte[] v) throws Exception {
 	byte[] bytes = packer.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isRawValue());
-	byte[] ret = new Converter(value).readByteArray();
+	byte[] ret = new Converter(value).read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java
index 7c390a2e5..ec87c8270 100644
--- a/src/test/java/org/msgpack/TestBufferPackUnpack.java
+++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java
@@ -152,7 +152,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -168,7 +168,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -184,7 +184,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	byte[] ret = unpacker.readByteArray();
+	byte[] ret = unpacker.read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestMessagePack.java b/src/test/java/org/msgpack/TestMessagePack.java
new file mode 100644
index 000000000..6f382327d
--- /dev/null
+++ b/src/test/java/org/msgpack/TestMessagePack.java
@@ -0,0 +1,14 @@
+package org.msgpack;
+
+import static org.junit.Assert.assertTrue;
+
+import org.junit.Test;
+
+
+public class TestMessagePack extends TestSet {
+
+    @Test
+    public void testDummy() {
+	assertTrue(true);
+    }
+}
diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java
index b24c342c7..c98cc4944 100644
--- a/src/test/java/org/msgpack/TestPackBufferUnpack.java
+++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java
@@ -161,7 +161,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -178,7 +178,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -195,7 +195,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	byte[] ret = unpacker.readByteArray();
+	byte[] ret = unpacker.read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java
index a75ab0da7..c96d57878 100644
--- a/src/test/java/org/msgpack/TestPackConvert.java
+++ b/src/test/java/org/msgpack/TestPackConvert.java
@@ -181,8 +181,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isIntegerValue());
-	BigInteger ret = new Converter(value).readBigInteger();
+	BigInteger ret = new Converter(value).read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -200,8 +199,7 @@ public void testString(String v) throws Exception {
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isRawValue());
-	String ret = new Converter(value).readString();
+	String ret = new Converter(value).read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -219,8 +217,7 @@ public void testByteArray(byte[] v) throws Exception {
 	byte[] bytes = out.toByteArray();
 	BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	Value value = unpacker.readValue();
-	assertTrue(value.isRawValue());
-	byte[] ret = new Converter(value).readByteArray();
+	byte[] ret = new Converter(value).read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java
index 0cf274da3..cc3a7ffbf 100644
--- a/src/test/java/org/msgpack/TestPackUnpack.java
+++ b/src/test/java/org/msgpack/TestPackUnpack.java
@@ -157,7 +157,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
 	Unpacker unpacker = msgpack.createUnpacker(in);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -174,7 +174,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
 	Unpacker unpacker = msgpack.createUnpacker(in);
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -191,7 +191,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(v);
 	ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray());
 	Unpacker unpacker = msgpack.createUnpacker(in);
-	byte[] ret = unpacker.readByteArray();
+	byte[] ret = unpacker.read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java
index a9820b5a2..848620a3c 100644
--- a/src/test/java/org/msgpack/TestSet.java
+++ b/src/test/java/org/msgpack/TestSet.java
@@ -59,7 +59,7 @@ public void testByte(byte v) throws Exception {
     }
 
     public void testByteArray() throws Exception {
-	// TODO testByteArray(null); // #MN considering next version
+	testByteArray(null);
 	Random rand = new Random(System.currentTimeMillis());
 	byte[] b0 = new byte[0];
 	testByteArray(b0);
@@ -278,7 +278,7 @@ public void testNil() throws Exception {
     }
 
     public void testString() throws Exception {
-	// TODO testString(null); // #MN considering next version
+	testString(null);
 	testString("");
 	testString("a");
 	testString("ab");
@@ -324,7 +324,7 @@ public void testString(String v) throws Exception {
     }
 
     public void testByteBuffer() throws Exception {
-	// FIXME testByteBuffer(null); // #MN considering next version
+	testByteBuffer(null);
 	Random rand = new Random(System.currentTimeMillis());
 	byte[] b0 = new byte[0];
 	testByteBuffer(ByteBuffer.wrap(b0));
@@ -394,7 +394,7 @@ public  void testMap(Map v, Class keyElementClass, Class value
     }
 
     public void testBigInteger() throws Exception {
-	// TODO testBigInteger(null); // #MN considering next version
+	testBigInteger(null);
 	testBigInteger(BigInteger.valueOf(0));
 	testBigInteger(BigInteger.valueOf(-1));
 	testBigInteger(BigInteger.valueOf(1));
diff --git a/src/test/java/org/msgpack/TestUnconvertConvert.java b/src/test/java/org/msgpack/TestUnconvertConvert.java
index c08df2c03..9e942350a 100644
--- a/src/test/java/org/msgpack/TestUnconvertConvert.java
+++ b/src/test/java/org/msgpack/TestUnconvertConvert.java
@@ -152,7 +152,7 @@ public void testBigInteger(BigInteger v) throws Exception {
         packer.write(v);
         Value r = packer.getResult();
         Converter unpacker = new Converter(msgpack, r);
-        BigInteger ret = unpacker.readBigInteger();
+        BigInteger ret = unpacker.read(BigInteger.class);
         assertEquals(v, ret);
     }
 
@@ -168,7 +168,7 @@ public void testString(String v) throws Exception {
         packer.write(v);
         Value r = packer.getResult();
         Converter unpacker = new Converter(msgpack, r);
-        String ret = unpacker.readString();
+        String ret = unpacker.read(String.class);
         assertEquals(v, ret);
     }
 
@@ -184,7 +184,7 @@ public void testByteArray(byte[] v) throws Exception {
         packer.write(v);
         Value r = packer.getResult();
         Converter unpacker = new Converter(msgpack, r);
-        byte[] ret = unpacker.readByteArray();
+        byte[] ret = unpacker.read(byte[].class);
 	assertArrayEquals(v, ret);
     }
 
diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java
index ffe815798..912b8eeeb 100644
--- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java
+++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java
@@ -1,6 +1,6 @@
 package org.msgpack.template;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertArrayEquals;
 
 import java.io.ByteArrayInputStream;
 import java.io.ByteArrayOutputStream;
@@ -52,10 +52,7 @@ public void testByteArray(byte[] v) throws Exception {
 	    byte[] bytes = out.toByteArray();
 	    Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
 	    byte[] ret = tmpl.read(unpacker, null);
-	    assertEquals(v.length, ret.length);
-	    for (int i = 0; i < v.length; ++i) {
-		assertEquals(v[i], ret[i]);
-	    }
+	    assertArrayEquals(v, ret);
 	}
     }
 
@@ -75,10 +72,7 @@ public void testByteArray(byte[] v) throws Exception {
 	    byte[] bytes = out.toByteArray();
 	    BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	    byte[] ret = tmpl.read(unpacker, null);
-	    assertEquals(v.length, ret.length);
-	    for (int i = 0; i < v.length; ++i) {
-		assertEquals(v[i], ret[i]);
-	    }
+	    assertArrayEquals(v, ret);
 	}
     }
 
@@ -97,10 +91,7 @@ public void testByteArray(byte[] v) throws Exception {
 	    byte[] bytes = packer.toByteArray();
 	    BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes);
 	    byte[] ret = tmpl.read(unpacker, null);
-	    assertEquals(v.length, ret.length);
-	    for (int i = 0; i < v.length; ++i) {
-		assertEquals(v[i], ret[i]);
-	    }
+	    assertArrayEquals(v, ret);
 	}
     }
 
@@ -119,10 +110,7 @@ public void testByteArray(byte[] v) throws Exception {
 	    byte[] bytes = packer.toByteArray();
 	    Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
 	    byte[] ret = tmpl.read(unpacker, null);
-	    assertEquals(v.length, ret.length);
-	    for (int i = 0; i < v.length; ++i) {
-		assertEquals(v[i], ret[i]);
-	    }
+	    assertArrayEquals(v, ret);
 	}
     }
 }
diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java
index 4328ca6e2..678846a1a 100644
--- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java
+++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java
@@ -18,6 +18,9 @@
 public class TestByteBufferTemplate {
 
     private static byte[] toByteArray(ByteBuffer from) {
+	if (from == null) {
+	    return null;
+	}
 	byte[] bytes = new byte[from.remaining()];
 	from.get(bytes, from.arrayOffset() + from.position(), from.remaining());
 	return bytes;
diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java
index 95306471c..2914c1bbd 100644
--- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java
+++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java
@@ -175,7 +175,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -191,7 +191,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	String ret = unpacker.readString();
+        String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -209,8 +209,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(str);
 	byte[] bytes = packer.toByteArray();
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	//byte[] ret = unpacker.readByteArray();
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(str, ret);
     }
 
diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java
index 409646ba1..c4f212bd4 100644
--- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java
+++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java
@@ -176,7 +176,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -192,7 +192,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -210,8 +210,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(str);
 	byte[] bytes = packer.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	//byte[] ret = unpacker.readByteArray();
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(str, ret);
     }
 
diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java
index 7ed1c045f..5771c6be7 100644
--- a/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java
+++ b/src/test/java/org/msgpack/util/json/TestJSONPackBufferUnpack.java
@@ -185,7 +185,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -202,7 +202,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -221,8 +221,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(str);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	//byte[] ret = unpacker.readByteArray();
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(str, ret);
     }
 
diff --git a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java
index 160b8a2e5..ed5fce41a 100644
--- a/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java
+++ b/src/test/java/org/msgpack/util/json/TestJSONPackUnpack.java
@@ -186,7 +186,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -203,7 +203,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -222,8 +222,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(str);
 	byte[] bytes = out.toByteArray();
 	Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes));
-	//byte[] ret = unpacker.readByteArray();
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(str, ret);
     }
 
diff --git a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java
index 6ac13a9a3..4a5d404f4 100644
--- a/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java
+++ b/src/test/java/org/msgpack/util/json/TestValueToStringJSONUnpack.java
@@ -184,7 +184,7 @@ public void testBigInteger(BigInteger v) throws Exception {
 	packer.write(v);
         byte[] bytes = packer.getResult().toString().getBytes("UTF-8");
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	BigInteger ret = unpacker.readBigInteger();
+	BigInteger ret = unpacker.read(BigInteger.class);
 	assertEquals(v, ret);
     }
 
@@ -200,7 +200,7 @@ public void testString(String v) throws Exception {
 	packer.write(v);
         byte[] bytes = packer.getResult().toString().getBytes("UTF-8");
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	String ret = unpacker.readString();
+        String ret = unpacker.read(String.class);
 	assertEquals(v, ret);
     }
 
@@ -218,8 +218,7 @@ public void testByteArray(byte[] v) throws Exception {
 	packer.write(str);
         byte[] bytes = packer.getResult().toString().getBytes("UTF-8");
         Unpacker unpacker = msgpack.createBufferUnpacker(bytes);
-	//byte[] ret = unpacker.readByteArray();
-	String ret = unpacker.readString();
+	String ret = unpacker.read(String.class);
 	assertEquals(str, ret);
     }
 

From c334b3fd80601713d69330be860786fa230bc3e0 Mon Sep 17 00:00:00 2001
From: Muga Nishizawa 
Date: Sun, 18 Sep 2011 07:24:28 +0900
Subject: [PATCH 179/409] added document in MessagePack.java

---
 src/main/java/org/msgpack/MessagePack.java | 40 +++++++++++++++++-----
 1 file changed, 31 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java
index 42bccc608..05807c255 100644
--- a/src/main/java/org/msgpack/MessagePack.java
+++ b/src/main/java/org/msgpack/MessagePack.java
@@ -228,7 +228,6 @@
  * 	packer.write(Boolean.TRUE);
  * 	packer.write(new Integer(10));
  * 	packer.write(new Double(10.5));
- * 	packer.write("MesagePack"); // String object
  * 
  * 	// serialize various types of arrays
  * 	packer.write(new int[] { 1, 2, 3, 4 });
@@ -237,6 +236,7 @@
  * 	packer.write(new byte[] { 0x30, 0x31, 0x32 }); // byte array
  * 
  * 	// serialize various types of other reference values
+ * 	packer.write("MesagePack"); // String object
  * 	packer.write(java.nio.ByteBufer.wrap(new byte[] { 0x30, 0x31, 0x32 })); // ByteBuffer object
  * 	packer.write(java.math.BigInteger.ONE); // BigInteger object
  * 	java.util.List<String> list = new java.util.ArrayList<String>();
@@ -263,20 +263,20 @@
  * 	double d = unpacker.readDouble(); // double value
  * 
  * 	// to primitive wrapper value
- * 	Boolean wb = unpacker.readBoolean();
- * 	Integer wi = unpacker.readInt();
- * 	Double wd = unpacker.readDouble();
- * 	String ws = unpacker.readString();
+ * 	Boolean wb = unpacker.read(Boolean.class);
+ * 	Integer wi = unpacker.read(Integer.class);
+ * 	Double wd = unpacker.read(Double.class);
  * 
  * 	// to arrays
  * 	int[] ia = unpacker.read(int[].class);
  * 	Double[] da = unpacker.read(Double[].class);
  * 	String[] sa = unpacker.read(String[].class);
- * 	byte[] ba = unpacker.readByteArray();
+ * 	byte[] ba = unpacker.read(byte[].class);
  * 
- * 	// to ByteBuffer object, BigInteger object, List object and Map object
- * 	java.nio.ByteBuffer buf = unpacker.readByteBuffer();
- * 	java.math.BigInteger bi = unpacker.readBigInteger();
+ * 	// to String object, ByteBuffer object, BigInteger object, List object and Map object
+ * 	String ws = unpacker.read(String.class);
+ * 	java.nio.ByteBuffer buf = unpacker.read(java.nio.ByteBuffer.class);
+ * 	java.math.BigInteger bi = unpacker.read(java.math.BigInteger.class);
  * 	java.util.List<String> dstList = new java.util.ArrayList<String>();
  * 	dstList = unpacker.read(dstList);
  * 	java.util.Map<String, String> dstMap = new java.util.HashMap<String, String>();
@@ -285,6 +285,28 @@
  * }
  * 
* + *

+ * write methods provided by Packer allows serializing + * various types of data. + *

+ * + *

+ * Unpacker provides deserialization methods for deserializing + * binary to primitive values. For example, if you want to deserialize binary to + * value of boolean (or int) type, you can use + * readBoolean (or readInt) method in + * Unpacker. + *

+ * + *

+ * Unpacker also provides read methods for reference + * values. Its methods allow deserializing binary to values of references which + * types you specified as parameters. For example, if you want to deserialize + * binary to String (or byte[]) object, + * you have to describe a call of read(String.class) (or + * read(byte[].class)) method. + *

+ * *

Without Annotations

* *

From c60f02300b56d348976bac789958e2b9b4b1400f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 19 Sep 2011 12:26:42 +0900 Subject: [PATCH 180/409] added test programs for MessagePack class --- .../java/org/msgpack/TestMessagePack.java | 14 - .../java/org/msgpack/TestMessagePack01.java | 514 +++ .../java/org/msgpack/TestMessagePack02.java | 3014 +++++++++++++++++ .../template/TestBigIntegerTemplate.java | 2 +- 4 files changed, 3529 insertions(+), 15 deletions(-) delete mode 100644 src/test/java/org/msgpack/TestMessagePack.java create mode 100644 src/test/java/org/msgpack/TestMessagePack01.java create mode 100644 src/test/java/org/msgpack/TestMessagePack02.java diff --git a/src/test/java/org/msgpack/TestMessagePack.java b/src/test/java/org/msgpack/TestMessagePack.java deleted file mode 100644 index 6f382327d..000000000 --- a/src/test/java/org/msgpack/TestMessagePack.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.msgpack; - -import static org.junit.Assert.assertTrue; - -import org.junit.Test; - - -public class TestMessagePack extends TestSet { - - @Test - public void testDummy() { - assertTrue(true); - } -} diff --git a/src/test/java/org/msgpack/TestMessagePack01.java b/src/test/java/org/msgpack/TestMessagePack01.java new file mode 100644 index 000000000..5cace1055 --- /dev/null +++ b/src/test/java/org/msgpack/TestMessagePack01.java @@ -0,0 +1,514 @@ +package org.msgpack; + +import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +import org.junit.Ignore; +import org.junit.Test; +import org.msgpack.type.Value; + + +public class TestMessagePack01 { + + @Test + public void testBigIntegerBufferPackBufferUnpack() throws Exception { + new TestBigIntegerBufferPackBufferUnpack().testBigInteger(); + } + + @Test + public void testBigIntegerBufferPackConvert() throws Exception { + new TestBigIntegerBufferPackConvert().testBigInteger(); + } + + @Test + public void testBigIntegerBufferPackUnpack() throws Exception { + new TestBigIntegerBufferPackUnpack().testBigInteger(); + } + + @Test + public void testBigIntegerPackConvert() throws Exception { + new TestBigIntegerPackConvert().testBigInteger(); + } + + @Test + public void testBigIntegerPackUnpack() throws Exception { + new TestBigIntegerPackUnpack().testBigInteger(); + } + + @Test + public void testBigIntegerUnconvertConvert() throws Exception { + new TestBigIntegerUnconvertConvert().testBigInteger(); + } + + @Test + public void testStringBufferPackBufferUnpack() throws Exception { + new TestStringBufferPackBufferUnpack().testString(); + } + + @Test + public void testStringBufferPackConvert() throws Exception { + new TestStringBufferPackConvert().testString(); + } + + @Test + public void testStringBufferPackUnpack() throws Exception { + new TestStringBufferPackUnpack().testString(); + } + + @Test + public void testStringPackConvert() throws Exception { + new TestStringPackConvert().testString(); + } + + @Test + public void testStringPackUnpack() throws Exception { + new TestStringPackUnpack().testString(); + } + + @Test + public void testStringUnconvertConvert() throws Exception { + new TestStringUnconvertConvert().testString(); + } + + @Test + public void testByteArrayBufferPackBufferUnpack() throws Exception { + new TestByteArrayBufferPackBufferUnpack().testByteArray(); + } + + @Test + public void testByteArrayBufferPackConvert() throws Exception { + new TestByteArrayBufferPackConvert().testByteArray(); + } + + @Test + public void testByteArrayBufferPackUnpack() throws Exception { + new TestByteArrayBufferPackUnpack().testByteArray(); + } + + @Test + public void testByteArrayPackConvert() throws Exception { + new TestByteArrayPackConvert().testByteArray(); + } + + @Test + public void testByteArrayPackUnpack() throws Exception { + new TestByteArrayPackUnpack().testByteArray(); + } + + @Test + public void testByteArrayUnconvertConvert() throws Exception { + new TestByteArrayUnconvertConvert().testByteArray(); + } + + @Ignore @Test // FIXME #MN *MUST* fix it in this version + public void testListPackUnpack() throws Exception { + new TestListPackUnpack().testList(); + } + + @Ignore @Test // FIXME #MN *MUST* fix it in this version + public void testMapPackUnpack() throws Exception { + new TestMapPackUnpack().testMap(); + } + + public static class TestBigIntegerBufferPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + BigInteger ret = msgpack.read(bytes, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerBufferPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + BigInteger ret = msgpack.convert(value, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerBufferPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + BigInteger ret = msgpack.read(in, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + BigInteger ret = msgpack.read(bytes, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + BigInteger ret = msgpack.convert(value, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + BigInteger ret = msgpack.read(in, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestBigIntegerUnconvertConvert extends org.msgpack.TestSet { + @Test @Override + public void testBigInteger() throws Exception { + super.testBigInteger(); + } + + @Override + public void testBigInteger(BigInteger v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + BigInteger ret = msgpack.convert(value, BigInteger.class); + assertEquals(v, ret); + } + } + + public static class TestStringBufferPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + String ret = msgpack.read(bytes, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringBufferPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + String ret = msgpack.convert(value, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringBufferPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + String ret = msgpack.read(in, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + String ret = msgpack.read(bytes, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + String ret = msgpack.convert(value, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + String ret = msgpack.read(in, String.class); + assertEquals(v, ret); + } + } + + public static class TestStringUnconvertConvert extends org.msgpack.TestSet { + @Test @Override + public void testString() throws Exception { + super.testString(); + } + + @Override + public void testString(String v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + String ret = msgpack.convert(value, String.class); + assertEquals(v, ret); + } + } + + public static class TestByteArrayBufferPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + byte[] ret = msgpack.read(bytes, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayBufferPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + byte[] ret = msgpack.convert(value, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayBufferPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + byte[] ret = msgpack.read(in, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + byte[] ret = msgpack.read(bytes, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayPackConvert extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + byte[] ret = msgpack.convert(value, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] ret = msgpack.read(in, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestByteArrayUnconvertConvert extends org.msgpack.TestSet { + @Test @Override + public void testByteArray() throws Exception { + super.testByteArray(); + } + + @Override + public void testByteArray(byte[] v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + byte[] ret = msgpack.convert(value, byte[].class); + assertArrayEquals(v, ret); + } + } + + public static class TestListPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + List ret = msgpack.read(in, new ArrayList()); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + } + + public static class TestMapPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Map ret = msgpack.read(in, new HashMap()); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } + } +} diff --git a/src/test/java/org/msgpack/TestMessagePack02.java b/src/test/java/org/msgpack/TestMessagePack02.java new file mode 100644 index 000000000..5130a6271 --- /dev/null +++ b/src/test/java/org/msgpack/TestMessagePack02.java @@ -0,0 +1,3014 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.testclasses.EnumTypeFieldsClass; +import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.type.Value; + + +public class TestMessagePack02 { + + @Test + public void testPrimitiveTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassBufferPackBufferUnpack().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassBufferPackConvert() throws Exception { + new TestPrimitiveTypeFieldsClassBufferPackConvert().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassBufferPackUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassBufferPackUnpack().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassPackBufferUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassPackBufferUnpack().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassPackConvert() throws Exception { + new TestPrimitiveTypeFieldsClassPackConvert().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassPackUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassPackUnpack().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassUnconvertConvert() throws Exception { + new TestPrimitiveTypeFieldsClassUnconvertConvert().testPrimitiveTypeFieldsClass(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullableBufferPackBufferUnpack().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullableBufferPackConvert().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullableBufferPackUnpack().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullablePackBufferUnpack().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullablePackConvert().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullablePackUnpack().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testPrimitiveTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestPrimitiveTypeFieldsClassNotNullableUnconvertConvert().testPrimitiveTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestReferenceTypeFieldsClassBufferPackBufferUnpack().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassBufferPackConvert() throws Exception { + new TestReferenceTypeFieldsClassBufferPackConvert().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassBufferPackUnpack() throws Exception { + new TestReferenceTypeFieldsClassBufferPackUnpack().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassPackBufferUnpack() throws Exception { + new TestReferenceTypeFieldsClassPackBufferUnpack().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassPackConvert() throws Exception { + new TestReferenceTypeFieldsClassPackConvert().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassPackUnpack() throws Exception { + new TestReferenceTypeFieldsClassPackUnpack().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassUnconvertConvert() throws Exception { + new TestReferenceTypeFieldsClassUnconvertConvert().testReferenceTypeFieldsClass(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestReferenceTypeFieldsClassNotNullableBufferPackBufferUnpack().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestReferenceTypeFieldsClassNotNullableBufferPackConvert().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestReferenceTypeFieldsClassNotNullableBufferPackUnpack().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestReferenceTypeFieldsClassNotNullablePackBufferUnpack().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestReferenceTypeFieldsClassNotNullablePackConvert().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestReferenceTypeFieldsClassNotNullablePackUnpack().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestReferenceTypeFieldsClassNotNullableUnconvertConvert().testReferenceTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestListTypeFieldsClassBufferPackBufferUnpack().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassBufferPackConvert() throws Exception { + new TestListTypeFieldsClassBufferPackConvert().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassBufferPackUnpack() throws Exception { + new TestListTypeFieldsClassBufferPackUnpack().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassPackBufferUnpack() throws Exception { + new TestListTypeFieldsClassPackBufferUnpack().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassPackConvert() throws Exception { + new TestListTypeFieldsClassPackConvert().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassPackUnpack() throws Exception { + new TestListTypeFieldsClassPackUnpack().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassUnconvertConvert() throws Exception { + new TestListTypeFieldsClassUnconvertConvert().testListTypeFieldsClass(); + } + + @Test + public void testListTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestListTypeFieldsClassNotNullableBufferPackBufferUnpack().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestListTypeFieldsClassNotNullableBufferPackConvert().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestListTypeFieldsClassNotNullableBufferPackUnpack().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestListTypeFieldsClassNotNullablePackBufferUnpack().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestListTypeFieldsClassNotNullablePackConvert().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestListTypeFieldsClassNotNullablePackUnpack().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testListTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestListTypeFieldsClassNotNullableUnconvertConvert().testListTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestMapTypeFieldsClassBufferPackBufferUnpack().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassBufferPackConvert() throws Exception { + new TestMapTypeFieldsClassBufferPackConvert().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassBufferPackUnpack() throws Exception { + new TestMapTypeFieldsClassBufferPackUnpack().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassPackBufferUnpack() throws Exception { + new TestMapTypeFieldsClassPackBufferUnpack().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassPackConvert() throws Exception { + new TestMapTypeFieldsClassPackConvert().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassPackUnpack() throws Exception { + new TestMapTypeFieldsClassPackUnpack().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassUnconvertConvert() throws Exception { + new TestMapTypeFieldsClassUnconvertConvert().testMapTypeFieldsClass(); + } + + @Test + public void testMapTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestMapTypeFieldsClassNotNullableBufferPackBufferUnpack().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestMapTypeFieldsClassNotNullableBufferPackConvert().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestMapTypeFieldsClassNotNullableBufferPackUnpack().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestMapTypeFieldsClassNotNullablePackBufferUnpack().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestMapTypeFieldsClassNotNullablePackConvert().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestMapTypeFieldsClassNotNullablePackUnpack().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testMapTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestMapTypeFieldsClassNotNullableUnconvertConvert().testMapTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestEnumTypeFieldsClassBufferPackBufferUnpack().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassBufferPackConvert() throws Exception { + new TestEnumTypeFieldsClassBufferPackConvert().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassBufferPackUnpack() throws Exception { + new TestEnumTypeFieldsClassBufferPackUnpack().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassPackBufferUnpack() throws Exception { + new TestEnumTypeFieldsClassPackBufferUnpack().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassPackConvert() throws Exception { + new TestEnumTypeFieldsClassPackConvert().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassPackUnpack() throws Exception { + new TestEnumTypeFieldsClassPackUnpack().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassUnconvertConvert() throws Exception { + new TestEnumTypeFieldsClassUnconvertConvert().testEnumTypeFieldsClass(); + } + + @Test + public void testEnumTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestEnumTypeFieldsClassNotNullableBufferPackBufferUnpack().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestEnumTypeFieldsClassNotNullableBufferPackConvert().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestEnumTypeFieldsClassNotNullableBufferPackUnpack().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestEnumTypeFieldsClassNotNullablePackBufferUnpack().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestEnumTypeFieldsClassNotNullablePackConvert().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestEnumTypeFieldsClassNotNullablePackUnpack().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testEnumTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestEnumTypeFieldsClassNotNullableUnconvertConvert().testEnumTypeFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassBufferPackBufferUnpack() throws Exception { + new TestModifiersFieldsClassBufferPackBufferUnpack().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassBufferPackConvert() throws Exception { + new TestModifiersFieldsClassBufferPackConvert().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassBufferPackUnpack() throws Exception { + new TestModifiersFieldsClassBufferPackUnpack().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassPackBufferUnpack() throws Exception { + new TestModifiersFieldsClassPackBufferUnpack().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassPackConvert() throws Exception { + new TestModifiersFieldsClassPackConvert().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassPackUnpack() throws Exception { + new TestModifiersFieldsClassPackUnpack().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassUnconvertConvert() throws Exception { + new TestModifiersFieldsClassUnconvertConvert().testModifiersFieldsClass(); + } + + @Test + public void testModifiersFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestModifiersFieldsClassNotNullableBufferPackBufferUnpack().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestModifiersFieldsClassNotNullableBufferPackConvert().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestModifiersFieldsClassNotNullableBufferPackUnpack().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestModifiersFieldsClassNotNullablePackBufferUnpack().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullablePackConvert() throws Exception { + new TestModifiersFieldsClassNotNullablePackConvert().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullablePackUnpack() throws Exception { + new TestModifiersFieldsClassNotNullablePackUnpack().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testModifiersFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestModifiersFieldsClassNotNullableUnconvertConvert().testModifiersFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassBufferPackBufferUnpack().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassBufferPackConvert() throws Exception { + new TestUserDefinedTypeFieldsClassBufferPackConvert().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassBufferPackUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassBufferPackUnpack().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassPackBufferUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassPackBufferUnpack().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassPackConvert() throws Exception { + new TestUserDefinedTypeFieldsClassPackConvert().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassPackUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassPackUnpack().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassUnconvertConvert() throws Exception { + new TestUserDefinedTypeFieldsClassUnconvertConvert().testUserDefinedTypeFieldsClass(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullableBufferPackBufferUnpack().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullableBufferPackConvert().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullableBufferPackUnpack().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullablePackBufferUnpack().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullablePackConvert().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullablePackUnpack().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testUserDefinedTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestUserDefinedTypeFieldsClassNotNullableUnconvertConvert().testUserDefinedTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassBufferPackBufferUnpack().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassBufferPackConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassBufferPackConvert().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassBufferPackUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassBufferPackUnpack().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassPackBufferUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassPackBufferUnpack().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassPackConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassPackConvert().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassPackUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassPackUnpack().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassUnconvertConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassUnconvertConvert().testReferenceCycleTypeFieldsClass(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullableBufferPackBufferUnpack().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullableBufferPackConvert().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullableBufferPackUnpack().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullablePackBufferUnpack().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullablePackConvert().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullablePackUnpack().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testReferenceCycleTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestReferenceCycleTypeFieldsClassNotNullableUnconvertConvert().testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Test + public void testInheritanceClassBufferPackBufferUnpack() throws Exception { + new TestInheritanceClassBufferPackBufferUnpack().testInheritanceClass(); + } + + @Test + public void testInheritanceClassBufferPackConvert() throws Exception { + new TestInheritanceClassBufferPackConvert().testInheritanceClass(); + } + + @Test + public void testInheritanceClassBufferPackUnpack() throws Exception { + new TestInheritanceClassBufferPackUnpack().testInheritanceClass(); + } + + @Test + public void testInheritanceClassPackBufferUnpack() throws Exception { + new TestInheritanceClassPackBufferUnpack().testInheritanceClass(); + } + + @Test + public void testInheritanceClassPackConvert() throws Exception { + new TestInheritanceClassPackConvert().testInheritanceClass(); + } + + @Test + public void testInheritanceClassPackUnpack() throws Exception { + new TestInheritanceClassPackUnpack().testInheritanceClass(); + } + + @Test + public void testInheritanceClassUnconvertConvert() throws Exception { + new TestInheritanceClassUnconvertConvert().testInheritanceClass(); + } + + @Test + public void testInheritanceClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestInheritanceClassNotNullableBufferPackBufferUnpack().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullableBufferPackConvert() throws Exception { + new TestInheritanceClassNotNullableBufferPackConvert().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullableBufferPackUnpack() throws Exception { + new TestInheritanceClassNotNullableBufferPackUnpack().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullablePackBufferUnpack() throws Exception { + new TestInheritanceClassNotNullablePackBufferUnpack().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullablePackConvert() throws Exception { + new TestInheritanceClassNotNullablePackConvert().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullablePackUnpack() throws Exception { + new TestInheritanceClassNotNullablePackUnpack().testInheritanceClassNotNullable(); + } + + @Test + public void testInheritanceClassNotNullableUnconvertConvert() throws Exception { + new TestInheritanceClassNotNullableUnconvertConvert().testInheritanceClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassBufferPackBufferUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassBufferPackBufferUnpack().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassBufferPackConvert() throws Exception { + new TestMessagePackableTypeFieldsClassBufferPackConvert().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassBufferPackUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassBufferPackUnpack().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassPackBufferUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassPackBufferUnpack().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassPackConvert() throws Exception { + new TestMessagePackableTypeFieldsClassPackConvert().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassPackUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassPackUnpack().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassUnconvertConvert() throws Exception { + new TestMessagePackableTypeFieldsClassUnconvertConvert().testMessagePackableTypeFieldsClass(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullableBufferPackBufferUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullableBufferPackBufferUnpack().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullableBufferPackConvert() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullableBufferPackConvert().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullableBufferPackUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullableBufferPackUnpack().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullablePackBufferUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullablePackBufferUnpack().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullablePackConvert() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullablePackConvert().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullablePackUnpack() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullablePackUnpack().testMessagePackableTypeFieldsClassNotNullable(); + } + + @Test + public void testMessagePackableTypeFieldsClassNotNullableUnconvertConvert() throws Exception { + new TestMessagePackableTypeFieldsClassNotNullableUnconvertConvert().testMessagePackableTypeFieldsClassNotNullable(); + } + + public static class TestPrimitiveTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + PrimitiveTypeFieldsClass ret = msgpack.read(bytes, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + PrimitiveTypeFieldsClass ret = msgpack.convert(value, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + PrimitiveTypeFieldsClass ret = msgpack.read(in, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + PrimitiveTypeFieldsClass ret = msgpack.read(bytes, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + PrimitiveTypeFieldsClass ret = msgpack.convert(value, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + PrimitiveTypeFieldsClass ret = msgpack.read(in, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + PrimitiveTypeFieldsClass ret = msgpack.convert(value, PrimitiveTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.read(bytes, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.convert(value, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.read(in, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.read(bytes, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.convert(value, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.read(in, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestPrimitiveTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + PrimitiveTypeFieldsClassNotNullable ret = msgpack.convert(value, PrimitiveTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ReferenceTypeFieldsClass ret = msgpack.read(bytes, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ReferenceTypeFieldsClass ret = msgpack.convert(value, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ReferenceTypeFieldsClass ret = msgpack.read(in, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ReferenceTypeFieldsClass ret = msgpack.read(bytes, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ReferenceTypeFieldsClass ret = msgpack.convert(value, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ReferenceTypeFieldsClass ret = msgpack.read(in, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ReferenceTypeFieldsClass ret = msgpack.convert(value, ReferenceTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ReferenceTypeFieldsClassNotNullable ret = msgpack.read(bytes, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ReferenceTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ReferenceTypeFieldsClassNotNullable ret = msgpack.read(in, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ReferenceTypeFieldsClassNotNullable ret = msgpack.read(bytes, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ReferenceTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ReferenceTypeFieldsClassNotNullable ret = msgpack.read(in, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ReferenceTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ListTypeFieldsClass ret = msgpack.read(bytes, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ListTypeFieldsClass ret = msgpack.convert(value, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ListTypeFieldsClass ret = msgpack.read(in, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ListTypeFieldsClass ret = msgpack.read(bytes, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ListTypeFieldsClass ret = msgpack.convert(value, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ListTypeFieldsClass ret = msgpack.read(in, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ListTypeFieldsClass ret = msgpack.convert(value, ListTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ListTypeFieldsClassNotNullable ret = msgpack.read(bytes, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ListTypeFieldsClassNotNullable ret = msgpack.convert(value, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ListTypeFieldsClassNotNullable ret = msgpack.read(in, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ListTypeFieldsClassNotNullable ret = msgpack.read(bytes, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ListTypeFieldsClassNotNullable ret = msgpack.convert(value, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ListTypeFieldsClassNotNullable ret = msgpack.read(in, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestListTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ListTypeFieldsClassNotNullable ret = msgpack.convert(value, ListTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + MapTypeFieldsClass ret = msgpack.read(bytes, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + MapTypeFieldsClass ret = msgpack.convert(value, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + MapTypeFieldsClass ret = msgpack.read(in, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + MapTypeFieldsClass ret = msgpack.read(bytes, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + MapTypeFieldsClass ret = msgpack.convert(value, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + MapTypeFieldsClass ret = msgpack.read(in, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + MapTypeFieldsClass ret = msgpack.convert(value, MapTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + MapTypeFieldsClassNotNullable ret = msgpack.read(bytes, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + MapTypeFieldsClassNotNullable ret = msgpack.convert(value, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + MapTypeFieldsClassNotNullable ret = msgpack.read(in, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + MapTypeFieldsClassNotNullable ret = msgpack.read(bytes, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + MapTypeFieldsClassNotNullable ret = msgpack.convert(value, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + MapTypeFieldsClassNotNullable ret = msgpack.read(in, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMapTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + MapTypeFieldsClassNotNullable ret = msgpack.convert(value, MapTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + EnumTypeFieldsClass ret = msgpack.read(bytes, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + EnumTypeFieldsClass ret = msgpack.convert(value, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + EnumTypeFieldsClass ret = msgpack.read(in, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + EnumTypeFieldsClass ret = msgpack.read(bytes, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + EnumTypeFieldsClass ret = msgpack.convert(value, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + EnumTypeFieldsClass ret = msgpack.read(in, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClass() throws Exception { + super.testEnumTypeFieldsClass(); + } + + @Override + public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + EnumTypeFieldsClass ret = msgpack.convert(value, EnumTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + EnumTypeFieldsClassNotNullable ret = msgpack.read(bytes, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + EnumTypeFieldsClassNotNullable ret = msgpack.convert(value, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + EnumTypeFieldsClassNotNullable ret = msgpack.read(in, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + EnumTypeFieldsClassNotNullable ret = msgpack.read(bytes, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + EnumTypeFieldsClassNotNullable ret = msgpack.convert(value, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + EnumTypeFieldsClassNotNullable ret = msgpack.read(in, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestEnumTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testEnumTypeFieldsClassNotNullable() throws Exception { + super.testEnumTypeFieldsClassNotNullable(); + } + + @Override + public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + EnumTypeFieldsClassNotNullable ret = msgpack.convert(value, EnumTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ModifiersFieldsClass ret = msgpack.read(bytes, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ModifiersFieldsClass ret = msgpack.convert(value, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ModifiersFieldsClass ret = msgpack.read(in, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ModifiersFieldsClass ret = msgpack.read(bytes, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ModifiersFieldsClass ret = msgpack.convert(value, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ModifiersFieldsClass ret = msgpack.read(in, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ModifiersFieldsClass ret = msgpack.convert(value, ModifiersFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ModifiersFieldsClassNotNullable ret = msgpack.read(bytes, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ModifiersFieldsClassNotNullable ret = msgpack.convert(value, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ModifiersFieldsClassNotNullable ret = msgpack.read(in, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ModifiersFieldsClassNotNullable ret = msgpack.read(bytes, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ModifiersFieldsClassNotNullable ret = msgpack.convert(value, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ModifiersFieldsClassNotNullable ret = msgpack.read(in, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestModifiersFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ModifiersFieldsClassNotNullable ret = msgpack.convert(value, ModifiersFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + UserDefinedTypeFieldsClass ret = msgpack.read(bytes, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + UserDefinedTypeFieldsClass ret = msgpack.convert(value, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + UserDefinedTypeFieldsClass ret = msgpack.read(in, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + UserDefinedTypeFieldsClass ret = msgpack.read(bytes, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + UserDefinedTypeFieldsClass ret = msgpack.convert(value, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + UserDefinedTypeFieldsClass ret = msgpack.read(in, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + UserDefinedTypeFieldsClass ret = msgpack.convert(value, UserDefinedTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.read(bytes, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.convert(value, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.read(in, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.read(bytes, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.convert(value, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.read(in, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestUserDefinedTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + UserDefinedTypeFieldsClassNotNullable ret = msgpack.convert(value, UserDefinedTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ReferenceCycleTypeFieldsClass ret = msgpack.read(bytes, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ReferenceCycleTypeFieldsClass ret = msgpack.convert(value, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ReferenceCycleTypeFieldsClass ret = msgpack.read(in, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ReferenceCycleTypeFieldsClass ret = msgpack.read(bytes, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ReferenceCycleTypeFieldsClass ret = msgpack.convert(value, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ReferenceCycleTypeFieldsClass ret = msgpack.read(in, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @Override + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ReferenceCycleTypeFieldsClass ret = msgpack.convert(value, ReferenceCycleTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.read(bytes, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.read(in, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.read(bytes, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.read(in, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestReferenceCycleTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + ReferenceCycleTypeFieldsClassNotNullable ret = msgpack.convert(value, ReferenceCycleTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + InheritanceClass ret = msgpack.read(bytes, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + InheritanceClass ret = msgpack.convert(value, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + InheritanceClass ret = msgpack.read(in, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + InheritanceClass ret = msgpack.read(bytes, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + InheritanceClass ret = msgpack.convert(value, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + InheritanceClass ret = msgpack.read(in, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + InheritanceClass ret = msgpack.convert(value, InheritanceClass.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + InheritanceClassNotNullable ret = msgpack.read(bytes, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + InheritanceClassNotNullable ret = msgpack.convert(value, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + InheritanceClassNotNullable ret = msgpack.read(in, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + InheritanceClassNotNullable ret = msgpack.read(bytes, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + InheritanceClassNotNullable ret = msgpack.convert(value, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + InheritanceClassNotNullable ret = msgpack.read(in, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestInheritanceClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + InheritanceClassNotNullable ret = msgpack.convert(value, InheritanceClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + MessagePackableTypeFieldsClass ret = msgpack.read(bytes, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + MessagePackableTypeFieldsClass ret = msgpack.convert(value, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + MessagePackableTypeFieldsClass ret = msgpack.read(in, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + MessagePackableTypeFieldsClass ret = msgpack.read(bytes, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + MessagePackableTypeFieldsClass ret = msgpack.convert(value, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + MessagePackableTypeFieldsClass ret = msgpack.read(in, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + MessagePackableTypeFieldsClass ret = msgpack.convert(value, MessagePackableTypeFieldsClass.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.read(bytes, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.convert(value, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.read(in, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.read(bytes, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.convert(value, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.read(in, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestMessagePackableTypeFieldsClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + MessagePackableTypeFieldsClassNotNullable ret = msgpack.convert(value, MessagePackableTypeFieldsClassNotNullable.class); + assertEquals(v, ret); + } + } + +} diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 645c69d46..0e95cce18 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -91,7 +91,7 @@ public void testBigInteger(BigInteger v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - BigInteger ret = tmpl.read(unpacker, null); + BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); } } From 617ba7df2d9f5fe6bbeba3f5e3b7d863b6112f99 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Mon, 19 Sep 2011 14:20:09 +0900 Subject: [PATCH 181/409] added org.msgpack.template.Templates --- .../java/org/msgpack/template/Templates.java | 157 ++++++++++++++++++ .../org/msgpack/template/TestTemplates.java | 74 +++++++++ 2 files changed, 231 insertions(+) create mode 100644 src/main/java/org/msgpack/template/Templates.java create mode 100644 src/test/java/org/msgpack/template/TestTemplates.java diff --git a/src/main/java/org/msgpack/template/Templates.java b/src/main/java/org/msgpack/template/Templates.java new file mode 100644 index 000000000..fdd87780d --- /dev/null +++ b/src/main/java/org/msgpack/template/Templates.java @@ -0,0 +1,157 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.nio.ByteBuffer; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.Date; +import java.math.BigInteger; +import java.math.BigDecimal; +import org.msgpack.type.Value; + + +public final class Templates { + public static final Template TValue = ValueTemplate.getInstance(); + + public static final Template TByte = ByteTemplate.getInstance(); + + public static final Template TShort = ShortTemplate.getInstance(); + + public static final Template TInteger = IntegerTemplate.getInstance(); + + public static final Template TLong = LongTemplate.getInstance(); + + public static final Template TCharacter = CharacterTemplate.getInstance(); + + public static final Template TBigInteger = BigIntegerTemplate.getInstance(); + + public static final Template TBigDecimal = BigDecimalTemplate.getInstance(); + + public static final Template TFloat = FloatTemplate.getInstance(); + + public static final Template TDouble = DoubleTemplate.getInstance(); + + public static final Template TBoolean = BooleanTemplate.getInstance(); + + public static final Template TString = StringTemplate.getInstance(); + + public static final Template TByteArray = ByteArrayTemplate.getInstance(); + + public static final Template TByteBuffer = ByteBufferTemplate.getInstance(); + + public static final Template TDate = DateTemplate.getInstance(); + + + public static Template tNotNullable(Template innerTemplate) { + return new NotNullableTemplate(innerTemplate); + } + + public static Template> tList(Template elementTemplate) { + return new ListTemplate(elementTemplate); + } + + public static Template> tMap(Template keyTemplate, Template valueTemplate) { + return new MapTemplate(keyTemplate, valueTemplate); + } + + public static Template> tCollection(Template elementTemplate) { + return new CollectionTemplate(elementTemplate); + } + + public static Template tOrdinalEnum(Class enumClass) { + return new OrdinalEnumTemplate(enumClass); + } + + //public static Template tClass(Class target) { + // // TODO + //} + + + @Deprecated + public static Template tByte() { + return TByte; + } + + @Deprecated + public static Template tShort() { + return TShort; + } + + @Deprecated + public static Template tInteger() { + return TInteger; + } + + @Deprecated + public static Template tLong() { + return TLong; + } + + @Deprecated + public static Template tCharacter() { + return TCharacter; + } + + @Deprecated + public static Template tBigInteger() { + return TBigInteger; + } + + @Deprecated + public static Template tBigDecimal() { + return TBigDecimal; + } + + @Deprecated + public static Template tFloat() { + return TFloat; + } + + @Deprecated + public static Template tDouble() { + return TDouble; + } + + @Deprecated + public static Template tBoolean() { + return TBoolean; + } + + @Deprecated + public static Template tString() { + return TString; + } + + @Deprecated + public static Template tByteArray() { + return TByteArray; + } + + @Deprecated + public static Template tByteBuffer() { + return TByteBuffer; + } + + @Deprecated + public static Template tDate() { + return TDate; + } +} + diff --git a/src/test/java/org/msgpack/template/TestTemplates.java b/src/test/java/org/msgpack/template/TestTemplates.java new file mode 100644 index 000000000..ada36ddcf --- /dev/null +++ b/src/test/java/org/msgpack/template/TestTemplates.java @@ -0,0 +1,74 @@ +package org.msgpack.template; + +import static org.junit.Assert.assertEquals; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.Date; +import java.math.BigInteger; +import java.math.BigDecimal; +import java.util.ArrayList; + +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.BufferUnpacker; + +import static org.msgpack.template.Templates.*; +import static org.msgpack.template.Templates.TByte; + +import org.junit.Test; + + +public class TestTemplates { + public static enum MyEnum { + A, B, C; + } + + @Test + public void testGenericsTypesCompliable() throws IOException { + Template tbyte = TByte; + Template tshort = TShort; + Template tinteger = TInteger; + Template tlong = TLong; + Template tcharacter = TCharacter; + Template tbiginteger = TBigInteger; + Template tbigdecimail = TBigDecimal; + Template tfloat = TFloat; + Template tdouble = TDouble; + Template tboolean = TBoolean; + Template tstring = TString; + Template tbytearray = TByteArray; + Template tbytebuffer = TByteBuffer; + Template tdate = TDate; + + Template> tlist = tList(TString); + Template> tmap = tMap(TString, TInteger); + Template> tcollection = tCollection(TLong); + Template tordinalenum = tOrdinalEnum(MyEnum.class); + } + + @Test + public void testList() throws IOException { + MessagePack msgpack = new MessagePack(); + + BufferPacker pk = msgpack.createBufferPacker(); + + Template> t = tList(TString); + List list1 = new ArrayList(); + list1.add("a"); + list1.add("b"); + t.write(pk, list1); + + byte[] raw = pk.toByteArray(); + Unpacker u = msgpack.createBufferUnpacker(raw); + List list2 = t.read(u, new ArrayList()); + + assertEquals(list1, list2); + } +} + From c716c4c0485e829e5337bbbcc52a56473d20f77b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 19 Sep 2011 16:27:27 +0900 Subject: [PATCH 182/409] added new interfaces for deserializing data to objects with templates --- src/main/java/org/msgpack/MessagePack.java | 137 +++++++++++++++++---- 1 file changed, 112 insertions(+), 25 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 05807c255..643cb3bbc 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -487,12 +487,13 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { * @return output byte array * @throws IOException */ - public byte[] write(Object v) throws IOException { + public byte[] write(T v) throws IOException { BufferPacker pk = createBufferPacker(); if (v == null) { pk.writeNil(); } else { - Template tmpl = registry.lookup(v.getClass()); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); tmpl.write(pk, v); } return pk.toByteArray(); @@ -524,12 +525,13 @@ public byte[] write(T v, Template template) throws IOException { * serialized object * @throws IOException */ - public void write(OutputStream out, Object v) throws IOException { + public void write(OutputStream out, T v) throws IOException { Packer pk = createPacker(out); if (v == null) { pk.writeNil(); } else { - Template tmpl = registry.lookup(v.getClass()); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); tmpl.write(pk, v); } } @@ -630,31 +632,56 @@ public Value read(InputStream in) throws IOException { * @param bytes * input byte array * @param v - * deserialized object * @return * @throws IOException */ public T read(byte[] bytes, T v) throws IOException { - // TODO #MN if T is null? - Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = createBufferUnpacker(bytes); - return (T) tmpl.read(u, v); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + return read(bytes, v, tmpl); + } + + /** + * Deserializes byte array to object according to template. + * + * @since 0.6.0 + * @param bytes input byte array + * @param tmpl template + * @return + * @throws IOException + */ + public T read(byte[] bytes, Template tmpl) throws IOException { + return read(bytes, null, tmpl); } /** * Deserializes byte array to object of specified class. * * @since 0.6.0 - * @param b - * input {@link java.nio.ByteBuffer} object + * @param bytes input byte array * @param c * @return * @throws IOException */ - public T read(byte[] b, Class c) throws IOException { + public T read(byte[] bytes, Class c) throws IOException { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(c); - BufferUnpacker u = createBufferUnpacker(b); - return tmpl.read(u, null); + return read(bytes, null, tmpl); + } + + /** + * Deserializes byte array to object according to specified template. + * + * @since 0.6.0 + * @param bytes input byte array + * @param v + * @param tmpl template + * @return + * @throws IOException + */ + public T read(byte[] bytes, T v, Template tmpl) throws IOException { + BufferUnpacker u = createBufferUnpacker(bytes); + return (T) tmpl.read(u, v); } /** @@ -668,10 +695,22 @@ public T read(byte[] b, Class c) throws IOException { * @throws IOException */ public T read(ByteBuffer b, T v) throws IOException { - // TODO #MN if T is null? + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(v.getClass()); - BufferUnpacker u = createBufferUnpacker(b); - return tmpl.read(u, v); + return read(b, v, tmpl); + } + + /** + * Deserializes buffer to object according to template. + * + * @since 0.6.0 + * @param b input buffer object + * @param tmpl + * @return + * @throws IOException + */ + public T read(ByteBuffer b, Template tmpl) throws IOException { + return read(b, null, tmpl); } /** @@ -681,11 +720,27 @@ public T read(ByteBuffer b, T v) throws IOException { * @param b * @param c * @return + * @throws IOException */ - public T read(ByteBuffer b, Class c) { + public T read(ByteBuffer b, Class c) throws IOException { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(c); + return read(b, null, tmpl); + } + + /** + * Deserializes buffer to object according to template. + * + * @since 0.6.0 + * @param b input buffer object + * @param v + * @param tmpl + * @return + * @throws IOException + */ + public T read(ByteBuffer b, T v, Template tmpl) throws IOException { BufferUnpacker u = createBufferUnpacker(b); - return null; + return tmpl.read(u, v); } /** @@ -699,8 +754,22 @@ public T read(ByteBuffer b, Class c) { * @throws IOException */ public T read(InputStream in, T v) throws IOException { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(v.getClass()); - return tmpl.read(createUnpacker(in), v); + return read(in, v, tmpl); + } + + /** + * Deserializes input stream to object according to template. + * + * @since 0.6.0 + * @param in input stream + * @param tmpl + * @return + * @throws IOException + */ + public T read(InputStream in, Template tmpl) throws IOException { + return read(in, null, tmpl); } /** @@ -713,8 +782,24 @@ public T read(InputStream in, T v) throws IOException { * @throws IOException */ public T read(InputStream in, Class c) throws IOException { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(c); - return tmpl.read(createUnpacker(in), null); + return read(in, null, tmpl); + } + + /** + * Deserializes input stream to object according to template + * + * @since 0.6.0 + * @param in input stream + * @param v + * @param tmpl + * @return + * @throws IOException + */ + public T read(InputStream in, T v, Template tmpl) throws IOException { + Unpacker u = createUnpacker(in); + return tmpl.read(u, v); } /** @@ -727,7 +812,7 @@ public T read(InputStream in, Class c) throws IOException { * @throws IOException */ public T convert(Value v, T to) throws IOException { - // TODO #MN if T is null? + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(to.getClass()); return tmpl.read(new Converter(this, v), to); } @@ -742,6 +827,7 @@ public T convert(Value v, T to) throws IOException { * @throws IOException */ public T convert(Value v, Class c) throws IOException { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(c); return tmpl.read(new Converter(this, v), null); } @@ -759,6 +845,7 @@ public Value unconvert(T v) throws IOException { if (v == null) { pk.writeNil(); } else { + @SuppressWarnings("unchecked") Template tmpl = registry.lookup(v.getClass()); tmpl.write(pk, v); } @@ -820,6 +907,7 @@ public void unregister() { * @param type * @return */ + @SuppressWarnings("unchecked") public Template lookup(Class type) { return registry.lookup(type); } @@ -835,7 +923,7 @@ public Template lookup(Class type) { * @throws IOException */ @Deprecated - public static byte[] pack(Object v) throws IOException { // TODO IOException + public static byte[] pack(Object v) throws IOException { return globalMessagePack.write(v); } @@ -862,8 +950,7 @@ public static void pack(OutputStream out, Object v) throws IOException { * @throws IOException */ @Deprecated - public static byte[] pack(T v, Template template) throws IOException { // TODO - // IOException + public static byte[] pack(T v, Template template) throws IOException { return globalMessagePack.write(v, template); } From 64cc8609556d1e17fc4e227d423f240eab8a015d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 20 Sep 2011 06:12:25 +0900 Subject: [PATCH 183/409] appended test programs for MessagePack class --- .../java/org/msgpack/TestMessagePack01.java | 204 +++++++++++++++++- 1 file changed, 197 insertions(+), 7 deletions(-) diff --git a/src/test/java/org/msgpack/TestMessagePack01.java b/src/test/java/org/msgpack/TestMessagePack01.java index 5cace1055..71c6b51ab 100644 --- a/src/test/java/org/msgpack/TestMessagePack01.java +++ b/src/test/java/org/msgpack/TestMessagePack01.java @@ -12,8 +12,10 @@ import java.util.List; import java.util.Map; -import org.junit.Ignore; import org.junit.Test; +import org.msgpack.template.Template; +import static org.msgpack.template.Templates.tList; +import static org.msgpack.template.Templates.tMap; import org.msgpack.type.Value; @@ -109,12 +111,41 @@ public void testByteArrayUnconvertConvert() throws Exception { new TestByteArrayUnconvertConvert().testByteArray(); } - @Ignore @Test // FIXME #MN *MUST* fix it in this version + @Test + public void testListBufferPackBufferUnpack() throws Exception { + new TestListBufferPackBufferUnpack().testList(); + } + + @Test + public void testListBufferPackUnpack() throws Exception { + new TestListBufferPackUnpack().testList(); + } + + @Test + public void testListPackBufferUnpack() throws Exception { + new TestListPackBufferUnpack().testList(); + } + + @Test public void testListPackUnpack() throws Exception { new TestListPackUnpack().testList(); } - @Ignore @Test // FIXME #MN *MUST* fix it in this version + @Test + public void testMapBufferPackBufferUnpack() throws Exception { + new TestMapBufferPackBufferUnpack().testMap(); + } + + @Test + public void testMapBufferPackUnpack() throws Exception { + new TestMapBufferPackUnpack().testMap(); + } + + @Test + public void testMapPackBufferUnpack() throws Exception { + new TestMapPackBufferUnpack().testMap(); + } + @Test public void testMapPackUnpack() throws Exception { new TestMapPackUnpack().testMap(); } @@ -461,6 +492,84 @@ public void testByteArray(byte[] v) throws Exception { } } + public static class TestListBufferPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tElm = msgpack.lookup(elementClass); + byte[] bytes = msgpack.write(v, tList(tElm)); + List ret = msgpack.read(bytes, new ArrayList(), tList(tElm)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + } + + public static class TestListBufferPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tElm = msgpack.lookup(elementClass); + byte[] bytes = msgpack.write(v, tList(tElm)); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + List ret = msgpack.read(in, new ArrayList(), tList(tElm)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + } + + public static class TestListPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testList() throws Exception { + super.testList(); + } + + @Override + public void testList(List v, Class elementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Template tElm = msgpack.lookup(elementClass); + msgpack.write(out, v, tList(tElm)); + byte[] bytes = out.toByteArray(); + List ret = msgpack.read(bytes, tList(tElm)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } + } + } + public static class TestListPackUnpack extends org.msgpack.TestSet { @Test @Override public void testList() throws Exception { @@ -471,9 +580,10 @@ public void testList() throws Exception { public void testList(List v, Class elementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - msgpack.write(out, v); + Template tElm = msgpack.lookup(elementClass); + msgpack.write(out, v, tList(tElm)); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - List ret = msgpack.read(in, new ArrayList()); + List ret = msgpack.read(in, new ArrayList(), tList(tElm)); if (v == null) { assertEquals(null, ret); return; @@ -487,6 +597,84 @@ public void testList(List v, Class elementClass) throws Exception { } } + public static class TestMapBufferPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tKey = msgpack.lookup(keyElementClass); + Template tValue = msgpack.lookup(valueElementClass); + byte[] bytes = msgpack.write(v, tMap(tKey, tValue)); + Map ret = msgpack.read(bytes, new HashMap(), tMap(tKey, tValue)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } + } + + public static class TestMapBufferPackUnpack extends org.msgpack.TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + Template tKey = msgpack.lookup(keyElementClass); + Template tValue = msgpack.lookup(valueElementClass); + byte[] bytes = msgpack.write(v, tMap(tKey, tValue)); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Map ret = msgpack.read(in, new HashMap(), tMap(tKey, tValue)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } + } + + public static class TestMapPackBufferUnpack extends org.msgpack.TestSet { + @Test @Override + public void testMap() throws Exception { + super.testMap(); + } + + @Override + public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Template tKey = msgpack.lookup(keyElementClass); + Template tValue = msgpack.lookup(valueElementClass); + msgpack.write(out, v, tMap(tKey, tValue)); + byte[] bytes = out.toByteArray(); + Map ret = msgpack.read(bytes, new HashMap(), tMap(tKey, tValue)); + if (v == null) { + assertEquals(null, ret); + return; + } + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } + } + } + public static class TestMapPackUnpack extends org.msgpack.TestSet { @Test @Override public void testMap() throws Exception { @@ -497,9 +685,11 @@ public void testMap() throws Exception { public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { MessagePack msgpack = new MessagePack(); ByteArrayOutputStream out = new ByteArrayOutputStream(); - msgpack.write(out, v); + Template tKey = msgpack.lookup(keyElementClass); + Template tValue = msgpack.lookup(valueElementClass); + msgpack.write(out, v, tMap(tKey, tValue)); ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); - Map ret = msgpack.read(in, new HashMap()); + Map ret = msgpack.read(in, new HashMap(), tMap(tKey, tValue)); if (v == null) { assertEquals(null, ret); return; From 42bcb20137eda32357d550c8d82b0cb8bc2dfaef Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 20 Sep 2011 15:44:36 +0900 Subject: [PATCH 184/409] updated MessagePack document --- src/main/java/org/msgpack/MessagePack.java | 82 +++++++++++++++++----- 1 file changed, 65 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 643cb3bbc..911e44e5b 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -57,7 +57,7 @@ * serialization. *

* - *

Install

+ *

How to Install

* *

* The official Maven2 repository for MessagePack for Java is located here. String objects, byte[] objects, - * ByteBuffer objects, List objects, Map - * objects and so on. As mentioned above, they also enable - * serializing/deserizing objects of your own classes annotated by + * ByteBuffer objects and so on. As mentioned above, they also + * enable serializing/deserizing objects of your own classes annotated by * @Message. *

* @@ -239,15 +238,6 @@ * packer.write("MesagePack"); // String object * packer.write(java.nio.ByteBufer.wrap(new byte[] { 0x30, 0x31, 0x32 })); // ByteBuffer object * packer.write(java.math.BigInteger.ONE); // BigInteger object - * java.util.List<String> list = new java.util.ArrayList<String>(); - * list.add("msgpack"); - * list.add("for"); - * list.add("java"); - * packer.write(list); // List object - * java.util.Map<String, String> map = new java.util.HashMap<String, String>(); - * map.put("sadayuki", "furuhashi"); - * map.put("muga", "nishizawa"); - * packer.write(map); // Map object * * // * // deserialization @@ -277,10 +267,6 @@ * String ws = unpacker.read(String.class); * java.nio.ByteBuffer buf = unpacker.read(java.nio.ByteBuffer.class); * java.math.BigInteger bi = unpacker.read(java.math.BigInteger.class); - * java.util.List<String> dstList = new java.util.ArrayList<String>(); - * dstList = unpacker.read(dstList); - * java.util.Map<String, String> dstMap = new java.util.HashMap<String, String>(); - * dstMap = unpacker.read(dstMap); * } * } * @@ -307,6 +293,68 @@ * read(byte[].class)) method. *

* + *

List, Map objects Serialization/Deserialization + *

+ * + *

+ * You can serialize List and Map objects with + * {@link org.msgpack.template.Template} objects, which are pairs of + * serializer/deserializer. The type of elements in List object + * needs to be specified to Template object for effective + * serialization/deserialization. Types of keys and values in Map + * object also need to be specified to Template object. + *

+ * + *
+ * import static org.msgpack.template.Templates.tList;
+ * import static org.msgpack.template.Templates.tMap;
+ * import static org.msgpack.template.Templates.TString;
+ * 
+ * public class Main4 {
+ *     public static void main(String[] args) {
+ * 	MessagePack msgpack = new MessagePack();
+ * 
+ * 	// create templates for serializing/deserializing List and Map objects
+ * 	org.msgpack.template.Template listTmpl = tList(TString);
+ * 	org.msgpack.template.Template mapTmpl = tMap(TString, TString);
+ * 
+ * 	//
+ * 	// serialization
+ * 	//
+ * 
+ * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
+ * 	Packer packer = msgpack.createPacker(out);
+ * 
+ * 	// serialize List object
+ * 	java.util.List<String> list = new java.util.ArrayList<String>();
+ * 	list.add("msgpack");
+ * 	list.add("for");
+ * 	list.add("java");
+ * 	packer.write(list, listTmpl); // List object
+ * 
+ * 	// serialize Map object
+ * 	java.util.Map<String, String> map = new java.util.HashMap<String, String>();
+ * 	map.put("sadayuki", "furuhashi");
+ * 	map.put("muga", "nishizawa");
+ * 	packer.write(map, mapTmpl); // Map object
+ * 
+ * 	//
+ * 	// deserialization
+ * 	//
+ * 
+ * 	byte[] bytes = out.toByteArray();
+ * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
+ * 	Unpacker unpacker = msgpack.createUnpacker(in);
+ * 
+ * 	// to List object
+ * 	dstList = unpacker.read(dstList, listTmpl);
+ * 
+ * 	// to Map object
+ * 	dstMap = unpacker.read(dstMap, mapTmpl);
+ *     }
+ * }
+ * 
+ * *

Without Annotations

* *

From 70c5abea403a1af7406efa4713fa9be46a92dd42 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 20 Sep 2011 23:52:22 +0900 Subject: [PATCH 185/409] updated document in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 52 ++++++++++++++-------- 1 file changed, 33 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 911e44e5b..2afbbd5c7 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -45,8 +45,8 @@ * *

* MessagePack is a binary-based efficient object serialization library for - * cross languages. It enables to exchange structured objects between many - * languages like JSON. But unlike JSON, it is very fast and small. + * cross languages. It enables exchanging structured objects between many + * languages like JSON, but it is very fast and small compared to JSON. *

* *

@@ -60,7 +60,7 @@ *

How to Install

* *

- * The official Maven2 repository for MessagePack for Java is located here. http://msgpack.org/maven2/ *

* @@ -155,11 +155,11 @@ *

* If you want to serialize multiple objects sequentially, MessagePack * recommends use of {@link org.msgpack.packer.Packer} and - * {@link org.msgpack.unpacker.Unpacker} objects. Because + * {@link org.msgpack.unpacker.Unpacker} objects. This is because * {@link MessagePack#write(Object)} and {@link #read(byte[])} method * invocations create {@link org.msgpack.packer.Packer} and * {@link org.msgpack.unpacker.Unpacker} objects every times. To use - * Packer and Unpacker objects, you call + * Packer and Unpacker objects, call * {@link #createPacker(OutputStream)} and {@link #createUnpacker(byte[])}. *

* @@ -177,14 +177,19 @@ * src3.version = 1.0; * * MessagePack msgpack = new MessagePack(); - * // serialize src data to byte array + * // + * // serialize + * // * ByteArrayOutputStream out = new ByteArrayOutputStream(); * Packer packer = msgpack.createPacker(out); * packer.write(src1); * packer.write(src2); * packer.write(src3); * byte[] bytes = out.toByteArray(); - * // deserialize byte array to MyMessage object + * + * // + * // deserialize + * // * ByteArrayInputStream in = new ByteArrayInputStream(bytes); * Unpacker unpacker = msgpack.createUnpacker(in); * MyMessage dst1 = unpacker.read(bytes, MyMessage.class); @@ -214,7 +219,6 @@ * // * // serialization * // - * * ByteArrayOutputStream out = new ByteArrayOutputStream(); * Packer packer = msgpack.createPacker(out); * @@ -242,7 +246,6 @@ * // * // deserialization * // - * * byte[] bytes = out.toByteArray(); * ByteArrayInputStream in = new ByteArrayInputStream(bytes); * Unpacker unpacker = msgpack.createUnpacker(in); @@ -297,12 +300,23 @@ * * *

- * You can serialize List and Map objects with - * {@link org.msgpack.template.Template} objects, which are pairs of - * serializer/deserializer. The type of elements in List object - * needs to be specified to Template object for effective - * serialization/deserialization. Types of keys and values in Map - * object also need to be specified to Template object. + * To serialize generic container objects like List and + * Map objects, you can use {@link org.msgpack.template.Template}. + * Template objects are pairs of serializer and deserializer. For + * example, to serialize a List object that has + * Integer objects as elements, you create the + * Template object by the following way. + *

+ * + *
+ * Template listTmpl = Templates.tList(Templates.TInteger);
+ * 
+ * + *

+ * tList, TInteger are static method and + * field in {@link org.msgpack.template.Templates}. A simple + * example of List and Map objects is shown in the + * following. *

* *
@@ -372,10 +386,10 @@
  * 

* For example, if MyMessage2 class is included in external * library, you cannot easily modify the class declaration and append - * @Message to it. {@link #register} method allows to generate - * serializer/deserializer of MyMessage2 class automatically. You - * can serialize objects of MyMessage2 class after executing the - * method. + * @Message to it. {@link #register} method allows to generate a + * pair of serializer and deserializer for MyMessage2 class + * automatically. You can serialize objects of MyMessage2 class + * after executing the method. *

* *

Optional Fields

From e0f1aa01a98c9bafbb112ebafb96481a6afded4c Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 22 Sep 2011 14:13:02 +0900 Subject: [PATCH 186/409] added T Unpacker#read(Template) --- .../msgpack/unpacker/AbstractUnpacker.java | 13 ++- .../java/org/msgpack/unpacker/Unpacker.java | 3 + .../org/msgpack/template/TestTemplates.java | 1 - .../msgpack/unpacker/TestReadTemplate.java | 100 ++++++++++++++++++ 4 files changed, 112 insertions(+), 5 deletions(-) create mode 100644 src/test/java/org/msgpack/unpacker/TestReadTemplate.java diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 40a1ee296..4f1e9b413 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -70,13 +70,18 @@ public Value readValue() throws IOException { protected abstract boolean tryReadNil() throws IOException; + @Override + public T read(Template template) throws IOException { + return template.read(this, null); + } + @Override public T read(Class klass) throws IOException { if(tryReadNil()) { return null; } - Template tmpl = msgpack.lookup(klass); - return (T) tmpl.read(this, null); + Template tmpl = msgpack.lookup(klass); + return tmpl.read(this, null); } @Override @@ -84,8 +89,8 @@ public T read(T to) throws IOException { if(tryReadNil()) { return null; } - Template tmpl = msgpack.lookup((Class) to.getClass()); - return (T) tmpl.read(this, to); + Template tmpl = msgpack.lookup((Class) to.getClass()); + return tmpl.read(this, to); } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 1e2d095c7..a4cf65b2e 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -23,6 +23,7 @@ import java.math.BigInteger; import java.lang.Iterable; import org.msgpack.type.Value; +import org.msgpack.template.Template; /** * Standard deserializer. @@ -30,6 +31,8 @@ * @version 0.6.0 */ public interface Unpacker extends Iterable, Closeable { + public T read(Template template) throws IOException; + public T read(Class klass) throws IOException; public T read(T to) throws IOException; diff --git a/src/test/java/org/msgpack/template/TestTemplates.java b/src/test/java/org/msgpack/template/TestTemplates.java index ada36ddcf..5064af4bf 100644 --- a/src/test/java/org/msgpack/template/TestTemplates.java +++ b/src/test/java/org/msgpack/template/TestTemplates.java @@ -19,7 +19,6 @@ import org.msgpack.unpacker.BufferUnpacker; import static org.msgpack.template.Templates.*; -import static org.msgpack.template.Templates.TByte; import org.junit.Test; diff --git a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java new file mode 100644 index 000000000..6c81ef505 --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java @@ -0,0 +1,100 @@ +package org.msgpack.unpacker; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; + +import java.io.IOException; +import java.nio.ByteBuffer; +import java.util.List; +import java.util.Map; +import java.util.Collection; +import java.util.Date; +import java.math.BigInteger; +import java.math.BigDecimal; +import java.util.ArrayList; + +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.template.Template; + +import static org.msgpack.template.Templates.*; + +import org.junit.Test; +import org.junit.Ignore; + + +public class TestReadTemplate { + public static enum MyEnum { + A, B, C; + } + + @Test + public void testReadTemplateNull() throws IOException { + Byte tbyte = u().read(TByte); + assertNull(tbyte); + + Short tshort = u().read(TShort); + assertNull(tshort); + + Integer tinteger = u().read(TInteger); + assertNull(tinteger); + + Long tlong = u().read(TLong); + assertNull(tlong); + + Character tcharacter = u().read(TCharacter); + assertNull(tcharacter); + + BigInteger tbiginteger = u().read(TBigInteger); + assertNull(tbiginteger); + + BigDecimal tbigdecimail = u().read(TBigDecimal); + assertNull(tbigdecimail); + + Float tfloat = u().read(TFloat); + assertNull(tfloat); + + Double tdouble = u().read(TDouble); + assertNull(tdouble); + + Boolean tboolean = u().read(TBoolean); + assertNull(tboolean); + + String tstring = u().read(TString); + assertNull(tstring); + + byte[] tbytearray = u().read(TByteArray); + assertNull(tbytearray); + + ByteBuffer tbytebuffer = u().read(TByteBuffer); + assertNull(tbytebuffer); + + Date tdate = u().read(TDate); + assertNull(tdate); + + List tlist = u().read(tList(TString)); + assertNull(tlist); + + Map tmap = u().read(tMap(TString, TInteger)); + assertNull(tmap); + + Collection tcollection = u().read(tCollection(TLong)); + assertNull(tcollection); + + //MyEnum tordinalenum = u().read(tOrdinalEnum(MyEnum.class)); + //assertNull(tordinalenum); + } + + // return unpacker that can read a nil + private Unpacker u() throws IOException { + MessagePack msgpack = new MessagePack(); + BufferPacker pk = msgpack.createBufferPacker(); + pk.writeNil(); + Unpacker u = msgpack.createBufferUnpacker(pk.toByteArray()); + return u; + } +} + From 647487ffee65b35339892671ddee43b00be5236f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 15:20:16 +0900 Subject: [PATCH 187/409] deleted document in MessagePack.java and move it to wiki --- src/main/java/org/msgpack/MessagePack.java | 374 --------------------- 1 file changed, 374 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 2afbbd5c7..25d156b0e 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -41,380 +41,6 @@ * deserializers for objects of classes. *

* - *

Overview of MessagePack

- * - *

- * MessagePack is a binary-based efficient object serialization library for - * cross languages. It enables exchanging structured objects between many - * languages like JSON, but it is very fast and small compared to JSON. - *

- * - *

- * MessagePack for Java is one implementation of MessagePack libraries in pure - * Java. See jvm-serializers, - * which is one of well-known benchmarks for comparing Java libraries of data - * serialization. - *

- * - *

How to Install

- * - *

- * The official Maven2 repository of MessagePack for Java is located here. http://msgpack.org/maven2/ - *

- * - *

- * You could use the following pom.xml to install MessagePack for - * Java via Maven. - *

- * - *
- * <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- *    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- * 
- *   <modelVersion>4.0.0</modelVersion>
- *   <groupId>org.sample</groupId>
- *   <artifactId>sample</artifactId>
- *   <packaging>jar</packaging>
- *   <version>0.0.1</version>
- * 
- *   <repositories>
- *     <repository>
- *     <id>msgpack.org</id>
- *     <name>MessagePack Repository for Maven</name>
- *     <url>http://msgpack.org/maven2/</url>
- *     </repository>
- *   </repositories>
- * 
- *   <dependencies>
- *     <dependency>
- *       <groupId>org.msgpack</groupId>
- *       <artifactId>msgpack</artifactId>
- *       <version>0.6.0-devel</version>
- *     </dependency>
- *   </dependencies>
- * </project>
- * 
- * - *

- * You can build and install latest source code of MessagePack for Java as - * follows. The source code resides in GitHub. https://github.com/msgpack/msgpack-java/. - *

- * - *
- * $ git clone git@github.com:msgpack/msgpack-java.git
- * $ cd msgpack-java
- * $ mvn package
- * 
- * - *

- * Then you'll get the jar file of MessagePack for Java in target - * directory. - *

- * - *

Quick Start MessagePack for Java

- * - *

- * @Message enables you to serialize objects of your own classes - * like this. - *

- * - *
- * @Message
- * public class MyMessage {
- *     public String name;
- *     public double version;
- * }
- * 
- * - *

- * MessagePack recommends that serialized class and field declarations include - * public modifier. The following is code to serialize objects of - * class annotated by @Message. - *

- * - *
- * public class Main {
- *     public static void main(String[] args) {
- * 	MyMessage src = new MyMessage();
- * 	src.name = "msgpack";
- * 	src.version = 0.6;
- * 
- * 	MessagePack msgpack = new MessagePack();
- * 	// serialize src data to byte array
- * 	byte[] bytes = msgpack.write(src);
- * 	// deserialize byte array to MyMessage object
- * 	MyMessage dst = msgpack.read(bytes, MyMessage.class);
- *     }
- * }
- * 
- * - *

- * If you want to serialize multiple objects sequentially, MessagePack - * recommends use of {@link org.msgpack.packer.Packer} and - * {@link org.msgpack.unpacker.Unpacker} objects. This is because - * {@link MessagePack#write(Object)} and {@link #read(byte[])} method - * invocations create {@link org.msgpack.packer.Packer} and - * {@link org.msgpack.unpacker.Unpacker} objects every times. To use - * Packer and Unpacker objects, call - * {@link #createPacker(OutputStream)} and {@link #createUnpacker(byte[])}. - *

- * - *
- * public class Main2 {
- *     public static void main(String[] args) {
- * 	MyMessage src1 = new MyMessage();
- * 	src1.name = "msgpack";
- * 	src1.version = 0.6;
- * 	MyMessage src2 = new MyMessage();
- * 	src2.name = "muga";
- * 	src2.version = 10.0;
- * 	MyMessage src3 = new MyMessage();
- * 	src3.name = "frsyukik";
- * 	src3.version = 1.0;
- * 
- * 	MessagePack msgpack = new MessagePack();
- * 	//
- * 	// serialize
- * 	//
- * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
- * 	Packer packer = msgpack.createPacker(out);
- * 	packer.write(src1);
- * 	packer.write(src2);
- * 	packer.write(src3);
- * 	byte[] bytes = out.toByteArray();
- * 
- * 	//
- * 	// deserialize
- * 	//
- * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
- * 	Unpacker unpacker = msgpack.createUnpacker(in);
- * 	MyMessage dst1 = unpacker.read(bytes, MyMessage.class);
- * 	MyMessage dst2 = unpacker.read(bytes, MyMessage.class);
- * 	MyMessage dst3 = unpacker.read(bytes, MyMessage.class);
- *     }
- * }
- * 
- * - *

Various Types of Values Serialization/Deserialization

- * - *

- * Packer/Unpacker allows serializing/deserializing - * values of various types as follows. They enable serializing/deserializing - * values of various types like values of primitive types, values of primitive - * wrapper classes, String objects, byte[] objects, - * ByteBuffer objects and so on. As mentioned above, they also - * enable serializing/deserizing objects of your own classes annotated by - * @Message. - *

- * - *
- * public class Main3 {
- *     public static void main(String[] args) {
- * 	MessagePack msgpack = new MessagePack();
- * 
- * 	//
- * 	// serialization
- * 	//
- * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
- * 	Packer packer = msgpack.createPacker(out);
- * 
- * 	// serialize values of primitive types
- * 	packer.write(true); // boolean value
- * 	packer.write(10) // int value
- * 	packer.write(10.5); // double value
- * 
- * 	// serialize objects of primitive wrapper types
- * 	packer.write(Boolean.TRUE);
- * 	packer.write(new Integer(10));
- * 	packer.write(new Double(10.5));
- * 
- * 	// serialize various types of arrays
- * 	packer.write(new int[] { 1, 2, 3, 4 });
- * 	packer.write(new Double[] { 10.5, 20.5 });
- * 	packer.write(new String[] { "msg", "pack", "for", "java" });
- * 	packer.write(new byte[] { 0x30, 0x31, 0x32 }); // byte array
- * 
- * 	// serialize various types of other reference values
- * 	packer.write("MesagePack"); // String object
- * 	packer.write(java.nio.ByteBufer.wrap(new byte[] { 0x30, 0x31, 0x32 })); // ByteBuffer object
- * 	packer.write(java.math.BigInteger.ONE); // BigInteger object
- * 
- * 	//
- * 	// deserialization
- * 	//
- * 	byte[] bytes = out.toByteArray();
- * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
- * 	Unpacker unpacker = msgpack.createUnpacker(in);
- * 
- * 	// to primitive values
- * 	boolean b = unpacker.readBoolean(); // boolean value
- * 	int i = unpacker.readInt(); // int value
- * 	double d = unpacker.readDouble(); // double value
- * 
- * 	// to primitive wrapper value
- * 	Boolean wb = unpacker.read(Boolean.class);
- * 	Integer wi = unpacker.read(Integer.class);
- * 	Double wd = unpacker.read(Double.class);
- * 
- * 	// to arrays
- * 	int[] ia = unpacker.read(int[].class);
- * 	Double[] da = unpacker.read(Double[].class);
- * 	String[] sa = unpacker.read(String[].class);
- * 	byte[] ba = unpacker.read(byte[].class);
- * 
- * 	// to String object, ByteBuffer object, BigInteger object, List object and Map object
- * 	String ws = unpacker.read(String.class);
- * 	java.nio.ByteBuffer buf = unpacker.read(java.nio.ByteBuffer.class);
- * 	java.math.BigInteger bi = unpacker.read(java.math.BigInteger.class);
- *     }
- * }
- * 
- * - *

- * write methods provided by Packer allows serializing - * various types of data. - *

- * - *

- * Unpacker provides deserialization methods for deserializing - * binary to primitive values. For example, if you want to deserialize binary to - * value of boolean (or int) type, you can use - * readBoolean (or readInt) method in - * Unpacker. - *

- * - *

- * Unpacker also provides read methods for reference - * values. Its methods allow deserializing binary to values of references which - * types you specified as parameters. For example, if you want to deserialize - * binary to String (or byte[]) object, - * you have to describe a call of read(String.class) (or - * read(byte[].class)) method. - *

- * - *

List, Map objects Serialization/Deserialization - *

- * - *

- * To serialize generic container objects like List and - * Map objects, you can use {@link org.msgpack.template.Template}. - * Template objects are pairs of serializer and deserializer. For - * example, to serialize a List object that has - * Integer objects as elements, you create the - * Template object by the following way. - *

- * - *
- * Template listTmpl = Templates.tList(Templates.TInteger);
- * 
- * - *

- * tList, TInteger are static method and - * field in {@link org.msgpack.template.Templates}. A simple - * example of List and Map objects is shown in the - * following. - *

- * - *
- * import static org.msgpack.template.Templates.tList;
- * import static org.msgpack.template.Templates.tMap;
- * import static org.msgpack.template.Templates.TString;
- * 
- * public class Main4 {
- *     public static void main(String[] args) {
- * 	MessagePack msgpack = new MessagePack();
- * 
- * 	// create templates for serializing/deserializing List and Map objects
- * 	org.msgpack.template.Template listTmpl = tList(TString);
- * 	org.msgpack.template.Template mapTmpl = tMap(TString, TString);
- * 
- * 	//
- * 	// serialization
- * 	//
- * 
- * 	ByteArrayOutputStream out = new ByteArrayOutputStream();
- * 	Packer packer = msgpack.createPacker(out);
- * 
- * 	// serialize List object
- * 	java.util.List<String> list = new java.util.ArrayList<String>();
- * 	list.add("msgpack");
- * 	list.add("for");
- * 	list.add("java");
- * 	packer.write(list, listTmpl); // List object
- * 
- * 	// serialize Map object
- * 	java.util.Map<String, String> map = new java.util.HashMap<String, String>();
- * 	map.put("sadayuki", "furuhashi");
- * 	map.put("muga", "nishizawa");
- * 	packer.write(map, mapTmpl); // Map object
- * 
- * 	//
- * 	// deserialization
- * 	//
- * 
- * 	byte[] bytes = out.toByteArray();
- * 	ByteArrayInputStream in = new ByteArrayInputStream(bytes);
- * 	Unpacker unpacker = msgpack.createUnpacker(in);
- * 
- * 	// to List object
- * 	dstList = unpacker.read(dstList, listTmpl);
- * 
- * 	// to Map object
- * 	dstMap = unpacker.read(dstMap, mapTmpl);
- *     }
- * }
- * 
- * - *

Without Annotations

- * - *

- * If you cannot append @Message to classes representing objects - * that you want to serialize, {@link #register} method enables you to serialize - * the objects of the classes. - *

- *

- * - *
- * MessagePack msgpack = new MessagePack();
- * msgpack.register(MyMessage2.class);
- * 
- * - *

- * For example, if MyMessage2 class is included in external - * library, you cannot easily modify the class declaration and append - * @Message to it. {@link #register} method allows to generate a - * pair of serializer and deserializer for MyMessage2 class - * automatically. You can serialize objects of MyMessage2 class - * after executing the method. - *

- * - *

Optional Fields

- * - *

- * You can add new fields maintaining the compatibility. Use the - * @Optional in the new fields. - *

- * - *
- * @Message
- * public class MyMessage {
- *     public String name;
- *     public double version;
- *     // new field
- *     @Optional
- *     public int flag = 0;
- * }
- * 
- * - *

- * If you try to deserialize the old version data, optional fields will be - * ignored. - *

- * */ public class MessagePack { private TemplateRegistry registry; From b6d97e1190340ee5a52bcb5f786ec02c7d74951c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 15:21:23 +0900 Subject: [PATCH 188/409] added read(Template) in AbstractUnpacker and Unpacker classes --- .../org/msgpack/unpacker/AbstractUnpacker.java | 17 ++++++++++++++++- .../java/org/msgpack/unpacker/Unpacker.java | 6 ++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 40a1ee296..b14afb8f9 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -87,5 +87,20 @@ public T read(T to) throws IOException { Template tmpl = msgpack.lookup((Class) to.getClass()); return (T) tmpl.read(this, to); } -} + @Override + public T read(Template tmpl) throws IOException { + if (tryReadNil()) { + return null; + } + return (T) tmpl.read(this, null); + } + + @Override + public T read(T to, Template tmpl) throws IOException { + if(tryReadNil()) { + return null; + } + return (T) tmpl.read(this, to); + } +} diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 1e2d095c7..4b750009b 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -22,6 +22,8 @@ import java.nio.ByteBuffer; import java.math.BigInteger; import java.lang.Iterable; + +import org.msgpack.template.Template; import org.msgpack.type.Value; /** @@ -34,6 +36,10 @@ public interface Unpacker extends Iterable, Closeable { public T read(T to) throws IOException; + public T read(Template tmpl) throws IOException; + + public T read(T to, Template tmpl) throws IOException; + public void skip() throws IOException; From 2ee3b5eab8fec6f874a076b35f243a14fd89efaa Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 15:27:04 +0900 Subject: [PATCH 189/409] merged AbstractUnpacker and Unpacker classes manually --- src/main/java/org/msgpack/unpacker/AbstractUnpacker.java | 5 ----- src/main/java/org/msgpack/unpacker/Unpacker.java | 3 --- 2 files changed, 8 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index f4d938af6..868b2b638 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -70,11 +70,6 @@ public Value readValue() throws IOException { protected abstract boolean tryReadNil() throws IOException; - @Override - public T read(Template template) throws IOException { - return template.read(this, null); - } - @Override public T read(Class klass) throws IOException { if(tryReadNil()) { diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index f4d36c489..4b750009b 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -25,7 +25,6 @@ import org.msgpack.template.Template; import org.msgpack.type.Value; -import org.msgpack.template.Template; /** * Standard deserializer. @@ -33,8 +32,6 @@ * @version 0.6.0 */ public interface Unpacker extends Iterable, Closeable { - public T read(Template template) throws IOException; - public T read(Class klass) throws IOException; public T read(T to) throws IOException; From d8bce5c409e7f415508e1e7809391d0fa9227e14 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 16:29:36 +0900 Subject: [PATCH 190/409] updated document in MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 25d156b0e..eb61d3a90 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -41,6 +41,12 @@ * deserializers for objects of classes. *

* + *

+ * See Quick + * Start for Java on MessagePack wiki. + *

+ * */ public class MessagePack { private TemplateRegistry registry; From a7b7c2c5278ef5d431faf5288306ce313bcb860c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 16:53:32 +0900 Subject: [PATCH 191/409] changed OrdinalEnumTemplate --- .../org/msgpack/template/OrdinalEnumTemplate.java | 15 +++++++++++++-- .../org/msgpack/unpacker/TestReadTemplate.java | 4 ++-- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 18803bb6a..7c3e3bb02 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -39,8 +39,15 @@ public OrdinalEnumTemplate(Class targetClass) { @Override public void write(Packer pk, T target, boolean required) throws IOException { + if (target == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; + } Integer ordinal = reverse.get(target); - if(ordinal == null) { + if (ordinal == null) { throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); } pk.write((int)ordinal); @@ -48,8 +55,12 @@ public void write(Packer pk, T target, boolean required) throws IOException { @Override public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { + if (!required && pac.trySkipNil()) { + return null; + } + int ordinal = pac.readInt(); - if(entries.length <= ordinal) { + if (entries.length <= ordinal) { throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); } return entries[ordinal]; diff --git a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java index 6c81ef505..32bc07784 100644 --- a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java +++ b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java @@ -84,8 +84,8 @@ public void testReadTemplateNull() throws IOException { Collection tcollection = u().read(tCollection(TLong)); assertNull(tcollection); - //MyEnum tordinalenum = u().read(tOrdinalEnum(MyEnum.class)); - //assertNull(tordinalenum); + MyEnum tordinalenum = u().read(tOrdinalEnum(MyEnum.class)); + assertNull(tordinalenum); } // return unpacker that can read a nil From 78bf1f18505440d5f15ec13747ea2c662155fc24 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 17:07:48 +0900 Subject: [PATCH 192/409] deleted dead codes --- src/main/java/org/msgpack/io/ByteBufferOutput.java | 1 + src/main/java/org/msgpack/io/EndOfBufferException.java | 2 ++ src/main/java/org/msgpack/io/Input.java | 3 +-- src/main/java/org/msgpack/io/LinkedBufferInput.java | 2 +- src/main/java/org/msgpack/io/StreamInput.java | 1 + src/main/java/org/msgpack/io/StreamOutput.java | 3 ++- 6 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index a7c853ca8..1181b792f 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -21,6 +21,7 @@ import java.nio.ByteBuffer; import java.nio.BufferOverflowException; + public class ByteBufferOutput implements Output { public static interface ExpandBufferCallback { ByteBuffer call(ByteBuffer buffer, int len) throws IOException; diff --git a/src/main/java/org/msgpack/io/EndOfBufferException.java b/src/main/java/org/msgpack/io/EndOfBufferException.java index 0d334f40d..0e8e739c4 100644 --- a/src/main/java/org/msgpack/io/EndOfBufferException.java +++ b/src/main/java/org/msgpack/io/EndOfBufferException.java @@ -19,6 +19,8 @@ import java.io.EOFException; + +@SuppressWarnings("serial") public class EndOfBufferException extends EOFException { public EndOfBufferException() { super(); diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 91a4ec3a3..100059353 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -19,8 +19,7 @@ import java.io.IOException; import java.io.Closeable; -import java.io.EOFException; -import java.nio.ByteBuffer; + public interface Input extends Closeable { public int read(byte[] b, int off, int len) throws IOException; diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index a1903d566..7715c9ba8 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -19,10 +19,10 @@ import java.io.IOException; import java.io.EOFException; -import java.util.List; import java.util.LinkedList; import java.nio.ByteBuffer; + public class LinkedBufferInput implements Input { private LinkedList link; private int writable; diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index 9f8d8735b..018d15e2d 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.io.EOFException; + public class StreamInput implements Input { private final InputStream in; diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index 2f22488fc..c571e48d3 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -22,6 +22,7 @@ import java.io.DataOutputStream; import java.nio.ByteBuffer; + public class StreamOutput implements Output { private DataOutputStream out; @@ -42,7 +43,7 @@ public void write(ByteBuffer bb) throws IOException { out.write(array, offset, bb.remaining()); bb.position(bb.limit()); } else { - int pos = bb.position(); + //int pos = bb.position(); byte[] buf = new byte[bb.remaining()]; bb.get(buf); out.write(buf); From d76ae346c948ceb89ccd1513c1d2d5db2db6dcc8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 17:12:47 +0900 Subject: [PATCH 193/409] deleted dead codes in org.msgpack.packer.*.java --- src/main/java/org/msgpack/packer/AbstractPacker.java | 1 + src/main/java/org/msgpack/packer/MessagePackPacker.java | 3 --- src/main/java/org/msgpack/packer/PackerStack.java | 1 + src/main/java/org/msgpack/packer/Unconverter.java | 4 ++-- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index 5d1bd9c92..f8738a1f0 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -194,6 +194,7 @@ public Packer write(String o) throws IOException { return this; } + @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public Packer write(Object o) throws IOException { if(o == null) { diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index e10ac132d..b908869cd 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -22,9 +22,6 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import java.math.BigInteger; -import java.nio.charset.Charset; -import java.nio.charset.CharsetEncoder; -import java.nio.charset.CodingErrorAction; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; diff --git a/src/main/java/org/msgpack/packer/PackerStack.java b/src/main/java/org/msgpack/packer/PackerStack.java index 1dedbf0ad..f017c3921 100644 --- a/src/main/java/org/msgpack/packer/PackerStack.java +++ b/src/main/java/org/msgpack/packer/PackerStack.java @@ -19,6 +19,7 @@ import org.msgpack.MessageTypeException; + public final class PackerStack { private int top; private byte[] types; diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index 5d42e0bde..e7ccf5e44 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -31,7 +31,7 @@ public class Unconverter extends AbstractPacker { private PackerStack stack; private Object[] values; private Value result; - private Value topContainer; + //private Value topContainer; public Unconverter() { this(new MessagePack()); @@ -115,7 +115,7 @@ public Packer writeNil() throws IOException { @Override public Packer writeArrayBegin(int size) throws IOException { if(size == 0) { - Value[] array = new Value[size]; + //Value[] array = new Value[size]; putContainer(ValueFactory.createArrayValue()); stack.pushArray(0); values[stack.getDepth()] = null; From 948a4f929a046c054e7066337ff913f26437744f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 17:17:05 +0900 Subject: [PATCH 194/409] deleted dead codes and unused import statements --- .../java/org/msgpack/util/TemplatePrecompiler.java | 1 + src/main/java/org/msgpack/util/json/JSON.java | 1 - .../java/org/msgpack/util/json/JSONBufferPacker.java | 2 -- .../java/org/msgpack/util/json/JSONBufferUnpacker.java | 5 ----- src/main/java/org/msgpack/util/json/JSONPacker.java | 5 +---- src/main/java/org/msgpack/util/json/JSONUnpacker.java | 10 +++------- 6 files changed, 5 insertions(+), 19 deletions(-) diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index 4e30827e6..f77ee7ca3 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -45,6 +45,7 @@ * Application enables to load the .class files and use templates. * */ +@SuppressWarnings("restriction") public class TemplatePrecompiler { private static final Logger LOG = LoggerFactory.getLogger(TemplatePrecompiler.class); diff --git a/src/main/java/org/msgpack/util/json/JSON.java b/src/main/java/org/msgpack/util/json/JSON.java index 8e9c0a50e..fb1dc73bf 100644 --- a/src/main/java/org/msgpack/util/json/JSON.java +++ b/src/main/java/org/msgpack/util/json/JSON.java @@ -21,7 +21,6 @@ import java.io.OutputStream; import java.nio.ByteBuffer; import org.msgpack.MessagePack; -import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; diff --git a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java index e46ff62db..39c6dc954 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -18,9 +18,7 @@ package org.msgpack.util.json; import org.msgpack.MessagePack; -import org.msgpack.io.Output; import org.msgpack.io.LinkedBufferOutput; -import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index e4183fff6..4ad19b7d7 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -17,16 +17,11 @@ // package org.msgpack.util.json; -import java.io.IOException; -import java.io.EOFException; import java.io.ByteArrayInputStream; import java.io.Reader; import java.io.InputStreamReader; import java.nio.ByteBuffer; import org.msgpack.MessagePack; -import org.msgpack.MessageTypeException; -import org.msgpack.type.Value; -import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.BufferUnpacker; diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index 780cfbf0f..ac28edd67 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -22,11 +22,8 @@ import java.nio.ByteBuffer; import java.math.BigInteger; import java.nio.charset.Charset; -import java.nio.charset.CharacterCodingException; import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; -import java.nio.charset.MalformedInputException; -import org.json.simple.JSONValue; import org.msgpack.io.Output; import org.msgpack.io.StreamOutput; import org.msgpack.MessagePack; @@ -53,7 +50,7 @@ public class JSONPacker extends AbstractPacker { private static final int FLAG_FIRST_ELEMENT = 0x01; private static final int FLAG_MAP_KEY = 0x02; private static final int FLAG_MAP_VALUE = 0x04; - private static final int FLAG_MAP = FLAG_MAP_KEY | FLAG_MAP_VALUE; + //private static final int FLAG_MAP = FLAG_MAP_KEY | FLAG_MAP_VALUE; protected final Output out; private int[] flags; diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 49fd4a3d6..4764d80d6 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -18,22 +18,15 @@ package org.msgpack.util.json; import java.io.IOException; -import java.io.EOFException; import java.io.InputStream; import java.io.Reader; import java.io.InputStreamReader; -import java.io.StringReader; import java.util.List; import java.util.Map; import java.util.Iterator; -import java.math.BigInteger; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; -//import org.msgpack.io.Input; -//import org.msgpack.io.StreamInput; import org.msgpack.MessagePack; -import org.msgpack.MessageTypeException; -import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; @@ -69,6 +62,7 @@ protected Value nextValue() throws IOException { } } + @SuppressWarnings("rawtypes") private Value objectToValue(Object obj) { if(obj instanceof String) { return ValueFactory.createRawValue((String)obj); @@ -89,6 +83,7 @@ private Value objectToValue(Object obj) { } } + @SuppressWarnings("rawtypes") private Value listToValue(List list) { Value[] array = new Value[list.size()]; for(int i=0; i < array.length; i++) { @@ -97,6 +92,7 @@ private Value listToValue(List list) { return ValueFactory.createArrayValue(array, true); } + @SuppressWarnings({ "unchecked", "rawtypes" }) private Value mapToValue(Map map) { Value[] kvs = new Value[map.size()*2]; Iterator it = map.entrySet().iterator(); From 01c1ab0d51578fbc4e2aad569db3c8ea69ded70f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 17:20:05 +0900 Subject: [PATCH 195/409] deleted unused import statements in org.msgpack.unpacker.*.java --- src/main/java/org/msgpack/unpacker/AbstractUnpacker.java | 4 +--- src/main/java/org/msgpack/unpacker/ArrayAccept.java | 1 + src/main/java/org/msgpack/unpacker/BigIntegerAccept.java | 2 +- src/main/java/org/msgpack/unpacker/Converter.java | 1 - src/main/java/org/msgpack/unpacker/DoubleAccept.java | 1 + src/main/java/org/msgpack/unpacker/IntAccept.java | 1 + src/main/java/org/msgpack/unpacker/LongAccept.java | 1 + src/main/java/org/msgpack/unpacker/MapAccept.java | 1 + src/main/java/org/msgpack/unpacker/SkipAccept.java | 1 + src/main/java/org/msgpack/unpacker/StringAccept.java | 1 - src/main/java/org/msgpack/unpacker/UnpackerStack.java | 3 +-- src/main/java/org/msgpack/unpacker/ValueAccept.java | 2 +- 12 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 868b2b638..bac575e29 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -18,10 +18,7 @@ package org.msgpack.unpacker; import java.io.IOException; -import java.io.Closeable; import java.nio.ByteBuffer; -import java.math.BigInteger; -import java.lang.Iterable; import org.msgpack.type.Value; import org.msgpack.MessagePack; import org.msgpack.template.Template; @@ -79,6 +76,7 @@ public T read(Class klass) throws IOException { return tmpl.read(this, null); } + @SuppressWarnings("unchecked") @Override public T read(T to) throws IOException { if(tryReadNil()) { diff --git a/src/main/java/org/msgpack/unpacker/ArrayAccept.java b/src/main/java/org/msgpack/unpacker/ArrayAccept.java index 5d5cad4ba..c073c8fe4 100644 --- a/src/main/java/org/msgpack/unpacker/ArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ArrayAccept.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; + final class ArrayAccept extends Accept { int size; diff --git a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java index 1af501de6..25208681a 100644 --- a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java +++ b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java @@ -18,7 +18,7 @@ package org.msgpack.unpacker; import java.math.BigInteger; -import org.msgpack.MessageTypeException; + final class BigIntegerAccept extends Accept { BigInteger value; diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index c0db0d97f..5d2c1c4f0 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.io.EOFException; import java.math.BigInteger; -import java.nio.ByteBuffer; import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/unpacker/DoubleAccept.java b/src/main/java/org/msgpack/unpacker/DoubleAccept.java index c7d234268..de575652d 100644 --- a/src/main/java/org/msgpack/unpacker/DoubleAccept.java +++ b/src/main/java/org/msgpack/unpacker/DoubleAccept.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; + final class DoubleAccept extends Accept { double value; diff --git a/src/main/java/org/msgpack/unpacker/IntAccept.java b/src/main/java/org/msgpack/unpacker/IntAccept.java index 38cc33015..65adfb509 100644 --- a/src/main/java/org/msgpack/unpacker/IntAccept.java +++ b/src/main/java/org/msgpack/unpacker/IntAccept.java @@ -19,6 +19,7 @@ import org.msgpack.MessageTypeException; + final class IntAccept extends Accept { int value; diff --git a/src/main/java/org/msgpack/unpacker/LongAccept.java b/src/main/java/org/msgpack/unpacker/LongAccept.java index 2d0e81c8e..8d4ac5578 100644 --- a/src/main/java/org/msgpack/unpacker/LongAccept.java +++ b/src/main/java/org/msgpack/unpacker/LongAccept.java @@ -19,6 +19,7 @@ import org.msgpack.MessageTypeException; + final class LongAccept extends Accept { long value; diff --git a/src/main/java/org/msgpack/unpacker/MapAccept.java b/src/main/java/org/msgpack/unpacker/MapAccept.java index f01c0fd28..9cd10d1fc 100644 --- a/src/main/java/org/msgpack/unpacker/MapAccept.java +++ b/src/main/java/org/msgpack/unpacker/MapAccept.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; + final class MapAccept extends Accept { int size; diff --git a/src/main/java/org/msgpack/unpacker/SkipAccept.java b/src/main/java/org/msgpack/unpacker/SkipAccept.java index 5e73fe536..18f761bf5 100644 --- a/src/main/java/org/msgpack/unpacker/SkipAccept.java +++ b/src/main/java/org/msgpack/unpacker/SkipAccept.java @@ -17,6 +17,7 @@ // package org.msgpack.unpacker; + final class SkipAccept extends Accept { @Override void acceptBoolean(boolean v) { diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index cf9e34d22..8b91d57f5 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -23,7 +23,6 @@ import java.nio.charset.CharacterCodingException; import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; -import java.nio.charset.MalformedInputException; import org.msgpack.MessageTypeException; diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index 1503d6d5d..acbe63fd0 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -18,8 +18,7 @@ package org.msgpack.unpacker; import org.msgpack.MessageTypeException; -import org.msgpack.type.Value; -import org.msgpack.type.ValueFactory; + public final class UnpackerStack { private int top; diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index bbf0a8a57..3e5dd8fc6 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -20,10 +20,10 @@ import java.io.IOException; import java.nio.ByteBuffer; import java.math.BigInteger; -import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; import org.msgpack.packer.Unconverter; + final class ValueAccept extends Accept { private Unconverter uc = null; From 65325af62f8e706abf37b4118fa147237daa8cc0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 22:20:29 +0900 Subject: [PATCH 196/409] deleted unused codes in org.msgpack.type.*.java --- .../org/msgpack/type/AbstractArrayValue.java | 1 + .../msgpack/type/AbstractBooleanValue.java | 1 + .../org/msgpack/type/AbstractMapValue.java | 1 + .../org/msgpack/type/AbstractRawValue.java | 2 +- .../java/org/msgpack/type/AbstractValue.java | 5 +-- .../java/org/msgpack/type/ArrayValue.java | 1 + .../java/org/msgpack/type/ArrayValueImpl.java | 5 +-- .../org/msgpack/type/BigIntegerValueImpl.java | 2 + .../java/org/msgpack/type/BooleanValue.java | 1 + .../msgpack/type/ByteArrayRawValueImpl.java | 3 +- .../org/msgpack/type/DoubleValueImpl.java | 3 +- .../java/org/msgpack/type/FalseValueImpl.java | 1 + .../java/org/msgpack/type/FloatValue.java | 2 + .../java/org/msgpack/type/FloatValueImpl.java | 3 +- .../java/org/msgpack/type/IntValueImpl.java | 2 + .../java/org/msgpack/type/IntegerValue.java | 3 +- .../java/org/msgpack/type/LongValueImpl.java | 2 + src/main/java/org/msgpack/type/MapValue.java | 1 + src/main/java/org/msgpack/type/NilValue.java | 1 + .../java/org/msgpack/type/NumberValue.java | 2 + src/main/java/org/msgpack/type/RawValue.java | 1 + .../msgpack/type/SequentialMapValueImpl.java | 43 ++++++++++--------- .../org/msgpack/type/StringRawValueImpl.java | 1 + .../java/org/msgpack/type/TrueValueImpl.java | 1 + src/main/java/org/msgpack/type/Value.java | 1 + .../java/org/msgpack/type/ValueFactory.java | 3 +- 26 files changed, 56 insertions(+), 36 deletions(-) diff --git a/src/main/java/org/msgpack/type/AbstractArrayValue.java b/src/main/java/org/msgpack/type/AbstractArrayValue.java index 2436b4010..b7bbcc82f 100644 --- a/src/main/java/org/msgpack/type/AbstractArrayValue.java +++ b/src/main/java/org/msgpack/type/AbstractArrayValue.java @@ -20,6 +20,7 @@ import java.util.AbstractList; import org.msgpack.MessageTypeException; + abstract class AbstractArrayValue extends AbstractList implements ArrayValue { @Override public ValueType getType() { diff --git a/src/main/java/org/msgpack/type/AbstractBooleanValue.java b/src/main/java/org/msgpack/type/AbstractBooleanValue.java index e1eb26e49..d029bd417 100644 --- a/src/main/java/org/msgpack/type/AbstractBooleanValue.java +++ b/src/main/java/org/msgpack/type/AbstractBooleanValue.java @@ -17,6 +17,7 @@ // package org.msgpack.type; + abstract class AbstractBooleanValue extends AbstractValue implements BooleanValue { @Override public ValueType getType() { diff --git a/src/main/java/org/msgpack/type/AbstractMapValue.java b/src/main/java/org/msgpack/type/AbstractMapValue.java index e7d3098bb..75830b90f 100644 --- a/src/main/java/org/msgpack/type/AbstractMapValue.java +++ b/src/main/java/org/msgpack/type/AbstractMapValue.java @@ -20,6 +20,7 @@ import java.util.AbstractMap; import org.msgpack.MessageTypeException; + abstract class AbstractMapValue extends AbstractMap implements MapValue { @Override public ValueType getType() { diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 4806bb7b3..1d13380d4 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -23,7 +23,7 @@ import java.nio.charset.CharacterCodingException; import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; -import java.nio.charset.MalformedInputException; + abstract class AbstractRawValue extends AbstractValue implements RawValue { @Override diff --git a/src/main/java/org/msgpack/type/AbstractValue.java b/src/main/java/org/msgpack/type/AbstractValue.java index 395b605bd..2d98a384d 100644 --- a/src/main/java/org/msgpack/type/AbstractValue.java +++ b/src/main/java/org/msgpack/type/AbstractValue.java @@ -17,12 +17,9 @@ // package org.msgpack.type; -import java.util.List; -import java.util.Map; -import java.util.ListIterator; -import java.math.BigInteger; import org.msgpack.MessageTypeException; + abstract class AbstractValue implements Value { public boolean isNilValue() { return false; diff --git a/src/main/java/org/msgpack/type/ArrayValue.java b/src/main/java/org/msgpack/type/ArrayValue.java index efafc571d..682b3060b 100644 --- a/src/main/java/org/msgpack/type/ArrayValue.java +++ b/src/main/java/org/msgpack/type/ArrayValue.java @@ -19,6 +19,7 @@ import java.util.List; + public interface ArrayValue extends Value, List { public Value[] getElementArray(); } diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index 050259479..895563e90 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -17,12 +17,11 @@ // package org.msgpack.type; -import java.util.List; -import java.util.Iterator; import java.util.ListIterator; import java.io.IOException; import org.msgpack.packer.Packer; + class ArrayValueImpl extends AbstractArrayValue { private static ArrayValueImpl emptyInstance = new ArrayValueImpl(new Value[0], true); @@ -116,7 +115,7 @@ public boolean equals(Object o) { return equals((ArrayValueImpl) v); } - ListIterator oi = v.asArrayValue().listIterator(); + ListIterator oi = v.asArrayValue().listIterator(); int i = 0; while(i < array.length) { if(!oi.hasNext() || !array[i].equals(oi.next())) { diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index c094c5633..dab24b3de 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -22,6 +22,8 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") class BigIntegerValueImpl extends IntegerValue { private BigInteger value; diff --git a/src/main/java/org/msgpack/type/BooleanValue.java b/src/main/java/org/msgpack/type/BooleanValue.java index 27a2ab240..3a4fa6e97 100644 --- a/src/main/java/org/msgpack/type/BooleanValue.java +++ b/src/main/java/org/msgpack/type/BooleanValue.java @@ -17,6 +17,7 @@ // package org.msgpack.type; + public interface BooleanValue extends Value { public boolean getBoolean(); } diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index c214eba05..859975d89 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -18,17 +18,16 @@ package org.msgpack.type; import java.util.Arrays; -import java.io.UnsupportedEncodingException; import java.io.IOException; import java.nio.ByteBuffer; import java.nio.charset.Charset; import java.nio.charset.CharacterCodingException; import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; -import java.nio.charset.MalformedInputException; import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; + class ByteArrayRawValueImpl extends AbstractRawValue { private static ByteArrayRawValueImpl emptyInstance = new ByteArrayRawValueImpl(new byte[0], true); diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index 65a833bfc..099b351a8 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -21,8 +21,9 @@ import java.math.BigDecimal; import java.io.IOException; import org.msgpack.packer.Packer; -import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") class DoubleValueImpl extends FloatValue { private double value; diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index dfa3d87ec..de2c8aed6 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -20,6 +20,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; + class FalseValueImpl extends AbstractBooleanValue { private FalseValueImpl() { } diff --git a/src/main/java/org/msgpack/type/FloatValue.java b/src/main/java/org/msgpack/type/FloatValue.java index be677e7b7..98e29e6ae 100644 --- a/src/main/java/org/msgpack/type/FloatValue.java +++ b/src/main/java/org/msgpack/type/FloatValue.java @@ -17,6 +17,8 @@ // package org.msgpack.type; + +@SuppressWarnings("serial") public abstract class FloatValue extends NumberValue { @Override public ValueType getType() { diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index e90c6a32d..7248a5848 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -21,8 +21,9 @@ import java.math.BigDecimal; import java.io.IOException; import org.msgpack.packer.Packer; -import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") class FloatValueImpl extends FloatValue { private float value; diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index 7621b5b46..8ed72db41 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -22,6 +22,8 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") class IntValueImpl extends IntegerValue { private int value; diff --git a/src/main/java/org/msgpack/type/IntegerValue.java b/src/main/java/org/msgpack/type/IntegerValue.java index 1d4192969..7b406215e 100644 --- a/src/main/java/org/msgpack/type/IntegerValue.java +++ b/src/main/java/org/msgpack/type/IntegerValue.java @@ -18,8 +18,9 @@ package org.msgpack.type; import java.math.BigInteger; -import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") public abstract class IntegerValue extends NumberValue { @Override public ValueType getType() { diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index 1ba03378f..e1b701586 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -22,6 +22,8 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") class LongValueImpl extends IntegerValue { private long value; diff --git a/src/main/java/org/msgpack/type/MapValue.java b/src/main/java/org/msgpack/type/MapValue.java index bb9ed3e76..5f9d13518 100644 --- a/src/main/java/org/msgpack/type/MapValue.java +++ b/src/main/java/org/msgpack/type/MapValue.java @@ -19,6 +19,7 @@ import java.util.Map; + public interface MapValue extends Value, Map { public Value[] getKeyValueArray(); } diff --git a/src/main/java/org/msgpack/type/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java index 156f0892b..1ea1d3d8f 100644 --- a/src/main/java/org/msgpack/type/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -20,6 +20,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; + public class NilValue extends AbstractValue { private NilValue() { } diff --git a/src/main/java/org/msgpack/type/NumberValue.java b/src/main/java/org/msgpack/type/NumberValue.java index 9a5c51225..cf5d69379 100644 --- a/src/main/java/org/msgpack/type/NumberValue.java +++ b/src/main/java/org/msgpack/type/NumberValue.java @@ -20,6 +20,8 @@ import java.math.BigInteger; import org.msgpack.MessageTypeException; + +@SuppressWarnings("serial") public abstract class NumberValue extends Number implements Value { @Override public boolean isNilValue() { diff --git a/src/main/java/org/msgpack/type/RawValue.java b/src/main/java/org/msgpack/type/RawValue.java index be47d7743..03d1d07a4 100644 --- a/src/main/java/org/msgpack/type/RawValue.java +++ b/src/main/java/org/msgpack/type/RawValue.java @@ -17,6 +17,7 @@ // package org.msgpack.type; + public interface RawValue extends Value { public byte[] getByteArray(); diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 4023ab772..599e41d61 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -28,6 +28,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; + class SequentialMapValueImpl extends AbstractMapValue { private static SequentialMapValueImpl emptyInstance = new SequentialMapValueImpl(new Value[0], true); @@ -252,27 +253,27 @@ public boolean equals(Object o) { // return true; //} - private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { - for(int j=hint; j < array.length; j+=2) { - if(key.equals(oarray[j])) { - if(val.equals(oarray[j+1])) { - return true; - } else { - return false; - } - } - } - for(int j=0; j < hint; j+=2) { - if(key.equals(oarray[j])) { - if(val.equals(oarray[j+1])) { - return true; - } else { - return false; - } - } - } - return false; - } +// private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { +// for(int j=hint; j < array.length; j+=2) { +// if(key.equals(oarray[j])) { +// if(val.equals(oarray[j+1])) { +// return true; +// } else { +// return false; +// } +// } +// } +// for(int j=0; j < hint; j+=2) { +// if(key.equals(oarray[j])) { +// if(val.equals(oarray[j+1])) { +// return true; +// } else { +// return false; +// } +// } +// } +// return false; +// } // TODO compareTo? diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index baa36f1b1..815bb8438 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -23,6 +23,7 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; + class StringRawValueImpl extends AbstractRawValue { private String string; diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index 39e28bc8d..c65c1b807 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -20,6 +20,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; + class TrueValueImpl extends AbstractBooleanValue { private TrueValueImpl() { } diff --git a/src/main/java/org/msgpack/type/Value.java b/src/main/java/org/msgpack/type/Value.java index 2b4f16795..6bbdcd2a7 100644 --- a/src/main/java/org/msgpack/type/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -20,6 +20,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; + public interface Value { public ValueType getType(); diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index c3fa71b5a..57cf65a56 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -19,8 +19,7 @@ import java.math.BigInteger; import java.nio.ByteBuffer; -import java.util.List; -import java.util.Map; + public final class ValueFactory { public static NilValue createNilValue() { From 0fb6dcb487363cc295715c1841d0630a42f92c85 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 22:30:34 +0900 Subject: [PATCH 197/409] deleted unused import statements and added @SuppressWarnings annotations in org.msgpack.template.*.java --- src/main/java/org/msgpack/template/AnyTemplate.java | 3 +++ src/main/java/org/msgpack/template/CharacterTemplate.java | 1 - .../org/msgpack/template/GenericCollectionTemplate.java | 5 ++++- src/main/java/org/msgpack/template/GenericMapTemplate.java | 5 ++++- src/main/java/org/msgpack/template/GenericTemplate.java | 1 + src/main/java/org/msgpack/template/ObjectArrayTemplate.java | 1 + src/main/java/org/msgpack/template/TemplateReference.java | 1 + src/main/java/org/msgpack/template/TemplateRegistry.java | 2 +- src/main/java/org/msgpack/template/Templates.java | 2 +- src/test/java/org/msgpack/template/TestTemplates.java | 3 +-- src/test/java/org/msgpack/unpacker/TestReadTemplate.java | 6 ------ 11 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index ecbe6c8e6..533b8735c 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -25,8 +25,10 @@ public class AnyTemplate extends AbstractTemplate { + @SuppressWarnings("rawtypes") private static AnyTemplate INSTANCE = null; + @SuppressWarnings("rawtypes") public static AnyTemplate getInstance(TemplateRegistry registry) { if (INSTANCE == null) { INSTANCE = new AnyTemplate(registry); @@ -40,6 +42,7 @@ private AnyTemplate(TemplateRegistry registry) { this.registry = registry; } + @SuppressWarnings("unchecked") public void write(Packer pk, T target, boolean required) throws IOException { if(target instanceof Value) { pk.write((Value) target); diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java index eab9ee384..e94a43dd8 100644 --- a/src/main/java/org/msgpack/template/CharacterTemplate.java +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -22,7 +22,6 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - /** * CharacterTemplate
* diff --git a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java index 6ea07d75d..fe0464434 100644 --- a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -22,8 +22,10 @@ public class GenericCollectionTemplate implements GenericTemplate { + @SuppressWarnings("rawtypes") Constructor constructor; + @SuppressWarnings("rawtypes") public GenericCollectionTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[]{ Template.class }); @@ -39,9 +41,10 @@ public GenericCollectionTemplate(TemplateRegistry registry, Class constructor; + @SuppressWarnings("rawtypes") public GenericMapTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); @@ -40,9 +42,10 @@ public GenericMapTemplate(TemplateRegistry registry, Class t } } + @SuppressWarnings("rawtypes") public Template build(Template[] params) { try { - return constructor.newInstance(params); + return constructor.newInstance((Object[]) params); } catch (InvocationTargetException e) { throw new IllegalArgumentException(e); } catch (IllegalAccessException e) { diff --git a/src/main/java/org/msgpack/template/GenericTemplate.java b/src/main/java/org/msgpack/template/GenericTemplate.java index 012eec0e3..27010b965 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate.java +++ b/src/main/java/org/msgpack/template/GenericTemplate.java @@ -19,5 +19,6 @@ public interface GenericTemplate { + @SuppressWarnings("rawtypes") public Template build(Template[] params); } diff --git a/src/main/java/org/msgpack/template/ObjectArrayTemplate.java b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java index a7a8ab742..304ea300f 100644 --- a/src/main/java/org/msgpack/template/ObjectArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java @@ -8,6 +8,7 @@ import org.msgpack.unpacker.Unpacker; +@SuppressWarnings({ "rawtypes", "unchecked" }) public class ObjectArrayTemplate extends AbstractTemplate { protected Class componentClass; diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java index fdb0d6bb0..d069d39ac 100644 --- a/src/main/java/org/msgpack/template/TemplateReference.java +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -38,6 +38,7 @@ public TemplateReference(TemplateRegistry registry, Type targetType) { this.targetType = targetType; } + @SuppressWarnings("unchecked") private void validateActualTemplate() { if (actualTemplate == null) { actualTemplate = (Template) registry.cache.get(targetType); diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9c3a67485..85792786d 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -53,6 +53,7 @@ import org.msgpack.type.Value; +@SuppressWarnings({ "rawtypes", "unchecked" }) public class TemplateRegistry { private TemplateRegistry parent = null; @@ -220,7 +221,6 @@ public synchronized Template lookup(Type targetType) { "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } - @SuppressWarnings("unchecked") private Template lookupGenericType(Type targetType) { Template tmpl = null; if (targetType instanceof ParameterizedType) { diff --git a/src/main/java/org/msgpack/template/Templates.java b/src/main/java/org/msgpack/template/Templates.java index fdd87780d..8e01a7b86 100644 --- a/src/main/java/org/msgpack/template/Templates.java +++ b/src/main/java/org/msgpack/template/Templates.java @@ -27,6 +27,7 @@ import org.msgpack.type.Value; +@SuppressWarnings({ "rawtypes", "unchecked" }) public final class Templates { public static final Template TValue = ValueTemplate.getInstance(); @@ -58,7 +59,6 @@ public final class Templates { public static final Template TDate = DateTemplate.getInstance(); - public static Template tNotNullable(Template innerTemplate) { return new NotNullableTemplate(innerTemplate); } diff --git a/src/test/java/org/msgpack/template/TestTemplates.java b/src/test/java/org/msgpack/template/TestTemplates.java index 5064af4bf..7ed9083fd 100644 --- a/src/test/java/org/msgpack/template/TestTemplates.java +++ b/src/test/java/org/msgpack/template/TestTemplates.java @@ -13,10 +13,8 @@ import java.util.ArrayList; import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; -import org.msgpack.unpacker.BufferUnpacker; import static org.msgpack.template.Templates.*; @@ -28,6 +26,7 @@ public static enum MyEnum { A, B, C; } + @SuppressWarnings("unused") @Test public void testGenericsTypesCompliable() throws IOException { Template tbyte = TByte; diff --git a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java index 32bc07784..45c259687 100644 --- a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java +++ b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java @@ -1,6 +1,5 @@ package org.msgpack.unpacker; -import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNull; import java.io.IOException; @@ -11,19 +10,14 @@ import java.util.Date; import java.math.BigInteger; import java.math.BigDecimal; -import java.util.ArrayList; import org.msgpack.MessagePack; -import org.msgpack.packer.Packer; import org.msgpack.packer.BufferPacker; import org.msgpack.unpacker.Unpacker; -import org.msgpack.unpacker.BufferUnpacker; -import org.msgpack.template.Template; import static org.msgpack.template.Templates.*; import org.junit.Test; -import org.junit.Ignore; public class TestReadTemplate { From a2a8f25a0095c465677804f9c87470a5992a4070 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 22 Sep 2011 22:34:39 +0900 Subject: [PATCH 198/409] added @SuppressWarnings to several classes in org.msgpack.template.builder package --- .../org/msgpack/template/builder/ArrayTemplateBuilder.java | 2 ++ .../java/org/msgpack/template/builder/BeansBuildContext.java | 1 + src/main/java/org/msgpack/template/builder/BuildContext.java | 2 ++ .../org/msgpack/template/builder/DefaultBuildContext.java | 2 ++ .../template/builder/JavassistBeansTemplateBuilder.java | 2 ++ .../msgpack/template/builder/JavassistTemplateBuilder.java | 1 + .../template/builder/ReflectionBeansTemplateBuilder.java | 1 + .../msgpack/template/builder/ReflectionTemplateBuilder.java | 5 +++-- 8 files changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index 0c24c17fa..1758ec009 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -41,11 +41,13 @@ import org.slf4j.LoggerFactory; +@SuppressWarnings({ "rawtypes", "unchecked" }) public class ArrayTemplateBuilder extends AbstractTemplateBuilder { private static final Logger LOG = LoggerFactory.getLogger(ArrayTemplateBuilder.class); static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { + private Class componentClass; private Template componentTemplate; diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 2b9208194..c4113230e 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -30,6 +30,7 @@ import javassist.NotFoundException; +@SuppressWarnings("rawtypes") public class BeansBuildContext extends BuildContext { protected BeansFieldEntry[] entries; diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 88cfc8f68..0d5d5607d 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -34,6 +34,8 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; + +@SuppressWarnings({ "rawtypes" }) public abstract class BuildContext { private static Logger LOG = LoggerFactory.getLogger(BuildContext.class); diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 13d4e11a6..c705e56ab 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -33,6 +33,8 @@ import javassist.CtNewConstructor; import javassist.NotFoundException; + +@SuppressWarnings({ "rawtypes", "unchecked" }) public class DefaultBuildContext extends BuildContext { protected FieldEntry[] entries; diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index 22c31afbc..e65d936d3 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -2,6 +2,8 @@ import org.msgpack.template.TemplateRegistry; + +@SuppressWarnings({ "rawtypes" }) public class JavassistBeansTemplateBuilder extends JavassistTemplateBuilder { public JavassistBeansTemplateBuilder(TemplateRegistry registry) { diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 6724285fd..fff7b2396 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -33,6 +33,7 @@ import org.msgpack.template.TemplateRegistry; +@SuppressWarnings({ "rawtypes", "unchecked" }) public class JavassistTemplateBuilder extends AbstractTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(JavassistTemplateBuilder.class); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index f40a7dbe7..611bda2e4 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -48,6 +48,7 @@ * @author takeshita * */ +@SuppressWarnings({ "rawtypes" }) public class ReflectionBeansTemplateBuilder extends ReflectionTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index c6a0fc4e0..7f5060340 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -32,6 +32,7 @@ import org.slf4j.LoggerFactory; +@SuppressWarnings({ "rawtypes", "unchecked" }) public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); @@ -63,7 +64,7 @@ public void write(Packer packer, Object v, boolean required) throws IOException @Override public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { - Class type = (Class) entry.getType(); + //Class type = (Class) entry.getType(); Object f = entry.get(to); Object o = template.read(unpacker, f, required); if (o != f) { @@ -186,7 +187,7 @@ protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { ReflectionFieldTemplate[] templates = new ReflectionFieldTemplate[entries.length]; for (int i = 0; i < entries.length; i++) { FieldEntry entry = entries[i]; - Class t = entry.getType(); + //Class t = entry.getType(); Template template = registry.lookup(entry.getGenericType()); templates[i] = new FieldTemplateImpl(entry, template); } From afcc89c3587d6faa0bc99360a24b86db4ccc38a0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 23 Sep 2011 02:44:06 +0900 Subject: [PATCH 199/409] modified pom.xml --- pom.xml | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/pom.xml b/pom.xml index 574a1ea6c..1d9ce9863 100644 --- a/pom.xml +++ b/pom.xml @@ -3,10 +3,11 @@ 4.0.0 org.msgpack msgpack - 0.6.0-devel - MessagePack for Java - MessagePack for Java + MessagePack for Java is a binary-based efficient object + serialization library in Java. + 0.6.0-devel + jar http://msgpack.org/ @@ -18,10 +19,28 @@ - scm:git:git://github.com/msgpack/msgpack.git - scm:git:git://github.com/msgpack/msgpack.git + scm:git:git://github.com/msgpack/msgpack-java.git + scm:git:git://github.com/msgpack/msgpack-java.git + + JIRA + http://jira.msgpack.org/browse/MSGPACK + + + + + frsyuki + Sadayuki Furuhashi + frsyuki@users.sourceforge.jp + + + muga + Muga Nishizawa + muga.nishizawa@gmail.com + + + com.googlecode.json-simple @@ -63,7 +82,6 @@ src/test/resources - maven-compiler-plugin @@ -73,12 +91,10 @@ UTF-8 - maven-eclipse-plugin 2.5.1 - maven-release-plugin @@ -87,7 +103,6 @@ scm:git://github.com/msgpack/msgpack.git - org.apache.maven.plugins maven-source-plugin @@ -100,11 +115,9 @@ - - @@ -118,12 +131,10 @@ UTF-8 - org.apache.maven.plugins maven-jxr-plugin - org.apache.maven.plugins maven-surefire-report-plugin From 0e98d95a9c81c5869daad568107b4c4ec4a847ee Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 4 Oct 2011 04:14:16 +0900 Subject: [PATCH 200/409] pom.xml: fixed for sonatype OSS maven repo --- pom.xml | 61 +++++++-------------------------------------------------- 1 file changed, 7 insertions(+), 54 deletions(-) diff --git a/pom.xml b/pom.xml index 1d9ce9863..008520d40 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.0-devel + 0.6.0 jar http://msgpack.org/ @@ -20,6 +20,7 @@ scm:git:git://github.com/msgpack/msgpack-java.git + scm:git:git@github.com:msgpack/msgpack-java.git scm:git:git://github.com/msgpack/msgpack-java.git @@ -142,57 +143,9 @@ - - - msgpack.org - MessagePack Maven2 Repository - http://msgpack.org/maven2 - - - - - - false - msgpack.org - Repository at msgpack.org - file://${project.build.directory}/website/maven2/ - - - true - msgpack.org - Repository at msgpack.org - file://${project.build.directory}/website/maven2/ - - - - - - - release - - - - true - org.apache.maven.plugins - maven-deploy-plugin - 2.4 - - true - - - - - - + + org.sonatype.oss + oss-parent + 7 + From 6dbd1bf88331264e2fe0adfebec9814fd0e779aa Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 4 Oct 2011 04:48:52 +0900 Subject: [PATCH 201/409] v0.6.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 008520d40..48c4597fe 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.0 + 0.6.0-SNAPSHOT jar http://msgpack.org/ From 4aa37c2679589cf813b351f66308acd0554f5200 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 4 Oct 2011 05:00:11 +0900 Subject: [PATCH 202/409] [maven-release-plugin] prepare release msgpack-0.6.0 --- pom.xml | 302 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 151 insertions(+), 151 deletions(-) diff --git a/pom.xml b/pom.xml index 48c4597fe..a87562956 100644 --- a/pom.xml +++ b/pom.xml @@ -1,151 +1,151 @@ - - - 4.0.0 - org.msgpack - msgpack - MessagePack for Java - MessagePack for Java is a binary-based efficient object - serialization library in Java. - 0.6.0-SNAPSHOT - jar - http://msgpack.org/ - - - - The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt - repo - - - - - scm:git:git://github.com/msgpack/msgpack-java.git - scm:git:git@github.com:msgpack/msgpack-java.git - scm:git:git://github.com/msgpack/msgpack-java.git - - - - JIRA - http://jira.msgpack.org/browse/MSGPACK - - - - - frsyuki - Sadayuki Furuhashi - frsyuki@users.sourceforge.jp - - - muga - Muga Nishizawa - muga.nishizawa@gmail.com - - - - - - com.googlecode.json-simple - json-simple - 1.1 - - - org.javassist - javassist - 3.15.0-GA - compile - - - org.slf4j - slf4j-api - 1.6.1 - - - org.slf4j - slf4j-log4j12 - 1.6.1 - - - junit - junit - 4.8.2 - test - - - - - - - src/main/resources - - - - - src/test/resources - - - - - maven-compiler-plugin - - 1.5 - 1.5 - UTF-8 - - - - maven-eclipse-plugin - 2.5.1 - - - maven-release-plugin - - - deploy - scm:git://github.com/msgpack/msgpack.git - - - - org.apache.maven.plugins - maven-source-plugin - - - attach-sources - - jar - - - - - - - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - ${project.name} ${project.version} API - true - en_US - UTF-8 - - - - org.apache.maven.plugins - maven-jxr-plugin - - - org.apache.maven.plugins - maven-surefire-report-plugin - - - - - - org.sonatype.oss - oss-parent - 7 - - + + + 4.0.0 + org.msgpack + msgpack + MessagePack for Java + MessagePack for Java is a binary-based efficient object + serialization library in Java. + 0.6.0 + jar + http://msgpack.org/ + + + + The Apache Software License, Version 2.0 + http://www.apache.org/licenses/LICENSE-2.0.txt + repo + + + + + scm:git:git://github.com/msgpack/msgpack-java.git + scm:git:git@github.com:msgpack/msgpack-java.git + scm:git:git://github.com/msgpack/msgpack-java.git + + + + JIRA + http://jira.msgpack.org/browse/MSGPACK + + + + + frsyuki + Sadayuki Furuhashi + frsyuki@users.sourceforge.jp + + + muga + Muga Nishizawa + muga.nishizawa@gmail.com + + + + + + com.googlecode.json-simple + json-simple + 1.1 + + + org.javassist + javassist + 3.15.0-GA + compile + + + org.slf4j + slf4j-api + 1.6.1 + + + org.slf4j + slf4j-log4j12 + 1.6.1 + + + junit + junit + 4.8.2 + test + + + + + + + src/main/resources + + + + + src/test/resources + + + + + maven-compiler-plugin + + 1.5 + 1.5 + UTF-8 + + + + maven-eclipse-plugin + 2.5.1 + + + maven-release-plugin + + + deploy + scm:git://github.com/msgpack/msgpack.git + + + + org.apache.maven.plugins + maven-source-plugin + + + attach-sources + + jar + + + + + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + ${project.name} ${project.version} API + true + en_US + UTF-8 + + + + org.apache.maven.plugins + maven-jxr-plugin + + + org.apache.maven.plugins + maven-surefire-report-plugin + + + + + + org.sonatype.oss + oss-parent + 7 + + From bd47193c896b0b6fd22e8d1a4e145c0d74369259 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 4 Oct 2011 05:01:12 +0900 Subject: [PATCH 203/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a87562956..dca128144 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.0 + 0.6.1-SNAPSHOT jar http://msgpack.org/ From 25147ff08d59cf1e700c6fa5d1c45f0b62a3f56d Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 4 Oct 2011 05:05:21 +0900 Subject: [PATCH 204/409] pom.xml: removed maven-release-plugin settings --- pom.xml | 8 -------- 1 file changed, 8 deletions(-) diff --git a/pom.xml b/pom.xml index dca128144..3e5b43030 100644 --- a/pom.xml +++ b/pom.xml @@ -96,14 +96,6 @@ maven-eclipse-plugin 2.5.1 - - maven-release-plugin - - - deploy - scm:git://github.com/msgpack/msgpack.git - - org.apache.maven.plugins maven-source-plugin From 5c6a8173053e59932e5b215d84142f25e73ae737 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 6 Oct 2011 15:09:46 +0900 Subject: [PATCH 205/409] deleted unused methods in MessagePack{Packer,Unpacker}.java and MessagePackBuffer{Packer,Unpacker}.java --- src/main/java/org/msgpack/MessagePack.java | 2 +- .../java/org/msgpack/packer/MessagePackBufferPacker.java | 8 -------- src/main/java/org/msgpack/packer/MessagePackPacker.java | 4 ---- .../org/msgpack/unpacker/MessagePackBufferUnpacker.java | 8 -------- .../java/org/msgpack/unpacker/MessagePackUnpacker.java | 4 ---- 5 files changed, 1 insertion(+), 25 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index eb61d3a90..e4dbfbc86 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -132,7 +132,7 @@ public Unpacker createUnpacker(InputStream in) { * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker() { - return new MessagePackBufferUnpacker(); + return new MessagePackBufferUnpacker(this); } /** diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 9fea01dd0..361672437 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -24,14 +24,6 @@ public class MessagePackBufferPacker extends MessagePackPacker implements BufferPacker { private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size - public MessagePackBufferPacker() { - this(DEFAULT_BUFFER_SIZE); - } - - public MessagePackBufferPacker(int bufferSize) { - this(new MessagePack(), bufferSize); - } - public MessagePackBufferPacker(MessagePack msgpack) { this(msgpack, DEFAULT_BUFFER_SIZE); } diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index b908869cd..f83258cb4 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -33,10 +33,6 @@ public class MessagePackPacker extends AbstractPacker { private PackerStack stack = new PackerStack(); - public MessagePackPacker(OutputStream stream) { - this(new MessagePack(), stream); - } - public MessagePackPacker(MessagePack msgpack, OutputStream stream) { this(msgpack, new StreamOutput(stream)); } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 783e96df5..117e5b7c2 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -26,14 +26,6 @@ public class MessagePackBufferUnpacker extends MessagePackUnpacker implements BufferUnpacker { private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size - public MessagePackBufferUnpacker() { - this(DEFAULT_BUFFER_SIZE); - } - - public MessagePackBufferUnpacker(int bufferSize) { - this(new MessagePack(), bufferSize); - } - public MessagePackBufferUnpacker(MessagePack msgpack) { this(msgpack, DEFAULT_BUFFER_SIZE); } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 984856f90..6a519c369 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -52,10 +52,6 @@ public class MessagePackUnpacker extends AbstractUnpacker { private final ValueAccept valueAccept = new ValueAccept(); private final SkipAccept skipAccept = new SkipAccept(); - public MessagePackUnpacker(InputStream stream) { - this(new MessagePack(), stream); - } - public MessagePackUnpacker(MessagePack msgpack, InputStream stream) { this(msgpack, new StreamInput(stream)); } From 8b23a7dc14bcba1ff3615d971b9f8bd8c25d60f0 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 6 Oct 2011 15:41:55 +0900 Subject: [PATCH 206/409] pom.xml: added false configuratrion for mvn-scm-plugin --- pom.xml | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/pom.xml b/pom.xml index 3e5b43030..6c4567a52 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.1-SNAPSHOT + 0.6.0-SNAPSHOT jar http://msgpack.org/ @@ -72,6 +72,12 @@ + + org.sonatype.oss + oss-parent + 7 + + @@ -108,6 +114,13 @@ + + org.apache.maven.plugins + maven-scm-plugin + + false + + @@ -135,9 +148,4 @@ - - org.sonatype.oss - oss-parent - 7 - From 4482e665b8ede91d16f29cc05ddbca2562cf443c Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 6 Oct 2011 15:44:36 +0900 Subject: [PATCH 207/409] [maven-release-plugin] prepare release msgpack-0.6.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6c4567a52..4091673db 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.0-SNAPSHOT + 0.6.0 jar http://msgpack.org/ From 5a56631b6966c57d9c25cd585357eb0638e6e8fa Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 6 Oct 2011 15:44:45 +0900 Subject: [PATCH 208/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4091673db..9839c3c67 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.0 + 0.6.1-SNAPSHOT jar http://msgpack.org/ From ef08b3fe0463ec7a795304774010697653547276 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 7 Oct 2011 00:23:19 +0900 Subject: [PATCH 209/409] pom.xml: use en_US locale for javadoc plulgin --- pom.xml | 41 ++++++++++++++++++++--------------------- 1 file changed, 20 insertions(+), 21 deletions(-) diff --git a/pom.xml b/pom.xml index 9839c3c67..d73f4163b 100644 --- a/pom.xml +++ b/pom.xml @@ -31,14 +31,14 @@ - frsyuki - Sadayuki Furuhashi - frsyuki@users.sourceforge.jp + frsyuki + Sadayuki Furuhashi + frsyuki@users.sourceforge.jp - muga - Muga Nishizawa - muga.nishizawa@gmail.com + muga + Muga Nishizawa + muga.nishizawa@gmail.com @@ -54,7 +54,7 @@ 3.15.0-GA compile - + org.slf4j slf4j-api 1.6.1 @@ -99,8 +99,8 @@ - maven-eclipse-plugin - 2.5.1 + maven-eclipse-plugin + 2.5.1 org.apache.maven.plugins @@ -115,18 +115,12 @@ - org.apache.maven.plugins - maven-scm-plugin - - false - + org.apache.maven.plugins + maven-scm-plugin + + false + - - - - - - org.apache.maven.plugins maven-javadoc-plugin @@ -134,9 +128,14 @@ ${project.name} ${project.version} API true en_US - UTF-8 + UTF-8 + + + + + org.apache.maven.plugins maven-jxr-plugin From 1465c8686ea04bdb3de34880c5c8942eb246596f Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 7 Oct 2011 00:29:19 +0900 Subject: [PATCH 210/409] [maven-release-plugin] prepare release msgpack-0.6.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d73f4163b..11c5719da 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.1-SNAPSHOT + 0.6.1 jar http://msgpack.org/ From 71d21e0051b033978bb88f824ddc88a37215b2ab Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Fri, 7 Oct 2011 00:29:35 +0900 Subject: [PATCH 211/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 11c5719da..a42f89851 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.1 + 0.6.2-SNAPSHOT jar http://msgpack.org/ From 6e99f9d77b3781e90f5870d38a64fea08465e8fe Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 01:16:35 +0900 Subject: [PATCH 212/409] fixed bug: MSGPACK-42 --- .../java/org/msgpack/template/builder/DefaultBuildContext.java | 2 +- .../org/msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index c705e56ab..2bf6d9238 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -174,7 +174,7 @@ protected String buildReadMethodBody() { if (e.isOptional()) { buildString(" if ($1.trySkipNil()) {"); - buildString(" _$$_t.%s = null;\n", e.getName()); + // if Optional and nil, then keep default value buildString(" } else {\n"); } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 7f5060340..d15582bed 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -134,7 +134,7 @@ public T read(Unpacker unpacker, T to, boolean required) throws IOException { if (!tmpl.entry.isAvailable()) { unpacker.skip(); } else if (tmpl.entry.isOptional() && unpacker.trySkipNil()) { - tmpl.setNil(to); + // if Optional + nil, than keep default value } else { tmpl.read(unpacker, to, false); } From 146e5e0eaf337ebd8fdb24268aa7e72fc589dc49 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 01:18:19 +0900 Subject: [PATCH 213/409] added test programs for MSGPACK-42 --- .../TestOptionalBufferPackBufferUnpack.java | 78 ++++++++++++ .../TestOptionalBufferPackUnpack.java | 74 ++++++++++++ ...tionalJavassistBufferPackBufferUnpack.java | 110 +++++++++++++++++ ...TestOptionalJavassistBufferPackUnpack.java | 106 +++++++++++++++++ ...TestOptionalJavassistPackBufferUnpack.java | 106 +++++++++++++++++ .../TestOptionalJavassistPackUnpack.java | 111 ++++++++++++++++++ .../TestOptionalPackBufferUnpack.java | 68 +++++++++++ .../annotation/TestOptionalPackUnpack.java | 83 +++++++++++++ ...ionalReflectionBufferPackBufferUnpack.java | 110 +++++++++++++++++ ...estOptionalReflectionBufferPackUnpack.java | 106 +++++++++++++++++ ...estOptionalReflectionPackBufferUnpack.java | 106 +++++++++++++++++ .../TestOptionalReflectionPackUnpack.java | 111 ++++++++++++++++++ .../msgpack/annotation/TestSetOptional.java | 94 +++++++++++++++ 13 files changed, 1263 insertions(+) create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java create mode 100644 src/test/java/org/msgpack/annotation/TestSetOptional.java diff --git a/src/test/java/org/msgpack/annotation/TestOptionalBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalBufferPackBufferUnpack.java new file mode 100644 index 000000000..6061c4cfb --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalBufferPackBufferUnpack.java @@ -0,0 +1,78 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; + + +public class TestOptionalBufferPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + return msgpack.read(bytes, MyMessage01.class); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + return msgpack.read(bytes, MyMessage02.class); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + return msgpack.read(bytes, MyMessage03.class); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + return msgpack.read(bytes, MyMessage03.class); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalBufferPackUnpack.java new file mode 100644 index 000000000..1d73c0218 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalBufferPackUnpack.java @@ -0,0 +1,74 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; + + +public class TestOptionalBufferPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage01.class); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage02.class); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage03.class); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage03.class); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java new file mode 100644 index 000000000..75679ff5f --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java @@ -0,0 +1,110 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.JavassistTemplateBuilder; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestOptionalJavassistBufferPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl02.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java new file mode 100644 index 000000000..2ae3cd4ef --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java @@ -0,0 +1,106 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.JavassistTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalJavassistBufferPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl02.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java new file mode 100644 index 000000000..cfc899043 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java @@ -0,0 +1,106 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.JavassistTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalJavassistPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl02.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java new file mode 100644 index 000000000..21255a8aa --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java @@ -0,0 +1,111 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.JavassistTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalJavassistPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl02.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalPackBufferUnpack.java new file mode 100644 index 000000000..1103e1848 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalPackBufferUnpack.java @@ -0,0 +1,68 @@ +package org.msgpack.annotation; + +import org.junit.Test; +import org.msgpack.MessagePack; + + +public class TestOptionalPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + return msgpack.read(bytes, MyMessage01.class); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + return msgpack.read(bytes, MyMessage02.class); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + return msgpack.read(bytes, MyMessage03.class); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(src); + return msgpack.read(bytes, MyMessage03.class); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalPackUnpack.java new file mode 100644 index 000000000..82c8e7791 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalPackUnpack.java @@ -0,0 +1,83 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; + + +public class TestOptionalPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage01.class); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage02.class); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage03.class); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + return msgpack.read(in, MyMessage03.class); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java new file mode 100644 index 000000000..f8571715f --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java @@ -0,0 +1,110 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestOptionalReflectionBufferPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl02.write(packer, src); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java new file mode 100644 index 000000000..b850a60e8 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java @@ -0,0 +1,106 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalReflectionBufferPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl02.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java new file mode 100644 index 000000000..cfeeb1bf5 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java @@ -0,0 +1,106 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalReflectionPackBufferUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl01.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl02.write(packer, src); + byte[] bytes = packer.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java new file mode 100644 index 000000000..29d853624 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java @@ -0,0 +1,111 @@ +package org.msgpack.annotation; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.template.Template; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.ReflectionTemplateBuilder; +import org.msgpack.unpacker.Unpacker; + + +public class TestOptionalReflectionPackUnpack { + + @org.junit.Ignore + public static class TestMessagePack extends TestSetOptional { + public void testOptional0101() throws Exception { + super.testOptional0101(); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl01.read(unpacker, null); + } + + public void testOptional0102() throws Exception { + super.testOptional0102(); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl02.read(unpacker, null); + } + + public void testOptional0103() throws Exception { + super.testOptional0103(); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl01 = builder.buildTemplate(MyMessage01.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl01.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + + public void testOptional0203() throws Exception { + super.testOptional0203(); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); + Template tmpl02 = builder.buildTemplate(MyMessage02.class); + Template tmpl03 = builder.buildTemplate(MyMessage03.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl02.write(packer, src); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + return tmpl03.read(unpacker, null); + } + } + + @Test + public void test0101() throws Exception { + new TestMessagePack().testOptional0101(); + } + @Test + public void test0102() throws Exception { + new TestMessagePack().testOptional0102(); + } + @Test + public void test0103() throws Exception { + new TestMessagePack().testOptional0103(); + } + @Test + public void test0203() throws Exception { + new TestMessagePack().testOptional0203(); + } +} diff --git a/src/test/java/org/msgpack/annotation/TestSetOptional.java b/src/test/java/org/msgpack/annotation/TestSetOptional.java new file mode 100644 index 000000000..1e62bef03 --- /dev/null +++ b/src/test/java/org/msgpack/annotation/TestSetOptional.java @@ -0,0 +1,94 @@ +package org.msgpack.annotation; + +import static org.junit.Assert.assertEquals; + +@org.junit.Ignore +public class TestSetOptional { + + @Message + public static class MyMessage01 { + public String f0; + public int f1; + public MyMessage01() { + } + } + + @Message + public static class MyMessage02 { + public String f0; + public int f1; + @Optional + public int f2 = 20; + public MyMessage02() { + } + } + + @Message + public static class MyMessage03 { + public String f0; + public int f1; + @Optional + public int f2 = 20; + @Optional + public String f3 = "frsyuki"; + public MyMessage03() { + } + } + + public void testOptional0101() throws Exception { + MyMessage01 src = new MyMessage01(); + src.f0 = "muga"; + src.f1 = 10; + MyMessage01 dst = testOptional0101(src); + assertEquals(src.f0, dst.f0); + assertEquals(src.f1, dst.f1); + } + + public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { + throw new UnsupportedOperationException(); + } + + public void testOptional0102() throws Exception { + MyMessage01 src = new MyMessage01(); + src.f0 = "muga"; + src.f1 = 10; + MyMessage02 dst = testOptional0102(src); + assertEquals(src.f0, dst.f0); + assertEquals(src.f1, dst.f1); + assertEquals(20, dst.f2); + } + + public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { + throw new UnsupportedOperationException(); + } + + public void testOptional0103() throws Exception { + MyMessage01 src = new MyMessage01(); + src.f0 = "muga"; + src.f1 = 10; + MyMessage03 dst = testOptional0103(src); + assertEquals(src.f0, dst.f0); + assertEquals(src.f1, dst.f1); + assertEquals(20, dst.f2); + assertEquals("frsyuki", dst.f3); + } + + public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { + throw new UnsupportedOperationException(); + } + + public void testOptional0203() throws Exception { + MyMessage02 src = new MyMessage02(); + src.f0 = "muga"; + src.f1 = 10; + MyMessage03 dst = testOptional0202(src); + assertEquals(src.f0, dst.f0); + assertEquals(src.f1, dst.f1); + assertEquals(src.f2, dst.f2); + assertEquals("frsyuki", dst.f3); + } + + public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { + throw new UnsupportedOperationException(); + } +} From 9c59663bce815465445bfa90ad3448432bda7087 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 13:50:16 +0900 Subject: [PATCH 214/409] modified template builders for serializing private fields in user-defined classes --- .../template/builder/BuildContext.java | 6 +- .../template/builder/DefaultBuildContext.java | 57 ++++++++++----- .../testclasses/ModifiersFieldsClass.java | 72 +++++++++++++++++++ 3 files changed, 115 insertions(+), 20 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 0d5d5607d..586f0b4b3 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -102,8 +102,7 @@ protected void buildMethodInit() { protected abstract Template buildInstance(Class c) throws NoSuchMethodException, InstantiationException, IllegalAccessException, InvocationTargetException; - protected void buildWriteMethod() throws CannotCompileException, - NotFoundException { + protected void buildWriteMethod() throws CannotCompileException, NotFoundException { LOG.debug("started generating write method in template class %s", new Object[] { tmplCtClass.getName() }); String mbody = buildWriteMethodBody(); @@ -127,8 +126,7 @@ protected void buildWriteMethod() throws CannotCompileException, protected abstract String buildWriteMethodBody(); - protected void buildReadMethod() throws CannotCompileException, - NotFoundException { + protected void buildReadMethod() throws CannotCompileException, NotFoundException { LOG.debug("started generating read method in template class %s", new Object[] { tmplCtClass.getName() }); String mbody = buildReadMethodBody(); diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 2bf6d9238..574f29f24 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -110,11 +110,12 @@ protected String buildWriteMethodBody() { if (!isPrivate) { buildString(" $1.%s(_$$_t.%s);\n", primitiveWriteName(type), de.getName()); } else { - buildString(" %s.writePrivateField($1, _$$_t, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getName(), i); + buildString(" %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); } } else { // reference types - buildString(" if (_$$_t.%s == null) {\n", de.getName()); + buildString(" if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName()); if (de.isNotNullable()) { buildString(" throw new %s();\n", MessageTypeException.class.getName()); } else { @@ -123,11 +124,11 @@ protected String buildWriteMethodBody() { buildString(" } else {\n"); if (!isPrivate) { buildString(" templates[%d].write($1, _$$_t.%s);\n", i, de.getName()); - buildString(" }\n"); } else { - buildString(" %s.writePrivateField($1, _$$_t, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getName(), i); + buildString(" %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); } + buildString(" }\n"); } } @@ -136,15 +137,35 @@ protected String buildWriteMethodBody() { return getBuiltString(); } - public static void writePrivateField(Packer packer, Object target, String fieldName, Template tmpl) { + public static Object readPrivateField(Object target, Class targetClass, String fieldName) { + Field field = null; try { - Field field = target.getClass().getDeclaredField(fieldName); + field = targetClass.getDeclaredField(fieldName); + field.setAccessible(true); + Object valueReference = field.get(target); + return valueReference; + } catch (Exception e) { + throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } + } + } + + public static void writePrivateField(Packer packer, Object target, Class targetClass, String fieldName, Template tmpl) { + Field field = null; + try { + field = targetClass.getDeclaredField(fieldName); field.setAccessible(true); Object valueReference = field.get(target); tmpl.write(packer, valueReference); - field.setAccessible(false); } catch (Exception e) { throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } } } @@ -185,16 +206,16 @@ protected String buildReadMethodBody() { if (!isPrivate) { buildString(" _$$_t.%s = $1.%s();\n", de.getName(), primitiveReadName(type)); } else { - buildString(" %s.readPrivateField($1, _$$_t, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getName(), i); + buildString(" %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); } } else { if (!isPrivate) { buildString(" _$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);\n", de.getName(), de.getJavaTypeName(), i, de.getName()); } else { - buildString(" %s.readPrivateField($1, _$$_t, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getName(), i); + buildString(" %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); } } @@ -210,18 +231,22 @@ protected String buildReadMethodBody() { return getBuiltString(); } - public static void readPrivateField(Unpacker unpacker, Object target, String fieldName, Template tmpl) { + public static void readPrivateField(Unpacker unpacker, Object target, Class targetClass, String fieldName, Template tmpl) { + Field field = null; try { - Field field = target.getClass().getDeclaredField(fieldName); + field = targetClass.getDeclaredField(fieldName); field.setAccessible(true); Object fieldReference = field.get(target); Object valueReference = tmpl.read(unpacker, fieldReference); if (valueReference != fieldReference) { field.set(target, valueReference); } - field.setAccessible(false); } catch (Exception e) { throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } } } diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index 5e0a57c8d..4df369c0f 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -15,6 +15,14 @@ public class ModifiersFieldsClass { int f3; + public String f4; + + private String f5; + + protected String f6; + + String f7; + public ModifiersFieldsClass() {} public int getF0() { @@ -41,6 +49,38 @@ public void setF3(int f3) { this.f3 = f3; } + public String getF4() { + return f4; + } + + public void setF4(String f4) { + this.f4 = f4; + } + + public String getF5() { + return f5; + } + + public void setF5(String f5) { + this.f5 = f5; + } + + public String getF6() { + return f6; + } + + public void setF6(String f6) { + this.f6 = f6; + } + + public String getF7() { + return f7; + } + + public void setF7(String f7) { + this.f7 = f7; + } + @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClass)) { @@ -59,6 +99,38 @@ public boolean equals(Object o) { if (f3 != that.f3) { return false; } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null && ! f4.equals(that.f4)) { + return false; + } + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null && ! f5.equals(that.f5)) { + return false; + } + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null && ! f6.equals(that.f6)) { + return false; + } + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (that.f7 != null && ! f7.equals(that.f7)) { + return false; + } return true; } } From f13b1bdfd65e0ca4756bb14c7ce17a8f6f1e723b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 13:51:38 +0900 Subject: [PATCH 215/409] added test programs for serializing private fields --- .../org/msgpack/template/builder/TestSet.java | 9 +- .../testclasses/ModifiersFieldsClass.java | 12 +-- .../ModifiersFieldsClassNotNullable.java | 90 ++++++++++++++++++- 3 files changed, 101 insertions(+), 10 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index ad9df27dc..f48a16c8e 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -289,6 +289,7 @@ public void testModifiersFieldsClass() throws Exception { testModifiersFieldsClass(new ModifiersFieldsClass()); ModifiersFieldsClass v = new ModifiersFieldsClass(); v.f0 = 0; + v.f4 = "muga"; testModifiersFieldsClass(v); } @@ -297,9 +298,15 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { public void testModifiersFieldsClassNotNullable() throws Exception { testModifiersFieldsClassNotNullable(null); - testModifiersFieldsClassNotNullable(new ModifiersFieldsClassNotNullable()); + try { + testModifiersFieldsClassNotNullable(new ModifiersFieldsClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } ModifiersFieldsClassNotNullable v = new ModifiersFieldsClassNotNullable(); v.f0 = 0; + v.f4 = "muga"; testModifiersFieldsClassNotNullable(v); } diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java index 4df369c0f..f29e3560c 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClass.java @@ -9,19 +9,19 @@ public class ModifiersFieldsClass { public int f0; - private int f1; + private int f1 = 5; - protected int f2; + protected int f2 = 10; - int f3; + int f3 = 15; public String f4; - private String f5; + private String f5 = "nishizawa"; - protected String f6; + protected String f6 = "muga"; - String f7; + String f7 = "hello"; public ModifiersFieldsClass() {} diff --git a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java index cb53cadeb..31b0154d0 100644 --- a/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ModifiersFieldsClassNotNullable.java @@ -12,13 +12,25 @@ public class ModifiersFieldsClassNotNullable { public int f0; @NotNullable - private int f1; + private int f1 = 5; @NotNullable - protected int f2; + protected int f2 = 10; @NotNullable - int f3; + int f3 = 15; + + @NotNullable + public String f4; + + @NotNullable + private String f5 = "nishizawa"; + + @NotNullable + protected String f6 = "hello"; + + @NotNullable + String f7 = "muga"; public ModifiersFieldsClassNotNullable() {} @@ -52,6 +64,46 @@ public void setF3(int f3) { this.f3 = f3; } + @NotNullable + public String getF4() { + return f4; + } + + @NotNullable + public void setF4(String f4) { + this.f4 = f4; + } + + @NotNullable + public String getF5() { + return f5; + } + + @NotNullable + public void setF5(String f5) { + this.f5 = f5; + } + + @NotNullable + public String getF6() { + return f6; + } + + @NotNullable + public void setF6(String f6) { + this.f6 = f6; + } + + @NotNullable + public String getF7() { + return f7; + } + + @NotNullable + public void setF7(String f7) { + this.f7 = f7; + } + @Override public boolean equals(Object o) { if (! (o instanceof ModifiersFieldsClassNotNullable)) { @@ -70,6 +122,38 @@ public boolean equals(Object o) { if (f3 != that.f3) { return false; } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null && ! f4.equals(that.f4)) { + return false; + } + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null && ! f5.equals(that.f5)) { + return false; + } + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null && ! f6.equals(that.f6)) { + return false; + } + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (that.f7 != null && ! f7.equals(that.f7)) { + return false; + } return true; } } From 4b8639940113b5a86f3455fb558f53bddd2e2609 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 13:54:48 +0900 Subject: [PATCH 216/409] added easy-to-understand error message to javassist template builder --- .../java/org/msgpack/template/builder/DefaultBuildContext.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 574f29f24..57217ba4a 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -117,7 +117,8 @@ protected String buildWriteMethodBody() { buildString(" if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName()); if (de.isNotNullable()) { - buildString(" throw new %s();\n", MessageTypeException.class.getName()); + buildString(" throw new %s(\"%s cannot be null by @NotNullable\");\n", + MessageTypeException.class.getName(), de.getName()); } else { buildString(" $1.writeNil();\n"); } From c87362a46cdba6b76ef0d96183543fddd7ac003c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 8 Oct 2011 14:12:00 +0900 Subject: [PATCH 217/409] modified CHANGES.txt --- CHANGES.txt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index e7cbcfd6d..fe1411166 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,17 @@ +Release 0.6.2 - + NEW FEATURES + Enables serializing private fields in objects by Javassist generated templates. + + BUG FIXES + MSGPACK-42 VerifyError occurs when generating templates for classes that have + @Optional primitive fields + +Release 0.6.1 - 2011/10/07 + IMPROVEMENTS + Deleted unused methods in Packer and Unpacker classes. + +Release 0.6.0 - 2011/10/03 + See "Quick Start" (http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Java). Release 0.5.2 - 2011/04/23 NEW FEATURES From 5a0ad21c383d11bc03a770ef4b26eb6a2930d471 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Oct 2011 04:55:35 +0900 Subject: [PATCH 218/409] refactored and refined TemplatePrecompiler.java and added deleteTemplateClass method for testing --- .../msgpack/template/TemplateRegistry.java | 2 +- .../template/builder/BeansBuildContext.java | 2 +- .../template/builder/BuildContext.java | 2 +- .../template/builder/DefaultBuildContext.java | 4 +- .../builder/JavassistTemplateBuilder.java | 13 +- .../builder/TemplateBuilderChain.java | 18 +- .../org/msgpack/util/TemplatePrecompiler.java | 126 +++-- ...latePreCompilerBufferPackBufferUnpack.java | 510 ++++++++++++++++++ 8 files changed, 612 insertions(+), 65 deletions(-) create mode 100644 src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 85792786d..3ecc4bc97 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -278,7 +278,7 @@ private Template lookupAfterBuilding(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); Template tmpl = null; if (builder != null) { - tmpl = builder.loadTemplate(targetClass); + tmpl = chain.getForceBuilder().loadTemplate(targetClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index c4113230e..925a36e29 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -182,7 +182,7 @@ public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, Templ } @Override - public Template loadTemplate(Class targetClass) { + public Template loadTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { return null; } } diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 586f0b4b3..b596e19ad 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -227,7 +227,7 @@ protected void write(final String className, final String directoryName) { } } - protected abstract Template loadTemplate(Class targetClass); + protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); protected Template load(final String className) { String tmplName = className + "_$$_Template"; diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 57217ba4a..c92091a90 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -261,7 +261,9 @@ public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] } @Override - public Template loadTemplate(Class targetClass) { + public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; this.origClass = targetClass; this.origName = origClass.getName(); return load(origName); diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index fff7b2396..50727a719 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -148,9 +148,20 @@ private void writeTemplate(Class targetClass, FieldEntry[] entries, String di @Override public Template loadTemplate(Type targetType) { + // FIXME #MN must consider how to load "reference cycle class" in next version Class targetClass = (Class) targetType; checkClassValidation(targetClass); + try { + // check loadable + String tmplName = targetClass.getName() + "_$$_Template"; + targetClass.getClassLoader().loadClass(tmplName); + } catch (ClassNotFoundException e) { + return null; + } + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); + Template[] tmpls = toTemplate(entries); BuildContext bc = createBuildContext(); - return bc.loadTemplate(targetClass); + return bc.loadTemplate(targetClass, entries, tmpls); } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 61dc6e65d..f60dee9fe 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -36,6 +36,8 @@ private static boolean enableDynamicCodeGeneration(){ protected List templateBuilders; + protected TemplateBuilder forceBuilder; + public TemplateBuilderChain(final TemplateRegistry registry) { this(registry, null); } @@ -50,14 +52,18 @@ private void reset(final TemplateRegistry registry, final ClassLoader cl) { throw new NullPointerException("registry is null"); } + // forceBuilder + forceBuilder = new JavassistTemplateBuilder(registry); + if (cl != null) { + ((JavassistTemplateBuilder) forceBuilder).addClassLoader(cl); + } + + // builder TemplateBuilder builder; templateBuilders.add(new ArrayTemplateBuilder(registry)); templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); if (enableDynamicCodeGeneration()) { // use dynamic code generation - builder = new JavassistTemplateBuilder(registry); - if (cl != null) { - ((JavassistTemplateBuilder) builder).addClassLoader(cl); - } + builder = forceBuilder; templateBuilders.add(builder); templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); } else { // use reflection @@ -68,6 +74,10 @@ private void reset(final TemplateRegistry registry, final ClassLoader cl) { } } + public TemplateBuilder getForceBuilder() { + return forceBuilder; + } + public TemplateBuilder select(final Type targetType, final boolean hasAnnotation) { for (TemplateBuilder tb : templateBuilders) { if (tb.matchType(targetType, hasAnnotation)) { diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index f77ee7ca3..638af5672 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -67,72 +67,86 @@ public static void saveTemplates(final String[] classNames) throws IOException, } } - @SuppressWarnings("serial") - private static void matchClassNames(List ret, final String className) throws IOException { - String packageName = className.substring(0, className.lastIndexOf('.')); - String relativedName = className.substring(className.lastIndexOf('.') + 1, className.length()); - String patName = relativedName.replace("*", "(\\w+)"); - Pattern pat = Pattern.compile(patName); - - JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); - JavaFileManager fm = compiler.getStandardFileManager( - new DiagnosticCollector(), null, null); - HashSet kind = new HashSet(){{ - add(JavaFileObject.Kind.CLASS); - }}; - - for (JavaFileObject f : fm.list(StandardLocation.PLATFORM_CLASS_PATH, packageName, kind, false)) { - String relatived0 = f.getName(); - String name0 = relatived0.substring(0, relatived0.length() - ".class".length()); - Matcher m = pat.matcher(name0); - if (m.matches()) { - String name = packageName + '.' + name0; - if (!ret.contains(name)) { - ret.add(name); - } - } + @SuppressWarnings("serial") + private static void matchClassNames(List ret, final String className) throws IOException { + String packageName = className.substring(0, className.lastIndexOf('.')); + String relativedName = className.substring(className.lastIndexOf('.') + 1, className.length()); + String patName = relativedName.replace("*", "(\\w+)"); + Pattern pat = Pattern.compile(patName); + + JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); + JavaFileManager fm = compiler.getStandardFileManager( + new DiagnosticCollector(), null, null); + HashSet kind = new HashSet(){{ + add(JavaFileObject.Kind.CLASS); + }}; + + for (JavaFileObject f : fm.list(StandardLocation.PLATFORM_CLASS_PATH, packageName, kind, false)) { + String relatived0 = f.getName(); + String name0 = relatived0.substring(0, relatived0.length() - ".class".length()); + Matcher m = pat.matcher(name0); + if (m.matches()) { + String name = packageName + '.' + name0; + if (!ret.contains(name)) { + ret.add(name); } + } } + } - private static List> toClass(List classNames) throws ClassNotFoundException { - List> ret = new ArrayList>(classNames.size()); - ClassLoader cl = TemplatePrecompiler.class.getClassLoader(); - for (String className : classNames) { - Class c = cl.loadClass(className); - ret.add(c); - } - return ret; + private static List> toClass(List classNames) throws ClassNotFoundException { + List> ret = new ArrayList>(classNames.size()); + ClassLoader cl = TemplatePrecompiler.class.getClassLoader(); + for (String className : classNames) { + Class c = cl.loadClass(className); + ret.add(c); } + return ret; + } - public static void saveTemplateClasses(TemplateRegistry registry, Class[] targetClasses) throws IOException { - for (Class c : targetClasses) { - saveTemplateClass(registry, c); - } + public static void saveTemplateClasses(TemplateRegistry registry, Class[] targetClasses) throws IOException { + for (Class c : targetClasses) { + saveTemplateClass(registry, c); } + } - public static void saveTemplateClass(TemplateRegistry registry, Class targetClass) throws IOException { - LOG.info("Saving template of " + targetClass.getName() + "..."); - Properties props = System.getProperties(); - String distDirName = getDirName(props, DEST, DEFAULT_DEST); - if (targetClass.isEnum()) { - throw new UnsupportedOperationException("Not supported enum type yet: " + targetClass.getName()); - } else { - new JavassistTemplateBuilder(registry).writeTemplate(targetClass, distDirName); - } - LOG.info("Saved .class file of template class of " + targetClass.getName()); + public static void saveTemplateClass(TemplateRegistry registry, Class targetClass) throws IOException { + LOG.info("Saving template of " + targetClass.getName() + "..."); + Properties props = System.getProperties(); + String distDirName = getDirName(props, DEST, DEFAULT_DEST); + if (targetClass.isEnum()) { + throw new UnsupportedOperationException("Not supported enum type yet: " + targetClass.getName()); + } else { + new JavassistTemplateBuilder(registry).writeTemplate(targetClass, distDirName); } + LOG.info("Saved .class file of template class of " + targetClass.getName()); + } - private static String getDirName(Properties props, String dirName, String defaultDirName) - throws IOException { - String dName = props.getProperty(dirName, defaultDirName); - File d = new File(dName); - if (!d.isDirectory() && !d.exists()) { - throw new IOException("Directory not exists: " + dName); - } - return d.getAbsolutePath(); + public static boolean deleteTemplateClass(Class targetClass) throws IOException { + LOG.info("Deleting template of " + targetClass.getName() + "..."); + Properties props = System.getProperties(); + String distDirName = getDirName(props, DEST, DEFAULT_DEST); + String targetClassName = targetClass.getName(); + String targetClassFileName = targetClassName.replace('.', File.separatorChar) + "_$$_Template.class"; + File targetFile = new File(distDirName + File.separatorChar + targetClassFileName); + boolean deleted = false; + if (!targetFile.isDirectory() && targetFile.exists()) { + deleted = targetFile.delete(); } + LOG.info("Deleted .class file of template class of " + targetClass.getName()); + return deleted; + } - public static void main(final String[] args) throws Exception { - TemplatePrecompiler.saveTemplates(args); + private static String getDirName(Properties props, String dirName, String defaultDirName) throws IOException { + String dName = props.getProperty(dirName, defaultDirName); + File d = new File(dName); + if (!d.isDirectory() && !d.exists()) { + throw new IOException("Directory not exists: " + dName); } + return d.getAbsolutePath(); + } + + public static void main(final String[] args) throws Exception { + TemplatePrecompiler.saveTemplates(args); + } } diff --git a/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java new file mode 100644 index 000000000..55214f276 --- /dev/null +++ b/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java @@ -0,0 +1,510 @@ +package org.msgpack.util; + +import static org.junit.Assert.assertEquals; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.Template; +import org.msgpack.template.builder.TestSet; +import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.InheritanceClass; +import org.msgpack.testclasses.InheritanceClassNotNullable; +import org.msgpack.testclasses.ListTypeFieldsClass; +import org.msgpack.testclasses.ListTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MapTypeFieldsClass; +import org.msgpack.testclasses.MapTypeFieldsClassNotNullable; +import org.msgpack.testclasses.MessagePackableTypeFieldsClass; +import org.msgpack.testclasses.MessagePackableTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ModifiersFieldsClass; +import org.msgpack.testclasses.ModifiersFieldsClassNotNullable; +import org.msgpack.testclasses.PrimitiveTypeFieldsClass; +import org.msgpack.testclasses.PrimitiveTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClass; +import org.msgpack.testclasses.ReferenceCycleTypeFieldsClassNotNullable; +import org.msgpack.testclasses.ReferenceTypeFieldsClass; +import org.msgpack.testclasses.ReferenceTypeFieldsClassNotNullable; +import org.msgpack.testclasses.UserDefinedTypeFieldsClass; +import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; +import org.msgpack.unpacker.BufferUnpacker; + + +public class TestTemplatePreCompilerBufferPackBufferUnpack extends TestSet { + + @Test @Override + public void testPrimitiveTypeFieldsClass() throws Exception { + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), PrimitiveTypeFieldsClass.class); + Template tmpl = msgpack.lookup(PrimitiveTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(PrimitiveTypeFieldsClass.class); + msgpack.unregister(PrimitiveTypeFieldsClass.class); + } + } + + @Test @Override + public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), PrimitiveTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(PrimitiveTypeFieldsClassNotNullable.class); + msgpack.unregister(PrimitiveTypeFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testReferenceTypeFieldsClass() throws Exception { + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceTypeFieldsClass.class); + Template tmpl = msgpack.lookup(ReferenceTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ReferenceTypeFieldsClass.class); + msgpack.unregister(ReferenceTypeFieldsClass.class); + } + } + + @Test @Override + public void testReferenceTypeFieldsClassNotNullable() throws Exception { + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ReferenceTypeFieldsClassNotNullable.class); + msgpack.unregister(ReferenceTypeFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testListTypeFieldsClass() throws Exception { + super.testListTypeFieldsClass(); + } + + @Override + public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ListTypeFieldsClass.class); + Template tmpl = msgpack.lookup(ListTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ListTypeFieldsClass.class); + msgpack.unregister(ListTypeFieldsClass.class); + } + } + + @Test @Override + public void testListTypeFieldsClassNotNullable() throws Exception { + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ListTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ListTypeFieldsClassNotNullable.class); + msgpack.unregister(ListTypeFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testMapTypeFieldsClass() throws Exception { + super.testMapTypeFieldsClass(); + } + + @Override + public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MapTypeFieldsClass.class); + Template tmpl = msgpack.lookup(MapTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(MapTypeFieldsClass.class); + msgpack.unregister(MapTypeFieldsClass.class); + } + } + + @Test @Override + public void testMapTypeFieldsClassNotNullable() throws Exception { + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MapTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(MapTypeFieldsClassNotNullable.class); + msgpack.unregister(MapTypeFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testFinalClass() throws Exception { + super.testFinalClass(); + } + + @Override + public void testFinalClass(FinalClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), FinalClass.class); + Template tmpl = msgpack.lookup(FinalClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(FinalClass.class); + msgpack.unregister(FinalClass.class); + } + } + + @Test @Override + public void testModifiersFieldsClass() throws Exception { + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ModifiersFieldsClass.class); + Template tmpl = msgpack.lookup(ModifiersFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ModifiersFieldsClass.class); + msgpack.unregister(ModifiersFieldsClass.class); + } + } + + @Test @Override + public void testModifiersFieldsClassNotNullable() throws Exception { + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ModifiersFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ModifiersFieldsClassNotNullable.class); + msgpack.unregister(ModifiersFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClass() throws Exception { + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), UserDefinedTypeFieldsClass.class); + Template tmpl = msgpack.lookup(UserDefinedTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(UserDefinedTypeFieldsClass.class); + msgpack.unregister(UserDefinedTypeFieldsClass.class); + } + } + + @Test @Override + public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), UserDefinedTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(UserDefinedTypeFieldsClassNotNullable.class); + msgpack.unregister(UserDefinedTypeFieldsClassNotNullable.class); + } + } + + @org.junit.Ignore @Test @Override // FIXME #MN next version + public void testReferenceCycleTypeFieldsClass() throws Exception { + super.testReferenceCycleTypeFieldsClass(); + } + + @org.junit.Ignore @Override // FIXME #MN next version + public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceCycleTypeFieldsClass.class); + Template tmpl = msgpack.lookup(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ReferenceCycleTypeFieldsClass.class); + msgpack.unregister(ReferenceCycleTypeFieldsClass.class); + } + } + + @org.junit.Ignore @Test @Override // FIXME #MN next version + public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @org.junit.Ignore @Override // FIXME #MN next version + public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceCycleTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ReferenceCycleTypeFieldsClassNotNullable.class); + msgpack.unregister(ReferenceCycleTypeFieldsClassNotNullable.class); + } + } + + @Test @Override + public void testInheritanceClass() throws Exception { + super.testInheritanceClass(); + } + + @Override + public void testInheritanceClass(InheritanceClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), InheritanceClass.class); + Template tmpl = msgpack.lookup(InheritanceClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(InheritanceClass.class); + msgpack.unregister(InheritanceClass.class); + } + } + + @Test @Override + public void testInheritanceClassNotNullable() throws Exception { + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), InheritanceClassNotNullable.class); + Template tmpl = msgpack.lookup(InheritanceClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(InheritanceClassNotNullable.class); + msgpack.unregister(InheritanceClassNotNullable.class); + } + } + + @Test @Override + public void testMessagePackableTypeFieldsClass() throws Exception { + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MessagePackableTypeFieldsClass.class); + Template tmpl = msgpack.lookup(MessagePackableTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(MessagePackableTypeFieldsClass.class); + msgpack.unregister(MessagePackableTypeFieldsClass.class); + } + } + + @Test @Override + public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MessagePackableTypeFieldsClassNotNullable.class); + Template tmpl = msgpack.lookup(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(MessagePackableTypeFieldsClassNotNullable.class); + msgpack.unregister(MessagePackableTypeFieldsClassNotNullable.class); + } + } + +} From ef5ccead8b78c1ed7038ebcb4da03b4ad6ac4aa5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Oct 2011 12:51:46 +0900 Subject: [PATCH 219/409] MSGPACK-43 was fixed --- .../template/builder/AbstractTemplateBuilder.java | 12 ++++++++++++ .../builder/JavassistBeansTemplateBuilder.java | 15 +++++++++++++++ .../builder/ReflectionBeansTemplateBuilder.java | 10 +--------- .../template/builder/TemplateBuilderChain.java | 4 +++- 4 files changed, 31 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 8e7122f8d..42d465225 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -26,9 +26,11 @@ import java.util.ArrayList; import java.util.List; +import org.msgpack.annotation.Beans; import org.msgpack.annotation.Ignore; import org.msgpack.annotation.Index; import org.msgpack.annotation.Message; +import org.msgpack.annotation.MessagePackBeans; import org.msgpack.annotation.MessagePackMessage; import org.msgpack.annotation.MessagePackOrdinalEnum; import org.msgpack.annotation.NotNullable; @@ -247,6 +249,16 @@ public static boolean matchAtClassTemplateBuilder(Class targetClass, boolean } } + public static boolean matchAtBeansClassTemplateBuilder(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); + } else { + return !targetClass.isEnum() || !targetClass.isInterface(); + } + } + public static boolean matchAtArrayTemplateBuilder(Class targetClass, boolean hasAnnotation) { if (((Type) targetClass) instanceof GenericArrayType){ return true; diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index e65d936d3..597381037 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -1,15 +1,30 @@ package org.msgpack.template.builder; +import java.lang.reflect.Type; + import org.msgpack.template.TemplateRegistry; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; @SuppressWarnings({ "rawtypes" }) public class JavassistBeansTemplateBuilder extends JavassistTemplateBuilder { + private static final Logger LOG = LoggerFactory.getLogger(JavassistBeansTemplateBuilder.class); public JavassistBeansTemplateBuilder(TemplateRegistry registry) { super(registry); } + @Override + public boolean matchType(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; + } + @Override protected BuildContext createBuildContext() { return new BeansBuildContext(this); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 611bda2e4..5d7d70f8d 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -27,10 +27,8 @@ import java.lang.reflect.Type; import java.util.ArrayList; -import org.msgpack.annotation.Beans; import org.msgpack.annotation.Ignore; import org.msgpack.annotation.Index; -import org.msgpack.annotation.MessagePackBeans; import org.msgpack.annotation.NotNullable; import org.msgpack.annotation.Optional; import org.msgpack.packer.Packer; @@ -78,13 +76,7 @@ public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { @Override public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; - boolean matched; - if (hasAnnotation) { - matched = AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); - } else { - matched = !targetClass.isEnum() || !targetClass.isInterface(); - } + boolean matched = matchAtBeansClassTemplateBuilder(targetClass, hasAnnotation); if (matched) { LOG.debug("matched type: " + targetClass.getName()); } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index f60dee9fe..d9eff7d4c 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -65,7 +65,9 @@ private void reset(final TemplateRegistry registry, final ClassLoader cl) { if (enableDynamicCodeGeneration()) { // use dynamic code generation builder = forceBuilder; templateBuilders.add(builder); - templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); + // FIXME #MN next version + //templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); + templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } else { // use reflection builder = new ReflectionTemplateBuilder(registry); templateBuilders.add(builder); From 8ac2f20d5f5611f2f561388c4ccb9d813dd0966a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Oct 2011 14:34:16 +0900 Subject: [PATCH 220/409] modified CHANGES.txt --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index fe1411166..2e84bc753 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,6 +5,10 @@ Release 0.6.2 - BUG FIXES MSGPACK-42 VerifyError occurs when generating templates for classes that have @Optional primitive fields + MSGPACK-43 Mutually referencing MessagePack objects causes StackOverflowError + + IMPROVEMENTS + Adds deleteTemplateClass method to TemplatePrecompiler. Release 0.6.1 - 2011/10/07 IMPROVEMENTS From 5d29248029966cd0ac6c3a8f3d8cf2a4298b69ad Mon Sep 17 00:00:00 2001 From: takeshita Date: Thu, 13 Oct 2011 03:13:28 +0900 Subject: [PATCH 221/409] To support scala messagepack, change some method accessibilities and add new constructor to MessagePack.java --- src/main/java/org/msgpack/MessagePack.java | 3 +++ src/main/java/org/msgpack/template/TemplateRegistry.java | 9 +++++++-- .../msgpack/template/builder/TemplateBuilderChain.java | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index eb61d3a90..b0e774297 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -67,6 +67,9 @@ public MessagePack() { public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } + public MessagePack(TemplateRegistry registry) { + this.registry = registry; + } /** * diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 85792786d..0ea6389e1 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -69,7 +69,7 @@ public class TemplateRegistry { */ private TemplateRegistry() { parent = null; - chain = new TemplateBuilderChain(this); + chain = createTemplateBuilderChain(); genericCache = new HashMap(); cache = new HashMap>(); registerTemplates(); @@ -86,11 +86,16 @@ public TemplateRegistry(TemplateRegistry registry) { } else { parent = new TemplateRegistry(); } - chain = new TemplateBuilderChain(this); + chain = createTemplateBuilderChain(); cache = new HashMap>(); genericCache = parent.genericCache; } + protected TemplateBuilderChain createTemplateBuilderChain(){ + return new TemplateBuilderChain(this); + } + + public void setClassLoader(final ClassLoader cl) { chain = new TemplateBuilderChain(this, cl); } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 61dc6e65d..ab76a3364 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -45,7 +45,7 @@ public TemplateBuilderChain(final TemplateRegistry registry, final ClassLoader c reset(registry, cl); } - private void reset(final TemplateRegistry registry, final ClassLoader cl) { + protected void reset(final TemplateRegistry registry, final ClassLoader cl) { if (registry == null) { throw new NullPointerException("registry is null"); } From 31bd64b1b46e68c8e42b0eb29019c187745f89d4 Mon Sep 17 00:00:00 2001 From: takeshita Date: Fri, 14 Oct 2011 11:41:02 +0900 Subject: [PATCH 222/409] change accessibility of MessagePack@constructor(TemplateRepository) public -> protected --- src/main/java/org/msgpack/MessagePack.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 93dc485f0..7412f10b8 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -67,7 +67,7 @@ public MessagePack() { public MessagePack(MessagePack msgpack) { registry = new TemplateRegistry(msgpack.registry); } - public MessagePack(TemplateRegistry registry) { + protected MessagePack(TemplateRegistry registry) { this.registry = registry; } From d33ea77d0ccbf7dda3b203822be00b5848767433 Mon Sep 17 00:00:00 2001 From: takeshita Date: Mon, 17 Oct 2011 17:18:40 +0900 Subject: [PATCH 223/409] Add new tests which pack org.msgpack.type.Value. --- .../java/org/msgpack/TestMessagePack01.java | 21 +++++++++++++ .../java/org/msgpack/TestPackConvert.java | 31 +++++++++++++++++++ 2 files changed, 52 insertions(+) diff --git a/src/test/java/org/msgpack/TestMessagePack01.java b/src/test/java/org/msgpack/TestMessagePack01.java index 71c6b51ab..1e4f7ca3b 100644 --- a/src/test/java/org/msgpack/TestMessagePack01.java +++ b/src/test/java/org/msgpack/TestMessagePack01.java @@ -5,6 +5,7 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; +import java.io.IOException; import java.math.BigInteger; import java.util.ArrayList; import java.util.HashMap; @@ -17,6 +18,7 @@ import static org.msgpack.template.Templates.tList; import static org.msgpack.template.Templates.tMap; import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; public class TestMessagePack01 { @@ -701,4 +703,23 @@ public void testMap(Map v, Class keyElementClass, Class value } } } + + /*:* + * test pack org.msgpack.type.Value, but compiler recognize it as java.lang.Object + */ + @Test + public void testValuePassedAsObject() throws IOException { + + MessagePack msgpack = new MessagePack(); + String text = "This class is Value but..."; + Object value = ValueFactory.createRawValue("This class is Value but..."); + + byte[] strValue = msgpack.write(value); + for(byte b : strValue){ + System.out.print(String.format("%02x ", b)); + } + // should be raw type + assertEquals(0xa0 + text.length(),0xff & strValue[0]); + } + } diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index c96d57878..d0861dc67 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -5,6 +5,7 @@ import static org.junit.Assert.assertTrue; import java.io.ByteArrayOutputStream; +import java.io.IOException; import java.math.BigInteger; import java.util.ArrayList; import java.util.HashMap; @@ -12,8 +13,10 @@ import java.util.List; import java.util.Map; +import junit.framework.Assert; import org.junit.Test; import org.msgpack.packer.Packer; +import org.msgpack.type.ValueFactory; import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; import org.msgpack.type.Value; @@ -303,4 +306,32 @@ public void testMap(Map v, Class keyElementClass, Class value assertEquals(e.getValue(), value); } } + @Test + public void testPackValue() throws IOException { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + String text = "This is Value"; + Value value = ValueFactory.createRawValue(text); + packer.write(value); + byte[] bytes = out.toByteArray(); + Assert.assertEquals(text.length() + 1,bytes.length); + Assert.assertEquals(0xa0 + text.length(), 0xff & bytes[0]); + } + + + @Test + public void testPackValuePassedAsObject() throws IOException{ + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + String text = "This is Value"; + Object value = ValueFactory.createRawValue(text); + packer.write(value); // passed as object + byte[] bytes = out.toByteArray(); + Assert.assertEquals(text.length() + 1,bytes.length); + Assert.assertEquals(0xa0 + text.length(), 0xff & bytes[0]); + + } + } From b3446e2df5b2faf96406c494ab66f98b783b7ee6 Mon Sep 17 00:00:00 2001 From: takeshita Date: Mon, 17 Oct 2011 17:21:34 +0900 Subject: [PATCH 224/409] Fix to convert org.msgpack.type.Value when it is passed as Object. Add new method to MessagePack.java @ lookup(Type) --- src/main/java/org/msgpack/MessagePack.java | 8 +++++++- src/main/java/org/msgpack/packer/AbstractPacker.java | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 7412f10b8..cb047b54e 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -20,6 +20,7 @@ import java.io.InputStream; import java.io.OutputStream; import java.io.IOException; +import java.lang.reflect.Type; import java.nio.ByteBuffer; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; @@ -188,7 +189,9 @@ public byte[] write(T v) throws IOException { BufferPacker pk = createBufferPacker(); if (v == null) { pk.writeNil(); - } else { + } else if(v instanceof Value){ + return write((Value)v); + }else { @SuppressWarnings("unchecked") Template tmpl = registry.lookup(v.getClass()); tmpl.write(pk, v); @@ -609,6 +612,9 @@ public Template lookup(Class type) { return registry.lookup(type); } + public Template lookup(Type type) { + return registry.lookup(type); + } private static final MessagePack globalMessagePack = new MessagePack(); /** diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index f8738a1f0..3858d3abe 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -199,6 +199,8 @@ public Packer write(String o) throws IOException { public Packer write(Object o) throws IOException { if(o == null) { writeNil(); + } else if(o instanceof Value){ + write((Value)o); } else { Template tmpl = msgpack.lookup(o.getClass()); tmpl.write(this, o); From 7ef0ce70382de4a2a9a5f7c81a4c285450a74054 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 17 Oct 2011 22:27:15 +0900 Subject: [PATCH 225/409] deleted output message in test program --- src/test/java/org/msgpack/TestMessagePack01.java | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/test/java/org/msgpack/TestMessagePack01.java b/src/test/java/org/msgpack/TestMessagePack01.java index 1e4f7ca3b..caa61c128 100644 --- a/src/test/java/org/msgpack/TestMessagePack01.java +++ b/src/test/java/org/msgpack/TestMessagePack01.java @@ -709,15 +709,11 @@ public void testMap(Map v, Class keyElementClass, Class value */ @Test public void testValuePassedAsObject() throws IOException { - - MessagePack msgpack = new MessagePack(); + MessagePack msgpack = new MessagePack(); String text = "This class is Value but..."; Object value = ValueFactory.createRawValue("This class is Value but..."); byte[] strValue = msgpack.write(value); - for(byte b : strValue){ - System.out.print(String.format("%02x ", b)); - } // should be raw type assertEquals(0xa0 + text.length(),0xff & strValue[0]); } From 1c4d6eb797c6dd969d6a3662b00fd9e8f6743a19 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 17 Oct 2011 22:27:46 +0900 Subject: [PATCH 226/409] added TODO comment in TemplateRegistry class --- src/main/java/org/msgpack/template/TemplateRegistry.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9678cb1d5..022310cda 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -283,6 +283,7 @@ private Template lookupAfterBuilding(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); Template tmpl = null; if (builder != null) { + // TODO #MN for Android, we should modify here tmpl = chain.getForceBuilder().loadTemplate(targetClass); if (tmpl != null) { register(targetClass, tmpl); From d2958ebdee8481a48f36261b28838db1d797830e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 17 Oct 2011 22:28:30 +0900 Subject: [PATCH 227/409] deleted multiple same method call --- .../java/org/msgpack/template/builder/TemplateBuilderChain.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index d40536731..6d26f1011 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -71,7 +71,6 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { } else { // use reflection builder = new ReflectionTemplateBuilder(registry); templateBuilders.add(builder); - templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } } From a71ec1ae836fb91722d0c8d4e9011bfd3fd72aec Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 17 Oct 2011 22:42:37 +0900 Subject: [PATCH 228/409] modified CHANGES.txt --- CHANGES.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 2e84bc753..bf9266941 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -6,8 +6,10 @@ Release 0.6.2 - MSGPACK-42 VerifyError occurs when generating templates for classes that have @Optional primitive fields MSGPACK-43 Mutually referencing MessagePack objects causes StackOverflowError + MSGPACK-49 Fail to pack org.msgpack.type.Value classes IMPROVEMENTS + Modifies TemplateRegistry class for msgpack-scala Adds deleteTemplateClass method to TemplatePrecompiler. Release 0.6.1 - 2011/10/07 From 1b90a3f57eedc67b4fe8cf745e5b8e7921f1927f Mon Sep 17 00:00:00 2001 From: takeshita Date: Tue, 18 Oct 2011 00:58:00 +0900 Subject: [PATCH 229/409] Add new test case which serialize nested list. --- src/test/java/org/msgpack/TestNestedList.java | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 src/test/java/org/msgpack/TestNestedList.java diff --git a/src/test/java/org/msgpack/TestNestedList.java b/src/test/java/org/msgpack/TestNestedList.java new file mode 100644 index 000000000..7e930a374 --- /dev/null +++ b/src/test/java/org/msgpack/TestNestedList.java @@ -0,0 +1,70 @@ +package org.msgpack; + +import junit.framework.Assert; +import org.junit.Before; +import org.junit.Test; +import org.msgpack.annotation.Message; +import org.msgpack.type.ArrayValue; +import org.msgpack.type.Value; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +/** + * User: takeshita + * Create: 11/10/17 23:17 + */ +public class TestNestedList { + + MessagePack messagePack; + + @Before + public void before(){ + messagePack = new MessagePack(); + } + + @Test + public void testTestNestedList() throws IOException { + NestedList obj = new NestedList(); + obj.list.add(list("aaa", "bbb")); + obj.list.add(list(new MyClass("obj1"), new MyClass("obj2"))); + + byte[] bytes = messagePack.write(obj); + + // Can't unpack as NestedList + Value unpacked = messagePack.read(bytes); + ArrayValue root = unpacked.asArrayValue(); + ArrayValue list1 = root.getElementArray()[0].asArrayValue(); + ArrayValue list2 = root.getElementArray()[1].asArrayValue(); + + Assert.assertEquals("aaa",list1.getElementArray()[0].asIntegerValue().getInt()); + Assert.assertEquals("bbb",list1.getElementArray()[1].asIntegerValue().getInt()); + Assert.assertEquals("obj1",messagePack.convert(list2.getElementArray()[0],MyClass.class).name); + Assert.assertEquals("obj2",messagePack.convert(list2.getElementArray()[1],MyClass.class).name); + + } + + private List list( Object ... elements){ + List list = new ArrayList(); + for(Object o : elements){ + list.add(o); + } + return list; + } + + @Message + public static class NestedList{ + public List list = new ArrayList(); + + } + + @Message + public static class MyClass{ + String name; + + public MyClass(){} + public MyClass(String n ){ name = n;} + } + +} From 040fbffe59d3d34b958a0ffc9a01ac5da9fa14bd Mon Sep 17 00:00:00 2001 From: takeshita Date: Tue, 18 Oct 2011 01:14:15 +0900 Subject: [PATCH 230/409] Fix to pass NestedList test. Make AnyTemplate to none singleton class. Make TemplateRegistry registers templates which uses AnyTemplate to its self. --- .../org/msgpack/template/AnyTemplate.java | 6 ++--- .../template/GenericCollectionTemplate.java | 2 +- .../msgpack/template/GenericMapTemplate.java | 3 ++- .../msgpack/template/TemplateRegistry.java | 23 +++++++++++++++---- src/test/java/org/msgpack/TestNestedList.java | 6 ++--- 5 files changed, 28 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 533b8735c..534f9fb88 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -25,7 +25,7 @@ public class AnyTemplate extends AbstractTemplate { - @SuppressWarnings("rawtypes") + /*@SuppressWarnings("rawtypes") private static AnyTemplate INSTANCE = null; @SuppressWarnings("rawtypes") @@ -34,11 +34,11 @@ public static AnyTemplate getInstance(TemplateRegistry registry) { INSTANCE = new AnyTemplate(registry); } return INSTANCE; - } + }*/ private TemplateRegistry registry; - private AnyTemplate(TemplateRegistry registry) { + public AnyTemplate(TemplateRegistry registry) { this.registry = registry; } diff --git a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java index fe0464434..bdd99d081 100644 --- a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -29,7 +29,7 @@ public class GenericCollectionTemplate implements GenericTemplate { public GenericCollectionTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[]{ Template.class }); - constructor.newInstance(new Object[]{ AnyTemplate.getInstance(registry) }); + constructor.newInstance(new Object[]{ new AnyTemplate(registry)});//AnyTemplate.getInstance(registry) }); } catch (NoSuchMethodException e) { throw new IllegalArgumentException(e); } catch (InvocationTargetException e) { diff --git a/src/main/java/org/msgpack/template/GenericMapTemplate.java b/src/main/java/org/msgpack/template/GenericMapTemplate.java index 3fa242a6a..12612b0fa 100644 --- a/src/main/java/org/msgpack/template/GenericMapTemplate.java +++ b/src/main/java/org/msgpack/template/GenericMapTemplate.java @@ -30,7 +30,8 @@ public GenericMapTemplate(TemplateRegistry registry, Class t try { constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); constructor.newInstance(new Object[] { - AnyTemplate.getInstance(registry), AnyTemplate.getInstance(registry)}); + new AnyTemplate(registry),new AnyTemplate(registry)}); + //AnyTemplate.getInstance(registry), AnyTemplate.getInstance(registry)}); } catch (NoSuchMethodException e) { throw new IllegalArgumentException(e); } catch (InvocationTargetException e) { diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9678cb1d5..9b2c6b344 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -89,6 +89,7 @@ public TemplateRegistry(TemplateRegistry registry) { chain = createTemplateBuilderChain(); cache = new HashMap>(); genericCache = parent.genericCache; + registerTemplatesWhichRefersRegistry(); } protected TemplateBuilderChain createTemplateBuilderChain(){ @@ -101,6 +102,7 @@ public void setClassLoader(final ClassLoader cl) { } private void registerTemplates() { + register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); register(byte.class, ByteTemplate.getInstance()); @@ -128,10 +130,23 @@ private void registerTemplates() { register(byte[].class, ByteArrayTemplate.getInstance()); register(ByteBuffer.class, ByteBufferTemplate.getInstance()); register(Value.class, ValueTemplate.getInstance()); - //register(Value.class, AnyTemplate.getInstance(this)); - register(List.class, new ListTemplate(AnyTemplate.getInstance(this))); - register(Collection.class, new CollectionTemplate(AnyTemplate.getInstance(this))); - register(Map.class, new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); + registerTemplatesWhichRefersRegistry(); + /*register(List.class, new ListTemplate(AnyTemplate.getInstance(this))); + register(Collection.class,new CollectionTemplate(AnyTemplate.getInstance(this))); + register(Map.class,new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); + + registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); + registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); + registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class));*/ + } + + + protected void registerTemplatesWhichRefersRegistry() { + AnyTemplate anyTemplate = new AnyTemplate(this); + + register(List.class, new ListTemplate(anyTemplate));//new ListTemplate(AnyTemplate.getInstance(this))); + register(Collection.class,new CollectionTemplate(anyTemplate));//new CollectionTemplate(AnyTemplate.getInstance(this))); + register(Map.class,new MapTemplate(anyTemplate,anyTemplate));//new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); diff --git a/src/test/java/org/msgpack/TestNestedList.java b/src/test/java/org/msgpack/TestNestedList.java index 7e930a374..ac25f80e1 100644 --- a/src/test/java/org/msgpack/TestNestedList.java +++ b/src/test/java/org/msgpack/TestNestedList.java @@ -34,12 +34,12 @@ public void testTestNestedList() throws IOException { // Can't unpack as NestedList Value unpacked = messagePack.read(bytes); - ArrayValue root = unpacked.asArrayValue(); + ArrayValue root = unpacked.asArrayValue().getElementArray()[0].asArrayValue(); ArrayValue list1 = root.getElementArray()[0].asArrayValue(); ArrayValue list2 = root.getElementArray()[1].asArrayValue(); - Assert.assertEquals("aaa",list1.getElementArray()[0].asIntegerValue().getInt()); - Assert.assertEquals("bbb",list1.getElementArray()[1].asIntegerValue().getInt()); + Assert.assertEquals("aaa",list1.getElementArray()[0].asRawValue().getString()); + Assert.assertEquals("bbb",list1.getElementArray()[1].asRawValue().getString()); Assert.assertEquals("obj1",messagePack.convert(list2.getElementArray()[0],MyClass.class).name); Assert.assertEquals("obj2",messagePack.convert(list2.getElementArray()[1],MyClass.class).name); From 3f919e72b51e790213867cfb09aadd62c8d97722 Mon Sep 17 00:00:00 2001 From: takeshita Date: Tue, 18 Oct 2011 02:44:24 +0900 Subject: [PATCH 231/409] Improve implementation and test for nested list. --- src/main/java/org/msgpack/template/TemplateRegistry.java | 8 ++++---- src/test/java/org/msgpack/TestNestedList.java | 6 ++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9b2c6b344..8cd8f51a5 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -134,10 +134,10 @@ private void registerTemplates() { /*register(List.class, new ListTemplate(AnyTemplate.getInstance(this))); register(Collection.class,new CollectionTemplate(AnyTemplate.getInstance(this))); register(Map.class,new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - + */ registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); - registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class));*/ + registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); } @@ -147,10 +147,10 @@ protected void registerTemplatesWhichRefersRegistry() { register(List.class, new ListTemplate(anyTemplate));//new ListTemplate(AnyTemplate.getInstance(this))); register(Collection.class,new CollectionTemplate(anyTemplate));//new CollectionTemplate(AnyTemplate.getInstance(this))); register(Map.class,new MapTemplate(anyTemplate,anyTemplate));//new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - + /* registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); - registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); + registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class));*/ } public void register(final Class targetClass) { diff --git a/src/test/java/org/msgpack/TestNestedList.java b/src/test/java/org/msgpack/TestNestedList.java index ac25f80e1..8665be3bd 100644 --- a/src/test/java/org/msgpack/TestNestedList.java +++ b/src/test/java/org/msgpack/TestNestedList.java @@ -29,6 +29,7 @@ public void testTestNestedList() throws IOException { NestedList obj = new NestedList(); obj.list.add(list("aaa", "bbb")); obj.list.add(list(new MyClass("obj1"), new MyClass("obj2"))); + obj.list2.add((List)list(new MyClass("obj3"))); byte[] bytes = messagePack.write(obj); @@ -37,11 +38,14 @@ public void testTestNestedList() throws IOException { ArrayValue root = unpacked.asArrayValue().getElementArray()[0].asArrayValue(); ArrayValue list1 = root.getElementArray()[0].asArrayValue(); ArrayValue list2 = root.getElementArray()[1].asArrayValue(); + ArrayValue list3 = unpacked.asArrayValue().getElementArray()[1].asArrayValue(); + list3 = list3.getElementArray()[0].asArrayValue(); Assert.assertEquals("aaa",list1.getElementArray()[0].asRawValue().getString()); Assert.assertEquals("bbb",list1.getElementArray()[1].asRawValue().getString()); Assert.assertEquals("obj1",messagePack.convert(list2.getElementArray()[0],MyClass.class).name); Assert.assertEquals("obj2",messagePack.convert(list2.getElementArray()[1],MyClass.class).name); + Assert.assertEquals("obj3",messagePack.convert(list3.getElementArray()[0],MyClass.class).name); } @@ -57,6 +61,8 @@ private List list( Object ... elements){ public static class NestedList{ public List list = new ArrayList(); + public List> list2 = new ArrayList>(); + } @Message From 11df915c8dade4f3e02193bd1558f9070f69082d Mon Sep 17 00:00:00 2001 From: takeshita Date: Tue, 18 Oct 2011 19:22:44 +0900 Subject: [PATCH 232/409] Add test that convert nested mixed type list to org.msgpack.type.Value. Change TemplateRegistry@genericCache not to share. --- .../msgpack/template/TemplateRegistry.java | 16 ++++++--------- src/test/java/org/msgpack/TestNestedList.java | 20 +++++++++++++++++++ 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index abf053b81..620b0bd2a 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -88,7 +88,8 @@ public TemplateRegistry(TemplateRegistry registry) { } chain = createTemplateBuilderChain(); cache = new HashMap>(); - genericCache = parent.genericCache; + //genericCache = parent.genericCache; + genericCache = new HashMap(); registerTemplatesWhichRefersRegistry(); } @@ -130,14 +131,9 @@ private void registerTemplates() { register(byte[].class, ByteArrayTemplate.getInstance()); register(ByteBuffer.class, ByteBufferTemplate.getInstance()); register(Value.class, ValueTemplate.getInstance()); + registerTemplatesWhichRefersRegistry(); - /*register(List.class, new ListTemplate(AnyTemplate.getInstance(this))); - register(Collection.class,new CollectionTemplate(AnyTemplate.getInstance(this))); - register(Map.class,new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - */ - registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); - registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); - registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); + } @@ -147,10 +143,10 @@ protected void registerTemplatesWhichRefersRegistry() { register(List.class, new ListTemplate(anyTemplate));//new ListTemplate(AnyTemplate.getInstance(this))); register(Collection.class,new CollectionTemplate(anyTemplate));//new CollectionTemplate(AnyTemplate.getInstance(this))); register(Map.class,new MapTemplate(anyTemplate,anyTemplate));//new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - /* + registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); - registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class));*/ + registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); } public void register(final Class targetClass) { diff --git a/src/test/java/org/msgpack/TestNestedList.java b/src/test/java/org/msgpack/TestNestedList.java index 8665be3bd..ec6a917da 100644 --- a/src/test/java/org/msgpack/TestNestedList.java +++ b/src/test/java/org/msgpack/TestNestedList.java @@ -49,6 +49,26 @@ public void testTestNestedList() throws IOException { } + @Test + public void testNestedListToValue() throws IOException { + + List values = list( list("hoge",4) , list(list(2,"aaa"),list("bbb"))); + + Value value = messagePack.unconvert(values); + + Value[] rootArray = value.asArrayValue().getElementArray(); + Value[] list1 = rootArray[0].asArrayValue().getElementArray(); + Value[] list2 = rootArray[1].asArrayValue().getElementArray(); + Value[] list3 = list2[0].asArrayValue().getElementArray(); + Value[] list4 = list2[1].asArrayValue().getElementArray(); + Assert.assertEquals("hoge",list1[0].asRawValue().getString()); + Assert.assertEquals(4,list1[1].asIntegerValue().getInt()); + Assert.assertEquals(2,list3[0].asIntegerValue().getInt()); + Assert.assertEquals("aaa",list3[1].asRawValue().getString()); + Assert.assertEquals("bbb",list4[0].asRawValue().getString()); + + } + private List list( Object ... elements){ List list = new ArrayList(); for(Object o : elements){ From e786432efe44366b8cbf41760c5af4974a18cedd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 19 Oct 2011 10:17:05 +0900 Subject: [PATCH 233/409] refactored AnyTemplate, GenericCollectionTemplate and TemplateRegistry classes --- .../java/org/msgpack/template/AnyTemplate.java | 18 ++++-------------- .../template/GenericCollectionTemplate.java | 2 +- .../org/msgpack/template/TemplateRegistry.java | 10 +++------- 3 files changed, 8 insertions(+), 22 deletions(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 534f9fb88..e7c24ee0f 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -25,16 +25,6 @@ public class AnyTemplate extends AbstractTemplate { - /*@SuppressWarnings("rawtypes") - private static AnyTemplate INSTANCE = null; - - @SuppressWarnings("rawtypes") - public static AnyTemplate getInstance(TemplateRegistry registry) { - if (INSTANCE == null) { - INSTANCE = new AnyTemplate(registry); - } - return INSTANCE; - }*/ private TemplateRegistry registry; @@ -44,9 +34,9 @@ public AnyTemplate(TemplateRegistry registry) { @SuppressWarnings("unchecked") public void write(Packer pk, T target, boolean required) throws IOException { - if(target instanceof Value) { + if (target instanceof Value) { pk.write((Value) target); - } else if(target == null) { + } else if (target == null) { if(required) { throw new MessageTypeException("Attempted to write null"); } @@ -57,11 +47,11 @@ public void write(Packer pk, T target, boolean required) throws IOException { } public T read(Unpacker u, T to, boolean required) throws IOException, MessageTypeException { - if(!required && u.trySkipNil()) { + if (!required && u.trySkipNil()) { return null; } T o = u.read(to); - if(required && o == null) { + if (required && o == null) { throw new MessageTypeException("Unexpected nil value"); } return o; diff --git a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java index bdd99d081..07474c05f 100644 --- a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -29,7 +29,7 @@ public class GenericCollectionTemplate implements GenericTemplate { public GenericCollectionTemplate(TemplateRegistry registry, Class tmpl) { try { constructor = tmpl.getConstructor(new Class[]{ Template.class }); - constructor.newInstance(new Object[]{ new AnyTemplate(registry)});//AnyTemplate.getInstance(registry) }); + constructor.newInstance(new Object[]{ new AnyTemplate(registry)}); } catch (NoSuchMethodException e) { throw new IllegalArgumentException(e); } catch (InvocationTargetException e) { diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 620b0bd2a..411f3ab3e 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -88,7 +88,6 @@ public TemplateRegistry(TemplateRegistry registry) { } chain = createTemplateBuilderChain(); cache = new HashMap>(); - //genericCache = parent.genericCache; genericCache = new HashMap(); registerTemplatesWhichRefersRegistry(); } @@ -103,7 +102,6 @@ public void setClassLoader(final ClassLoader cl) { } private void registerTemplates() { - register(boolean.class, BooleanTemplate.getInstance()); register(Boolean.class, BooleanTemplate.getInstance()); register(byte.class, ByteTemplate.getInstance()); @@ -136,14 +134,12 @@ private void registerTemplates() { } - protected void registerTemplatesWhichRefersRegistry() { AnyTemplate anyTemplate = new AnyTemplate(this); - register(List.class, new ListTemplate(anyTemplate));//new ListTemplate(AnyTemplate.getInstance(this))); - register(Collection.class,new CollectionTemplate(anyTemplate));//new CollectionTemplate(AnyTemplate.getInstance(this))); - register(Map.class,new MapTemplate(anyTemplate,anyTemplate));//new MapTemplate(AnyTemplate.getInstance(this), AnyTemplate.getInstance(this))); - + register(List.class, new ListTemplate(anyTemplate)); + register(Collection.class, new CollectionTemplate(anyTemplate)); + register(Map.class, new MapTemplate(anyTemplate,anyTemplate)); registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); From 5b80397a02ca8ad6146397f36e67ca26c18ed983 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 19 Oct 2011 10:26:25 +0900 Subject: [PATCH 234/409] modified CHANGES.txt --- CHANGES.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index bf9266941..44a4a23f3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -6,7 +6,9 @@ Release 0.6.2 - MSGPACK-42 VerifyError occurs when generating templates for classes that have @Optional primitive fields MSGPACK-43 Mutually referencing MessagePack objects causes StackOverflowError - MSGPACK-49 Fail to pack org.msgpack.type.Value classes + MSGPACK-49 Fail to serialize org.msgpack.type.Value objects + MSGPACK-50 Fail to serialize object representing classes have fields of + nested non-generic List, Map and Collection types IMPROVEMENTS Modifies TemplateRegistry class for msgpack-scala From d0e9ef353b6cfab88aafade1ad082bf5ef3702fc Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Mon, 24 Oct 2011 19:23:04 +0900 Subject: [PATCH 235/409] [maven-release-plugin] prepare release msgpack-0.6.2 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index a42f89851..09fe00c17 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.2-SNAPSHOT + 0.6.2 jar http://msgpack.org/ From 7b09229257ad7c024e537e3f5d4fa61371db76ed Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Mon, 24 Oct 2011 19:23:17 +0900 Subject: [PATCH 236/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 09fe00c17..8b32bac31 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.2 + 0.6.3-SNAPSHOT jar http://msgpack.org/ From cc562343c0c2e66009047ab90a0473a30b653f79 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 24 Oct 2011 22:29:12 +0900 Subject: [PATCH 237/409] modified CHANGES.txt --- CHANGES.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 44a4a23f3..079b5898b 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ -Release 0.6.2 - +Release 0.6.3 - + +Release 0.6.2 - 2011/10/24 NEW FEATURES Enables serializing private fields in objects by Javassist generated templates. From 6813342b6a307f726d31e6781fe8575674918dc9 Mon Sep 17 00:00:00 2001 From: Keiji Muraishi Date: Fri, 28 Oct 2011 00:47:28 +0900 Subject: [PATCH 238/409] fixed compile error, @Override annotation not allowed interface method on java5 --- pom.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 8b32bac31..a35fcb4a9 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ org.msgpack msgpack MessagePack for Java - MessagePack for Java is a binary-based efficient object + MessagePack for Java is a binary-based efficient object serialization library in Java. 0.6.3-SNAPSHOT jar @@ -93,8 +93,8 @@ maven-compiler-plugin - 1.5 - 1.5 + 1.6 + 1.6 UTF-8 From 35fd20abc20f77bc73506bb8ac489e9c9630dbf0 Mon Sep 17 00:00:00 2001 From: Keiji Muraishi Date: Sat, 29 Oct 2011 23:45:32 +0900 Subject: [PATCH 239/409] register Date and BigDecimal templates as builtin --- src/main/java/org/msgpack/template/TemplateRegistry.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 411f3ab3e..bb1fba26e 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -19,11 +19,13 @@ import java.util.Collection; import java.util.Collections; +import java.util.Date; import java.util.List; import java.util.Map; import java.util.HashMap; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.math.BigDecimal; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -77,7 +79,7 @@ private TemplateRegistry() { } /** - * + * * @param registry */ public TemplateRegistry(TemplateRegistry registry) { @@ -129,6 +131,8 @@ private void registerTemplates() { register(byte[].class, ByteArrayTemplate.getInstance()); register(ByteBuffer.class, ByteBufferTemplate.getInstance()); register(Value.class, ValueTemplate.getInstance()); + register(BigDecimal.class, BigDecimalTemplate.getInstance()); + register(Date.class, DateTemplate.getInstance()); registerTemplatesWhichRefersRegistry(); From d42d95161505c6ad2af02a262a6612a65ba35f3a Mon Sep 17 00:00:00 2001 From: Keiji Muraishi Date: Sun, 30 Oct 2011 21:16:30 +0900 Subject: [PATCH 240/409] TemplateRegistry::lookup try to traverse ancestor interfaces --- .../msgpack/template/TemplateRegistry.java | 5 +++ .../template/TestTemplateRegistry.java | 38 +++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 src/test/java/org/msgpack/template/TestTemplateRegistry.java diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index bb1fba26e..579a03cbc 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -342,6 +342,11 @@ private Template lookupSuperclasses(Class targetClass) { if (tmpl != null) { register(targetClass, tmpl); return tmpl; + } else { + tmpl = (Template) lookupInterfaceTypes(superClass); + if (tmpl != null) { + return tmpl; + } } } catch (NullPointerException e) { // ignore } diff --git a/src/test/java/org/msgpack/template/TestTemplateRegistry.java b/src/test/java/org/msgpack/template/TestTemplateRegistry.java new file mode 100644 index 000000000..ed6c38546 --- /dev/null +++ b/src/test/java/org/msgpack/template/TestTemplateRegistry.java @@ -0,0 +1,38 @@ +package org.msgpack.template; + +import static org.hamcrest.CoreMatchers.*; +import static org.junit.Assert.*; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import org.junit.Test; + +public class TestTemplateRegistry { + + private static final TemplateRegistry root = new TemplateRegistry(null); + + static class MyArrayList extends ArrayList { + private static final long serialVersionUID = 1L; + } + + @Test + public void testTraverseInterface() throws Exception { + Template template = root.lookup(List.class); + assertThat(template, is(instanceOf(ListTemplate.class))); + } + + @Test + public void testTraverseDescentInterface() throws Exception { + Template template = root.lookup(MyArrayList.class); + assertThat(template, is(instanceOf(ListTemplate.class))); + } + + @Test + public void testArraysAsListIsPackable() throws Exception { + Template template = root.lookup(Arrays.asList().getClass()); + assertThat(template, is(instanceOf(ListTemplate.class))); + } + +} From 773a11cc1c20e11d291c22c7fb14830f58c8d364 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 1 Nov 2011 16:08:32 +0900 Subject: [PATCH 241/409] edited CHANGES.txt --- CHANGES.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 079b5898b..e1aea3015 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ Release 0.6.3 - + IMPROVEMENTS + Changes source and target release, which are Javac options, to 1.6 Release 0.6.2 - 2011/10/24 NEW FEATURES From 843baad45694b4a6564063c2f026b6b0204e2333 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 1 Nov 2011 16:12:48 +0900 Subject: [PATCH 242/409] edited CHANGES.txt --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index e1aea3015..5f2c50829 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,7 @@ Release 0.6.3 - IMPROVEMENTS Changes source and target release, which are Javac options, to 1.6 + Registers Date and BigDecimal templates as builtin Release 0.6.2 - 2011/10/24 NEW FEATURES From 4766178ad5297de2b23bcbd3e810f8c3135fb19c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 1 Nov 2011 16:31:52 +0900 Subject: [PATCH 243/409] refactored TemplateRegistry class --- src/main/java/org/msgpack/MessagePack.java | 4 +-- .../org/msgpack/packer/AbstractPacker.java | 2 -- .../org/msgpack/template/AnyTemplate.java | 4 +-- .../msgpack/template/TemplateRegistry.java | 35 ++++++++++++++++--- 4 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index cb047b54e..aa937dab3 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -189,9 +189,7 @@ public byte[] write(T v) throws IOException { BufferPacker pk = createBufferPacker(); if (v == null) { pk.writeNil(); - } else if(v instanceof Value){ - return write((Value)v); - }else { + }else { @SuppressWarnings("unchecked") Template tmpl = registry.lookup(v.getClass()); tmpl.write(pk, v); diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index 3858d3abe..f8738a1f0 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -199,8 +199,6 @@ public Packer write(String o) throws IOException { public Packer write(Object o) throws IOException { if(o == null) { writeNil(); - } else if(o instanceof Value){ - write((Value)o); } else { Template tmpl = msgpack.lookup(o.getClass()); tmpl.write(this, o); diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index e7c24ee0f..fc51fd0b3 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -34,9 +34,7 @@ public AnyTemplate(TemplateRegistry registry) { @SuppressWarnings("unchecked") public void write(Packer pk, T target, boolean required) throws IOException { - if (target instanceof Value) { - pk.write((Value) target); - } else if (target == null) { + if (target == null) { if(required) { throw new MessageTypeException("Attempted to write null"); } diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 579a03cbc..8ecefbf8d 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -233,6 +233,12 @@ public synchronized Template lookup(Type targetType) { return tmpl; } + // lookup template of interface type of superclasss + tmpl = lookupSuperclassInterfaceTypes(targetClass); + if (tmpl != null) { + return tmpl; + } + throw new MessageTypeException( "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); } @@ -342,11 +348,6 @@ private Template lookupSuperclasses(Class targetClass) { if (tmpl != null) { register(targetClass, tmpl); return tmpl; - } else { - tmpl = (Template) lookupInterfaceTypes(superClass); - if (tmpl != null) { - return tmpl; - } } } catch (NullPointerException e) { // ignore } @@ -356,6 +357,30 @@ private Template lookupSuperclasses(Class targetClass) { return tmpl; } + private Template lookupSuperclassInterfaceTypes(Class targetClass) { + Class superClass = targetClass.getSuperclass(); + Template tmpl = null; + if (superClass != null) { + for (; superClass != Object.class; superClass = superClass.getSuperclass()) { + tmpl = (Template) lookupInterfaceTypes(superClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } else { + try { + tmpl = (Template) parent.lookupCache(superClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } + } catch (NullPointerException e) { // ignore + } + } + } + } + return tmpl; + } + private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, final boolean hasAnnotation, final FieldList flist) { Template newTmpl = null; From 80b125a4e37d936d509002296b10902344e01649 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 2 Nov 2011 18:29:52 +0900 Subject: [PATCH 244/409] added getSize, incrSize and resetSize methods in Input.java for getting size of deserialized data to Unpacker objects --- .../java/org/msgpack/io/AbstractInput.java | 35 +++++++++++++++++++ src/main/java/org/msgpack/io/Input.java | 4 +++ .../org/msgpack/io/LinkedBufferInput.java | 10 +++++- src/main/java/org/msgpack/io/StreamInput.java | 5 ++- 4 files changed, 52 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/msgpack/io/AbstractInput.java diff --git a/src/main/java/org/msgpack/io/AbstractInput.java b/src/main/java/org/msgpack/io/AbstractInput.java new file mode 100644 index 000000000..8d9ea4a00 --- /dev/null +++ b/src/main/java/org/msgpack/io/AbstractInput.java @@ -0,0 +1,35 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.io; + + +abstract class AbstractInput implements Input { + private long size = 0; + + public long getSize() { + return size; + } + + public void incrSize(long s) { + size += s; + } + + public void resetSize() { + size = 0; + } +} diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 100059353..d9650a0cd 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -41,5 +41,9 @@ public interface Input extends Closeable { public float getFloat() throws IOException; public double getDouble() throws IOException; + + public long getSize(); + + public void resetSize(); } diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 7715c9ba8..d54b4ecfc 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -23,12 +23,15 @@ import java.nio.ByteBuffer; -public class LinkedBufferInput implements Input { +public class LinkedBufferInput extends AbstractInput { private LinkedList link; + private int writable; + private int nextAdvance; private byte[] tmpBuffer; + private ByteBuffer tmpByteBuffer; private final int bufferSize; @@ -50,10 +53,12 @@ public int read(byte[] b, int off, int len) throws EOFException { ByteBuffer bb = link.peekFirst(); if(len < bb.remaining()) { bb.get(b, off, len); + incrSize(olen); return olen; } int rem = bb.remaining(); bb.get(b, off, rem); + incrSize(rem); len -= rem; off += rem; if(!removeFirstLink(bb)) { @@ -76,6 +81,7 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { try { bb.limit(pos+len); ref.refer(bb, true); + incrSize(len); success = true; } finally { bb.limit(lim); @@ -97,6 +103,7 @@ public byte readByte() throws EOFException { throw new EndOfBufferException(); } byte result = bb.get(); + incrSize(1); if(bb.remaining() == 0) { removeFirstLink(bb); } @@ -170,6 +177,7 @@ private ByteBuffer require(int n) throws EOFException { return bb; } else { requireMore(n); + incrSize(n); nextAdvance = n; return tmpByteBuffer; } diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index 018d15e2d..98f50dbf3 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -23,7 +23,7 @@ import java.io.EOFException; -public class StreamInput implements Input { +public class StreamInput extends AbstractInput { private final InputStream in; private byte[] castBuffer; @@ -41,6 +41,7 @@ public int read(byte[] b, int off, int len) throws IOException { int remain = len; while(remain > 0) { int n = in.read(b, off, remain); + incrSize(remain); if(n <= 0) { throw new EOFException(); } @@ -56,6 +57,7 @@ public boolean tryRefer(BufferReferer ref, int size) throws IOException { public byte readByte() throws IOException { int n = in.read(); + incrSize(1); if(n < 0) { throw new EOFException(); } @@ -69,6 +71,7 @@ public void advance() { private void require(int len) throws IOException { while(filled < len) { int n = in.read(castBuffer, filled, len - filled); + incrSize(len - filled); if(n < 0) { throw new EOFException(); } From efbee9e16d9b4ad4fb80a2e2ec215f7da25904b3 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 2 Nov 2011 18:32:19 +0900 Subject: [PATCH 245/409] designed getLastMessageSize and setMessageSizeLimit method APIs (not implemented yet) --- .../java/org/msgpack/unpacker/Converter.java | 10 ++++++++++ .../msgpack/unpacker/MessagePackUnpacker.java | 17 +++++++++++++---- .../java/org/msgpack/unpacker/Unpacker.java | 7 ++++++- .../org/msgpack/unpacker/UnpackerStack.java | 5 +---- 4 files changed, 30 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 5d2c1c4f0..5cafbe2f5 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -406,5 +406,15 @@ public void reset() { @Override public void close() throws IOException { } + + @Override + public long getLastMessageSize() { + throw new UnsupportedOperationException("getLastMessageSize()"); + } + + @Override + public void setMessageSizeLimit(long size) { + throw new UnsupportedOperationException("setMessageSizeLimit()"); + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 6a519c369..c5bb63742 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -30,17 +30,16 @@ public class MessagePackUnpacker extends AbstractUnpacker { - protected final Input in; - private static final byte REQUIRE_TO_READ_HEAD = (byte)0xc6; + protected final Input in; + private final UnpackerStack stack = new UnpackerStack(); + private byte headByte = REQUIRE_TO_READ_HEAD; private byte[] raw; private int rawFilled; - private final UnpackerStack stack = new UnpackerStack(); - private final IntAccept intAccept = new IntAccept(); private final LongAccept longAccept = new LongAccept(); private final BigIntegerAccept bigIntegerAccept = new BigIntegerAccept(); @@ -558,5 +557,15 @@ public void reset() { public void close() throws IOException { in.close(); } + + @Override + public long getLastMessageSize() { + return in.getSize(); + } + + @Override + public void setMessageSizeLimit(long size) { + in.resetSize(); + } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 4b750009b..d3d5aa010 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -40,8 +40,8 @@ public interface Unpacker extends Iterable, Closeable { public T read(T to, Template tmpl) throws IOException; - public void skip() throws IOException; + public void skip() throws IOException; public int readArrayBegin() throws IOException; @@ -86,5 +86,10 @@ public interface Unpacker extends Iterable, Closeable { public UnpackerIterator iterator(); + + + public long getLastMessageSize(); + + public void setMessageSizeLimit(long size); } diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index acbe63fd0..42c630c57 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -57,12 +57,9 @@ public void checkCount() { if(types[top] == TYPE_ARRAY) { throw new MessageTypeException("Array is end but readArrayEnd() is not called"); - } else if(types[top] == TYPE_MAP) { throw new MessageTypeException("Map is end but readMapEnd() is not called"); - - } else { - // empty + } else { // empty return; } } From 432f15ba95ef83e3658e6cbdeb96e584f0cf5131 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 2 Nov 2011 19:53:45 +0900 Subject: [PATCH 246/409] fixed bug: it had reflective access via public fields --- .../org/msgpack/template/builder/DefaultBuildContext.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index c92091a90..7f128c980 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -114,8 +114,12 @@ protected String buildWriteMethodBody() { DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); } } else { // reference types - buildString(" if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", - DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName()); + if (!isPrivate) { + buildString(" if (_$$_t.%s == null) {\n", de.getName()); + } else { + buildString(" if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName()); + } if (de.isNotNullable()) { buildString(" throw new %s(\"%s cannot be null by @NotNullable\");\n", MessageTypeException.class.getName(), de.getName()); From 18f24c5f14aa338cb6b46a47ed123ee901724626 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 11:59:05 +0900 Subject: [PATCH 247/409] trivial modification --- .../msgpack/unpacker/MessagePackUnpacker.java | 100 +++++++++--------- 1 file changed, 50 insertions(+), 50 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index c5bb63742..c8a236e3c 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -62,7 +62,7 @@ protected MessagePackUnpacker(MessagePack msgpack, Input in) { private byte getHeadByte() throws IOException { byte b = headByte; - if(b == REQUIRE_TO_READ_HEAD) { + if (b == REQUIRE_TO_READ_HEAD) { b = headByte = in.readByte(); } return b; @@ -70,13 +70,13 @@ private byte getHeadByte() throws IOException { final void readOne(Accept a) throws IOException { stack.checkCount(); - if(readOneWithoutStack(a)) { + if (readOneWithoutStack(a)) { stack.reduceCount(); } } final boolean readOneWithoutStack(Accept a) throws IOException { - if(raw != null) { + if (raw != null) { readRawBodyCont(); a.acceptRaw(raw); raw = null; @@ -86,28 +86,28 @@ final boolean readOneWithoutStack(Accept a) throws IOException { final int b = (int)getHeadByte(); - if((b & 0x80) == 0) { // Positive Fixnum + if ((b & 0x80) == 0) { // Positive Fixnum //System.out.println("positive fixnum "+b); a.acceptInteger(b); headByte = REQUIRE_TO_READ_HEAD; return true; } - if((b & 0xe0) == 0xe0) { // Negative Fixnum + if ((b & 0xe0) == 0xe0) { // Negative Fixnum //System.out.println("negative fixnum "+b); a.acceptInteger(b); headByte = REQUIRE_TO_READ_HEAD; return true; } - if((b & 0xe0) == 0xa0) { // FixRaw + if ((b & 0xe0) == 0xa0) { // FixRaw int count = b & 0x1f; - if(count == 0) { + if (count == 0) { a.acceptEmptyRaw(); headByte = REQUIRE_TO_READ_HEAD; return true; } - if(!tryReferRawBody(a, count)) { + if (!tryReferRawBody(a, count)) { readRawBody(count); a.acceptRaw(raw); raw = null; @@ -116,7 +116,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } - if((b & 0xf0) == 0x90) { // FixArray + if ((b & 0xf0) == 0x90) { // FixArray int count = b & 0x0f; //System.out.println("fixarray count:"+count); a.acceptArray(count); @@ -126,7 +126,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return false; } - if((b & 0xf0) == 0x80) { // FixMap + if ((b & 0xf0) == 0x80) { // FixMap int count = b & 0x0f; //System.out.println("fixmap count:"+count/2); a.acceptMap(count); @@ -206,14 +206,14 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xda: // raw 16 { int count = in.getShort() & 0xffff; - if(count == 0) { + if (count == 0) { a.acceptEmptyRaw(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; } in.advance(); - if(!tryReferRawBody(a, count)) { + if (!tryReferRawBody(a, count)) { readRawBody(count); a.acceptRaw(raw); raw = null; @@ -224,17 +224,17 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdb: // raw 32 { int count = in.getInt(); - if(count < 0) { + if (count < 0) { throw new IOException("Raw size too large"); // TODO error MessageSizeException } - if(count == 0) { + if (count == 0) { a.acceptEmptyRaw(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; } in.advance(); - if(!tryReferRawBody(a, count)) { + if (!tryReferRawBody(a, count)) { readRawBody(count); a.acceptRaw(raw); raw = null; @@ -255,7 +255,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdd: // array 32 { int count = in.getInt(); - if(count < 0) { + if (count < 0) { throw new IOException("Array size too large"); // TODO error MessageSizeException } a.acceptArray(count); @@ -278,7 +278,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); - if(count < 0) { + if (count < 0) { throw new IOException("Map size too large"); // TODO error MessageSizeException } a.acceptMap(count); @@ -309,7 +309,7 @@ private void readRawBody(int size) throws IOException { private void readRawBodyCont() throws IOException { int len = in.read(raw, rawFilled, raw.length - rawFilled); rawFilled += len; - if(rawFilled < raw.length) { + if (rawFilled < raw.length) { throw new EOFException(); } } @@ -318,7 +318,7 @@ private void readRawBodyCont() throws IOException { protected boolean tryReadNil() throws IOException { stack.checkCount(); int b = getHeadByte() & 0xff; - if(b == 0xc0) { + if (b == 0xc0) { // nil is read stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -330,13 +330,13 @@ protected boolean tryReadNil() throws IOException { @Override public boolean trySkipNil() throws IOException { - if(stack.getDepth() > 0 && stack.getTopCount() <= 0) { + if (stack.getDepth() > 0 && stack.getTopCount() <= 0) { // end of array or map return true; } int b = getHeadByte() & 0xff; - if(b == 0xc0) { + if (b == 0xc0) { // nil is skipped stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -351,7 +351,7 @@ public void readNil() throws IOException { // optimized not to allocate nilAccept stack.checkCount(); int b = getHeadByte() & 0xff; - if(b == 0xc0) { + if (b == 0xc0) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; return; @@ -364,11 +364,11 @@ public boolean readBoolean() throws IOException { // optimized not to allocate booleanAccept stack.checkCount(); int b = getHeadByte() & 0xff; - if(b == 0xc2) { + if (b == 0xc2) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; return false; - } else if(b == 0xc3) { + } else if (b == 0xc3) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; return true; @@ -382,7 +382,7 @@ public byte readByte() throws IOException { stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; - if(value < (int)Byte.MIN_VALUE || value > (int)Byte.MAX_VALUE) { + if (value < (int)Byte.MIN_VALUE || value > (int)Byte.MAX_VALUE) { throw new MessageTypeException(); // TODO message } stack.reduceCount(); @@ -395,7 +395,7 @@ public short readShort() throws IOException { stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; - if(value < (int)Short.MIN_VALUE || value > (int)Short.MAX_VALUE) { + if (value < (int)Short.MIN_VALUE || value > (int)Short.MAX_VALUE) { throw new MessageTypeException(); // TODO message } stack.reduceCount(); @@ -452,16 +452,16 @@ public int readArrayBegin() throws IOException { @Override public void readArrayEnd(boolean check) throws IOException { - if(!stack.topIsArray()) { + if (!stack.topIsArray()) { throw new MessageTypeException("readArrayEnd() is called but readArrayBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { + if (remain > 0) { + if (check) { throw new MessageTypeException("readArrayEnd(check=true) is called but the array is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { skip(); } } @@ -476,16 +476,16 @@ public int readMapBegin() throws IOException { @Override public void readMapEnd(boolean check) throws IOException { - if(!stack.topIsMap()) { + if (!stack.topIsMap()) { throw new MessageTypeException("readMapEnd() is called but readMapBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { + if (remain > 0) { + if (check) { throw new MessageTypeException("readMapEnd(check=true) is called but the map is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { skip(); } } @@ -494,32 +494,32 @@ public void readMapEnd(boolean check) throws IOException { @Override protected void readValue(Unconverter uc) throws IOException { - if(uc.getResult() != null) { + if (uc.getResult() != null) { uc.resetResult(); } valueAccept.setUnconverter(uc); stack.checkCount(); - if(readOneWithoutStack(valueAccept)) { + if (readOneWithoutStack(valueAccept)) { stack.reduceCount(); - if(uc.getResult() != null) { + if (uc.getResult() != null) { return; } } - while(true) { - while(stack.getTopCount() == 0) { - if(stack.topIsArray()) { + while (true) { + while (stack.getTopCount() == 0) { + if (stack.topIsArray()) { uc.writeArrayEnd(true); stack.pop(); //stack.reduceCount(); - } else if(stack.topIsMap()) { + } else if (stack.topIsMap()) { uc.writeMapEnd(true); stack.pop(); //stack.reduceCount(); } else { throw new RuntimeException("invalid stack"); // FIXME error? } - if(uc.getResult() != null) { + if (uc.getResult() != null) { return; } } @@ -530,17 +530,17 @@ protected void readValue(Unconverter uc) throws IOException { @Override public void skip() throws IOException { stack.checkCount(); - if(readOneWithoutStack(skipAccept)) { + if (readOneWithoutStack(skipAccept)) { stack.reduceCount(); return; } - int targetDepth = stack.getDepth()-1; - while(true) { - while(stack.getTopCount() == 0) { + int targetDepth = stack.getDepth() - 1; + while (true) { + while (stack.getTopCount() == 0) { stack.pop(); - if(stack.getTopCount() == 0) { + if (stack.getTopCount() == 0) { stack.pop(); - if(stack.getDepth() <= targetDepth) { + if (stack.getDepth() <= targetDepth) { return; } } @@ -559,12 +559,12 @@ public void close() throws IOException { } @Override - public long getLastMessageSize() { + public long getLastMessageSize() {// FIXME #MN return in.getSize(); } @Override - public void setMessageSizeLimit(long size) { + public void setMessageSizeLimit(long size) {// FIXME #MN in.resetSize(); } } From 87e326fa419cdf21dd923f7a16a347b8febdb228 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 12:33:18 +0900 Subject: [PATCH 248/409] deleted getSize, resetSize and incrSize methods in Input class --- .../java/org/msgpack/io/AbstractInput.java | 35 ------------------- src/main/java/org/msgpack/io/Input.java | 4 --- .../org/msgpack/io/LinkedBufferInput.java | 7 +--- src/main/java/org/msgpack/io/StreamInput.java | 5 +-- 4 files changed, 2 insertions(+), 49 deletions(-) delete mode 100644 src/main/java/org/msgpack/io/AbstractInput.java diff --git a/src/main/java/org/msgpack/io/AbstractInput.java b/src/main/java/org/msgpack/io/AbstractInput.java deleted file mode 100644 index 8d9ea4a00..000000000 --- a/src/main/java/org/msgpack/io/AbstractInput.java +++ /dev/null @@ -1,35 +0,0 @@ -// -// MessagePack for Java -// -// Copyright (C) 2009-2011 FURUHASHI Sadayuki -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -// -package org.msgpack.io; - - -abstract class AbstractInput implements Input { - private long size = 0; - - public long getSize() { - return size; - } - - public void incrSize(long s) { - size += s; - } - - public void resetSize() { - size = 0; - } -} diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index d9650a0cd..100059353 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -41,9 +41,5 @@ public interface Input extends Closeable { public float getFloat() throws IOException; public double getDouble() throws IOException; - - public long getSize(); - - public void resetSize(); } diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index d54b4ecfc..dbd3e5747 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -23,7 +23,7 @@ import java.nio.ByteBuffer; -public class LinkedBufferInput extends AbstractInput { +public class LinkedBufferInput implements Input { private LinkedList link; private int writable; @@ -53,12 +53,10 @@ public int read(byte[] b, int off, int len) throws EOFException { ByteBuffer bb = link.peekFirst(); if(len < bb.remaining()) { bb.get(b, off, len); - incrSize(olen); return olen; } int rem = bb.remaining(); bb.get(b, off, rem); - incrSize(rem); len -= rem; off += rem; if(!removeFirstLink(bb)) { @@ -81,7 +79,6 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { try { bb.limit(pos+len); ref.refer(bb, true); - incrSize(len); success = true; } finally { bb.limit(lim); @@ -103,7 +100,6 @@ public byte readByte() throws EOFException { throw new EndOfBufferException(); } byte result = bb.get(); - incrSize(1); if(bb.remaining() == 0) { removeFirstLink(bb); } @@ -177,7 +173,6 @@ private ByteBuffer require(int n) throws EOFException { return bb; } else { requireMore(n); - incrSize(n); nextAdvance = n; return tmpByteBuffer; } diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index 98f50dbf3..018d15e2d 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -23,7 +23,7 @@ import java.io.EOFException; -public class StreamInput extends AbstractInput { +public class StreamInput implements Input { private final InputStream in; private byte[] castBuffer; @@ -41,7 +41,6 @@ public int read(byte[] b, int off, int len) throws IOException { int remain = len; while(remain > 0) { int n = in.read(b, off, remain); - incrSize(remain); if(n <= 0) { throw new EOFException(); } @@ -57,7 +56,6 @@ public boolean tryRefer(BufferReferer ref, int size) throws IOException { public byte readByte() throws IOException { int n = in.read(); - incrSize(1); if(n < 0) { throw new EOFException(); } @@ -71,7 +69,6 @@ public void advance() { private void require(int len) throws IOException { while(filled < len) { int n = in.read(castBuffer, filled, len - filled); - incrSize(len - filled); if(n < 0) { throw new EOFException(); } From 8616d40b5c98e3e2f636b916bb4f38bb60f6358b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 12:34:34 +0900 Subject: [PATCH 249/409] changed return type of checkCount method in UnpackerStack: void to int --- src/main/java/org/msgpack/unpacker/UnpackerStack.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index 42c630c57..94c51cd82 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -50,9 +50,12 @@ public void pushMap(int size) { counts[top] = size*2; } - public void checkCount() { + /** + * @return current depth of stack + */ + public int checkCount() { if(counts[top] > 0) { - return; + return getDepth(); } if(types[top] == TYPE_ARRAY) { @@ -60,7 +63,7 @@ public void checkCount() { } else if(types[top] == TYPE_MAP) { throw new MessageTypeException("Map is end but readMapEnd() is not called"); } else { // empty - return; + return getDepth(); } } From 31e0467851f0053287035a9174e7adf7bb0420d5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 18:56:02 +0900 Subject: [PATCH 250/409] improved test programs for checking behavior of getMessageSize method in Unpacker class --- .../msgpack/TestBufferPackBufferUnpack.java | 13 +++++ .../org/msgpack/TestBufferPackConvert.java | 15 +++++- .../org/msgpack/TestBufferPackUnpack.java | 13 +++++ .../org/msgpack/TestPackBufferUnpack.java | 13 +++++ .../java/org/msgpack/TestPackConvert.java | 25 ++++++--- src/test/java/org/msgpack/TestPackUnpack.java | 52 ++++++++++++++----- ...tionalJavassistBufferPackBufferUnpack.java | 18 +++++-- ...TestOptionalJavassistBufferPackUnpack.java | 18 +++++-- ...TestOptionalJavassistPackBufferUnpack.java | 18 +++++-- .../TestOptionalJavassistPackUnpack.java | 18 +++++-- ...ionalReflectionBufferPackBufferUnpack.java | 18 +++++-- ...estOptionalReflectionBufferPackUnpack.java | 18 +++++-- ...estOptionalReflectionPackBufferUnpack.java | 18 +++++-- .../TestOptionalReflectionPackUnpack.java | 18 +++++-- .../template/TestBigDecimalTemplate.java | 4 ++ .../template/TestBigIntegerTemplate.java | 4 ++ .../template/TestBooleanArrayTemplate.java | 4 ++ .../msgpack/template/TestBooleanTemplate.java | 4 ++ .../template/TestByteArrayTemplate.java | 5 ++ .../template/TestByteBufferTemplate.java | 5 ++ .../template/TestCharacterTemplate.java | 4 ++ .../msgpack/template/TestDateTemplate.java | 4 ++ .../template/TestDoubleArrayTemplate.java | 4 ++ .../msgpack/template/TestDoubleTemplate.java | 4 ++ .../template/TestFloatArrayTemplate.java | 4 ++ .../msgpack/template/TestFloatTemplate.java | 4 ++ .../template/TestIntegerArrayTemplate.java | 4 ++ .../msgpack/template/TestIntegerTemplate.java | 4 ++ .../msgpack/template/TestListTemplate.java | 4 ++ .../template/TestLongArrayTemplate.java | 4 ++ .../msgpack/template/TestLongTemplate.java | 4 ++ .../org/msgpack/template/TestMapTemplate.java | 4 ++ .../template/TestShortArrayTemplate.java | 4 ++ .../msgpack/template/TestShortTemplate.java | 4 ++ .../msgpack/template/TestStringTemplate.java | 4 ++ .../TestJavassistBufferPackBufferUnpack.java | 19 +++++++ .../TestJavassistBufferPackConvert.java | 19 +++++++ .../TestJavassistBufferPackUnpack.java | 19 +++++++ .../TestJavassistPackBufferUnpack.java | 19 +++++++ .../builder/TestJavassistPackUnpack.java | 19 +++++++ ...TestOrdinalEnumBufferPackBufferUnpack.java | 2 + .../TestOrdinalEnumBufferPackConvert.java | 2 + .../TestOrdinalEnumBufferPackUnpack.java | 2 + .../TestOrdinalEnumPackBufferUnpack.java | 2 + .../builder/TestOrdinalEnumPackConvert.java | 2 + .../builder/TestOrdinalEnumPackUnpack.java | 2 + ...ReflectionBeansBufferPackBufferUnpack.java | 19 +++++++ .../TestReflectionBeansBufferPackConvert.java | 19 +++++++ .../TestReflectionBeansBufferPackUnpack.java | 19 +++++++ .../TestReflectionBeansPackBufferUnpack.java | 19 +++++++ .../TestReflectionBeansPackConvert.java | 19 +++++++ .../TestReflectionBeansPackUnpack.java | 19 +++++++ .../TestReflectionBufferPackBufferUnpack.java | 19 +++++++ .../TestReflectionBufferPackConvert.java | 19 +++++++ .../TestReflectionBufferPackUnpack.java | 19 +++++++ .../TestReflectionPackBufferUnpack.java | 19 +++++++ .../builder/TestReflectionPackConvert.java | 19 +++++++ .../builder/TestReflectionPackUnpack.java | 19 +++++++ 58 files changed, 644 insertions(+), 52 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 0274c1ed5..b247f207d 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -31,6 +31,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -47,6 +48,7 @@ public void testByte(byte v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -63,6 +65,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -79,6 +82,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -95,6 +99,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -111,6 +116,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -127,6 +133,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -137,6 +144,7 @@ public void testNil() throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -153,6 +161,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -169,6 +178,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -185,6 +195,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -223,6 +234,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -263,5 +275,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index ef61545ab..fb99c4998 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -36,6 +36,7 @@ public void testBoolean(boolean v) throws Exception { assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -54,6 +55,7 @@ public void testByte(byte v) throws Exception { assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -72,6 +74,7 @@ public void testShort(short v) throws Exception { assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -90,6 +93,7 @@ public void testInteger(int v) throws Exception { assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -108,6 +112,7 @@ public void testLong(long v) throws Exception { assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -126,6 +131,7 @@ public void testFloat(float v) throws Exception { assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -144,6 +150,7 @@ public void testDouble(double v) throws Exception { assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -156,6 +163,7 @@ public void testNil() throws Exception { Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -169,10 +177,11 @@ public void testBigInteger(BigInteger v) throws Exception { BufferPacker packer = msgpack.createBufferPacker(); packer.write(v); byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -190,6 +199,7 @@ public void testString(String v) throws Exception { Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -207,6 +217,7 @@ public void testByteArray(byte[] v) throws Exception { Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -246,6 +257,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -288,5 +300,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index ec87c8270..f310b76a8 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -32,6 +32,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -48,6 +49,7 @@ public void testByte(byte v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -64,6 +66,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -80,6 +83,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -96,6 +100,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -112,6 +117,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -128,6 +134,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -138,6 +145,7 @@ public void testNil() throws Exception { byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); unpacker.readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -154,6 +162,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -170,6 +179,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -186,6 +196,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -224,6 +235,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -264,5 +276,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java index c98cc4944..ded9e313d 100644 --- a/src/test/java/org/msgpack/TestPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -33,6 +33,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -50,6 +51,7 @@ public void testByte(byte v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -67,6 +69,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -84,6 +87,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -101,6 +105,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -118,6 +123,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -135,6 +141,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -146,6 +153,7 @@ public void testNil() throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -163,6 +171,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -180,6 +189,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -197,6 +207,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -236,6 +247,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -277,5 +289,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index d0861dc67..96d8cc81e 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -41,6 +41,7 @@ public void testBoolean(boolean v) throws Exception { assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -60,6 +61,7 @@ public void testByte(byte v) throws Exception { assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -79,6 +81,7 @@ public void testShort(short v) throws Exception { assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -98,6 +101,7 @@ public void testInteger(int v) throws Exception { assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -117,6 +121,7 @@ public void testLong(long v) throws Exception { assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -136,6 +141,7 @@ public void testFloat(float v) throws Exception { assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -155,6 +161,7 @@ public void testDouble(double v) throws Exception { assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -168,6 +175,7 @@ public void testNil() throws Exception { Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -186,6 +194,7 @@ public void testBigInteger(BigInteger v) throws Exception { Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -204,6 +213,7 @@ public void testString(String v) throws Exception { Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -222,6 +232,7 @@ public void testByteArray(byte[] v) throws Exception { Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -262,6 +273,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -305,12 +317,14 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } + @Test public void testPackValue() throws IOException { MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); String text = "This is Value"; Value value = ValueFactory.createRawValue(text); packer.write(value); @@ -319,12 +333,11 @@ public void testPackValue() throws IOException { Assert.assertEquals(0xa0 + text.length(), 0xff & bytes[0]); } - @Test public void testPackValuePassedAsObject() throws IOException{ - MessagePack msgpack = new MessagePack(); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); String text = "This is Value"; Object value = ValueFactory.createRawValue(text); packer.write(value); // passed as object diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index cc3a7ffbf..6a1809ea8 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -30,10 +30,12 @@ public void testBoolean(boolean v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -47,10 +49,12 @@ public void testByte(byte v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); byte ret = unpacker.readByte(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -64,10 +68,12 @@ public void testShort(short v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); short ret = unpacker.readShort(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -81,10 +87,12 @@ public void testInteger(int v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); int ret = unpacker.readInt(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -98,10 +106,12 @@ public void testLong(long v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); long ret = unpacker.readLong(); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Override @@ -110,10 +120,12 @@ public void testFloat(float v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -127,10 +139,12 @@ public void testDouble(double v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -139,9 +153,11 @@ public void testNil() throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.writeNil(); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); unpacker.readNil(); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -155,10 +171,12 @@ public void testBigInteger(BigInteger v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -172,10 +190,12 @@ public void testString(String v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); String ret = unpacker.read(String.class); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -189,10 +209,12 @@ public void testByteArray(byte[] v) throws Exception { ByteArrayOutputStream out = new ByteArrayOutputStream(); Packer packer = msgpack.createPacker(out); packer.write(v); - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -214,7 +236,8 @@ public void testList(List v, Class elementClass) throws Exception { } packer.writeArrayEnd(); } - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); if (unpacker.trySkipNil()) { assertEquals(null, v); @@ -232,6 +255,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -254,7 +278,8 @@ public void testMap(Map v, Class keyElementClass, Class value } packer.writeMapEnd(); } - ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); if (unpacker.trySkipNil()) { assertEquals(null, v); @@ -273,5 +298,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java index 75679ff5f..c06c838c8 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java @@ -2,6 +2,8 @@ import java.io.ByteArrayOutputStream; +import static org.junit.Assert.assertEquals; + import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.packer.Packer; @@ -30,7 +32,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -49,7 +53,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -68,7 +74,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -87,7 +95,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java index 2ae3cd4ef..1c5445a83 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import org.junit.Test; @@ -29,7 +31,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -47,7 +51,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -65,7 +71,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -83,7 +91,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java index cfc899043..f46917487 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import org.junit.Test; @@ -29,7 +31,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -47,7 +51,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -65,7 +71,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -83,7 +91,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java index 21255a8aa..ab60dcfd0 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -31,7 +33,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -50,7 +54,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -69,7 +75,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -88,7 +96,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java index f8571715f..bc5d97b31 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayOutputStream; import org.junit.Test; @@ -30,7 +32,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -49,7 +53,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -68,7 +74,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -87,7 +95,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java index b850a60e8..fcc981acc 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import org.junit.Test; @@ -29,7 +31,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -47,7 +51,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -65,7 +71,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -83,7 +91,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java index cfeeb1bf5..c21881d37 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import org.junit.Test; @@ -29,7 +31,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -47,7 +51,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -65,7 +71,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -83,7 +91,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java index 29d853624..0fe220870 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java @@ -1,5 +1,7 @@ package org.msgpack.annotation; +import static org.junit.Assert.assertEquals; + import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -31,7 +33,9 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl01.read(unpacker, null); + MyMessage01 dst = tmpl01.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0102() throws Exception { @@ -50,7 +54,9 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl02.read(unpacker, null); + MyMessage02 dst = tmpl02.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0103() throws Exception { @@ -69,7 +75,9 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } public void testOptional0203() throws Exception { @@ -88,7 +96,9 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); - return tmpl03.read(unpacker, null); + MyMessage03 dst = tmpl03.read(unpacker, null); + assertEquals(bytes.length, unpacker.getLastMessageSize()); + return dst; } } diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index 1ff2c71af..2b879d82e 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -54,6 +54,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -74,6 +75,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -93,6 +95,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -112,6 +115,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 0e95cce18..d3584b3bd 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -54,6 +54,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -74,6 +75,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -93,6 +95,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -112,6 +115,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index 0c8dd9416..4141ce80d 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -121,6 +121,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -216,6 +218,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -263,6 +266,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index de3e5efd8..d7e43daa2 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -53,6 +53,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index 912b8eeeb..a113709f6 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -1,6 +1,7 @@ package org.msgpack.template; import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -53,6 +54,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +75,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +95,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +115,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 678846a1a..91d310cce 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -1,6 +1,7 @@ package org.msgpack.template; import static org.junit.Assert.assertArrayEquals; +import static org.junit.Assert.assertEquals; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -63,6 +64,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -83,6 +85,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -102,6 +105,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -121,6 +125,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestCharacterTemplate.java b/src/test/java/org/msgpack/template/TestCharacterTemplate.java index 31ebe092e..2e1847168 100644 --- a/src/test/java/org/msgpack/template/TestCharacterTemplate.java +++ b/src/test/java/org/msgpack/template/TestCharacterTemplate.java @@ -52,6 +52,7 @@ public void testCharacter(Character v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -72,6 +73,7 @@ public void testCharacter(Character v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -91,6 +93,7 @@ public void testCharacter(Character v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -110,6 +113,7 @@ public void testCharacter(Character v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index dfe52d4fa..fe90ac4ce 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -54,6 +54,7 @@ public void testDate(Date v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -74,6 +75,7 @@ public void testDate(Date v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -93,6 +95,7 @@ public void testDate(Date v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -112,6 +115,7 @@ public void testDate(Date v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index e7401ca7b..a0443c945 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -121,6 +121,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -216,6 +218,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -263,6 +266,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index da922292c..bbb5387a6 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -53,6 +53,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index c1b766e66..ba620b43b 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -121,6 +121,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -217,6 +219,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -264,6 +267,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index d05570db5..1375c9e1a 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -53,6 +53,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index b3fc38056..7b1e7abcd 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -121,6 +121,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -216,6 +218,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -263,6 +266,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index 37d69c2bf..a486cbc48 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -53,6 +53,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 8d8f77edd..02ba5a164 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -55,6 +55,7 @@ public void testList(List v, Class elementClass) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -76,6 +77,7 @@ public void testList(List v, Class elementClass) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -96,6 +98,7 @@ public void testList(List v, Class elementClass) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -116,6 +119,7 @@ public void testList(List v, Class elementClass) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index c4c31ea9a..a181ad37b 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -121,6 +121,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -216,6 +218,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -263,6 +266,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index fcce409aa..35bf66015 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -53,6 +53,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index c3072a775..1b31c3fb4 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -56,6 +56,7 @@ public void testMap(Map v, Class keyElementClass, Class value Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -78,6 +79,7 @@ public void testMap(Map v, Class keyElementClass, Class value BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -99,6 +101,7 @@ public void testMap(Map v, Class keyElementClass, Class value BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -120,6 +123,7 @@ public void testMap(Map v, Class keyElementClass, Class value Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index c795ffbfa..f4810b13f 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -121,6 +121,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -169,6 +170,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -216,6 +218,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -263,6 +266,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index 19b3a7fb5..41be677d4 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -53,6 +53,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index 18a2592ad..c3e0dedd4 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -53,6 +53,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -73,6 +74,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -92,6 +94,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } @@ -111,6 +114,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index e6c344a0b..833853dd4 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -93,6 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -133,6 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -153,6 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -173,6 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -193,6 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -213,6 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -256,6 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -276,6 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -296,6 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -316,6 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -336,6 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -356,6 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -376,6 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -396,6 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -416,6 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index b5a810363..ccb15240e 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -57,6 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -79,6 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -101,6 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -123,6 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -145,6 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -189,6 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -211,6 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -233,6 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -278,6 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -300,6 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -322,6 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -344,6 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -366,6 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -388,6 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -410,6 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -432,6 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -454,6 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -476,6 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index 4c8591946..89b03aa62 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -111,6 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -130,6 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -149,6 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -168,6 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -187,6 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -206,6 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -248,6 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -267,6 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -286,6 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -305,6 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -324,6 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -343,6 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -362,6 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -381,6 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -400,6 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 207d974cb..337ac3671 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -77,6 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -140,6 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -161,6 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -182,6 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -203,6 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -224,6 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -268,6 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -289,6 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -310,6 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -331,6 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -352,6 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -373,6 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -394,6 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -415,6 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -457,6 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index b21ffc614..f1d67bb28 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -76,6 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -116,6 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -136,6 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -156,6 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -196,6 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -216,6 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -259,6 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -279,6 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -299,6 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -319,6 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -339,6 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -359,6 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -379,6 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -399,6 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -439,6 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index ff00fe452..a394a7cda 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -34,6 +34,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -56,5 +57,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index edbd51ce6..3132f8f99 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -38,6 +38,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -62,5 +63,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index 2f3c04a87..8d3a41416 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -35,6 +35,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -56,5 +57,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index c59ff0ed7..fcf65fbb7 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -37,6 +37,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -60,5 +61,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index 7bb46e09f..27211c9ca 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -41,6 +41,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -66,5 +67,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index e1810f433..5c530a4ba 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -37,6 +37,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -59,5 +60,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 600159b10..23d32ed75 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -93,6 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -133,6 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -153,6 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -173,6 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -193,6 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -213,6 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -256,6 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -276,6 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -296,6 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -316,6 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -336,6 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -356,6 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -376,6 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -396,6 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -416,6 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index 77b57650f..7773109fd 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -57,6 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -79,6 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -101,6 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -123,6 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -145,6 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -189,6 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -211,6 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -233,6 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -278,6 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -300,6 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -322,6 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -344,6 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -366,6 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -388,6 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -410,6 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -432,6 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -454,6 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -476,6 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index b229b0c8b..8352a0925 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -111,6 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -130,6 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -149,6 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -168,6 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -187,6 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -206,6 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -248,6 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -267,6 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -286,6 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -305,6 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -324,6 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -343,6 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -362,6 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -381,6 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -400,6 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index a8d0187f3..22b015194 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -77,6 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -140,6 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -161,6 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -182,6 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -203,6 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -224,6 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -268,6 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -289,6 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -310,6 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -331,6 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -352,6 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -373,6 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -394,6 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -415,6 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -457,6 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index c2f0f1604..a5b4c19a2 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -60,6 +60,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -83,6 +84,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -106,6 +108,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -129,6 +132,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -152,6 +156,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -175,6 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -198,6 +204,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -221,6 +228,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -244,6 +252,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -290,6 +299,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -313,6 +323,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -336,6 +347,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -359,6 +371,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -382,6 +395,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -405,6 +419,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -428,6 +443,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -451,6 +467,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -474,6 +491,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -497,6 +515,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 96271fdaa..3305a0af7 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -76,6 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -116,6 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -136,6 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -156,6 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -196,6 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -216,6 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -259,6 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -279,6 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -299,6 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -319,6 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -339,6 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -359,6 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -379,6 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -399,6 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -439,6 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 730d8188b..48546871a 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -93,6 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -133,6 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -153,6 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -173,6 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -193,6 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -213,6 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -256,6 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -276,6 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -296,6 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -316,6 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -336,6 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -356,6 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -376,6 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -396,6 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -416,6 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index 991b36e33..215671672 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -57,6 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -79,6 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -101,6 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -123,6 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -145,6 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -189,6 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -211,6 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -233,6 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -278,6 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -300,6 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -322,6 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -344,6 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -366,6 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -388,6 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -410,6 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -432,6 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -454,6 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -476,6 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index c04c73be2..582d20691 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -73,6 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -111,6 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -130,6 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -149,6 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -168,6 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -187,6 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -206,6 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -248,6 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -267,6 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -286,6 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -305,6 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -324,6 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -343,6 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -362,6 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -381,6 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -400,6 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index 702ef61ab..799024ce3 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -77,6 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -140,6 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -161,6 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -182,6 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -203,6 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -224,6 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -268,6 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -289,6 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -310,6 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -331,6 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -352,6 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -373,6 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -394,6 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -415,6 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -436,6 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -457,6 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index be7ed750d..abfc62294 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -60,6 +60,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -83,6 +84,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -106,6 +108,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -129,6 +132,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -152,6 +156,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -175,6 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -198,6 +204,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -221,6 +228,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -244,6 +252,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -290,6 +299,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -313,6 +323,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -336,6 +347,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -359,6 +371,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -382,6 +395,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -405,6 +419,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -428,6 +443,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -451,6 +467,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -474,6 +491,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } @Test @Override @@ -497,6 +515,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, u.getLastMessageSize()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index bae3dbb0a..71f0ad2f4 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -56,6 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -76,6 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -116,6 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -136,6 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -156,6 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -196,6 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -216,6 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -259,6 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -279,6 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -299,6 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -319,6 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -339,6 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -359,6 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -379,6 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -399,6 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -419,6 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } @Test @Override @@ -439,6 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getLastMessageSize()); } } From d3599057969506ae4cce977dbe6f0e03bfa97630 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 19:01:19 +0900 Subject: [PATCH 251/409] added function for getting last message size named getLastMessageSize in MessagePackUnpacker class --- .../msgpack/unpacker/AbstractUnpacker.java | 34 ++++++++++++++++ .../java/org/msgpack/unpacker/Converter.java | 7 +--- .../msgpack/unpacker/MessagePackUnpacker.java | 40 ++++++++++++++----- 3 files changed, 64 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index bac575e29..697e8fbae 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -28,6 +28,8 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; + protected long messageSize; + protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; } @@ -101,4 +103,36 @@ public T read(T to, Template tmpl) throws IOException { } return (T) tmpl.read(this, to); } + + public long getLastMessageSize() { + return messageSize; + } + + public void setMessageSizeLimit(long size) { + throw new UnsupportedOperationException("Not implemented yet"); + } + + protected void incrMessageSize(long size) { + messageSize += size; + } + + protected void incrMessageSizeOne() { + messageSize += 1; + } + + protected void incrMessageSizeTwo() { + messageSize += 2; + } + + protected void incrMessageSizeFour() { + messageSize += 4; + } + + protected void incrMessageSizeEight() { + messageSize += 8; + } + + protected void resetMessageSize() { + messageSize = 0; + } } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 5cafbe2f5..c9805d008 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -409,12 +409,7 @@ public void close() throws IOException { @Override public long getLastMessageSize() { - throw new UnsupportedOperationException("getLastMessageSize()"); - } - - @Override - public void setMessageSizeLimit(long size) { - throw new UnsupportedOperationException("setMessageSizeLimit()"); + throw new UnsupportedOperationException("Not implemented yet"); } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index c8a236e3c..c151de6f2 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -69,7 +69,10 @@ private byte getHeadByte() throws IOException { } final void readOne(Accept a) throws IOException { - stack.checkCount(); + int depth = stack.checkCount(); + if (depth == 0) { + resetMessageSize(); + } if (readOneWithoutStack(a)) { stack.reduceCount(); } @@ -79,12 +82,14 @@ final boolean readOneWithoutStack(Accept a) throws IOException { if (raw != null) { readRawBodyCont(); a.acceptRaw(raw); + incrMessageSize(raw.length); raw = null; headByte = REQUIRE_TO_READ_HEAD; return true; } final int b = (int)getHeadByte(); + incrMessageSizeOne(); if ((b & 0x80) == 0) { // Positive Fixnum //System.out.println("positive fixnum "+b); @@ -112,6 +117,7 @@ final boolean readOneWithoutStack(Accept a) throws IOException { a.acceptRaw(raw); raw = null; } + incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } @@ -155,57 +161,68 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti return true; case 0xca: // float a.acceptFloat(in.getFloat()); + incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcb: // double a.acceptDouble(in.getDouble()); + incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcc: // unsigned int 8 a.acceptUnsignedInteger(in.getByte()); + incrMessageSizeOne(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcd: // unsigned int 16 a.acceptUnsignedInteger(in.getShort()); + incrMessageSizeTwo(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xce: // unsigned int 32 a.acceptUnsignedInteger(in.getInt()); + incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcf: // unsigned int 64 a.acceptUnsignedInteger(in.getLong()); + incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd0: // signed int 8 a.acceptInteger(in.getByte()); + incrMessageSizeOne(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd1: // signed int 16 a.acceptInteger(in.getShort()); + incrMessageSizeTwo(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd2: // signed int 32 a.acceptInteger(in.getInt()); + incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd3: // signed int 64 a.acceptInteger(in.getLong()); + incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xda: // raw 16 { int count = in.getShort() & 0xffff; + incrMessageSizeTwo(); if (count == 0) { a.acceptEmptyRaw(); in.advance(); @@ -218,12 +235,14 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti a.acceptRaw(raw); raw = null; } + incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } case 0xdb: // raw 32 { int count = in.getInt(); + incrMessageSizeFour(); if (count < 0) { throw new IOException("Raw size too large"); // TODO error MessageSizeException } @@ -239,12 +258,14 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti a.acceptRaw(raw); raw = null; } + incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } case 0xdc: // array 16 { int count = in.getShort() & 0xffff; + incrMessageSizeTwo(); a.acceptArray(count); stack.reduceCount(); stack.pushArray(count); @@ -255,6 +276,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdd: // array 32 { int count = in.getInt(); + incrMessageSizeFour(); if (count < 0) { throw new IOException("Array size too large"); // TODO error MessageSizeException } @@ -268,6 +290,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xde: // map 16 { int count = in.getShort() & 0xffff; + incrMessageSizeTwo(); a.acceptMap(count); stack.reduceCount(); stack.pushMap(count); @@ -278,6 +301,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); + incrMessageSizeFour(); if (count < 0) { throw new IOException("Map size too large"); // TODO error MessageSizeException } @@ -319,6 +343,7 @@ protected boolean tryReadNil() throws IOException { stack.checkCount(); int b = getHeadByte() & 0xff; if (b == 0xc0) { + incrMessageSizeOne(); // nil is read stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -337,6 +362,7 @@ public boolean trySkipNil() throws IOException { int b = getHeadByte() & 0xff; if (b == 0xc0) { + incrMessageSizeOne(); // nil is skipped stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -351,6 +377,7 @@ public void readNil() throws IOException { // optimized not to allocate nilAccept stack.checkCount(); int b = getHeadByte() & 0xff; + incrMessageSizeOne(); if (b == 0xc0) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -364,6 +391,7 @@ public boolean readBoolean() throws IOException { // optimized not to allocate booleanAccept stack.checkCount(); int b = getHeadByte() & 0xff; + incrMessageSizeOne(); if (b == 0xc2) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -557,15 +585,5 @@ public void reset() { public void close() throws IOException { in.close(); } - - @Override - public long getLastMessageSize() {// FIXME #MN - return in.getSize(); - } - - @Override - public void setMessageSizeLimit(long size) {// FIXME #MN - in.resetSize(); - } } From d67f5ebe7196a38dc388a6b9a2e528236a4646f1 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 3 Nov 2011 19:51:33 +0900 Subject: [PATCH 252/409] MessagePackUnpacker: fixes timing of resetMessageSize --- .../msgpack/unpacker/MessagePackUnpacker.java | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index c151de6f2..446be2bcb 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -68,11 +68,16 @@ private byte getHeadByte() throws IOException { return b; } - final void readOne(Accept a) throws IOException { + private void checkStackCount() { + // throws MessageTypeException if stack is invalid int depth = stack.checkCount(); if (depth == 0) { resetMessageSize(); } + } + + final void readOne(Accept a) throws IOException { + checkStackCount(); if (readOneWithoutStack(a)) { stack.reduceCount(); } @@ -340,7 +345,7 @@ private void readRawBodyCont() throws IOException { @Override protected boolean tryReadNil() throws IOException { - stack.checkCount(); + checkStackCount(); int b = getHeadByte() & 0xff; if (b == 0xc0) { incrMessageSizeOne(); @@ -375,7 +380,7 @@ public boolean trySkipNil() throws IOException { @Override public void readNil() throws IOException { // optimized not to allocate nilAccept - stack.checkCount(); + checkStackCount(); int b = getHeadByte() & 0xff; incrMessageSizeOne(); if (b == 0xc0) { @@ -389,7 +394,7 @@ public void readNil() throws IOException { @Override public boolean readBoolean() throws IOException { // optimized not to allocate booleanAccept - stack.checkCount(); + checkStackCount(); int b = getHeadByte() & 0xff; incrMessageSizeOne(); if (b == 0xc2) { @@ -407,7 +412,7 @@ public boolean readBoolean() throws IOException { @Override public byte readByte() throws IOException { // optimized not to allocate byteAccept - stack.checkCount(); + checkStackCount(); readOneWithoutStack(intAccept); int value = intAccept.value; if (value < (int)Byte.MIN_VALUE || value > (int)Byte.MAX_VALUE) { @@ -420,7 +425,7 @@ public byte readByte() throws IOException { @Override public short readShort() throws IOException { // optimized not to allocate shortAccept - stack.checkCount(); + checkStackCount(); readOneWithoutStack(intAccept); int value = intAccept.value; if (value < (int)Short.MIN_VALUE || value > (int)Short.MAX_VALUE) { @@ -527,7 +532,7 @@ protected void readValue(Unconverter uc) throws IOException { } valueAccept.setUnconverter(uc); - stack.checkCount(); + checkStackCount(); if (readOneWithoutStack(valueAccept)) { stack.reduceCount(); if (uc.getResult() != null) { @@ -557,7 +562,7 @@ protected void readValue(Unconverter uc) throws IOException { @Override public void skip() throws IOException { - stack.checkCount(); + checkStackCount(); if (readOneWithoutStack(skipAccept)) { stack.reduceCount(); return; From d0bcf70e1d7d460c0ebd873cbc0bae95f5d78460 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 22:34:43 +0900 Subject: [PATCH 253/409] improved programs for getting size of read bytes --- .../java/org/msgpack/io/AbstractInput.java | 40 +++++++++++++ src/main/java/org/msgpack/io/Input.java | 4 ++ .../org/msgpack/io/LinkedBufferInput.java | 32 ++++++---- src/main/java/org/msgpack/io/StreamInput.java | 13 ++-- .../msgpack/unpacker/AbstractUnpacker.java | 32 +--------- .../java/org/msgpack/unpacker/Converter.java | 2 +- .../msgpack/unpacker/MessagePackUnpacker.java | 59 ++++++------------- .../java/org/msgpack/unpacker/Unpacker.java | 5 +- .../org/msgpack/unpacker/UnpackerStack.java | 8 +-- 9 files changed, 99 insertions(+), 96 deletions(-) create mode 100644 src/main/java/org/msgpack/io/AbstractInput.java diff --git a/src/main/java/org/msgpack/io/AbstractInput.java b/src/main/java/org/msgpack/io/AbstractInput.java new file mode 100644 index 000000000..143269965 --- /dev/null +++ b/src/main/java/org/msgpack/io/AbstractInput.java @@ -0,0 +1,40 @@ +// +// MessagePack for Java +// +// Copyright (C) 2011 Muga Nishizawa +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.io; + + +abstract class AbstractInput implements Input { + + private long count = 0; + + public long getReadByteCount() { + return count; + } + + public void resetReadByteCount() { + count = 0; + } + + protected final void incrReadByteCount(long size) { + count += size; + } + + protected final void incrReadOneByteCount() { + count += 1; + } +} diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 100059353..ca6f1abfe 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -41,5 +41,9 @@ public interface Input extends Closeable { public float getFloat() throws IOException; public double getDouble() throws IOException; + + public long getReadByteCount(); + + public void resetReadByteCount(); } diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index dbd3e5747..b9f7887dd 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -23,7 +23,7 @@ import java.nio.ByteBuffer; -public class LinkedBufferInput implements Input { +public class LinkedBufferInput extends AbstractInput {// FIXME #MN private LinkedList link; private int writable; @@ -49,17 +49,19 @@ public int read(byte[] b, int off, int len) throws EOFException { return 0; } int olen = len; - while(true) { + while (true) { ByteBuffer bb = link.peekFirst(); - if(len < bb.remaining()) { + if (len < bb.remaining()) { bb.get(b, off, len); + incrReadByteCount(len); return olen; } int rem = bb.remaining(); bb.get(b, off, rem); + incrReadByteCount(rem); len -= rem; off += rem; - if(!removeFirstLink(bb)) { + if (!removeFirstLink(bb)) { break; } } @@ -68,26 +70,27 @@ public int read(byte[] b, int off, int len) throws EOFException { public boolean tryRefer(BufferReferer ref, int len) throws IOException { ByteBuffer bb = link.peekFirst(); - if(bb == null) { + if (bb == null) { throw new EndOfBufferException(); - } else if(bb.remaining() < len) { + } else if (bb.remaining() < len) { return false; } boolean success = false; int pos = bb.position(); int lim = bb.limit(); try { - bb.limit(pos+len); + bb.limit(pos + len); ref.refer(bb, true); + this.incrReadByteCount(len); success = true; } finally { bb.limit(lim); - if(success) { - bb.position(pos+len); + if (success) { + bb.position(pos + len); } else { bb.position(pos); } - if(bb.remaining() == 0) { + if (bb.remaining() == 0) { removeFirstLink(bb); } } @@ -96,10 +99,11 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { public byte readByte() throws EOFException { ByteBuffer bb = link.peekFirst(); - if(bb == null || bb.remaining() == 0) { + if (bb == null || bb.remaining() == 0) { throw new EndOfBufferException(); } byte result = bb.get(); + incrReadOneByteCount(); if(bb.remaining() == 0) { removeFirstLink(bb); } @@ -146,8 +150,8 @@ private boolean removeFirstLink(ByteBuffer first) { private void requireMore(int n) throws EOFException { int off = 0; - for(ByteBuffer bb : link) { - if(n <= bb.remaining()) { + for (ByteBuffer bb : link) { + if (n <= bb.remaining()) { int pos = bb.position(); bb.get(tmpBuffer, off, n); bb.position(pos); @@ -170,9 +174,11 @@ private ByteBuffer require(int n) throws EOFException { } if(n <= bb.remaining()) { nextAdvance = n; + incrReadByteCount(n); return bb; } else { requireMore(n); + incrReadByteCount(n); nextAdvance = n; return tmpByteBuffer; } diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index 018d15e2d..b34fe8ddb 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -23,7 +23,7 @@ import java.io.EOFException; -public class StreamInput implements Input { +public class StreamInput extends AbstractInput {// FIXME #MN private final InputStream in; private byte[] castBuffer; @@ -39,9 +39,10 @@ public StreamInput(InputStream in) { public int read(byte[] b, int off, int len) throws IOException { int remain = len; - while(remain > 0) { + while (remain > 0) { int n = in.read(b, off, remain); - if(n <= 0) { + incrReadByteCount(remain); + if (n <= 0) { throw new EOFException(); } remain -= n; @@ -56,6 +57,7 @@ public boolean tryRefer(BufferReferer ref, int size) throws IOException { public byte readByte() throws IOException { int n = in.read(); + incrReadOneByteCount(); if(n < 0) { throw new EOFException(); } @@ -67,9 +69,10 @@ public void advance() { } private void require(int len) throws IOException { - while(filled < len) { + while (filled < len) { int n = in.read(castBuffer, filled, len - filled); - if(n < 0) { + incrReadByteCount(len - filled); + if (n < 0) { throw new EOFException(); } filled += n; diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 697e8fbae..6e3cabded 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -28,8 +28,6 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; - protected long messageSize; - protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; } @@ -104,35 +102,11 @@ public T read(T to, Template tmpl) throws IOException { return (T) tmpl.read(this, to); } - public long getLastMessageSize() { - return messageSize; - } - - public void setMessageSizeLimit(long size) { + public long getReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } - protected void incrMessageSize(long size) { - messageSize += size; - } - - protected void incrMessageSizeOne() { - messageSize += 1; - } - - protected void incrMessageSizeTwo() { - messageSize += 2; - } - - protected void incrMessageSizeFour() { - messageSize += 4; - } - - protected void incrMessageSizeEight() { - messageSize += 8; - } - - protected void resetMessageSize() { - messageSize = 0; + public void resetReadByteCount() { + throw new UnsupportedOperationException("Not implemented yet"); } } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index c9805d008..32cb00f19 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -408,7 +408,7 @@ public void close() throws IOException { } @Override - public long getLastMessageSize() { + public long getReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 446be2bcb..a1855b005 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -68,16 +68,8 @@ private byte getHeadByte() throws IOException { return b; } - private void checkStackCount() { - // throws MessageTypeException if stack is invalid - int depth = stack.checkCount(); - if (depth == 0) { - resetMessageSize(); - } - } - final void readOne(Accept a) throws IOException { - checkStackCount(); + stack.checkCount(); if (readOneWithoutStack(a)) { stack.reduceCount(); } @@ -87,14 +79,12 @@ final boolean readOneWithoutStack(Accept a) throws IOException { if (raw != null) { readRawBodyCont(); a.acceptRaw(raw); - incrMessageSize(raw.length); raw = null; headByte = REQUIRE_TO_READ_HEAD; return true; } final int b = (int)getHeadByte(); - incrMessageSizeOne(); if ((b & 0x80) == 0) { // Positive Fixnum //System.out.println("positive fixnum "+b); @@ -122,7 +112,6 @@ final boolean readOneWithoutStack(Accept a) throws IOException { a.acceptRaw(raw); raw = null; } - incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } @@ -166,68 +155,57 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti return true; case 0xca: // float a.acceptFloat(in.getFloat()); - incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcb: // double a.acceptDouble(in.getDouble()); - incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcc: // unsigned int 8 a.acceptUnsignedInteger(in.getByte()); - incrMessageSizeOne(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcd: // unsigned int 16 a.acceptUnsignedInteger(in.getShort()); - incrMessageSizeTwo(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xce: // unsigned int 32 a.acceptUnsignedInteger(in.getInt()); - incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xcf: // unsigned int 64 a.acceptUnsignedInteger(in.getLong()); - incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd0: // signed int 8 a.acceptInteger(in.getByte()); - incrMessageSizeOne(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd1: // signed int 16 a.acceptInteger(in.getShort()); - incrMessageSizeTwo(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd2: // signed int 32 a.acceptInteger(in.getInt()); - incrMessageSizeFour(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xd3: // signed int 64 a.acceptInteger(in.getLong()); - incrMessageSizeEight(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; case 0xda: // raw 16 { int count = in.getShort() & 0xffff; - incrMessageSizeTwo(); if (count == 0) { a.acceptEmptyRaw(); in.advance(); @@ -240,14 +218,12 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti a.acceptRaw(raw); raw = null; } - incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } case 0xdb: // raw 32 { int count = in.getInt(); - incrMessageSizeFour(); if (count < 0) { throw new IOException("Raw size too large"); // TODO error MessageSizeException } @@ -263,14 +239,12 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti a.acceptRaw(raw); raw = null; } - incrMessageSize(count); headByte = REQUIRE_TO_READ_HEAD; return true; } case 0xdc: // array 16 { int count = in.getShort() & 0xffff; - incrMessageSizeTwo(); a.acceptArray(count); stack.reduceCount(); stack.pushArray(count); @@ -281,7 +255,6 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdd: // array 32 { int count = in.getInt(); - incrMessageSizeFour(); if (count < 0) { throw new IOException("Array size too large"); // TODO error MessageSizeException } @@ -295,7 +268,6 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xde: // map 16 { int count = in.getShort() & 0xffff; - incrMessageSizeTwo(); a.acceptMap(count); stack.reduceCount(); stack.pushMap(count); @@ -306,7 +278,6 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); - incrMessageSizeFour(); if (count < 0) { throw new IOException("Map size too large"); // TODO error MessageSizeException } @@ -345,10 +316,9 @@ private void readRawBodyCont() throws IOException { @Override protected boolean tryReadNil() throws IOException { - checkStackCount(); + stack.checkCount(); int b = getHeadByte() & 0xff; if (b == 0xc0) { - incrMessageSizeOne(); // nil is read stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -367,7 +337,6 @@ public boolean trySkipNil() throws IOException { int b = getHeadByte() & 0xff; if (b == 0xc0) { - incrMessageSizeOne(); // nil is skipped stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -380,9 +349,8 @@ public boolean trySkipNil() throws IOException { @Override public void readNil() throws IOException { // optimized not to allocate nilAccept - checkStackCount(); + stack.checkCount(); int b = getHeadByte() & 0xff; - incrMessageSizeOne(); if (b == 0xc0) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -394,9 +362,8 @@ public void readNil() throws IOException { @Override public boolean readBoolean() throws IOException { // optimized not to allocate booleanAccept - checkStackCount(); + stack.checkCount(); int b = getHeadByte() & 0xff; - incrMessageSizeOne(); if (b == 0xc2) { stack.reduceCount(); headByte = REQUIRE_TO_READ_HEAD; @@ -412,7 +379,7 @@ public boolean readBoolean() throws IOException { @Override public byte readByte() throws IOException { // optimized not to allocate byteAccept - checkStackCount(); + stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; if (value < (int)Byte.MIN_VALUE || value > (int)Byte.MAX_VALUE) { @@ -425,7 +392,7 @@ public byte readByte() throws IOException { @Override public short readShort() throws IOException { // optimized not to allocate shortAccept - checkStackCount(); + stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; if (value < (int)Short.MIN_VALUE || value > (int)Short.MAX_VALUE) { @@ -532,7 +499,7 @@ protected void readValue(Unconverter uc) throws IOException { } valueAccept.setUnconverter(uc); - checkStackCount(); + stack.checkCount(); if (readOneWithoutStack(valueAccept)) { stack.reduceCount(); if (uc.getResult() != null) { @@ -562,7 +529,7 @@ protected void readValue(Unconverter uc) throws IOException { @Override public void skip() throws IOException { - checkStackCount(); + stack.checkCount(); if (readOneWithoutStack(skipAccept)) { stack.reduceCount(); return; @@ -590,5 +557,15 @@ public void reset() { public void close() throws IOException { in.close(); } + + @Override + public long getReadByteCount() { + return in.getReadByteCount(); + } + + @Override + public void resetReadByteCount() { + in.resetReadByteCount(); + } } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index d3d5aa010..c6c0ca02f 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -87,9 +87,8 @@ public interface Unpacker extends Iterable, Closeable { public UnpackerIterator iterator(); + public long getReadByteCount(); - public long getLastMessageSize(); - - public void setMessageSizeLimit(long size); + public void resetReadByteCount(); } diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index 94c51cd82..c6ad5002f 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -51,11 +51,11 @@ public void pushMap(int size) { } /** - * @return current depth of stack + * throws MessageTypeException if stack is invalid */ - public int checkCount() { + public void checkCount() { if(counts[top] > 0) { - return getDepth(); + return; } if(types[top] == TYPE_ARRAY) { @@ -63,7 +63,7 @@ public int checkCount() { } else if(types[top] == TYPE_MAP) { throw new MessageTypeException("Map is end but readMapEnd() is not called"); } else { // empty - return getDepth(); + return; } } From 2569b98878f81175354801cfc5723c092493b246 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 22:41:45 +0900 Subject: [PATCH 254/409] refactored test programs for getting size of serialized data --- .../msgpack/TestBufferPackBufferUnpack.java | 26 ++++++------- .../org/msgpack/TestBufferPackConvert.java | 26 ++++++------- .../org/msgpack/TestBufferPackUnpack.java | 26 ++++++------- .../org/msgpack/TestPackBufferUnpack.java | 26 ++++++------- .../java/org/msgpack/TestPackConvert.java | 26 ++++++------- src/test/java/org/msgpack/TestPackUnpack.java | 26 ++++++------- ...tionalJavassistBufferPackBufferUnpack.java | 8 ++-- ...TestOptionalJavassistBufferPackUnpack.java | 8 ++-- ...TestOptionalJavassistPackBufferUnpack.java | 8 ++-- .../TestOptionalJavassistPackUnpack.java | 8 ++-- ...ionalReflectionBufferPackBufferUnpack.java | 8 ++-- ...estOptionalReflectionBufferPackUnpack.java | 8 ++-- ...estOptionalReflectionPackBufferUnpack.java | 8 ++-- .../TestOptionalReflectionPackUnpack.java | 8 ++-- .../template/TestBigDecimalTemplate.java | 8 ++-- .../template/TestBigIntegerTemplate.java | 8 ++-- .../template/TestBooleanArrayTemplate.java | 8 ++-- .../msgpack/template/TestBooleanTemplate.java | 8 ++-- .../template/TestByteArrayTemplate.java | 8 ++-- .../template/TestByteBufferTemplate.java | 8 ++-- .../template/TestCharacterTemplate.java | 8 ++-- .../msgpack/template/TestDateTemplate.java | 8 ++-- .../template/TestDoubleArrayTemplate.java | 8 ++-- .../msgpack/template/TestDoubleTemplate.java | 8 ++-- .../template/TestFloatArrayTemplate.java | 8 ++-- .../msgpack/template/TestFloatTemplate.java | 8 ++-- .../template/TestIntegerArrayTemplate.java | 8 ++-- .../msgpack/template/TestIntegerTemplate.java | 8 ++-- .../msgpack/template/TestListTemplate.java | 8 ++-- .../template/TestLongArrayTemplate.java | 8 ++-- .../msgpack/template/TestLongTemplate.java | 8 ++-- .../org/msgpack/template/TestMapTemplate.java | 8 ++-- .../template/TestShortArrayTemplate.java | 8 ++-- .../msgpack/template/TestShortTemplate.java | 8 ++-- .../msgpack/template/TestStringTemplate.java | 8 ++-- .../TestJavassistBufferPackBufferUnpack.java | 38 +++++++++---------- .../TestJavassistBufferPackConvert.java | 38 +++++++++---------- .../TestJavassistBufferPackUnpack.java | 38 +++++++++---------- .../TestJavassistPackBufferUnpack.java | 38 +++++++++---------- .../builder/TestJavassistPackUnpack.java | 38 +++++++++---------- ...TestOrdinalEnumBufferPackBufferUnpack.java | 4 +- .../TestOrdinalEnumBufferPackConvert.java | 4 +- .../TestOrdinalEnumBufferPackUnpack.java | 4 +- .../TestOrdinalEnumPackBufferUnpack.java | 4 +- .../builder/TestOrdinalEnumPackConvert.java | 4 +- .../builder/TestOrdinalEnumPackUnpack.java | 4 +- ...ReflectionBeansBufferPackBufferUnpack.java | 38 +++++++++---------- .../TestReflectionBeansBufferPackConvert.java | 38 +++++++++---------- .../TestReflectionBeansBufferPackUnpack.java | 38 +++++++++---------- .../TestReflectionBeansPackBufferUnpack.java | 38 +++++++++---------- .../TestReflectionBeansPackConvert.java | 38 +++++++++---------- .../TestReflectionBeansPackUnpack.java | 38 +++++++++---------- .../TestReflectionBufferPackBufferUnpack.java | 38 +++++++++---------- .../TestReflectionBufferPackConvert.java | 38 +++++++++---------- .../TestReflectionBufferPackUnpack.java | 38 +++++++++---------- .../TestReflectionPackBufferUnpack.java | 38 +++++++++---------- .../builder/TestReflectionPackConvert.java | 38 +++++++++---------- .../builder/TestReflectionPackUnpack.java | 38 +++++++++---------- 58 files changed, 529 insertions(+), 529 deletions(-) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index b247f207d..9da07bf38 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -31,7 +31,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -48,7 +48,7 @@ public void testByte(byte v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -65,7 +65,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -82,7 +82,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -99,7 +99,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -116,7 +116,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -133,7 +133,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -144,7 +144,7 @@ public void testNil() throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -161,7 +161,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -178,7 +178,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -195,7 +195,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -234,7 +234,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -275,6 +275,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index fb99c4998..a9099661e 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -36,7 +36,7 @@ public void testBoolean(boolean v) throws Exception { assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -55,7 +55,7 @@ public void testByte(byte v) throws Exception { assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testShort(short v) throws Exception { assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -93,7 +93,7 @@ public void testInteger(int v) throws Exception { assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -112,7 +112,7 @@ public void testLong(long v) throws Exception { assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -131,7 +131,7 @@ public void testFloat(float v) throws Exception { assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -150,7 +150,7 @@ public void testDouble(double v) throws Exception { assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -163,7 +163,7 @@ public void testNil() throws Exception { Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -181,7 +181,7 @@ public void testBigInteger(BigInteger v) throws Exception { Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -199,7 +199,7 @@ public void testString(String v) throws Exception { Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -217,7 +217,7 @@ public void testByteArray(byte[] v) throws Exception { Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -257,7 +257,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -300,6 +300,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index f310b76a8..9f449b16f 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -32,7 +32,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -49,7 +49,7 @@ public void testByte(byte v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte ret = unpacker.readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -66,7 +66,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = unpacker.readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -83,7 +83,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = unpacker.readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -100,7 +100,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = unpacker.readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -117,7 +117,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -134,7 +134,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -145,7 +145,7 @@ public void testNil() throws Exception { byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); unpacker.readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -162,7 +162,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -179,7 +179,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = unpacker.read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -196,7 +196,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -235,7 +235,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -276,6 +276,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/TestPackBufferUnpack.java b/src/test/java/org/msgpack/TestPackBufferUnpack.java index ded9e313d..4d460d1f5 100644 --- a/src/test/java/org/msgpack/TestPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestPackBufferUnpack.java @@ -33,7 +33,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -51,7 +51,7 @@ public void testByte(byte v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte ret = unpacker.readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -69,7 +69,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = unpacker.readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -87,7 +87,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = unpacker.readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -105,7 +105,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = unpacker.readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -123,7 +123,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -141,7 +141,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -153,7 +153,7 @@ public void testNil() throws Exception { byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); unpacker.readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -171,7 +171,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -189,7 +189,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -207,7 +207,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -247,7 +247,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -289,6 +289,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 96d8cc81e..5afc9e200 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -41,7 +41,7 @@ public void testBoolean(boolean v) throws Exception { assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -61,7 +61,7 @@ public void testByte(byte v) throws Exception { assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -81,7 +81,7 @@ public void testShort(short v) throws Exception { assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -101,7 +101,7 @@ public void testInteger(int v) throws Exception { assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -121,7 +121,7 @@ public void testLong(long v) throws Exception { assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -141,7 +141,7 @@ public void testFloat(float v) throws Exception { assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -161,7 +161,7 @@ public void testDouble(double v) throws Exception { assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -175,7 +175,7 @@ public void testNil() throws Exception { Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -194,7 +194,7 @@ public void testBigInteger(BigInteger v) throws Exception { Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -213,7 +213,7 @@ public void testString(String v) throws Exception { Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -232,7 +232,7 @@ public void testByteArray(byte[] v) throws Exception { Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -273,7 +273,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -317,7 +317,7 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index 6a1809ea8..8d94398a8 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -35,7 +35,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -54,7 +54,7 @@ public void testByte(byte v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); byte ret = unpacker.readByte(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -73,7 +73,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); short ret = unpacker.readShort(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -92,7 +92,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); int ret = unpacker.readInt(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -111,7 +111,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); long ret = unpacker.readLong(); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Override @@ -125,7 +125,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -144,7 +144,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -157,7 +157,7 @@ public void testNil() throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); unpacker.readNil(); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -176,7 +176,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -195,7 +195,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); String ret = unpacker.read(String.class); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -214,7 +214,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(in); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -255,7 +255,7 @@ public void testList(List v, Class elementClass) throws Exception { while (v_iter.hasNext()) { assertEquals(v_iter.next(), ret_iter.next()); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -298,6 +298,6 @@ public void testMap(Map v, Class keyElementClass, Class value Object value = ret.get(e.getKey()); assertEquals(e.getValue(), value); } - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java index c06c838c8..1513fe38c 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java @@ -33,7 +33,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -54,7 +54,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -75,7 +75,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -96,7 +96,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java index 1c5445a83..67842441b 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java @@ -32,7 +32,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -52,7 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -72,7 +72,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -92,7 +92,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java index f46917487..56e1b6c61 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java @@ -32,7 +32,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -52,7 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -72,7 +72,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -92,7 +92,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java index ab60dcfd0..2e280e962 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java @@ -34,7 +34,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -55,7 +55,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -76,7 +76,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -97,7 +97,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java index bc5d97b31..1debf4f56 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java @@ -33,7 +33,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -54,7 +54,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -75,7 +75,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -96,7 +96,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java index fcc981acc..4fde8d4c9 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java @@ -32,7 +32,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -52,7 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -72,7 +72,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -92,7 +92,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java index c21881d37..ca8aff7a1 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java @@ -32,7 +32,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -52,7 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -72,7 +72,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -92,7 +92,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java index 0fe220870..a0b26b695 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java @@ -34,7 +34,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage01 dst = tmpl01.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -55,7 +55,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage02 dst = tmpl02.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -76,7 +76,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } @@ -97,7 +97,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); MyMessage03 dst = tmpl03.read(unpacker, null); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; } } diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index 2b879d82e..c5a61cd3a 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -54,7 +54,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -75,7 +75,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -95,7 +95,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -115,7 +115,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index d3584b3bd..84aecd39b 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -54,7 +54,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -75,7 +75,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -95,7 +95,7 @@ public void testBigInteger(BigInteger v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -115,7 +115,7 @@ public void testBigInteger(BigInteger v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index 4141ce80d..72ad4810b 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -121,7 +121,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -218,7 +218,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -266,7 +266,7 @@ public void testBooleanArray(boolean[] v) throws Exception { } boolean[] ret = tmpl.read(unpacker, ret0); assertBooleanArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index d7e43daa2..13188907a 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -53,7 +53,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testBoolean(boolean v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testBoolean(boolean v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index a113709f6..b482b8a1b 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -54,7 +54,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -75,7 +75,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -95,7 +95,7 @@ public void testByteArray(byte[] v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -115,7 +115,7 @@ public void testByteArray(byte[] v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 91d310cce..592174619 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -64,7 +64,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -85,7 +85,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -105,7 +105,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -125,7 +125,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestCharacterTemplate.java b/src/test/java/org/msgpack/template/TestCharacterTemplate.java index 2e1847168..e7e1a5ac7 100644 --- a/src/test/java/org/msgpack/template/TestCharacterTemplate.java +++ b/src/test/java/org/msgpack/template/TestCharacterTemplate.java @@ -52,7 +52,7 @@ public void testCharacter(Character v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -73,7 +73,7 @@ public void testCharacter(Character v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -93,7 +93,7 @@ public void testCharacter(Character v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -113,7 +113,7 @@ public void testCharacter(Character v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index fe90ac4ce..2c89ca03c 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -54,7 +54,7 @@ public void testDate(Date v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -75,7 +75,7 @@ public void testDate(Date v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -95,7 +95,7 @@ public void testDate(Date v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -115,7 +115,7 @@ public void testDate(Date v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index a0443c945..a0c7f1830 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -121,7 +121,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -218,7 +218,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -266,7 +266,7 @@ public void testDoubleArray(double[] v) throws Exception { } double[] ret = tmpl.read(unpacker, ret0); assertDoubleArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index bbb5387a6..82bb40023 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -53,7 +53,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testDouble(double v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testDouble(double v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index ba620b43b..c050a8439 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -121,7 +121,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -219,7 +219,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -267,7 +267,7 @@ public void testFloatArray(float[] v) throws Exception { } float[] ret = tmpl.read(unpacker, ret0); assertFloatArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index 1375c9e1a..a7adebf5a 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -53,7 +53,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testFloat(float v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testFloat(float v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 7b1e7abcd..07d0492fb 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -121,7 +121,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -218,7 +218,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -266,7 +266,7 @@ public void testIntegerArray(int[] v) throws Exception { } int[] ret = tmpl.read(unpacker, ret0); assertIntegerArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index a486cbc48..8744a6744 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -53,7 +53,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testInteger(int v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testInteger(int v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 02ba5a164..4c2bb1497 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -55,7 +55,7 @@ public void testList(List v, Class elementClass) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -77,7 +77,7 @@ public void testList(List v, Class elementClass) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -98,7 +98,7 @@ public void testList(List v, Class elementClass) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -119,7 +119,7 @@ public void testList(List v, Class elementClass) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index a181ad37b..5549d7256 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -121,7 +121,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -218,7 +218,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -266,7 +266,7 @@ public void testLongArray(long[] v) throws Exception { } long[] ret = tmpl.read(unpacker, ret0); assertLongArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index 35bf66015..44e3a38e2 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -53,7 +53,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testLong(long v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testLong(long v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index 1b31c3fb4..e7c5de07a 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -56,7 +56,7 @@ public void testMap(Map v, Class keyElementClass, Class value Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -79,7 +79,7 @@ public void testMap(Map v, Class keyElementClass, Class value BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -101,7 +101,7 @@ public void testMap(Map v, Class keyElementClass, Class value BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -123,7 +123,7 @@ public void testMap(Map v, Class keyElementClass, Class value Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index f4810b13f..0304a8aa3 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -121,7 +121,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -170,7 +170,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -218,7 +218,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -266,7 +266,7 @@ public void testShortArray(short[] v) throws Exception { } short[] ret = tmpl.read(unpacker, ret0); assertShortArrayEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index 41be677d4..173deae05 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -53,7 +53,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testShort(short v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testShort(short v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index c3e0dedd4..62b823d77 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -53,7 +53,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -74,7 +74,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -94,7 +94,7 @@ public void testString(String v) throws Exception { BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } @@ -114,7 +114,7 @@ public void testString(String v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 833853dd4..29c134ab9 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -53,7 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -95,7 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -137,7 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -158,7 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -179,7 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -200,7 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -221,7 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -265,7 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -286,7 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -307,7 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -328,7 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -370,7 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -391,7 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -412,7 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -433,7 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -454,7 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index ccb15240e..05f9d9fa6 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -57,7 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -80,7 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -126,7 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -149,7 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -172,7 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -195,7 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -218,7 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -241,7 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -287,7 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -333,7 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -356,7 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -379,7 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -402,7 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -425,7 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -448,7 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -471,7 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -494,7 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index 89b03aa62..75c3bbbd4 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -54,7 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -94,7 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -114,7 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -134,7 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -154,7 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -174,7 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -194,7 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -214,7 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -257,7 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -297,7 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -317,7 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -337,7 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -357,7 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -377,7 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -397,7 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -417,7 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -437,7 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 337ac3671..59ddb47b1 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -78,7 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -100,7 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -122,7 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -144,7 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -166,7 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -188,7 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -210,7 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -232,7 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -299,7 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -321,7 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -343,7 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -365,7 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -387,7 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -409,7 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -431,7 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -453,7 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -475,7 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index f1d67bb28..ba2b90fe8 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -77,7 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -98,7 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -119,7 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -140,7 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -161,7 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -182,7 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -203,7 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -224,7 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -268,7 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -289,7 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -331,7 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -352,7 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -373,7 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -394,7 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -415,7 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -436,7 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -457,7 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index a394a7cda..d4106e585 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -34,7 +34,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -57,6 +57,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index 3132f8f99..827a71452 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -38,7 +38,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -63,6 +63,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index 8d3a41416..e7f999152 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -35,7 +35,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -57,6 +57,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index fcf65fbb7..58bc3d3c1 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -37,7 +37,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -61,6 +61,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index 27211c9ca..ecfddc9c0 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -41,7 +41,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -67,6 +67,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index 5c530a4ba..6c3947ec5 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -37,7 +37,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -60,6 +60,6 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 23d32ed75..0e52e74fc 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -53,7 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -95,7 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -137,7 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -158,7 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -179,7 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -200,7 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -221,7 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -265,7 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -286,7 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -307,7 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -328,7 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -370,7 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -391,7 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -412,7 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -433,7 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -454,7 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index 7773109fd..59db1c6b3 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -57,7 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -80,7 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -126,7 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -149,7 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -172,7 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -195,7 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -218,7 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -241,7 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -287,7 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -333,7 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -356,7 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -379,7 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -402,7 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -425,7 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -448,7 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -471,7 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -494,7 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index 8352a0925..08b07bd5d 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -54,7 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -94,7 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -114,7 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -134,7 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -154,7 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -174,7 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -194,7 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -214,7 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -257,7 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -297,7 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -317,7 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -337,7 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -357,7 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -377,7 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -397,7 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -417,7 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -437,7 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index 22b015194..5bd161b76 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -78,7 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -100,7 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -122,7 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -144,7 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -166,7 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -188,7 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -210,7 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -232,7 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -299,7 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -321,7 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -343,7 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -365,7 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -387,7 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -409,7 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -431,7 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -453,7 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -475,7 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index a5b4c19a2..c8dc9790f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -60,7 +60,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -84,7 +84,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -108,7 +108,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -132,7 +132,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -156,7 +156,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -180,7 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -204,7 +204,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -228,7 +228,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -252,7 +252,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -299,7 +299,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -323,7 +323,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -347,7 +347,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -371,7 +371,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -395,7 +395,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -419,7 +419,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -443,7 +443,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -467,7 +467,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -491,7 +491,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -515,7 +515,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 3305a0af7..85b81f971 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -77,7 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -98,7 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -119,7 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -140,7 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -161,7 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -182,7 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -203,7 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -224,7 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -268,7 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -289,7 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -331,7 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -352,7 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -373,7 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -394,7 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -415,7 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -436,7 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -457,7 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 48546871a..1a35d4026 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -53,7 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -95,7 +95,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -116,7 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -137,7 +137,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -158,7 +158,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -179,7 +179,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -200,7 +200,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -221,7 +221,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -265,7 +265,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -286,7 +286,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -307,7 +307,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -328,7 +328,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -349,7 +349,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -370,7 +370,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -391,7 +391,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -412,7 +412,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -433,7 +433,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -454,7 +454,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index 215671672..863665d5b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -57,7 +57,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -80,7 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -103,7 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -126,7 +126,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -149,7 +149,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -172,7 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -195,7 +195,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -218,7 +218,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -241,7 +241,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -287,7 +287,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -333,7 +333,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -356,7 +356,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -379,7 +379,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -402,7 +402,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -425,7 +425,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -448,7 +448,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -471,7 +471,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -494,7 +494,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index 582d20691..dc7e3822f 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -54,7 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -74,7 +74,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -94,7 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -114,7 +114,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -134,7 +134,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -154,7 +154,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -174,7 +174,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -194,7 +194,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -214,7 +214,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -257,7 +257,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -297,7 +297,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -317,7 +317,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -337,7 +337,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -357,7 +357,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -377,7 +377,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -397,7 +397,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -417,7 +417,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -437,7 +437,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index 799024ce3..f53f6afce 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -78,7 +78,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -100,7 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -122,7 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -144,7 +144,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -166,7 +166,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -188,7 +188,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -210,7 +210,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -232,7 +232,7 @@ public void testFinalClass(FinalClass v) throws Exception { unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -277,7 +277,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -299,7 +299,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -321,7 +321,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -343,7 +343,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -365,7 +365,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -387,7 +387,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -409,7 +409,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -431,7 +431,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -453,7 +453,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -475,7 +475,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index abfc62294..490c33e0c 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -60,7 +60,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -84,7 +84,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Converter unpacker = new Converter(value); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -108,7 +108,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Converter unpacker = new Converter(value); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -132,7 +132,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Converter unpacker = new Converter(value); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -156,7 +156,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -180,7 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Converter unpacker = new Converter(value); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -204,7 +204,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Converter unpacker = new Converter(value); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -228,7 +228,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Converter unpacker = new Converter(value); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -252,7 +252,7 @@ public void testFinalClass(FinalClass v) throws Exception { Converter unpacker = new Converter(value); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -299,7 +299,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Converter unpacker = new Converter(value); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -323,7 +323,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Converter unpacker = new Converter(value); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -347,7 +347,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Converter unpacker = new Converter(value); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -371,7 +371,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Converter unpacker = new Converter(value); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -395,7 +395,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -419,7 +419,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Converter unpacker = new Converter(value); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -443,7 +443,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Converter unpacker = new Converter(value); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -467,7 +467,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Converter unpacker = new Converter(value); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -491,7 +491,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Converter unpacker = new Converter(value); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } @Test @Override @@ -515,7 +515,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Converter unpacker = new Converter(value); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, u.getLastMessageSize()); + assertEquals(bytes.length, u.getReadByteCount()); } } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index 71f0ad2f4..389675193 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -56,7 +56,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -77,7 +77,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -98,7 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -119,7 +119,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -140,7 +140,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -161,7 +161,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -182,7 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -203,7 +203,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -224,7 +224,7 @@ public void testFinalClass(FinalClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -268,7 +268,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -289,7 +289,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -310,7 +310,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -331,7 +331,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -352,7 +352,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -373,7 +373,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -394,7 +394,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -415,7 +415,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -436,7 +436,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } @Test @Override @@ -457,7 +457,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); - assertEquals(bytes.length, unpacker.getLastMessageSize()); + assertEquals(bytes.length, unpacker.getReadByteCount()); } } From 254b9a0e7dca77630bab00f1ce673e5cc9c93bf8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 22:54:52 +0900 Subject: [PATCH 255/409] refined LinkedBufferInput and StreamInput classes --- src/main/java/org/msgpack/io/LinkedBufferInput.java | 7 +++---- src/main/java/org/msgpack/io/StreamInput.java | 8 ++++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index b9f7887dd..a390d8715 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -23,7 +23,7 @@ import java.nio.ByteBuffer; -public class LinkedBufferInput extends AbstractInput {// FIXME #MN +public class LinkedBufferInput extends AbstractInput { private LinkedList link; private int writable; @@ -81,7 +81,7 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { try { bb.limit(pos + len); ref.refer(bb, true); - this.incrReadByteCount(len); + incrReadByteCount(len); success = true; } finally { bb.limit(lim); @@ -127,6 +127,7 @@ public void advance() { break; } } + incrReadByteCount(nextAdvance); nextAdvance = 0; } @@ -174,11 +175,9 @@ private ByteBuffer require(int n) throws EOFException { } if(n <= bb.remaining()) { nextAdvance = n; - incrReadByteCount(n); return bb; } else { requireMore(n); - incrReadByteCount(n); nextAdvance = n; return tmpByteBuffer; } diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index b34fe8ddb..8f0308b81 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -23,7 +23,7 @@ import java.io.EOFException; -public class StreamInput extends AbstractInput {// FIXME #MN +public class StreamInput extends AbstractInput { private final InputStream in; private byte[] castBuffer; @@ -41,10 +41,10 @@ public int read(byte[] b, int off, int len) throws IOException { int remain = len; while (remain > 0) { int n = in.read(b, off, remain); - incrReadByteCount(remain); if (n <= 0) { throw new EOFException(); } + incrReadByteCount(n); remain -= n; off += n; } @@ -57,10 +57,10 @@ public boolean tryRefer(BufferReferer ref, int size) throws IOException { public byte readByte() throws IOException { int n = in.read(); - incrReadOneByteCount(); if(n < 0) { throw new EOFException(); } + incrReadOneByteCount(); return (byte)n; } @@ -71,10 +71,10 @@ public void advance() { private void require(int len) throws IOException { while (filled < len) { int n = in.read(castBuffer, filled, len - filled); - incrReadByteCount(len - filled); if (n < 0) { throw new EOFException(); } + incrReadByteCount(n); filled += n; } } From 64816074241cab0ae2106450f768dec747180255 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 3 Nov 2011 23:04:43 +0900 Subject: [PATCH 256/409] refactored StreamInput class again --- src/main/java/org/msgpack/io/StreamInput.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index 8f0308b81..da5f56a36 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -65,6 +65,7 @@ public byte readByte() throws IOException { } public void advance() { + incrReadByteCount(filled); filled = 0; } @@ -74,7 +75,6 @@ private void require(int len) throws IOException { if (n < 0) { throw new EOFException(); } - incrReadByteCount(n); filled += n; } } From 5d6e77a7fb97bdc722ac55211a8d4c114431c901 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 00:24:11 +0900 Subject: [PATCH 257/409] refactored test programs --- .../msgpack/TestBufferPackBufferUnpack.java | 13 +++++++++++++ .../org/msgpack/TestBufferPackConvert.java | 13 +++++++++++++ .../org/msgpack/TestBufferPackUnpack.java | 13 +++++++++++++ .../java/org/msgpack/TestPackConvert.java | 13 +++++++++++++ src/test/java/org/msgpack/TestPackUnpack.java | 13 +++++++++++++ ...tionalJavassistBufferPackBufferUnpack.java | 4 ++++ ...TestOptionalJavassistBufferPackUnpack.java | 4 ++++ ...TestOptionalJavassistPackBufferUnpack.java | 4 ++++ .../TestOptionalJavassistPackUnpack.java | 4 ++++ ...ionalReflectionBufferPackBufferUnpack.java | 4 ++++ ...estOptionalReflectionBufferPackUnpack.java | 4 ++++ ...estOptionalReflectionPackBufferUnpack.java | 4 ++++ .../TestOptionalReflectionPackUnpack.java | 4 ++++ .../template/TestBigDecimalTemplate.java | 4 ++++ .../template/TestBigIntegerTemplate.java | 4 ++++ .../template/TestBooleanArrayTemplate.java | 4 ++++ .../msgpack/template/TestBooleanTemplate.java | 4 ++++ .../template/TestByteArrayTemplate.java | 4 ++++ .../template/TestByteBufferTemplate.java | 4 ++++ .../template/TestCharacterTemplate.java | 4 ++++ .../msgpack/template/TestDateTemplate.java | 4 ++++ .../template/TestDoubleArrayTemplate.java | 4 ++++ .../msgpack/template/TestDoubleTemplate.java | 4 ++++ .../template/TestFloatArrayTemplate.java | 4 ++++ .../msgpack/template/TestFloatTemplate.java | 4 ++++ .../template/TestIntegerArrayTemplate.java | 4 ++++ .../msgpack/template/TestIntegerTemplate.java | 4 ++++ .../msgpack/template/TestListTemplate.java | 4 ++++ .../template/TestLongArrayTemplate.java | 4 ++++ .../msgpack/template/TestLongTemplate.java | 4 ++++ .../org/msgpack/template/TestMapTemplate.java | 4 ++++ .../template/TestShortArrayTemplate.java | 4 ++++ .../msgpack/template/TestShortTemplate.java | 4 ++++ .../msgpack/template/TestStringTemplate.java | 4 ++++ .../TestJavassistBufferPackBufferUnpack.java | 19 +++++++++++++++++++ .../TestJavassistBufferPackConvert.java | 19 +++++++++++++++++++ .../TestJavassistBufferPackUnpack.java | 19 +++++++++++++++++++ .../TestJavassistPackBufferUnpack.java | 19 +++++++++++++++++++ .../builder/TestJavassistPackConvert.java | 19 +++++++++++++++++++ .../builder/TestJavassistPackUnpack.java | 19 +++++++++++++++++++ ...TestOrdinalEnumBufferPackBufferUnpack.java | 2 ++ .../TestOrdinalEnumBufferPackConvert.java | 2 ++ .../TestOrdinalEnumBufferPackUnpack.java | 2 ++ .../TestOrdinalEnumPackBufferUnpack.java | 2 ++ .../builder/TestOrdinalEnumPackConvert.java | 2 ++ .../builder/TestOrdinalEnumPackUnpack.java | 2 ++ ...ReflectionBeansBufferPackBufferUnpack.java | 19 +++++++++++++++++++ .../TestReflectionBeansBufferPackConvert.java | 19 +++++++++++++++++++ .../TestReflectionBeansBufferPackUnpack.java | 19 +++++++++++++++++++ .../TestReflectionBeansPackBufferUnpack.java | 19 +++++++++++++++++++ .../TestReflectionBeansPackConvert.java | 19 +++++++++++++++++++ .../TestReflectionBeansPackUnpack.java | 19 +++++++++++++++++++ .../TestReflectionBufferPackBufferUnpack.java | 19 +++++++++++++++++++ .../TestReflectionBufferPackConvert.java | 19 +++++++++++++++++++ .../TestReflectionBufferPackUnpack.java | 19 +++++++++++++++++++ .../TestReflectionPackBufferUnpack.java | 19 +++++++++++++++++++ .../builder/TestReflectionPackConvert.java | 19 +++++++++++++++++++ .../builder/TestReflectionPackUnpack.java | 19 +++++++++++++++++++ 58 files changed, 535 insertions(+) diff --git a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java index 9da07bf38..fd1f9deec 100644 --- a/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackBufferUnpack.java @@ -29,6 +29,7 @@ public void testBoolean(boolean v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -46,6 +47,7 @@ public void testByte(byte v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); byte ret = unpacker.readByte(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -63,6 +65,7 @@ public void testShort(short v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); short ret = unpacker.readShort(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -80,6 +83,7 @@ public void testInteger(int v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); int ret = unpacker.readInt(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -97,6 +101,7 @@ public void testLong(long v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); long ret = unpacker.readLong(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -114,6 +119,7 @@ public void testFloat(float v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -131,6 +137,7 @@ public void testDouble(double v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -143,6 +150,7 @@ public void testNil() throws Exception { packer.writeNil(); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); unpacker.readNil(); assertEquals(bytes.length, unpacker.getReadByteCount()); } @@ -159,6 +167,7 @@ public void testBigInteger(BigInteger v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -176,6 +185,7 @@ public void testString(String v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); String ret = unpacker.read(String.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -193,6 +203,7 @@ public void testByteArray(byte[] v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -218,6 +229,7 @@ public void testList(List v, Class elementClass) throws Exception { } byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; @@ -258,6 +270,7 @@ public void testMap(Map v, Class keyElementClass, Class value } byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; diff --git a/src/test/java/org/msgpack/TestBufferPackConvert.java b/src/test/java/org/msgpack/TestBufferPackConvert.java index a9099661e..4f359466b 100644 --- a/src/test/java/org/msgpack/TestBufferPackConvert.java +++ b/src/test/java/org/msgpack/TestBufferPackConvert.java @@ -32,6 +32,7 @@ public void testBoolean(boolean v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); @@ -51,6 +52,7 @@ public void testByte(byte v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); @@ -70,6 +72,7 @@ public void testShort(short v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); @@ -89,6 +92,7 @@ public void testInteger(int v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); @@ -108,6 +112,7 @@ public void testLong(long v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); @@ -127,6 +132,7 @@ public void testFloat(float v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); @@ -146,6 +152,7 @@ public void testDouble(double v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); @@ -160,6 +167,7 @@ public void testNil() throws Exception { packer.writeNil(); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); @@ -178,6 +186,7 @@ public void testBigInteger(BigInteger v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); @@ -196,6 +205,7 @@ public void testString(String v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); @@ -214,6 +224,7 @@ public void testByteArray(byte[] v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); @@ -240,6 +251,7 @@ public void testList(List v, Class elementClass) throws Exception { } byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; @@ -281,6 +293,7 @@ public void testMap(Map v, Class keyElementClass, Class value } byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; diff --git a/src/test/java/org/msgpack/TestBufferPackUnpack.java b/src/test/java/org/msgpack/TestBufferPackUnpack.java index 9f449b16f..d0759929c 100644 --- a/src/test/java/org/msgpack/TestBufferPackUnpack.java +++ b/src/test/java/org/msgpack/TestBufferPackUnpack.java @@ -30,6 +30,7 @@ public void testBoolean(boolean v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -47,6 +48,7 @@ public void testByte(byte v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); byte ret = unpacker.readByte(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -64,6 +66,7 @@ public void testShort(short v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); short ret = unpacker.readShort(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -81,6 +84,7 @@ public void testInteger(int v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); int ret = unpacker.readInt(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -98,6 +102,7 @@ public void testLong(long v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); long ret = unpacker.readLong(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -115,6 +120,7 @@ public void testFloat(float v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -132,6 +138,7 @@ public void testDouble(double v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -144,6 +151,7 @@ public void testNil() throws Exception { packer.writeNil(); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); unpacker.readNil(); assertEquals(bytes.length, unpacker.getReadByteCount()); } @@ -160,6 +168,7 @@ public void testBigInteger(BigInteger v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -177,6 +186,7 @@ public void testString(String v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); String ret = unpacker.read(String.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -194,6 +204,7 @@ public void testByteArray(byte[] v) throws Exception { packer.write(v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -219,6 +230,7 @@ public void testList(List v, Class elementClass) throws Exception { } byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; @@ -259,6 +271,7 @@ public void testMap(Map v, Class keyElementClass, Class value } byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; diff --git a/src/test/java/org/msgpack/TestPackConvert.java b/src/test/java/org/msgpack/TestPackConvert.java index 5afc9e200..ca55119a2 100644 --- a/src/test/java/org/msgpack/TestPackConvert.java +++ b/src/test/java/org/msgpack/TestPackConvert.java @@ -37,6 +37,7 @@ public void testBoolean(boolean v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isBooleanValue()); boolean ret = new Converter(value).readBoolean(); @@ -57,6 +58,7 @@ public void testByte(byte v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); byte ret = new Converter(value).readByte(); @@ -77,6 +79,7 @@ public void testShort(short v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); short ret = new Converter(value).readShort(); @@ -97,6 +100,7 @@ public void testInteger(int v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); int ret = new Converter(value).readInt(); @@ -117,6 +121,7 @@ public void testLong(long v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isIntegerValue()); long ret = new Converter(value).readLong(); @@ -137,6 +142,7 @@ public void testFloat(float v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isFloatValue()); float ret = new Converter(value).readFloat(); @@ -157,6 +163,7 @@ public void testDouble(double v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isFloatValue()); double ret = new Converter(value).readDouble(); @@ -172,6 +179,7 @@ public void testNil() throws Exception { packer.writeNil(); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); assertTrue(value.isNilValue()); new Converter(value).readNil(); @@ -191,6 +199,7 @@ public void testBigInteger(BigInteger v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); BigInteger ret = new Converter(value).read(BigInteger.class); assertEquals(v, ret); @@ -210,6 +219,7 @@ public void testString(String v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); String ret = new Converter(value).read(String.class); assertEquals(v, ret); @@ -229,6 +239,7 @@ public void testByteArray(byte[] v) throws Exception { packer.write(v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Value value = unpacker.readValue(); byte[] ret = new Converter(value).read(byte[].class); assertArrayEquals(v, ret); @@ -256,6 +267,7 @@ public void testList(List v, Class elementClass) throws Exception { } byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; @@ -298,6 +310,7 @@ public void testMap(Map v, Class keyElementClass, Class value } byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index 8d94398a8..7f7201471 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -33,6 +33,7 @@ public void testBoolean(boolean v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); boolean ret = unpacker.readBoolean(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -52,6 +53,7 @@ public void testByte(byte v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); byte ret = unpacker.readByte(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -71,6 +73,7 @@ public void testShort(short v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); short ret = unpacker.readShort(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -90,6 +93,7 @@ public void testInteger(int v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); int ret = unpacker.readInt(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -109,6 +113,7 @@ public void testLong(long v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); long ret = unpacker.readLong(); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -123,6 +128,7 @@ public void testFloat(float v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); float ret = unpacker.readFloat(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -142,6 +148,7 @@ public void testDouble(double v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); double ret = unpacker.readDouble(); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -156,6 +163,7 @@ public void testNil() throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); unpacker.readNil(); assertEquals(bytes.length, unpacker.getReadByteCount()); } @@ -174,6 +182,7 @@ public void testBigInteger(BigInteger v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); BigInteger ret = unpacker.read(BigInteger.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -193,6 +202,7 @@ public void testString(String v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); String ret = unpacker.read(String.class); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -212,6 +222,7 @@ public void testByteArray(byte[] v) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); byte[] ret = unpacker.read(byte[].class); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -239,6 +250,7 @@ public void testList(List v, Class elementClass) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; @@ -281,6 +293,7 @@ public void testMap(Map v, Class keyElementClass, Class value byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); if (unpacker.trySkipNil()) { assertEquals(null, v); return; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java index 1513fe38c..2c173b896 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackBufferUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -52,6 +53,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +75,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -94,6 +97,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { tmpl02.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java index 67842441b..a617cee48 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistBufferPackUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -51,6 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -71,6 +73,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -91,6 +94,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java index 56e1b6c61..7f9a4e936 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackBufferUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -51,6 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -71,6 +73,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -91,6 +94,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java index 2e280e962..8af451a18 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalJavassistPackUnpack.java @@ -33,6 +33,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -54,6 +55,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -75,6 +77,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -96,6 +99,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java index 1debf4f56..9b043d598 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackBufferUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -52,6 +53,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +75,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { tmpl01.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -94,6 +97,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { tmpl02.write(packer, src); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java index 4fde8d4c9..5a8eca741 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionBufferPackUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -51,6 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -71,6 +73,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -91,6 +94,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java index ca8aff7a1..386af11ae 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackBufferUnpack.java @@ -31,6 +31,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -51,6 +52,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -71,6 +73,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -91,6 +94,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = packer.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java index a0b26b695..a52a5376c 100644 --- a/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/annotation/TestOptionalReflectionPackUnpack.java @@ -33,6 +33,7 @@ public MyMessage01 testOptional0101(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage01 dst = tmpl01.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -54,6 +55,7 @@ public MyMessage02 testOptional0102(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage02 dst = tmpl02.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -75,6 +77,7 @@ public MyMessage03 testOptional0103(MyMessage01 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; @@ -96,6 +99,7 @@ public MyMessage03 testOptional0202(MyMessage02 src) throws Exception { byte[] bytes = out.toByteArray(); ByteArrayInputStream in = new ByteArrayInputStream(bytes); Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); MyMessage03 dst = tmpl03.read(unpacker, null); assertEquals(bytes.length, unpacker.getReadByteCount()); return dst; diff --git a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java index c5a61cd3a..3e98c88f0 100644 --- a/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigDecimalTemplate.java @@ -52,6 +52,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +74,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -93,6 +95,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -113,6 +116,7 @@ public void testBigDecimal(BigDecimal v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); BigDecimal ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java index 84aecd39b..951b4b35d 100644 --- a/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestBigIntegerTemplate.java @@ -52,6 +52,7 @@ public void testBigInteger(BigInteger v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +74,7 @@ public void testBigInteger(BigInteger v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -93,6 +95,7 @@ public void testBigInteger(BigInteger v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -113,6 +116,7 @@ public void testBigInteger(BigInteger v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); BigInteger ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java index 72ad4810b..ddeb680fb 100644 --- a/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanArrayTemplate.java @@ -97,6 +97,7 @@ public void testBooleanArray(boolean[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); boolean[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testBooleanArray(boolean[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); boolean[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testBooleanArray(boolean[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); boolean[] ret0; switch (index) { case 0: @@ -242,6 +245,7 @@ public void testBooleanArray(boolean[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); boolean[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestBooleanTemplate.java b/src/test/java/org/msgpack/template/TestBooleanTemplate.java index 13188907a..d3a5de180 100644 --- a/src/test/java/org/msgpack/template/TestBooleanTemplate.java +++ b/src/test/java/org/msgpack/template/TestBooleanTemplate.java @@ -51,6 +51,7 @@ public void testBoolean(boolean v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testBoolean(boolean v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testBoolean(boolean v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testBoolean(boolean v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); boolean ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java index b482b8a1b..24e0aafcd 100644 --- a/src/test/java/org/msgpack/template/TestByteArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteArrayTemplate.java @@ -52,6 +52,7 @@ public void testByteArray(byte[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +74,7 @@ public void testByteArray(byte[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -93,6 +95,7 @@ public void testByteArray(byte[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -113,6 +116,7 @@ public void testByteArray(byte[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); byte[] ret = tmpl.read(unpacker, null); assertArrayEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java index 592174619..10856cc94 100644 --- a/src/test/java/org/msgpack/template/TestByteBufferTemplate.java +++ b/src/test/java/org/msgpack/template/TestByteBufferTemplate.java @@ -62,6 +62,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -83,6 +84,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -103,6 +105,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -123,6 +126,7 @@ public void testByteBuffer(ByteBuffer v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ByteBuffer ret = tmpl.read(unpacker, null); assertArrayEquals(toByteArray(v), toByteArray(ret)); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestCharacterTemplate.java b/src/test/java/org/msgpack/template/TestCharacterTemplate.java index e7e1a5ac7..d5cc5d2a1 100644 --- a/src/test/java/org/msgpack/template/TestCharacterTemplate.java +++ b/src/test/java/org/msgpack/template/TestCharacterTemplate.java @@ -50,6 +50,7 @@ public void testCharacter(Character v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -71,6 +72,7 @@ public void testCharacter(Character v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -91,6 +93,7 @@ public void testCharacter(Character v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -111,6 +114,7 @@ public void testCharacter(Character v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Character ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestDateTemplate.java b/src/test/java/org/msgpack/template/TestDateTemplate.java index 2c89ca03c..adeb26c7c 100644 --- a/src/test/java/org/msgpack/template/TestDateTemplate.java +++ b/src/test/java/org/msgpack/template/TestDateTemplate.java @@ -52,6 +52,7 @@ public void testDate(Date v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -73,6 +74,7 @@ public void testDate(Date v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -93,6 +95,7 @@ public void testDate(Date v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -113,6 +116,7 @@ public void testDate(Date v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Date ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java index a0c7f1830..33a843f3f 100644 --- a/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleArrayTemplate.java @@ -97,6 +97,7 @@ public void testDoubleArray(double[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); double[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testDoubleArray(double[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); double[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testDoubleArray(double[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); double[] ret0; switch (index) { case 0: @@ -242,6 +245,7 @@ public void testDoubleArray(double[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); double[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestDoubleTemplate.java b/src/test/java/org/msgpack/template/TestDoubleTemplate.java index 82bb40023..d6119daae 100644 --- a/src/test/java/org/msgpack/template/TestDoubleTemplate.java +++ b/src/test/java/org/msgpack/template/TestDoubleTemplate.java @@ -51,6 +51,7 @@ public void testDouble(double v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testDouble(double v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testDouble(double v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testDouble(double v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); double ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java index c050a8439..779c845ae 100644 --- a/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatArrayTemplate.java @@ -97,6 +97,7 @@ public void testFloatArray(float[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); float[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testFloatArray(float[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); float[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testFloatArray(float[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); float[] ret0; switch (index) { @@ -243,6 +246,7 @@ public void testFloatArray(float[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); float[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestFloatTemplate.java b/src/test/java/org/msgpack/template/TestFloatTemplate.java index a7adebf5a..268fffeb1 100644 --- a/src/test/java/org/msgpack/template/TestFloatTemplate.java +++ b/src/test/java/org/msgpack/template/TestFloatTemplate.java @@ -51,6 +51,7 @@ public void testFloat(float v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testFloat(float v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testFloat(float v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testFloat(float v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Float ret = tmpl.read(unpacker, null); assertEquals(v, ret, 10e-10); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java index 07d0492fb..c989c0e5a 100644 --- a/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerArrayTemplate.java @@ -97,6 +97,7 @@ public void testIntegerArray(int[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); int[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testIntegerArray(int[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); int[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testIntegerArray(int[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); int[] ret0; switch (index) { case 0: @@ -242,6 +245,7 @@ public void testIntegerArray(int[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); int[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestIntegerTemplate.java b/src/test/java/org/msgpack/template/TestIntegerTemplate.java index 8744a6744..5db9c3c87 100644 --- a/src/test/java/org/msgpack/template/TestIntegerTemplate.java +++ b/src/test/java/org/msgpack/template/TestIntegerTemplate.java @@ -51,6 +51,7 @@ public void testInteger(int v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testInteger(int v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testInteger(int v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testInteger(int v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); int ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestListTemplate.java b/src/test/java/org/msgpack/template/TestListTemplate.java index 4c2bb1497..99cd12c99 100644 --- a/src/test/java/org/msgpack/template/TestListTemplate.java +++ b/src/test/java/org/msgpack/template/TestListTemplate.java @@ -53,6 +53,7 @@ public void testList(List v, Class elementClass) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -75,6 +76,7 @@ public void testList(List v, Class elementClass) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -96,6 +98,7 @@ public void testList(List v, Class elementClass) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -117,6 +120,7 @@ public void testList(List v, Class elementClass) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); List ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java index 5549d7256..f5638750d 100644 --- a/src/test/java/org/msgpack/template/TestLongArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongArrayTemplate.java @@ -97,6 +97,7 @@ public void testLongArray(long[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); long[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testLongArray(long[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); long[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testLongArray(long[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); long[] ret0; switch (index) { case 0: @@ -242,6 +245,7 @@ public void testLongArray(long[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); long[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestLongTemplate.java b/src/test/java/org/msgpack/template/TestLongTemplate.java index 44e3a38e2..6235a8162 100644 --- a/src/test/java/org/msgpack/template/TestLongTemplate.java +++ b/src/test/java/org/msgpack/template/TestLongTemplate.java @@ -51,6 +51,7 @@ public void testLong(long v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testLong(long v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testLong(long v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testLong(long v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); long ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestMapTemplate.java b/src/test/java/org/msgpack/template/TestMapTemplate.java index e7c5de07a..07777e9dc 100644 --- a/src/test/java/org/msgpack/template/TestMapTemplate.java +++ b/src/test/java/org/msgpack/template/TestMapTemplate.java @@ -54,6 +54,7 @@ public void testMap(Map v, Class keyElementClass, Class value tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -77,6 +78,7 @@ public void testMap(Map v, Class keyElementClass, Class value tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -99,6 +101,7 @@ public void testMap(Map v, Class keyElementClass, Class value tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -121,6 +124,7 @@ public void testMap(Map v, Class keyElementClass, Class value tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); Map ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java index 0304a8aa3..a5a735661 100644 --- a/src/test/java/org/msgpack/template/TestShortArrayTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortArrayTemplate.java @@ -97,6 +97,7 @@ public void testShortArray(short[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); short[] ret0; switch (index) { case 0: @@ -146,6 +147,7 @@ public void testShortArray(short[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); short[] ret0; switch (index) { case 0: @@ -194,6 +196,7 @@ public void testShortArray(short[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); short[] ret0; switch (index) { case 0: @@ -242,6 +245,7 @@ public void testShortArray(short[] v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); short[] ret0; switch (index) { case 0: diff --git a/src/test/java/org/msgpack/template/TestShortTemplate.java b/src/test/java/org/msgpack/template/TestShortTemplate.java index 173deae05..874ad2953 100644 --- a/src/test/java/org/msgpack/template/TestShortTemplate.java +++ b/src/test/java/org/msgpack/template/TestShortTemplate.java @@ -51,6 +51,7 @@ public void testShort(short v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testShort(short v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testShort(short v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testShort(short v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); short ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/TestStringTemplate.java b/src/test/java/org/msgpack/template/TestStringTemplate.java index 62b823d77..4844c4915 100644 --- a/src/test/java/org/msgpack/template/TestStringTemplate.java +++ b/src/test/java/org/msgpack/template/TestStringTemplate.java @@ -51,6 +51,7 @@ public void testString(String v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testString(String v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testString(String v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + unpacker.resetReadByteCount(); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testString(String v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); String ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 29c134ab9..512fe57c6 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -50,6 +50,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -71,6 +72,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -134,6 +138,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -155,6 +160,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -197,6 +204,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -218,6 +226,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -262,6 +271,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -283,6 +293,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -304,6 +315,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,6 +337,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -346,6 +359,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,6 +381,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -388,6 +403,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -409,6 +425,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -430,6 +447,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -451,6 +469,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index 05f9d9fa6..767fd8f07 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -121,6 +124,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -144,6 +148,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -190,6 +196,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -213,6 +220,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -236,6 +244,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -282,6 +291,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -305,6 +315,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -328,6 +339,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -351,6 +363,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -374,6 +387,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,6 +411,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -420,6 +435,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -443,6 +459,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -466,6 +483,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -489,6 +507,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index 75c3bbbd4..c55748735 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -132,6 +136,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -152,6 +157,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -172,6 +178,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -192,6 +199,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -212,6 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -255,6 +264,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -275,6 +285,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -295,6 +306,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -315,6 +327,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -335,6 +348,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -355,6 +369,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -375,6 +390,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -395,6 +411,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -415,6 +432,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -435,6 +453,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 59ddb47b1..6817728d3 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,6 +99,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -141,6 +145,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -163,6 +168,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,6 +191,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -207,6 +214,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -229,6 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -274,6 +283,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -296,6 +306,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -318,6 +329,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -340,6 +352,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -362,6 +375,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -384,6 +398,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -406,6 +421,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -428,6 +444,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -450,6 +467,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -472,6 +490,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java index 3d19ed35c..352e90842 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -55,6 +55,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -78,6 +79,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -101,6 +103,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -124,6 +127,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -147,6 +151,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -170,6 +175,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -193,6 +199,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -216,6 +223,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -239,6 +247,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -285,6 +294,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -308,6 +318,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -331,6 +342,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -354,6 +366,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -377,6 +390,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -400,6 +414,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -423,6 +438,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -446,6 +462,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -469,6 +486,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -492,6 +510,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index ba2b90fe8..e5106c804 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -117,6 +120,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -138,6 +142,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -159,6 +164,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -180,6 +186,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -201,6 +208,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -222,6 +230,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -266,6 +275,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -287,6 +297,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -308,6 +319,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -329,6 +341,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -350,6 +363,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -371,6 +385,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -392,6 +407,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -413,6 +429,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -434,6 +451,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -455,6 +473,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java index d4106e585..342c639c2 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackBufferUnpack.java @@ -31,6 +31,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -54,6 +55,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java index 827a71452..8238f0d1e 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackConvert.java @@ -33,6 +33,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -58,6 +59,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java index e7f999152..32ebc20f3 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumBufferPackUnpack.java @@ -33,6 +33,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -55,6 +56,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java index 58bc3d3c1..8c9c6a850 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackBufferUnpack.java @@ -34,6 +34,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -58,6 +59,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java index ecfddc9c0..9dd023cf9 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackConvert.java @@ -36,6 +36,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -62,6 +63,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java index 6c3947ec5..ffaac3a16 100644 --- a/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestOrdinalEnumPackUnpack.java @@ -35,6 +35,7 @@ public void testEnumTypeFieldsClass(EnumTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); EnumTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -58,6 +59,7 @@ public void testEnumTypeFieldsClassNotNullable(EnumTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); EnumTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index 0e52e74fc..a38d64d84 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -50,6 +50,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -71,6 +72,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -134,6 +138,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -155,6 +160,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -197,6 +204,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -218,6 +226,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -262,6 +271,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -283,6 +293,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -304,6 +315,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,6 +337,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -346,6 +359,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,6 +381,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -388,6 +403,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -409,6 +425,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -430,6 +447,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -451,6 +469,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index 59db1c6b3..9ff0c3a66 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -121,6 +124,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -144,6 +148,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -190,6 +196,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -213,6 +220,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -236,6 +244,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -282,6 +291,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -305,6 +315,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -328,6 +339,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -351,6 +363,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -374,6 +387,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,6 +411,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -420,6 +435,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -443,6 +459,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -466,6 +483,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -489,6 +507,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index 08b07bd5d..74e1c41bf 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -132,6 +136,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -152,6 +157,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -172,6 +178,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -192,6 +199,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -212,6 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -255,6 +264,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -275,6 +285,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -295,6 +306,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -315,6 +327,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -335,6 +348,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -355,6 +369,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -375,6 +390,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -395,6 +411,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -415,6 +432,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -435,6 +453,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index 5bd161b76..f5195373d 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,6 +99,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -141,6 +145,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -163,6 +168,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,6 +191,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -207,6 +214,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -229,6 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -274,6 +283,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -296,6 +306,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -318,6 +329,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -340,6 +352,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -362,6 +375,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -384,6 +398,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -406,6 +421,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -428,6 +444,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -450,6 +467,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -472,6 +490,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index c8dc9790f..151601afa 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -55,6 +55,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -79,6 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -103,6 +105,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -127,6 +130,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -151,6 +155,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -175,6 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -199,6 +205,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -223,6 +230,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -247,6 +255,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -294,6 +303,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -318,6 +328,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -342,6 +353,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -366,6 +378,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -390,6 +403,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -414,6 +428,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -438,6 +453,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -462,6 +478,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -486,6 +503,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -510,6 +528,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 85b81f971..14b80cf61 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -117,6 +120,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -138,6 +142,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -159,6 +164,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -180,6 +186,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -201,6 +208,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -222,6 +230,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -266,6 +275,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -287,6 +297,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -308,6 +319,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -329,6 +341,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -350,6 +363,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -371,6 +385,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -392,6 +407,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -413,6 +429,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -434,6 +451,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -455,6 +473,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index 1a35d4026..c452e18c1 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -50,6 +50,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -71,6 +72,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -113,6 +116,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -134,6 +138,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -155,6 +160,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -176,6 +182,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -197,6 +204,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -218,6 +226,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -262,6 +271,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -283,6 +293,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -304,6 +315,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -325,6 +337,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -346,6 +359,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -367,6 +381,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -388,6 +403,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -409,6 +425,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -430,6 +447,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -451,6 +469,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index 863665d5b..be33bd10d 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -98,6 +100,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -121,6 +124,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -144,6 +148,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -167,6 +172,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -190,6 +196,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -213,6 +220,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -236,6 +244,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -282,6 +291,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -305,6 +315,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -328,6 +339,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -351,6 +363,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -374,6 +387,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -397,6 +411,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -420,6 +435,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -443,6 +459,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -466,6 +483,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -489,6 +507,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index dc7e3822f..6d569bbae 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -52,6 +52,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -72,6 +73,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -92,6 +94,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -112,6 +115,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -132,6 +136,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -152,6 +157,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -172,6 +178,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -192,6 +199,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -212,6 +220,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -255,6 +264,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -275,6 +285,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -295,6 +306,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -315,6 +327,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -335,6 +348,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -355,6 +369,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -375,6 +390,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -395,6 +411,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -415,6 +432,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -435,6 +453,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index f53f6afce..267a785e8 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -53,6 +53,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -97,6 +99,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -119,6 +122,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -141,6 +145,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -163,6 +168,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -185,6 +191,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -207,6 +214,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -229,6 +237,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -274,6 +283,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -296,6 +306,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -318,6 +329,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -340,6 +352,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -362,6 +375,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -384,6 +398,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -406,6 +421,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -428,6 +444,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -450,6 +467,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); @@ -472,6 +490,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); unpacker.wrap(bytes); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index 490c33e0c..64158c3f0 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -55,6 +55,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -79,6 +80,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -103,6 +105,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -127,6 +130,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -151,6 +155,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -175,6 +180,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -199,6 +205,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -223,6 +230,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -247,6 +255,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -294,6 +303,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -318,6 +328,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -342,6 +353,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -366,6 +378,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -390,6 +403,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -414,6 +428,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -438,6 +453,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -462,6 +478,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -486,6 +503,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); @@ -510,6 +528,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); u.wrap(bytes); Value value = u.readValue(); Converter unpacker = new Converter(value); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index 389675193..a918bfddb 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -54,6 +54,7 @@ public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -75,6 +76,7 @@ public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -96,6 +98,7 @@ public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exce tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -117,6 +120,7 @@ public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotN tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -138,6 +142,7 @@ public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -159,6 +164,7 @@ public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -180,6 +186,7 @@ public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -201,6 +208,7 @@ public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -222,6 +230,7 @@ public void testFinalClass(FinalClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); FinalClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -266,6 +275,7 @@ public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -287,6 +297,7 @@ public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -308,6 +319,7 @@ public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -329,6 +341,7 @@ public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClass tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -350,6 +363,7 @@ public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) t tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -371,6 +385,7 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -392,6 +407,7 @@ public void testInheritanceClass(InheritanceClass v) throws Exception { tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -413,6 +429,7 @@ public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throw tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); InheritanceClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -434,6 +451,7 @@ public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); @@ -455,6 +473,7 @@ public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFie tmpl.write(packer, v); byte[] bytes = out.toByteArray(); Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); assertEquals(v, ret); assertEquals(bytes.length, unpacker.getReadByteCount()); From a1d09bdc48e3b027a13f0169f9cce63876304d50 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 01:15:57 +0900 Subject: [PATCH 258/409] modified CHANGES.txt --- CHANGES.txt | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 5f2c50829..f11b76198 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,7 +1,14 @@ Release 0.6.3 - + NEW FEATURES + Adds getReadByteCount and resetReadByteCount methods to Unpacker interface. + + BUG FIXES + Perf. loss occurs because generated templates reflectively accessed via + variables of public fields in the objects. + IMPROVEMENTS - Changes source and target release, which are Javac options, to 1.6 - Registers Date and BigDecimal templates as builtin + Changes source and target release, which are Javac options, to 1.6. + Registers Date and BigDecimal templates as builtin. Release 0.6.2 - 2011/10/24 NEW FEATURES From f5bcdace268154530885f5fb1e4dab06e7032a55 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 02:18:15 +0900 Subject: [PATCH 259/409] added function for size limit of raw, array and map data to Unpacker interface --- .../msgpack/unpacker/AbstractUnpacker.java | 25 ++++++++++++ .../msgpack/unpacker/MessagePackUnpacker.java | 18 ++++++--- .../msgpack/unpacker/SizeLimitException.java | 40 +++++++++++++++++++ .../java/org/msgpack/unpacker/Unpacker.java | 7 ++++ 4 files changed, 84 insertions(+), 6 deletions(-) create mode 100644 src/main/java/org/msgpack/unpacker/SizeLimitException.java diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 6e3cabded..654789146 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -28,6 +28,13 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; + // TODO #MN and #SF about default values + protected long rawSizeLimit = 65536; + + protected int arraySizeLimit = 65536; + + protected int mapSizeLimit = 65536; + protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; } @@ -109,4 +116,22 @@ public long getReadByteCount() { public void resetReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } + + public void setRawSizeLimit(long size) { + if (size > 0 && size > 65536) { + rawSizeLimit = size; + } + } + + public void setArraySizeLimit(int size) { + if (size > 0 && size > 65536) { + arraySizeLimit = size; + } + } + + public void setMapSizeLimit(int size) { + if (size > 0 && size > 65536) { + mapSizeLimit = size; + } + } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index a1855b005..6d4d7693c 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -224,8 +224,10 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdb: // raw 32 { int count = in.getInt(); - if (count < 0) { - throw new IOException("Raw size too large"); // TODO error MessageSizeException + if (count < 0 || count > rawSizeLimit) { + String reason = String.format("Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); } if (count == 0) { a.acceptEmptyRaw(); @@ -255,8 +257,10 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdd: // array 32 { int count = in.getInt(); - if (count < 0) { - throw new IOException("Array size too large"); // TODO error MessageSizeException + if (count < 0 || count > arraySizeLimit) { + String reason = String.format("Size of array (%d) over limit at %d", + new Object[] { count, arraySizeLimit }); + throw new SizeLimitException(reason); } a.acceptArray(count); stack.reduceCount(); @@ -278,8 +282,10 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); - if (count < 0) { - throw new IOException("Map size too large"); // TODO error MessageSizeException + if (count < 0 && count > mapSizeLimit) { + String reason = String.format("Size of map (%d) over limit at %d", + new Object[] { count, mapSizeLimit }); + throw new SizeLimitException(reason); } a.acceptMap(count); stack.reduceCount(); diff --git a/src/main/java/org/msgpack/unpacker/SizeLimitException.java b/src/main/java/org/msgpack/unpacker/SizeLimitException.java new file mode 100644 index 000000000..27c25d622 --- /dev/null +++ b/src/main/java/org/msgpack/unpacker/SizeLimitException.java @@ -0,0 +1,40 @@ +// +// MessagePack for Java +// +// Copyright (C) 2011 Muga Nishizawa +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.unpacker; + +import org.msgpack.MessageTypeException; + + +@SuppressWarnings("serial") +public class SizeLimitException extends MessageTypeException { + public SizeLimitException() { + super(); + } + + public SizeLimitException(String message) { + super(message); + } + + public SizeLimitException(String message, Throwable cause) { + super(message, cause); + } + + public SizeLimitException(Throwable cause) { + super(cause); + } +} diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index c6c0ca02f..4e2e937dc 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -90,5 +90,12 @@ public interface Unpacker extends Iterable, Closeable { public long getReadByteCount(); public void resetReadByteCount(); + + + public void setRawSizeLimit(long size); + + public void setArraySizeLimit(int size); + + public void setMapSizeLimit(int size); } From b3603a396fcfb26a4d777d77a2fcf532d866b778 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 02:37:33 +0900 Subject: [PATCH 260/409] refined AbstractUnpacker and MessagePackUnpacker classes --- .../org/msgpack/unpacker/AbstractUnpacker.java | 17 ++++++++++------- .../msgpack/unpacker/MessagePackUnpacker.java | 12 +++++++++++- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 654789146..a8d2286b6 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -28,12 +28,11 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; - // TODO #MN and #SF about default values - protected long rawSizeLimit = 65536; + protected long rawSizeLimit = 67108864; - protected int arraySizeLimit = 65536; + protected int arraySizeLimit = 4096; - protected int mapSizeLimit = 65536; + protected int mapSizeLimit = 4096; protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; @@ -118,19 +117,23 @@ public void resetReadByteCount() { } public void setRawSizeLimit(long size) { - if (size > 0 && size > 65536) { + if (size > 0 && size >= 67108864) { rawSizeLimit = size; } } public void setArraySizeLimit(int size) { - if (size > 0 && size > 65536) { + if(size < 0 || size >= 4096) { + arraySizeLimit = 4096; + } else { arraySizeLimit = size; } } public void setMapSizeLimit(int size) { - if (size > 0 && size > 65536) { + if(size < 0 || size >= 4096) { + mapSizeLimit = 4096; + } else { mapSizeLimit = size; } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 6d4d7693c..d2e9209ca 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -247,6 +247,11 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdc: // array 16 { int count = in.getShort() & 0xffff; + if (count > arraySizeLimit) { + String reason = String.format("Size of array (%d) over limit at %d", + new Object[] { count, arraySizeLimit }); + throw new SizeLimitException(reason); + } a.acceptArray(count); stack.reduceCount(); stack.pushArray(count); @@ -272,6 +277,11 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xde: // map 16 { int count = in.getShort() & 0xffff; + if (count > mapSizeLimit) { + String reason = String.format("Size of map (%d) over limit at %d", + new Object[] { count, mapSizeLimit }); + throw new SizeLimitException(reason); + } a.acceptMap(count); stack.reduceCount(); stack.pushMap(count); @@ -282,7 +292,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); - if (count < 0 && count > mapSizeLimit) { + if (count < 0 || count > mapSizeLimit) { String reason = String.format("Size of map (%d) over limit at %d", new Object[] { count, mapSizeLimit }); throw new SizeLimitException(reason); From 1cf85a3bf16542dec8c8cfde581d9a18b7ca05e1 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 03:21:07 +0900 Subject: [PATCH 261/409] refined AbstractUnpacker and MessagePackUnpacker classes again --- .../msgpack/unpacker/AbstractUnpacker.java | 12 ++++++---- .../msgpack/unpacker/MessagePackUnpacker.java | 23 +++++++++++-------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index a8d2286b6..f4cf3dbfd 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -117,22 +117,24 @@ public void resetReadByteCount() { } public void setRawSizeLimit(long size) { - if (size > 0 && size >= 67108864) { + if (size < 32) { + rawSizeLimit = 32; + } else { rawSizeLimit = size; } } public void setArraySizeLimit(int size) { - if(size < 0 || size >= 4096) { - arraySizeLimit = 4096; + if (size < 16) { + arraySizeLimit = 16; } else { arraySizeLimit = size; } } public void setMapSizeLimit(int size) { - if(size < 0 || size >= 4096) { - mapSizeLimit = 4096; + if (size < 16) { + mapSizeLimit = 16; } else { mapSizeLimit = size; } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index d2e9209ca..903efeab9 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -212,6 +212,11 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti headByte = REQUIRE_TO_READ_HEAD; return true; } + if (count >= rawSizeLimit) { + String reason = String.format("Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); + } in.advance(); if (!tryReferRawBody(a, count)) { readRawBody(count); @@ -224,17 +229,17 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdb: // raw 32 { int count = in.getInt(); - if (count < 0 || count > rawSizeLimit) { - String reason = String.format("Size of raw (%d) over limit at %d", - new Object[] { count, rawSizeLimit }); - throw new SizeLimitException(reason); - } if (count == 0) { a.acceptEmptyRaw(); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; } + if (count < 0 || count >= rawSizeLimit) { + String reason = String.format("Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); + } in.advance(); if (!tryReferRawBody(a, count)) { readRawBody(count); @@ -247,7 +252,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdc: // array 16 { int count = in.getShort() & 0xffff; - if (count > arraySizeLimit) { + if (count >= arraySizeLimit) { String reason = String.format("Size of array (%d) over limit at %d", new Object[] { count, arraySizeLimit }); throw new SizeLimitException(reason); @@ -262,7 +267,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdd: // array 32 { int count = in.getInt(); - if (count < 0 || count > arraySizeLimit) { + if (count < 0 || count >= arraySizeLimit) { String reason = String.format("Size of array (%d) over limit at %d", new Object[] { count, arraySizeLimit }); throw new SizeLimitException(reason); @@ -277,7 +282,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xde: // map 16 { int count = in.getShort() & 0xffff; - if (count > mapSizeLimit) { + if (count >= mapSizeLimit) { String reason = String.format("Size of map (%d) over limit at %d", new Object[] { count, mapSizeLimit }); throw new SizeLimitException(reason); @@ -292,7 +297,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOExcepti case 0xdf: // map 32 { int count = in.getInt(); - if (count < 0 || count > mapSizeLimit) { + if (count < 0 || count >= mapSizeLimit) { String reason = String.format("Size of map (%d) over limit at %d", new Object[] { count, mapSizeLimit }); throw new SizeLimitException(reason); From 998784642304cb8e058679260d8d40e5539266e0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 03:23:45 +0900 Subject: [PATCH 262/409] refined AbstractUnpacker and MessagePackUnpacker classes v3 --- src/main/java/org/msgpack/unpacker/AbstractUnpacker.java | 4 ++-- src/main/java/org/msgpack/unpacker/Unpacker.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index f4cf3dbfd..f8f3786bf 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -28,7 +28,7 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; - protected long rawSizeLimit = 67108864; + protected int rawSizeLimit = 67108864; protected int arraySizeLimit = 4096; @@ -116,7 +116,7 @@ public void resetReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } - public void setRawSizeLimit(long size) { + public void setRawSizeLimit(int size) { if (size < 32) { rawSizeLimit = 32; } else { diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 4e2e937dc..1c1cb45f0 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -92,7 +92,7 @@ public interface Unpacker extends Iterable, Closeable { public void resetReadByteCount(); - public void setRawSizeLimit(long size); + public void setRawSizeLimit(int size); public void setArraySizeLimit(int size); From 645f412f2ddd16ec1814ee719e98bc0fefcfba01 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 23:57:59 +0900 Subject: [PATCH 263/409] set 512M to Xmx option in pom.xml --- pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pom.xml b/pom.xml index a35fcb4a9..3226cd15b 100644 --- a/pom.xml +++ b/pom.xml @@ -131,6 +131,13 @@ UTF-8 + + org.apache.maven.plugins + maven-surefire-plugin + + -Xmx512M + + From c96d1e457d682330ef78be3f34870f09828380f1 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 4 Nov 2011 23:58:48 +0900 Subject: [PATCH 264/409] added test methods for size limitation with Unpacker --- src/test/java/org/msgpack/TestSizeLimit.java | 846 +++++++++++++++++++ 1 file changed, 846 insertions(+) create mode 100644 src/test/java/org/msgpack/TestSizeLimit.java diff --git a/src/test/java/org/msgpack/TestSizeLimit.java b/src/test/java/org/msgpack/TestSizeLimit.java new file mode 100644 index 000000000..c90439305 --- /dev/null +++ b/src/test/java/org/msgpack/TestSizeLimit.java @@ -0,0 +1,846 @@ +package org.msgpack; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; +import static org.junit.Assert.fail; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.junit.Test; +import org.msgpack.packer.Packer; +import org.msgpack.template.ListTemplate; +import org.msgpack.template.MapTemplate; +import org.msgpack.template.Template; +import org.msgpack.template.Templates; +import org.msgpack.unpacker.SizeLimitException; +import org.msgpack.unpacker.Unpacker; + + +public class TestSizeLimit { + + @Test + public void testRawSizeLimit() throws Exception { + MessagePack msgpack = new MessagePack(); + Template tmpl = Templates.TByteArray; + { // default limit = 67108864, size < 67108864 + int len = 67108863; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // default limit = 67108864, size == 67108864 + int len = 67108864; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // default limit = 67108864, size > 67108864 + int len = 67108865; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size < 10 + int len = 9; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(10); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // set limit == 10, size == 10 + int len = 10; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(10); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // set limit == 10, 10 < size < 32 + int len = 11; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(10); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // set limit == 10, size == 32 + int len = 32; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size > 32 + int len = 33; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 33, size < 33 + int len = 32; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(33); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // set limit == 33, size == 33 + int len = 33; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(33); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 33, size > 33 + int len = 34; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(33); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size < 65536 + int len = 65535; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(65536); + byte[] dst = unpacker.read(tmpl); + assertEquals(src.length, dst.length); + } + { // set limit == 65536, size == 65536 + int len = 65536; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size > 65536 + int len = 65537; + byte[] src = new byte[len]; + for (int i = 0; i < len; i++) { + src[i] = 0x0a; + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setRawSizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + } + + @Test + public void testArraySizeLimit() throws Exception { + MessagePack msgpack = new MessagePack(); + Template> tmpl = new ListTemplate(Templates.TInteger); + { // default limit == 4096, size < 4096 + int len = 4095; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // default limit == 4096, size == 4096 + int len = 4096; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // default limit == 4096, size > 4096 + int len = 4097; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size < 10 + int len = 9; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(10); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, size == 10 + int len = 10; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(10); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, 10 < size < 16 + int len = 11; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(10); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, size == 16 + int len = 16; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size > 16 + int len = 17; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 20, size < 20 + int len = 19; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(20); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 20, size == 20 + int len = 20; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(20); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 20, size > 20 + int len = 21; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(20); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size < 65536 + int len = 65535; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(65536); + List dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 65536, size == 65536 + int len = 65536; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size > 65536 + int len = 65537; + List src = new ArrayList(len); + for (int i = 0; i < len; i++) { + src.add(i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setArraySizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + } + + @Test + public void testMapSizeLimit() throws Exception { + MessagePack msgpack = new MessagePack(); + Template> tmpl = + new MapTemplate(Templates.TInteger, Templates.TInteger); + { // default limit == 4096, size < 4096 + int len = 4095; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // default limit == 4096, size == 4096 + int len = 4096; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // default limit == 4096, size > 4096 + int len = 4097; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size < 10 + int len = 9; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(10); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, size == 10 + int len = 10; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(10); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, 10 < size < 16 + int len = 11; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(10); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 10, size == 16 + int len = 16; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 10, size > 16 + int len = 17; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(10); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 20, size < 20 + int len = 19; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(20); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 20, size == 20 + int len = 20; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(20); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 20, size > 20 + int len = 21; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(20); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size < 65536 + int len = 65535; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(65536); + Map dst = unpacker.read(tmpl); + assertEquals(src.size(), dst.size()); + } + { // set limit == 65536, size == 65536 + int len = 65536; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + { // set limit == 65536, size > 65536 + int len = 65537; + Map src = new HashMap(len); + for (int i = 0; i < len; i++) { + src.put(i, i); + } + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(src); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.setMapSizeLimit(65536); + try { + unpacker.read(tmpl); + fail(); + } catch (Throwable t) { + assertTrue(t instanceof SizeLimitException); + } + } + } + +} From 117997c461f8e9885eb61226ff9f9d968145bfa5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 6 Nov 2011 00:22:40 +0900 Subject: [PATCH 265/409] changed return type of getReadByteCount method in Unpacker interface: long to int --- src/main/java/org/msgpack/io/AbstractInput.java | 14 +++++++------- src/main/java/org/msgpack/io/Input.java | 2 +- .../org/msgpack/unpacker/AbstractUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/Converter.java | 2 +- .../org/msgpack/unpacker/MessagePackUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/Unpacker.java | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/msgpack/io/AbstractInput.java b/src/main/java/org/msgpack/io/AbstractInput.java index 143269965..7f82c0b45 100644 --- a/src/main/java/org/msgpack/io/AbstractInput.java +++ b/src/main/java/org/msgpack/io/AbstractInput.java @@ -20,21 +20,21 @@ abstract class AbstractInput implements Input { - private long count = 0; + private int readByteCount = 0; - public long getReadByteCount() { - return count; + public int getReadByteCount() { + return readByteCount; } public void resetReadByteCount() { - count = 0; + readByteCount = 0; } - protected final void incrReadByteCount(long size) { - count += size; + protected final void incrReadByteCount(int size) { + readByteCount += size; } protected final void incrReadOneByteCount() { - count += 1; + readByteCount += 1; } } diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index ca6f1abfe..50e857fda 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -42,7 +42,7 @@ public interface Input extends Closeable { public double getDouble() throws IOException; - public long getReadByteCount(); + public int getReadByteCount(); public void resetReadByteCount(); } diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index f8f3786bf..9c2b8866c 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -108,7 +108,7 @@ public T read(T to, Template tmpl) throws IOException { return (T) tmpl.read(this, to); } - public long getReadByteCount() { + public int getReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 32cb00f19..1eba0b26b 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -408,7 +408,7 @@ public void close() throws IOException { } @Override - public long getReadByteCount() { + public int getReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 903efeab9..c0020f4c9 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -580,7 +580,7 @@ public void close() throws IOException { } @Override - public long getReadByteCount() { + public int getReadByteCount() { return in.getReadByteCount(); } diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 1c1cb45f0..69f552f29 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -87,7 +87,7 @@ public interface Unpacker extends Iterable, Closeable { public UnpackerIterator iterator(); - public long getReadByteCount(); + public int getReadByteCount(); public void resetReadByteCount(); From 08ad4fedb7c35c184250edf8be42746670ada7f7 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 6 Nov 2011 02:12:18 +0900 Subject: [PATCH 266/409] refactored SizeLimitException class --- .../msgpack/unpacker/SizeLimitException.java | 4 +- .../msgpack/{ => unpacker}/TestSizeLimit.java | 3 +- .../unpacker/TestUnpackerInterator.java | 40 +++++++++++++++++++ 3 files changed, 44 insertions(+), 3 deletions(-) rename src/test/java/org/msgpack/{ => unpacker}/TestSizeLimit.java (99%) create mode 100644 src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java diff --git a/src/main/java/org/msgpack/unpacker/SizeLimitException.java b/src/main/java/org/msgpack/unpacker/SizeLimitException.java index 27c25d622..1053129be 100644 --- a/src/main/java/org/msgpack/unpacker/SizeLimitException.java +++ b/src/main/java/org/msgpack/unpacker/SizeLimitException.java @@ -17,11 +17,11 @@ // package org.msgpack.unpacker; -import org.msgpack.MessageTypeException; +import java.io.IOException; @SuppressWarnings("serial") -public class SizeLimitException extends MessageTypeException { +public class SizeLimitException extends IOException { public SizeLimitException() { super(); } diff --git a/src/test/java/org/msgpack/TestSizeLimit.java b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java similarity index 99% rename from src/test/java/org/msgpack/TestSizeLimit.java rename to src/test/java/org/msgpack/unpacker/TestSizeLimit.java index c90439305..db0b756c0 100644 --- a/src/test/java/org/msgpack/TestSizeLimit.java +++ b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.unpacker; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; @@ -12,6 +12,7 @@ import java.util.Map; import org.junit.Test; +import org.msgpack.MessagePack; import org.msgpack.packer.Packer; import org.msgpack.template.ListTemplate; import org.msgpack.template.MapTemplate; diff --git a/src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java b/src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java new file mode 100644 index 000000000..97ea39c2f --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java @@ -0,0 +1,40 @@ +package org.msgpack.unpacker; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; + +public class TestUnpackerInterator { + + @Test + public void testSample() throws Exception { + MessagePack msgpack = new MessagePack(); + + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(1); + packer.write(2); + packer.write(3); + byte[] bytes = out.toByteArray(); + + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + UnpackerIterator iter = unpacker.iterator(); + unpacker.resetReadByteCount(); + iter.hasNext(); + iter.next(); + assertEquals(1, unpacker.getReadByteCount()); + unpacker.resetReadByteCount(); + iter.hasNext(); + iter.next(); + assertEquals(1, unpacker.getReadByteCount()); + unpacker.resetReadByteCount(); + iter.hasNext(); + iter.next(); + assertEquals(1, unpacker.getReadByteCount()); + } +} From 2fa1c8c35584d7066cac5019932f6021c07fdee9 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Mon, 7 Nov 2011 18:16:01 +0900 Subject: [PATCH 267/409] Converter never implements getReadByteCount/resetReadByteCount --- .../java/org/msgpack/unpacker/AbstractUnpacker.java | 4 ++-- src/main/java/org/msgpack/util/json/JSONUnpacker.java | 10 ++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 9c2b8866c..f644769b6 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -109,11 +109,11 @@ public T read(T to, Template tmpl) throws IOException { } public int getReadByteCount() { - throw new UnsupportedOperationException("Not implemented yet"); + throw new UnsupportedOperationException("Not implemented"); } public void resetReadByteCount() { - throw new UnsupportedOperationException("Not implemented yet"); + throw new UnsupportedOperationException("Not implemented"); } public void setRawSizeLimit(int size) { diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 4764d80d6..cd0957232 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -104,6 +104,16 @@ private Value mapToValue(Map map) { return ValueFactory.createMapValue(kvs, true); } + @Override + public int getReadByteCount() { + throw new UnsupportedOperationException("Not implemented yet"); + } + + @Override + public void resetReadByteCount() { + throw new UnsupportedOperationException("Not implemented yet"); + } + public void close() throws IOException { in.close(); super.close(); From 8e295ba45c6d03d13a6da950fccec5349b538079 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 8 Nov 2011 23:29:37 +0900 Subject: [PATCH 268/409] refactored AnyTemplate, TemplatePrecompiler and Unpacker classes --- .../java/org/msgpack/template/AnyTemplate.java | 1 - src/main/java/org/msgpack/unpacker/Converter.java | 15 +++++++++++++++ .../org/msgpack/util/TemplatePrecompiler.java | 1 - 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index fc51fd0b3..6c35174ca 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -20,7 +20,6 @@ import java.io.IOException; import org.msgpack.*; import org.msgpack.packer.Packer; -import org.msgpack.type.Value; import org.msgpack.unpacker.Unpacker; diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 1eba0b26b..18433608e 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -411,5 +411,20 @@ public void close() throws IOException { public int getReadByteCount() { throw new UnsupportedOperationException("Not implemented yet"); } + + @Override + public void setRawSizeLimit(int size) { + throw new UnsupportedOperationException("Not implemented yet"); + } + + @Override + public void setArraySizeLimit(int size) { + throw new UnsupportedOperationException("Not implemented yet"); + } + + @Override + public void setMapSizeLimit(int size) { + throw new UnsupportedOperationException("Not implemented yet"); + } } diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index 638af5672..eaac758c2 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -45,7 +45,6 @@ * Application enables to load the .class files and use templates. * */ -@SuppressWarnings("restriction") public class TemplatePrecompiler { private static final Logger LOG = LoggerFactory.getLogger(TemplatePrecompiler.class); From 134d26f6528722eb9a2f929e8bbb61025485bfbe Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 8 Nov 2011 23:35:50 +0900 Subject: [PATCH 269/409] changed CHANGES.txt --- CHANGES.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index f11b76198..f7fa2eefb 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,10 +1,12 @@ Release 0.6.3 - NEW FEATURES Adds getReadByteCount and resetReadByteCount methods to Unpacker interface. + Adds setRawSizeLimit, setArraySizeLimit and setMapSizeLimit methods to + Unpacker interface. BUG FIXES - Perf. loss occurs because generated templates reflectively accessed via - variables of public fields in the objects. + Fixes Perf. loss: generated templates reflectively accessed via variables of + public fields in the objects. IMPROVEMENTS Changes source and target release, which are Javac options, to 1.6. From 3ea3632e55a0a0e2acc475704e5a85ebda236aaf Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Wed, 9 Nov 2011 02:12:46 +0900 Subject: [PATCH 270/409] [maven-release-plugin] prepare release msgpack-0.6.3 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 3226cd15b..2d42ebf12 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.3-SNAPSHOT + 0.6.3 jar http://msgpack.org/ From fb02b9236fbcbb1490b7af06346c02a92b7d76ad Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Wed, 9 Nov 2011 02:12:59 +0900 Subject: [PATCH 271/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2d42ebf12..7ed996d24 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.3 + 0.6.4-SNAPSHOT jar http://msgpack.org/ From dc41c054244837c835bd274f09c1af39952c82ba Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 16 Nov 2011 01:39:32 +0900 Subject: [PATCH 272/409] changed indenting programs: space and tab to space only --- src/main/java/org/msgpack/MessagePack.java | 260 +++++------ .../java/org/msgpack/MessagePackable.java | 3 +- .../org/msgpack/MessageTypeException.java | 2 - .../java/org/msgpack/annotation/Beans.java | 4 +- .../java/org/msgpack/annotation/Delegate.java | 4 +- .../java/org/msgpack/annotation/Ignore.java | 1 - .../java/org/msgpack/annotation/Index.java | 1 - .../java/org/msgpack/annotation/Message.java | 4 +- .../msgpack/annotation/MessagePackBeans.java | 7 +- .../annotation/MessagePackDelegate.java | 6 +- .../annotation/MessagePackMessage.java | 6 +- .../annotation/MessagePackOrdinalEnum.java | 4 +- .../org/msgpack/annotation/NotNullable.java | 4 +- .../java/org/msgpack/annotation/Optional.java | 1 - .../org/msgpack/annotation/OrdinalEnum.java | 4 +- .../java/org/msgpack/io/AbstractInput.java | 1 - .../java/org/msgpack/io/BufferReferer.java | 2 - .../java/org/msgpack/io/BufferedOutput.java | 41 +- .../java/org/msgpack/io/ByteBufferOutput.java | 6 +- .../org/msgpack/io/EndOfBufferException.java | 2 - src/main/java/org/msgpack/io/Input.java | 2 - .../org/msgpack/io/LinkedBufferInput.java | 42 +- .../org/msgpack/io/LinkedBufferOutput.java | 2 - src/main/java/org/msgpack/io/Output.java | 2 - src/main/java/org/msgpack/io/StreamInput.java | 6 +- .../java/org/msgpack/io/StreamOutput.java | 6 +- .../org/msgpack/packer/AbstractPacker.java | 34 +- .../java/org/msgpack/packer/BufferPacker.java | 3 +- .../packer/MessagePackBufferPacker.java | 9 +- .../org/msgpack/packer/MessagePackPacker.java | 176 ++++---- src/main/java/org/msgpack/packer/Packer.java | 4 +- .../java/org/msgpack/packer/PackerStack.java | 16 +- .../java/org/msgpack/packer/Unconverter.java | 57 +-- .../msgpack/template/AbstractTemplate.java | 2 - .../org/msgpack/template/AnyTemplate.java | 21 +- .../msgpack/template/BigDecimalTemplate.java | 17 +- .../msgpack/template/BigIntegerTemplate.java | 13 +- .../template/BooleanArrayTemplate.java | 13 +- .../org/msgpack/template/BooleanTemplate.java | 19 +- .../msgpack/template/ByteArrayTemplate.java | 13 +- .../msgpack/template/ByteBufferTemplate.java | 13 +- .../org/msgpack/template/ByteTemplate.java | 8 +- .../msgpack/template/CharacterTemplate.java | 15 +- .../msgpack/template/CollectionTemplate.java | 10 +- .../org/msgpack/template/DateTemplate.java | 10 +- .../msgpack/template/DoubleArrayTemplate.java | 13 +- .../org/msgpack/template/DoubleTemplate.java | 13 +- .../java/org/msgpack/template/FieldList.java | 63 ++- .../org/msgpack/template/FieldOption.java | 5 +- .../msgpack/template/FloatArrayTemplate.java | 13 +- .../org/msgpack/template/FloatTemplate.java | 13 +- .../template/GenericCollectionTemplate.java | 44 +- .../msgpack/template/GenericMapTemplate.java | 48 +- .../org/msgpack/template/GenericTemplate.java | 1 - .../template/IntegerArrayTemplate.java | 13 +- .../org/msgpack/template/IntegerTemplate.java | 13 +- .../org/msgpack/template/ListTemplate.java | 13 +- .../msgpack/template/LongArrayTemplate.java | 13 +- .../org/msgpack/template/LongTemplate.java | 10 +- .../org/msgpack/template/MapTemplate.java | 22 +- .../template/MessagePackableTemplate.java | 32 +- .../msgpack/template/NotNullableTemplate.java | 7 +- .../msgpack/template/ObjectArrayTemplate.java | 68 +-- .../msgpack/template/OrdinalEnumTemplate.java | 26 +- .../msgpack/template/ShortArrayTemplate.java | 11 +- .../org/msgpack/template/ShortTemplate.java | 11 +- .../org/msgpack/template/StringTemplate.java | 11 +- .../java/org/msgpack/template/Template.java | 2 - .../msgpack/template/TemplateReference.java | 34 +- .../msgpack/template/TemplateRegistry.java | 427 +++++++++--------- .../java/org/msgpack/template/Templates.java | 95 ++-- .../org/msgpack/template/ValueTemplate.java | 11 +- .../builder/AbstractTemplateBuilder.java | 350 +++++++------- .../builder/ArrayTemplateBuilder.java | 229 +++++----- .../template/builder/BeansBuildContext.java | 161 +++---- .../template/builder/BeansFieldEntry.java | 61 ++- .../template/builder/BuildContext.java | 274 +++++------ .../template/builder/DefaultBuildContext.java | 347 +++++++------- .../template/builder/DefaultFieldEntry.java | 47 +- .../msgpack/template/builder/FieldEntry.java | 51 +-- .../JavassistBeansTemplateBuilder.java | 17 +- .../builder/JavassistTemplateBuilder.java | 160 +++---- .../builder/OrdinalEnumTemplateBuilder.java | 32 +- .../ReflectionBeansTemplateBuilder.java | 251 +++++----- .../builder/ReflectionTemplateBuilder.java | 220 ++++----- .../builder/TemplateBuildException.java | 6 +- .../template/builder/TemplateBuilder.java | 7 +- .../builder/TemplateBuilderChain.java | 80 ++-- .../org/msgpack/type/AbstractArrayValue.java | 2 - .../msgpack/type/AbstractBooleanValue.java | 2 - .../org/msgpack/type/AbstractMapValue.java | 4 +- .../org/msgpack/type/AbstractRawValue.java | 28 +- .../java/org/msgpack/type/AbstractValue.java | 2 - .../java/org/msgpack/type/ArrayValueImpl.java | 50 +- .../org/msgpack/type/BigIntegerValueImpl.java | 50 +- .../java/org/msgpack/type/BooleanValue.java | 2 - .../msgpack/type/ByteArrayRawValueImpl.java | 16 +- .../org/msgpack/type/DoubleValueImpl.java | 22 +- .../java/org/msgpack/type/FalseValueImpl.java | 11 +- .../java/org/msgpack/type/FloatValue.java | 2 - .../java/org/msgpack/type/FloatValueImpl.java | 24 +- .../java/org/msgpack/type/IntValueImpl.java | 42 +- .../java/org/msgpack/type/IntegerValue.java | 2 - .../java/org/msgpack/type/LongValueImpl.java | 54 ++- src/main/java/org/msgpack/type/MapValue.java | 2 - src/main/java/org/msgpack/type/NilValue.java | 9 +- .../java/org/msgpack/type/NumberValue.java | 2 - src/main/java/org/msgpack/type/RawValue.java | 2 - .../msgpack/type/SequentialMapValueImpl.java | 138 +++--- .../org/msgpack/type/StringRawValueImpl.java | 10 +- .../java/org/msgpack/type/TrueValueImpl.java | 11 +- src/main/java/org/msgpack/type/Value.java | 2 - .../java/org/msgpack/type/ValueFactory.java | 27 +- src/main/java/org/msgpack/type/ValueType.java | 9 +- .../msgpack/unpacker/AbstractUnpacker.java | 21 +- .../java/org/msgpack/unpacker/Accept.java | 20 +- .../org/msgpack/unpacker/ArrayAccept.java | 2 - .../msgpack/unpacker/BigIntegerAccept.java | 22 +- .../org/msgpack/unpacker/BufferUnpacker.java | 3 +- .../org/msgpack/unpacker/ByteArrayAccept.java | 2 - .../java/org/msgpack/unpacker/Converter.java | 135 +++--- .../org/msgpack/unpacker/DoubleAccept.java | 4 +- .../java/org/msgpack/unpacker/IntAccept.java | 22 +- .../java/org/msgpack/unpacker/LongAccept.java | 22 +- .../java/org/msgpack/unpacker/MapAccept.java | 2 - .../unpacker/MessagePackBufferUnpacker.java | 9 +- .../msgpack/unpacker/MessagePackUnpacker.java | 286 ++++++------ .../msgpack/unpacker/SizeLimitException.java | 1 - .../java/org/msgpack/unpacker/SkipAccept.java | 2 - .../org/msgpack/unpacker/StringAccept.java | 8 +- .../java/org/msgpack/unpacker/Unpacker.java | 7 +- .../msgpack/unpacker/UnpackerIterator.java | 8 +- .../org/msgpack/unpacker/UnpackerStack.java | 16 +- .../org/msgpack/unpacker/ValueAccept.java | 11 +- .../org/msgpack/util/TemplatePrecompiler.java | 177 ++++---- src/main/java/org/msgpack/util/json/JSON.java | 3 - .../msgpack/util/json/JSONBufferPacker.java | 9 +- .../msgpack/util/json/JSONBufferUnpacker.java | 25 +- .../org/msgpack/util/json/JSONPacker.java | 83 ++-- .../org/msgpack/util/json/JSONUnpacker.java | 42 +- 140 files changed, 2814 insertions(+), 2854 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index aa937dab3..554b1758e 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -57,7 +57,7 @@ public class MessagePack { * @since 0.6.0 */ public MessagePack() { - registry = new TemplateRegistry(null); + registry = new TemplateRegistry(null); } /** @@ -66,8 +66,9 @@ public MessagePack() { * @param msgpack */ public MessagePack(MessagePack msgpack) { - registry = new TemplateRegistry(msgpack.registry); + registry = new TemplateRegistry(msgpack.registry); } + protected MessagePack(TemplateRegistry registry) { this.registry = registry; } @@ -78,7 +79,7 @@ protected MessagePack(TemplateRegistry registry) { * @param cl */ public void setClassLoader(final ClassLoader cl) { - registry.setClassLoader(cl); + registry.setClassLoader(cl); } /** @@ -91,7 +92,7 @@ public void setClassLoader(final ClassLoader cl) { * @return stream-based serializer */ public Packer createPacker(OutputStream out) { - return new MessagePackPacker(this, out); + return new MessagePackPacker(this, out); } /** @@ -101,7 +102,7 @@ public Packer createPacker(OutputStream out) { * @return buffer-based serializer */ public BufferPacker createBufferPacker() { - return new MessagePackBufferPacker(this); + return new MessagePackBufferPacker(this); } /** @@ -113,7 +114,7 @@ public BufferPacker createBufferPacker() { * @return buffer-based serializer */ public BufferPacker createBufferPacker(int bufferSize) { - return new MessagePackBufferPacker(this, bufferSize); + return new MessagePackBufferPacker(this, bufferSize); } /** @@ -126,7 +127,7 @@ public BufferPacker createBufferPacker(int bufferSize) { * @return stream-based deserializer */ public Unpacker createUnpacker(InputStream in) { - return new MessagePackUnpacker(this, in); + return new MessagePackUnpacker(this, in); } /** @@ -136,7 +137,7 @@ public Unpacker createUnpacker(InputStream in) { * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker() { - return new MessagePackBufferUnpacker(this); + return new MessagePackBufferUnpacker(this); } /** @@ -148,7 +149,7 @@ public BufferUnpacker createBufferUnpacker() { * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(byte[] bytes) { - return createBufferUnpacker().wrap(bytes); + return createBufferUnpacker().wrap(bytes); } /** @@ -161,7 +162,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes) { * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { - return createBufferUnpacker().wrap(bytes, off, len); + return createBufferUnpacker().wrap(bytes, off, len); } /** @@ -173,7 +174,7 @@ public BufferUnpacker createBufferUnpacker(byte[] bytes, int off, int len) { * @return buffer-based deserializer */ public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { - return createBufferUnpacker().wrap(buffer); + return createBufferUnpacker().wrap(buffer); } /** @@ -186,15 +187,15 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer buffer) { * @throws IOException */ public byte[] write(T v) throws IOException { - BufferPacker pk = createBufferPacker(); - if (v == null) { - pk.writeNil(); - }else { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } - return pk.toByteArray(); + BufferPacker pk = createBufferPacker(); + if (v == null) { + pk.writeNil(); + } else { + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } + return pk.toByteArray(); } /** @@ -208,9 +209,9 @@ public byte[] write(T v) throws IOException { * @throws IOException */ public byte[] write(T v, Template template) throws IOException { - BufferPacker pk = createBufferPacker(); - template.write(pk, v); - return pk.toByteArray(); + BufferPacker pk = createBufferPacker(); + template.write(pk, v); + return pk.toByteArray(); } /** @@ -224,14 +225,14 @@ public byte[] write(T v, Template template) throws IOException { * @throws IOException */ public void write(OutputStream out, T v) throws IOException { - Packer pk = createPacker(out); - if (v == null) { - pk.writeNil(); - } else { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } + Packer pk = createPacker(out); + if (v == null) { + pk.writeNil(); + } else { + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } } /** @@ -247,9 +248,9 @@ public void write(OutputStream out, T v) throws IOException { * @throws IOException */ public void write(OutputStream out, T v, Template template) - throws IOException { - Packer pk = createPacker(out); - template.write(pk, v); + throws IOException { + Packer pk = createPacker(out); + template.write(pk, v); } /** @@ -262,10 +263,10 @@ public void write(OutputStream out, T v, Template template) * @throws IOException */ public byte[] write(Value v) throws IOException { - // FIXME ValueTemplate should do this - BufferPacker pk = createBufferPacker(); - pk.write(v); - return pk.toByteArray(); + // FIXME ValueTemplate should do this + BufferPacker pk = createBufferPacker(); + pk.write(v); + return pk.toByteArray(); } /** @@ -279,7 +280,7 @@ public byte[] write(Value v) throws IOException { * @throws IOException */ public Value read(byte[] bytes) throws IOException { - return read(bytes, 0, bytes.length); + return read(bytes, 0, bytes.length); } /** @@ -293,7 +294,7 @@ public Value read(byte[] bytes) throws IOException { * @throws IOException */ public Value read(byte[] bytes, int off, int len) throws IOException { - return createBufferUnpacker(bytes, off, len).readValue(); + return createBufferUnpacker(bytes, off, len).readValue(); } /** @@ -307,7 +308,7 @@ public Value read(byte[] bytes, int off, int len) throws IOException { * @throws IOException */ public Value read(ByteBuffer buffer) throws IOException { - return createBufferUnpacker(buffer).readValue(); + return createBufferUnpacker(buffer).readValue(); } /** @@ -320,7 +321,7 @@ public Value read(ByteBuffer buffer) throws IOException { * @throws IOException */ public Value read(InputStream in) throws IOException { - return createUnpacker(in).readValue(); + return createUnpacker(in).readValue(); } /** @@ -334,52 +335,57 @@ public Value read(InputStream in) throws IOException { * @throws IOException */ public T read(byte[] bytes, T v) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - return read(bytes, v, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + return read(bytes, v, tmpl); } /** * Deserializes byte array to object according to template. * * @since 0.6.0 - * @param bytes input byte array - * @param tmpl template + * @param bytes + * input byte array + * @param tmpl + * template * @return * @throws IOException */ public T read(byte[] bytes, Template tmpl) throws IOException { - return read(bytes, null, tmpl); + return read(bytes, null, tmpl); } /** * Deserializes byte array to object of specified class. * * @since 0.6.0 - * @param bytes input byte array + * @param bytes + * input byte array * @param c * @return * @throws IOException */ public T read(byte[] bytes, Class c) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(c); - return read(bytes, null, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + return read(bytes, null, tmpl); } /** * Deserializes byte array to object according to specified template. * * @since 0.6.0 - * @param bytes input byte array + * @param bytes + * input byte array * @param v - * @param tmpl template + * @param tmpl + * template * @return * @throws IOException */ public T read(byte[] bytes, T v, Template tmpl) throws IOException { - BufferUnpacker u = createBufferUnpacker(bytes); - return (T) tmpl.read(u, v); + BufferUnpacker u = createBufferUnpacker(bytes); + return (T) tmpl.read(u, v); } /** @@ -393,22 +399,23 @@ public T read(byte[] bytes, T v, Template tmpl) throws IOException { * @throws IOException */ public T read(ByteBuffer b, T v) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - return read(b, v, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + return read(b, v, tmpl); } /** * Deserializes buffer to object according to template. * * @since 0.6.0 - * @param b input buffer object + * @param b + * input buffer object * @param tmpl * @return * @throws IOException */ public T read(ByteBuffer b, Template tmpl) throws IOException { - return read(b, null, tmpl); + return read(b, null, tmpl); } /** @@ -418,27 +425,28 @@ public T read(ByteBuffer b, Template tmpl) throws IOException { * @param b * @param c * @return - * @throws IOException + * @throws IOException */ public T read(ByteBuffer b, Class c) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(c); - return read(b, null, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + return read(b, null, tmpl); } /** * Deserializes buffer to object according to template. * * @since 0.6.0 - * @param b input buffer object + * @param b + * input buffer object * @param v * @param tmpl * @return * @throws IOException */ public T read(ByteBuffer b, T v, Template tmpl) throws IOException { - BufferUnpacker u = createBufferUnpacker(b); - return tmpl.read(u, v); + BufferUnpacker u = createBufferUnpacker(b); + return tmpl.read(u, v); } /** @@ -452,22 +460,23 @@ public T read(ByteBuffer b, T v, Template tmpl) throws IOException { * @throws IOException */ public T read(InputStream in, T v) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - return read(in, v, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + return read(in, v, tmpl); } /** * Deserializes input stream to object according to template. * * @since 0.6.0 - * @param in input stream + * @param in + * input stream * @param tmpl * @return * @throws IOException */ public T read(InputStream in, Template tmpl) throws IOException { - return read(in, null, tmpl); + return read(in, null, tmpl); } /** @@ -480,24 +489,25 @@ public T read(InputStream in, Template tmpl) throws IOException { * @throws IOException */ public T read(InputStream in, Class c) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(c); - return read(in, null, tmpl); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + return read(in, null, tmpl); } /** * Deserializes input stream to object according to template * * @since 0.6.0 - * @param in input stream + * @param in + * input stream * @param v * @param tmpl * @return * @throws IOException */ public T read(InputStream in, T v, Template tmpl) throws IOException { - Unpacker u = createUnpacker(in); - return tmpl.read(u, v); + Unpacker u = createUnpacker(in); + return tmpl.read(u, v); } /** @@ -510,9 +520,9 @@ public T read(InputStream in, T v, Template tmpl) throws IOException { * @throws IOException */ public T convert(Value v, T to) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(to.getClass()); - return tmpl.read(new Converter(this, v), to); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(to.getClass()); + return tmpl.read(new Converter(this, v), to); } /** @@ -525,9 +535,9 @@ public T convert(Value v, T to) throws IOException { * @throws IOException */ public T convert(Value v, Class c) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(c); - return tmpl.read(new Converter(this, v), null); + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + return tmpl.read(new Converter(this, v), null); } /** @@ -539,15 +549,15 @@ public T convert(Value v, Class c) throws IOException { * @throws IOException */ public Value unconvert(T v) throws IOException { - Unconverter pk = new Unconverter(this); - if (v == null) { - pk.writeNil(); - } else { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(v.getClass()); - tmpl.write(pk, v); - } - return pk.getResult(); + Unconverter pk = new Unconverter(this); + if (v == null) { + pk.writeNil(); + } else { + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(v.getClass()); + tmpl.write(pk, v); + } + return pk.getResult(); } /** @@ -559,7 +569,7 @@ public Value unconvert(T v) throws IOException { * @param type */ public void register(Class type) { - registry.register(type); + registry.register(type); } /** @@ -572,7 +582,7 @@ public void register(Class type) { * @param template */ public void register(Class type, Template template) { - registry.register(type, template); + registry.register(type, template); } /** @@ -584,7 +594,7 @@ public void register(Class type, Template template) { * @return */ public boolean unregister(Class type) { - return registry.unregister(type); + return registry.unregister(type); } /** @@ -594,7 +604,7 @@ public boolean unregister(Class type) { * @since 0.6.0 */ public void unregister() { - registry.unregister(); + registry.unregister(); } /** @@ -607,12 +617,13 @@ public void unregister() { */ @SuppressWarnings("unchecked") public Template lookup(Class type) { - return registry.lookup(type); + return registry.lookup(type); } public Template lookup(Type type) { - return registry.lookup(type); + return registry.lookup(type); } + private static final MessagePack globalMessagePack = new MessagePack(); /** @@ -625,7 +636,7 @@ public Template lookup(Type type) { */ @Deprecated public static byte[] pack(Object v) throws IOException { - return globalMessagePack.write(v); + return globalMessagePack.write(v); } /** @@ -638,7 +649,7 @@ public static byte[] pack(Object v) throws IOException { */ @Deprecated public static void pack(OutputStream out, Object v) throws IOException { - globalMessagePack.write(out, v); + globalMessagePack.write(out, v); } /** @@ -652,7 +663,7 @@ public static void pack(OutputStream out, Object v) throws IOException { */ @Deprecated public static byte[] pack(T v, Template template) throws IOException { - return globalMessagePack.write(v, template); + return globalMessagePack.write(v, template); } /** @@ -667,8 +678,8 @@ public static byte[] pack(T v, Template template) throws IOException { */ @Deprecated public static void pack(OutputStream out, T v, Template template) - throws IOException { - globalMessagePack.write(out, v, template); + throws IOException { + globalMessagePack.write(out, v, template); } /** @@ -681,23 +692,19 @@ public static void pack(OutputStream out, T v, Template template) */ @Deprecated public static Value unpack(byte[] bytes) throws IOException { - return globalMessagePack.read(bytes); + return globalMessagePack.read(bytes); } @Deprecated - public static T unpack(byte[] bytes, Template template) - throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack) - .wrap(bytes); - return template.read(u, null); + public static T unpack(byte[] bytes, Template template) throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); + return template.read(u, null); } @Deprecated - public static T unpack(byte[] bytes, Template template, T to) - throws IOException { - BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack) - .wrap(bytes); - return template.read(u, to); + public static T unpack(byte[] bytes, Template template, T to) throws IOException { + BufferUnpacker u = new MessagePackBufferUnpacker(globalMessagePack).wrap(bytes); + return template.read(u, to); } /** @@ -711,7 +718,7 @@ public static T unpack(byte[] bytes, Template template, T to) */ @Deprecated public static T unpack(byte[] bytes, Class klass) throws IOException { - return globalMessagePack.read(bytes, klass); + return globalMessagePack.read(bytes, klass); } /** @@ -724,7 +731,7 @@ public static T unpack(byte[] bytes, Class klass) throws IOException { */ @Deprecated public static T unpack(byte[] bytes, T to) throws IOException { - return globalMessagePack.read(bytes, to); + return globalMessagePack.read(bytes, to); } /** @@ -737,7 +744,7 @@ public static T unpack(byte[] bytes, T to) throws IOException { */ @Deprecated public static Value unpack(InputStream in) throws IOException { - return globalMessagePack.read(in); + return globalMessagePack.read(in); } /** @@ -750,8 +757,8 @@ public static Value unpack(InputStream in) throws IOException { */ @Deprecated public static T unpack(InputStream in, Template tmpl) - throws IOException, MessageTypeException { - return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); + throws IOException, MessageTypeException { + return tmpl.read(new MessagePackUnpacker(globalMessagePack, in), null); } /** @@ -765,9 +772,8 @@ public static T unpack(InputStream in, Template tmpl) */ @Deprecated public static T unpack(InputStream in, Template tmpl, T to) - throws IOException, MessageTypeException { - return (T) tmpl - .read(new MessagePackUnpacker(globalMessagePack, in), to); + throws IOException, MessageTypeException { + return (T) tmpl.read(new MessagePackUnpacker(globalMessagePack, in), to); } /** @@ -781,8 +787,8 @@ public static T unpack(InputStream in, Template tmpl, T to) */ @Deprecated public static T unpack(InputStream in, Class klass) - throws IOException { - return globalMessagePack.read(in, klass); + throws IOException { + return globalMessagePack.read(in, klass); } /** @@ -796,6 +802,6 @@ public static T unpack(InputStream in, Class klass) */ @Deprecated public static T unpack(InputStream in, T to) throws IOException { - return globalMessagePack.read(in, to); + return globalMessagePack.read(in, to); } } diff --git a/src/main/java/org/msgpack/MessagePackable.java b/src/main/java/org/msgpack/MessagePackable.java index f6ccd9124..6d26e5294 100644 --- a/src/main/java/org/msgpack/MessagePackable.java +++ b/src/main/java/org/msgpack/MessagePackable.java @@ -21,9 +21,8 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public interface MessagePackable { public void writeTo(Packer pk) throws IOException; + public void readFrom(Unpacker u) throws IOException; } - diff --git a/src/main/java/org/msgpack/MessageTypeException.java b/src/main/java/org/msgpack/MessageTypeException.java index 1f0b82cb4..3f9cb4695 100644 --- a/src/main/java/org/msgpack/MessageTypeException.java +++ b/src/main/java/org/msgpack/MessageTypeException.java @@ -17,7 +17,6 @@ // package org.msgpack; - @SuppressWarnings("serial") public class MessageTypeException extends RuntimeException { public MessageTypeException() { @@ -36,4 +35,3 @@ public MessageTypeException(Throwable cause) { super(cause); } } - diff --git a/src/main/java/org/msgpack/annotation/Beans.java b/src/main/java/org/msgpack/annotation/Beans.java index a289edc24..587a46653 100644 --- a/src/main/java/org/msgpack/annotation/Beans.java +++ b/src/main/java/org/msgpack/annotation/Beans.java @@ -24,8 +24,8 @@ import org.msgpack.template.FieldOption; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface Beans { FieldOption value() default FieldOption.DEFAULT; } diff --git a/src/main/java/org/msgpack/annotation/Delegate.java b/src/main/java/org/msgpack/annotation/Delegate.java index 685db0670..1d1ea177d 100644 --- a/src/main/java/org/msgpack/annotation/Delegate.java +++ b/src/main/java/org/msgpack/annotation/Delegate.java @@ -22,8 +22,8 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface Delegate { String value(); } diff --git a/src/main/java/org/msgpack/annotation/Ignore.java b/src/main/java/org/msgpack/annotation/Ignore.java index 909c411d9..2205afe8d 100644 --- a/src/main/java/org/msgpack/annotation/Ignore.java +++ b/src/main/java/org/msgpack/annotation/Ignore.java @@ -22,7 +22,6 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - @Target({ ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface Ignore { diff --git a/src/main/java/org/msgpack/annotation/Index.java b/src/main/java/org/msgpack/annotation/Index.java index 49d514b8a..0a31499af 100644 --- a/src/main/java/org/msgpack/annotation/Index.java +++ b/src/main/java/org/msgpack/annotation/Index.java @@ -22,7 +22,6 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - @Target({ ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface Index { diff --git a/src/main/java/org/msgpack/annotation/Message.java b/src/main/java/org/msgpack/annotation/Message.java index 279f2d8d3..759e95126 100644 --- a/src/main/java/org/msgpack/annotation/Message.java +++ b/src/main/java/org/msgpack/annotation/Message.java @@ -24,8 +24,8 @@ import org.msgpack.template.FieldOption; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface Message { FieldOption value() default FieldOption.DEFAULT; } diff --git a/src/main/java/org/msgpack/annotation/MessagePackBeans.java b/src/main/java/org/msgpack/annotation/MessagePackBeans.java index 5427050e3..5d0b0a794 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackBeans.java +++ b/src/main/java/org/msgpack/annotation/MessagePackBeans.java @@ -24,13 +24,14 @@ import org.msgpack.template.FieldOption; - /** * Annotation for java beans class + * * @author takeshita - * + * */ -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface MessagePackBeans { FieldOption value() default FieldOption.DEFAULT; } diff --git a/src/main/java/org/msgpack/annotation/MessagePackDelegate.java b/src/main/java/org/msgpack/annotation/MessagePackDelegate.java index 04fb6cb1e..84875684c 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackDelegate.java +++ b/src/main/java/org/msgpack/annotation/MessagePackDelegate.java @@ -22,8 +22,8 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface MessagePackDelegate { - String value(); + String value(); } diff --git a/src/main/java/org/msgpack/annotation/MessagePackMessage.java b/src/main/java/org/msgpack/annotation/MessagePackMessage.java index 0d534e4fc..cccbc493e 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackMessage.java +++ b/src/main/java/org/msgpack/annotation/MessagePackMessage.java @@ -24,8 +24,8 @@ import org.msgpack.template.FieldOption; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface MessagePackMessage { - FieldOption value() default FieldOption.DEFAULT; + FieldOption value() default FieldOption.DEFAULT; } diff --git a/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java b/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java index 54d07b9ca..6b9c62a49 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java +++ b/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java @@ -22,7 +22,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface MessagePackOrdinalEnum { } diff --git a/src/main/java/org/msgpack/annotation/NotNullable.java b/src/main/java/org/msgpack/annotation/NotNullable.java index 058c5781e..98fe99281 100644 --- a/src/main/java/org/msgpack/annotation/NotNullable.java +++ b/src/main/java/org/msgpack/annotation/NotNullable.java @@ -22,8 +22,8 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - -@Target({ ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) +@Target({ ElementType.TYPE, ElementType.FIELD, ElementType.PARAMETER, + ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface NotNullable { } diff --git a/src/main/java/org/msgpack/annotation/Optional.java b/src/main/java/org/msgpack/annotation/Optional.java index c08bf0674..e019d8dab 100644 --- a/src/main/java/org/msgpack/annotation/Optional.java +++ b/src/main/java/org/msgpack/annotation/Optional.java @@ -22,7 +22,6 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - @Target({ ElementType.FIELD, ElementType.PARAMETER, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface Optional { diff --git a/src/main/java/org/msgpack/annotation/OrdinalEnum.java b/src/main/java/org/msgpack/annotation/OrdinalEnum.java index 1ded8a94a..25d756316 100644 --- a/src/main/java/org/msgpack/annotation/OrdinalEnum.java +++ b/src/main/java/org/msgpack/annotation/OrdinalEnum.java @@ -22,7 +22,7 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; - -@Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) public @interface OrdinalEnum { } diff --git a/src/main/java/org/msgpack/io/AbstractInput.java b/src/main/java/org/msgpack/io/AbstractInput.java index 7f82c0b45..86de62f4b 100644 --- a/src/main/java/org/msgpack/io/AbstractInput.java +++ b/src/main/java/org/msgpack/io/AbstractInput.java @@ -17,7 +17,6 @@ // package org.msgpack.io; - abstract class AbstractInput implements Input { private int readByteCount = 0; diff --git a/src/main/java/org/msgpack/io/BufferReferer.java b/src/main/java/org/msgpack/io/BufferReferer.java index 91feb3259..4e45740b1 100644 --- a/src/main/java/org/msgpack/io/BufferReferer.java +++ b/src/main/java/org/msgpack/io/BufferReferer.java @@ -20,8 +20,6 @@ import java.io.IOException; import java.nio.ByteBuffer; - public interface BufferReferer { public void refer(ByteBuffer bb, boolean gift) throws IOException; } - diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index e7bdbdae1..152764ddb 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.nio.ByteBuffer; - abstract class BufferedOutput implements Output { protected byte[] buffer; protected int filled; @@ -28,7 +27,7 @@ abstract class BufferedOutput implements Output { protected ByteBuffer castByteBuffer; public BufferedOutput(int bufferSize) { - if(bufferSize < 9) { + if (bufferSize < 9) { bufferSize = 9; } this.bufferSize = bufferSize; @@ -40,12 +39,12 @@ private void allocateNewBuffer() { } private void reserve(int len) throws IOException { - if(buffer == null) { + if (buffer == null) { allocateNewBuffer(); return; } - if(bufferSize - filled < len) { - if(!flushBuffer(buffer, 0, filled)) { + if (bufferSize - filled < len) { + if (!flushBuffer(buffer, 0, filled)) { buffer = new byte[bufferSize]; castByteBuffer = ByteBuffer.wrap(buffer); } @@ -55,18 +54,18 @@ private void reserve(int len) throws IOException { @Override public void write(byte[] b, int off, int len) throws IOException { - if(buffer == null) { - if(bufferSize < len) { + if (buffer == null) { + if (bufferSize < len) { flushBuffer(b, off, len); return; } allocateNewBuffer(); } - if(len <= bufferSize - filled) { + if (len <= bufferSize - filled) { System.arraycopy(b, off, buffer, filled, len); filled += len; - } else if(len <= bufferSize) { - if(!flushBuffer(buffer, 0, filled)) { + } else if (len <= bufferSize) { + if (!flushBuffer(buffer, 0, filled)) { allocateNewBuffer(); } filled = 0; @@ -81,18 +80,18 @@ public void write(byte[] b, int off, int len) throws IOException { @Override public void write(ByteBuffer bb) throws IOException { int len = bb.remaining(); - if(buffer == null) { - if(bufferSize < len) { + if (buffer == null) { + if (bufferSize < len) { flushByteBuffer(bb); return; } allocateNewBuffer(); } - if(len <= bufferSize - filled) { + if (len <= bufferSize - filled) { bb.get(buffer, filled, len); filled += len; - } else if(len <= bufferSize) { - if(!flushBuffer(buffer, 0, filled)) { + } else if (len <= bufferSize) { + if (!flushBuffer(buffer, 0, filled)) { allocateNewBuffer(); } filled = 0; @@ -194,8 +193,8 @@ public void writeByteAndDouble(byte b, double v) throws IOException { @Override public void flush() throws IOException { - if(filled > 0) { - if(!flushBuffer(buffer, 0, filled)) { + if (filled > 0) { + if (!flushBuffer(buffer, 0, filled)) { buffer = null; } filled = 0; @@ -203,10 +202,10 @@ public void flush() throws IOException { } protected void flushByteBuffer(ByteBuffer bb) throws IOException { - if(bb.hasArray()) { + if (bb.hasArray()) { byte[] array = bb.array(); int offset = bb.arrayOffset(); - flushBuffer(array, offset+bb.position(), bb.remaining()); + flushBuffer(array, offset + bb.position(), bb.remaining()); bb.position(bb.limit()); } else { byte[] buf = new byte[bb.remaining()]; @@ -215,6 +214,6 @@ protected void flushByteBuffer(ByteBuffer bb) throws IOException { } } - protected abstract boolean flushBuffer(byte[] buffer, int off, int len) throws IOException; + protected abstract boolean flushBuffer(byte[] buffer, int off, int len) + throws IOException; } - diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index 1181b792f..277640d03 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -21,7 +21,6 @@ import java.nio.ByteBuffer; import java.nio.BufferOverflowException; - public class ByteBufferOutput implements Output { public static interface ExpandBufferCallback { ByteBuffer call(ByteBuffer buffer, int len) throws IOException; @@ -40,10 +39,10 @@ public ByteBufferOutput(ByteBuffer buffer, ExpandBufferCallback callback) { } private void reserve(int len) throws IOException { - if(len <= buffer.remaining()) { + if (len <= buffer.remaining()) { return; } - if(callback == null) { + if (callback == null) { throw new BufferOverflowException(); } buffer = callback.call(buffer, len); @@ -147,4 +146,3 @@ public void flush() throws IOException { public void close() { } } - diff --git a/src/main/java/org/msgpack/io/EndOfBufferException.java b/src/main/java/org/msgpack/io/EndOfBufferException.java index 0e8e739c4..96217767c 100644 --- a/src/main/java/org/msgpack/io/EndOfBufferException.java +++ b/src/main/java/org/msgpack/io/EndOfBufferException.java @@ -19,7 +19,6 @@ import java.io.EOFException; - @SuppressWarnings("serial") public class EndOfBufferException extends EOFException { public EndOfBufferException() { @@ -30,4 +29,3 @@ public EndOfBufferException(String s) { super(s); } } - diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 50e857fda..4058e461c 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.io.Closeable; - public interface Input extends Closeable { public int read(byte[] b, int off, int len) throws IOException; @@ -46,4 +45,3 @@ public interface Input extends Closeable { public void resetReadByteCount(); } - diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index a390d8715..6d4336511 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -22,7 +22,6 @@ import java.util.LinkedList; import java.nio.ByteBuffer; - public class LinkedBufferInput extends AbstractInput { private LinkedList link; @@ -45,7 +44,7 @@ public LinkedBufferInput(int bufferSize) { } public int read(byte[] b, int off, int len) throws EOFException { - if(link.isEmpty()) { + if (link.isEmpty()) { return 0; } int olen = len; @@ -104,26 +103,26 @@ public byte readByte() throws EOFException { } byte result = bb.get(); incrReadOneByteCount(); - if(bb.remaining() == 0) { + if (bb.remaining() == 0) { removeFirstLink(bb); } return result; } public void advance() { - if(link.isEmpty()) { + if (link.isEmpty()) { return; } int len = nextAdvance; ByteBuffer bb; - while(true) { + while (true) { bb = link.peekFirst(); - if(len < bb.remaining()) { - bb.position(bb.position()+len); + if (len < bb.remaining()) { + bb.position(bb.position() + len); break; } len -= bb.remaining(); - if(!removeFirstLink(bb)) { + if (!removeFirstLink(bb)) { break; } } @@ -132,8 +131,8 @@ public void advance() { } private boolean removeFirstLink(ByteBuffer first) { - if(link.size() == 1) { - if(writable >= 0) { + if (link.size() == 1) { + if (writable >= 0) { first.position(0); first.limit(0); writable = first.capacity(); @@ -170,10 +169,10 @@ private void requireMore(int n) throws EOFException { private ByteBuffer require(int n) throws EOFException { ByteBuffer bb = link.peekFirst(); - if(bb == null) { + if (bb == null) { throw new EndOfBufferException(); } - if(n <= bb.remaining()) { + if (n <= bb.remaining()) { nextAdvance = n; return bb; } else { @@ -226,8 +225,8 @@ public void feed(byte[] b, int off, int len) { } public void feed(byte[] b, int off, int len, boolean nocopy) { - if(nocopy) { - if(writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { + if (nocopy) { + if (writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { link.addFirst(ByteBuffer.wrap(b, off, len)); return; } @@ -237,7 +236,7 @@ public void feed(byte[] b, int off, int len, boolean nocopy) { } ByteBuffer bb = link.peekLast(); - if(len <= writable) { + if (len <= writable) { int pos = bb.position(); bb.position(bb.limit()); bb.limit(bb.limit() + len); @@ -247,7 +246,7 @@ public void feed(byte[] b, int off, int len, boolean nocopy) { return; } - if(writable > 0) { + if (writable > 0) { int pos = bb.position(); bb.position(bb.limit()); bb.limit(bb.limit() + writable); @@ -272,8 +271,8 @@ public void feed(ByteBuffer b) { } public void feed(ByteBuffer buf, boolean nocopy) { - if(nocopy) { - if(writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { + if (nocopy) { + if (writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { link.addFirst(buf); return; } @@ -285,7 +284,7 @@ public void feed(ByteBuffer buf, boolean nocopy) { int rem = buf.remaining(); ByteBuffer bb = link.peekLast(); - if(rem <= writable) { + if (rem <= writable) { int pos = bb.position(); bb.position(bb.limit()); bb.limit(bb.limit() + rem); @@ -295,7 +294,7 @@ public void feed(ByteBuffer buf, boolean nocopy) { return; } - if(writable > 0) { + if (writable > 0) { int pos = bb.position(); bb.position(bb.limit()); bb.limit(bb.limit() + writable); @@ -317,7 +316,7 @@ public void feed(ByteBuffer buf, boolean nocopy) { } public void clear() { - if(writable > 0) { + if (writable > 0) { ByteBuffer bb = link.getLast(); link.clear(); bb.position(0); @@ -333,4 +332,3 @@ public void clear() { public void close() { } } - diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index 5a9aa2a71..a40bfc938 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -19,7 +19,6 @@ import java.util.LinkedList; - public final class LinkedBufferOutput extends BufferedOutput { private static final class Link { final byte[] buffer; @@ -75,4 +74,3 @@ public void clear() { public void close() { } } - diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index 278d6fa49..71b7c2fd0 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -22,7 +22,6 @@ import java.io.Flushable; import java.nio.ByteBuffer; - public interface Output extends Closeable, Flushable { public void write(byte[] b, int off, int len) throws IOException; @@ -52,4 +51,3 @@ public interface Output extends Closeable, Flushable { public void writeByteAndDouble(byte b, double v) throws IOException; } - diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index da5f56a36..b499eece9 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -22,7 +22,6 @@ import java.io.IOException; import java.io.EOFException; - public class StreamInput extends AbstractInput { private final InputStream in; @@ -57,11 +56,11 @@ public boolean tryRefer(BufferReferer ref, int size) throws IOException { public byte readByte() throws IOException { int n = in.read(); - if(n < 0) { + if (n < 0) { throw new EOFException(); } incrReadOneByteCount(); - return (byte)n; + return (byte) n; } public void advance() { @@ -113,4 +112,3 @@ public void close() throws IOException { in.close(); } } - diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index c571e48d3..61783fb88 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -22,7 +22,6 @@ import java.io.DataOutputStream; import java.nio.ByteBuffer; - public class StreamOutput implements Output { private DataOutputStream out; @@ -37,13 +36,13 @@ public void write(byte[] b, int off, int len) throws IOException { @Override public void write(ByteBuffer bb) throws IOException { - if(bb.hasArray()) { + if (bb.hasArray()) { byte[] array = bb.array(); int offset = bb.arrayOffset(); out.write(array, offset, bb.remaining()); bb.position(bb.limit()); } else { - //int pos = bb.position(); + // int pos = bb.position(); byte[] buf = new byte[bb.remaining()]; bb.get(buf); out.write(buf); @@ -125,4 +124,3 @@ public void close() throws IOException { out.close(); } } - diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index f8738a1f0..97a14de13 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -24,12 +24,11 @@ import org.msgpack.MessagePack; import org.msgpack.template.Template; - public abstract class AbstractPacker implements Packer { protected MessagePack msgpack; protected AbstractPacker(MessagePack msgpack) { - this.msgpack = msgpack; + this.msgpack = msgpack; } @Override @@ -76,7 +75,7 @@ public Packer write(double o) throws IOException { @Override public Packer write(Boolean o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeBoolean(o); @@ -86,7 +85,7 @@ public Packer write(Boolean o) throws IOException { @Override public Packer write(Byte o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeByte(o); @@ -96,7 +95,7 @@ public Packer write(Byte o) throws IOException { @Override public Packer write(Short o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeShort(o); @@ -106,7 +105,7 @@ public Packer write(Short o) throws IOException { @Override public Packer write(Integer o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeInt(o); @@ -116,7 +115,7 @@ public Packer write(Integer o) throws IOException { @Override public Packer write(Long o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeLong(o); @@ -126,7 +125,7 @@ public Packer write(Long o) throws IOException { @Override public Packer write(BigInteger o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeBigInteger(o); @@ -136,7 +135,7 @@ public Packer write(BigInteger o) throws IOException { @Override public Packer write(Float o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeFloat(o); @@ -146,7 +145,7 @@ public Packer write(Float o) throws IOException { @Override public Packer write(Double o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeDouble(o); @@ -156,7 +155,7 @@ public Packer write(Double o) throws IOException { @Override public Packer write(byte[] o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeByteArray(o); @@ -166,7 +165,7 @@ public Packer write(byte[] o) throws IOException { @Override public Packer write(byte[] o, int off, int len) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeByteArray(o, off, len); @@ -176,7 +175,7 @@ public Packer write(byte[] o, int off, int len) throws IOException { @Override public Packer write(ByteBuffer o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeByteBuffer(o); @@ -186,7 +185,7 @@ public Packer write(ByteBuffer o) throws IOException { @Override public Packer write(String o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { writeString(o); @@ -197,7 +196,7 @@ public Packer write(String o) throws IOException { @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public Packer write(Object o) throws IOException { - if(o == null) { + if (o == null) { writeNil(); } else { Template tmpl = msgpack.lookup(o.getClass()); @@ -208,7 +207,7 @@ public Packer write(Object o) throws IOException { @Override public Packer write(Value v) throws IOException { - if(v == null) { + if (v == null) { writeNil(); } else { v.writeTo(this); @@ -216,8 +215,6 @@ public Packer write(Value v) throws IOException { return this; } - - @Override public Packer writeArrayEnd() throws IOException { writeArrayEnd(true); @@ -260,4 +257,3 @@ protected void writeByteArray(byte[] b) throws IOException { abstract protected void writeString(String s) throws IOException; } - diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index 32b02be57..bcdf00921 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -19,7 +19,7 @@ /** * This class is buffer-specific serializer. - * + * * @version 0.6.0 * @see {@link org.msgpack.packer.Packer} */ @@ -28,4 +28,3 @@ public interface BufferPacker extends Packer { public void clear(); } - diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 361672437..6ebf990b4 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -20,16 +20,16 @@ import org.msgpack.MessagePack; import org.msgpack.io.LinkedBufferOutput; - public class MessagePackBufferPacker extends MessagePackPacker implements BufferPacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer + // size public MessagePackBufferPacker(MessagePack msgpack) { - this(msgpack, DEFAULT_BUFFER_SIZE); + this(msgpack, DEFAULT_BUFFER_SIZE); } public MessagePackBufferPacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new LinkedBufferOutput(bufferSize)); + super(msgpack, new LinkedBufferOutput(bufferSize)); } @Override @@ -43,4 +43,3 @@ public void clear() { ((LinkedBufferOutput) out).clear(); } } - diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index f83258cb4..73a4ce377 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -27,7 +27,6 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; - public class MessagePackPacker extends AbstractPacker { protected final Output out; @@ -44,8 +43,8 @@ protected MessagePackPacker(MessagePack msgpack, Output out) { @Override protected void writeByte(byte d) throws IOException { - if(d < -(1<<5)) { - out.writeByteAndByte((byte)0xd0, d); + if (d < -(1 << 5)) { + out.writeByteAndByte((byte) 0xd0, d); } else { out.writeByte(d); } @@ -54,24 +53,24 @@ protected void writeByte(byte d) throws IOException { @Override protected void writeShort(short d) throws IOException { - if(d < -(1<<5)) { - if(d < -(1<<7)) { + if (d < -(1 << 5)) { + if (d < -(1 << 7)) { // signed 16 - out.writeByteAndShort((byte)0xd1, d); + out.writeByteAndShort((byte) 0xd1, d); } else { // signed 8 - out.writeByteAndByte((byte)0xd0, (byte)d); + out.writeByteAndByte((byte) 0xd0, (byte) d); } - } else if(d < (1<<7)) { + } else if (d < (1 << 7)) { // fixnum - out.writeByte((byte)d); + out.writeByte((byte) d); } else { - if(d < (1<<8)) { + if (d < (1 << 8)) { // unsigned 8 - out.writeByteAndByte((byte)0xcc, (byte)d); + out.writeByteAndByte((byte) 0xcc, (byte) d); } else { // unsigned 16 - out.writeByteAndShort((byte)0xcd, d); + out.writeByteAndShort((byte) 0xcd, d); } } stack.reduceCount(); @@ -79,30 +78,30 @@ protected void writeShort(short d) throws IOException { @Override protected void writeInt(int d) throws IOException { - if(d < -(1<<5)) { - if(d < -(1<<15)) { + if (d < -(1 << 5)) { + if (d < -(1 << 15)) { // signed 32 - out.writeByteAndInt((byte)0xd2, d); - } else if(d < -(1<<7)) { + out.writeByteAndInt((byte) 0xd2, d); + } else if (d < -(1 << 7)) { // signed 16 - out.writeByteAndShort((byte)0xd1, (short)d); + out.writeByteAndShort((byte) 0xd1, (short) d); } else { // signed 8 - out.writeByteAndByte((byte)0xd0, (byte)d); + out.writeByteAndByte((byte) 0xd0, (byte) d); } - } else if(d < (1<<7)) { + } else if (d < (1 << 7)) { // fixnum - out.writeByte((byte)d); + out.writeByte((byte) d); } else { - if(d < (1<<8)) { + if (d < (1 << 8)) { // unsigned 8 - out.writeByteAndByte((byte)0xcc, (byte)d); - } else if(d < (1<<16)) { + out.writeByteAndByte((byte) 0xcc, (byte) d); + } else if (d < (1 << 16)) { // unsigned 16 - out.writeByteAndShort((byte)0xcd, (short)d); + out.writeByteAndShort((byte) 0xcd, (short) d); } else { // unsigned 32 - out.writeByteAndInt((byte)0xce, d); + out.writeByteAndInt((byte) 0xce, d); } } stack.reduceCount(); @@ -110,43 +109,43 @@ protected void writeInt(int d) throws IOException { @Override protected void writeLong(long d) throws IOException { - if(d < -(1L<<5)) { - if(d < -(1L<<15)) { - if(d < -(1L<<31)) { + if (d < -(1L << 5)) { + if (d < -(1L << 15)) { + if (d < -(1L << 31)) { // signed 64 - out.writeByteAndLong((byte)0xd3, d); + out.writeByteAndLong((byte) 0xd3, d); } else { // signed 32 - out.writeByteAndInt((byte)0xd2, (int)d); + out.writeByteAndInt((byte) 0xd2, (int) d); } } else { - if(d < -(1<<7)) { + if (d < -(1 << 7)) { // signed 16 - out.writeByteAndShort((byte)0xd1, (short)d); + out.writeByteAndShort((byte) 0xd1, (short) d); } else { // signed 8 - out.writeByteAndByte((byte)0xd0, (byte)d); + out.writeByteAndByte((byte) 0xd0, (byte) d); } } - } else if(d < (1<<7)) { + } else if (d < (1 << 7)) { // fixnum - out.writeByte((byte)d); + out.writeByte((byte) d); } else { - if(d < (1L<<16)) { - if(d < (1<<8)) { + if (d < (1L << 16)) { + if (d < (1 << 8)) { // unsigned 8 - out.writeByteAndByte((byte)0xcc, (byte)d); + out.writeByteAndByte((byte) 0xcc, (byte) d); } else { // unsigned 16 - out.writeByteAndShort((byte)0xcd, (short)d); + out.writeByteAndShort((byte) 0xcd, (short) d); } } else { - if(d < (1L<<32)) { + if (d < (1L << 32)) { // unsigned 32 - out.writeByteAndInt((byte)0xce, (int)d); + out.writeByteAndInt((byte) 0xce, (int) d); } else { // unsigned 64 - out.writeByteAndLong((byte)0xcf, d); + out.writeByteAndLong((byte) 0xcf, d); } } } @@ -155,50 +154,52 @@ protected void writeLong(long d) throws IOException { @Override protected void writeBigInteger(BigInteger d) throws IOException { - if(d.bitLength() <= 63) { + if (d.bitLength() <= 63) { writeLong(d.longValue()); stack.reduceCount(); - } else if(d.bitLength() == 64 && d.signum() == 1) { + } else if (d.bitLength() == 64 && d.signum() == 1) { // unsigned 64 - out.writeByteAndLong((byte)0xcf, d.longValue()); + out.writeByteAndLong((byte) 0xcf, d.longValue()); stack.reduceCount(); } else { - throw new MessageTypeException("MessagePack can't serialize BigInteger larger than (2^64)-1"); + throw new MessageTypeException( + "MessagePack can't serialize BigInteger larger than (2^64)-1"); } } @Override protected void writeFloat(float d) throws IOException { - out.writeByteAndFloat((byte)0xca, d); + out.writeByteAndFloat((byte) 0xca, d); stack.reduceCount(); } @Override protected void writeDouble(double d) throws IOException { - out.writeByteAndDouble((byte)0xcb, d); + out.writeByteAndDouble((byte) 0xcb, d); stack.reduceCount(); } @Override protected void writeBoolean(boolean d) throws IOException { - if(d) { + if (d) { // true - out.writeByte((byte)0xc3); + out.writeByte((byte) 0xc3); } else { // false - out.writeByte((byte)0xc2); + out.writeByte((byte) 0xc2); } stack.reduceCount(); } @Override - protected void writeByteArray(byte[] b, int off, int len) throws IOException { - if(len < 32) { - out.writeByte((byte)(0xa0 | len)); - } else if(len < 65536) { - out.writeByteAndShort((byte)0xda, (short)len); + protected void writeByteArray(byte[] b, int off, int len) + throws IOException { + if (len < 32) { + out.writeByte((byte) (0xa0 | len)); + } else if (len < 65536) { + out.writeByteAndShort((byte) 0xda, (short) len); } else { - out.writeByteAndInt((byte)0xdb, len); + out.writeByteAndInt((byte) 0xdb, len); } out.write(b, off, len); stack.reduceCount(); @@ -207,12 +208,12 @@ protected void writeByteArray(byte[] b, int off, int len) throws IOException { @Override protected void writeByteBuffer(ByteBuffer bb) throws IOException { int len = bb.remaining(); - if(len < 32) { - out.writeByte((byte)(0xa0 | len)); - } else if(len < 65536) { - out.writeByteAndShort((byte)0xda, (short)len); + if (len < 32) { + out.writeByte((byte) (0xa0 | len)); + } else if (len < 65536) { + out.writeByteAndShort((byte) 0xda, (short) len); } else { - out.writeByteAndInt((byte)0xdb, len); + out.writeByteAndInt((byte) 0xdb, len); } int pos = bb.position(); try { @@ -238,7 +239,7 @@ protected void writeString(String s) throws IOException { @Override public Packer writeNil() throws IOException { - out.writeByte((byte)0xc0); + out.writeByte((byte) 0xc0); stack.reduceCount(); return this; } @@ -246,13 +247,13 @@ public Packer writeNil() throws IOException { @Override public Packer writeArrayBegin(int size) throws IOException { // TODO check size < 0? - if(size < 16) { + if (size < 16) { // FixArray - out.writeByte((byte)(0x90 | size)); - } else if(size < 65536) { - out.writeByteAndShort((byte)0xdc, (short)size); + out.writeByte((byte) (0x90 | size)); + } else if (size < 65536) { + out.writeByteAndShort((byte) 0xdc, (short) size); } else { - out.writeByteAndInt((byte)0xdd, size); + out.writeByteAndInt((byte) 0xdd, size); } stack.reduceCount(); stack.pushArray(size); @@ -261,16 +262,18 @@ public Packer writeArrayBegin(int size) throws IOException { @Override public Packer writeArrayEnd(boolean check) throws IOException { - if(!stack.topIsArray()) { - throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); + if (!stack.topIsArray()) { + throw new MessageTypeException( + "writeArrayEnd() is called but writeArrayBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeArrayEnd(check=true) is called but the array is not end: "+remain); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeArrayEnd(check=true) is called but the array is not end: " + remain); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } @@ -281,13 +284,13 @@ public Packer writeArrayEnd(boolean check) throws IOException { @Override public Packer writeMapBegin(int size) throws IOException { // TODO check size < 0? - if(size < 16) { + if (size < 16) { // FixMap - out.writeByte((byte)(0x80 | size)); - } else if(size < 65536) { - out.writeByteAndShort((byte)0xde, (short)size); + out.writeByte((byte) (0x80 | size)); + } else if (size < 65536) { + out.writeByteAndShort((byte) 0xde, (short) size); } else { - out.writeByteAndInt((byte)0xdf, size); + out.writeByteAndInt((byte) 0xdf, size); } stack.reduceCount(); stack.pushMap(size); @@ -296,16 +299,18 @@ public Packer writeMapBegin(int size) throws IOException { @Override public Packer writeMapEnd(boolean check) throws IOException { - if(!stack.topIsMap()) { - throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); + if (!stack.topIsMap()) { + throw new MessageTypeException( + "writeMapEnd() is called but writeMapBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeMapEnd(check=true) is called but the map is not end: "+remain); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeMapEnd(check=true) is called but the map is not end: " + remain); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } @@ -327,4 +332,3 @@ public void close() throws IOException { out.close(); } } - diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 9663c4381..80ce64fb1 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -28,7 +28,7 @@ * Standard serializer in MessagePack for Java. It allows users to serialize * objects like String, List, Map, byte[], * primitive types and so on. - * + * * @version 0.6.0 */ public interface Packer extends Closeable, Flushable { @@ -74,7 +74,6 @@ public interface Packer extends Closeable, Flushable { public Packer write(Object o) throws IOException; - public Packer writeNil() throws IOException; public Packer writeArrayBegin(int size) throws IOException; @@ -89,4 +88,3 @@ public interface Packer extends Closeable, Flushable { public Packer writeMapEnd() throws IOException; } - diff --git a/src/main/java/org/msgpack/packer/PackerStack.java b/src/main/java/org/msgpack/packer/PackerStack.java index f017c3921..4e56118b6 100644 --- a/src/main/java/org/msgpack/packer/PackerStack.java +++ b/src/main/java/org/msgpack/packer/PackerStack.java @@ -19,7 +19,6 @@ import org.msgpack.MessageTypeException; - public final class PackerStack { private int top; private byte[] types; @@ -47,19 +46,21 @@ public void pushArray(int size) { public void pushMap(int size) { top++; types[top] = TYPE_MAP; - counts[top] = size*2; + counts[top] = size * 2; } public void checkCount() { - if(counts[top] > 0) { + if (counts[top] > 0) { return; } - if(types[top] == TYPE_ARRAY) { - throw new MessageTypeException("Array is end but writeArrayEnd() is not called"); + if (types[top] == TYPE_ARRAY) { + throw new MessageTypeException( + "Array is end but writeArrayEnd() is not called"); - } else if(types[top] == TYPE_MAP) { - throw new MessageTypeException("Map is end but writeMapEnd() is not called"); + } else if (types[top] == TYPE_MAP) { + throw new MessageTypeException( + "Map is end but writeMapEnd() is not called"); } else { // empty @@ -95,4 +96,3 @@ public void clear() { top = 0; } } - diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index e7ccf5e44..c32162341 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -26,19 +26,19 @@ import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; - public class Unconverter extends AbstractPacker { private PackerStack stack; private Object[] values; private Value result; - //private Value topContainer; + + // private Value topContainer; public Unconverter() { - this(new MessagePack()); + this(new MessagePack()); } public Unconverter(MessagePack msgpack) { - super(msgpack); + super(msgpack); this.stack = new PackerStack(); this.values = new Object[PackerStack.MAX_STACK_SIZE]; } @@ -114,8 +114,8 @@ public Packer writeNil() throws IOException { @Override public Packer writeArrayBegin(int size) throws IOException { - if(size == 0) { - //Value[] array = new Value[size]; + if (size == 0) { + // Value[] array = new Value[size]; putContainer(ValueFactory.createArrayValue()); stack.pushArray(0); values[stack.getDepth()] = null; @@ -130,21 +130,23 @@ public Packer writeArrayBegin(int size) throws IOException { @Override public Packer writeArrayEnd(boolean check) throws IOException { - if(!stack.topIsArray()) { - throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); + if (!stack.topIsArray()) { + throw new MessageTypeException( + "writeArrayEnd() is called but writeArrayBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeArrayEnd(check=true) is called but the array is not end"); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeArrayEnd(check=true) is called but the array is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } stack.pop(); - if(stack.getDepth() <= 0) { + if (stack.getDepth() <= 0) { this.result = (Value) values[0]; } return this; @@ -153,12 +155,12 @@ public Packer writeArrayEnd(boolean check) throws IOException { @Override public Packer writeMapBegin(int size) throws IOException { stack.checkCount(); - if(size == 0) { + if (size == 0) { putContainer(ValueFactory.createMapValue()); stack.pushMap(0); values[stack.getDepth()] = null; } else { - Value[] array = new Value[size*2]; + Value[] array = new Value[size * 2]; putContainer(ValueFactory.createMapValue(array, true)); stack.pushMap(size); values[stack.getDepth()] = array; @@ -168,21 +170,23 @@ public Packer writeMapBegin(int size) throws IOException { @Override public Packer writeMapEnd(boolean check) throws IOException { - if(!stack.topIsMap()) { - throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); + if (!stack.topIsMap()) { + throw new MessageTypeException( + "writeMapEnd() is called but writeMapBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeMapEnd(check=true) is called but the map is not end"); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeMapEnd(check=true) is called but the map is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } stack.pop(); - if(stack.getDepth() <= 0) { + if (stack.getDepth() <= 0) { this.result = (Value) values[0]; } return this; @@ -195,22 +199,22 @@ public Packer write(Value v) throws IOException { } private void put(Value v) { - if(stack.getDepth() <= 0) { + if (stack.getDepth() <= 0) { this.result = v; } else { stack.checkCount(); - Value[] array = (Value[])values[stack.getDepth()]; + Value[] array = (Value[]) values[stack.getDepth()]; array[array.length - stack.getTopCount()] = v; stack.reduceCount(); } } private void putContainer(Value v) { - if(stack.getDepth() <= 0) { + if (stack.getDepth() <= 0) { values[0] = (Object) v; } else { stack.checkCount(); - Value[] array = (Value[])values[stack.getDepth()]; + Value[] array = (Value[]) values[stack.getDepth()]; array[array.length - stack.getTopCount()] = v; stack.reduceCount(); } @@ -224,4 +228,3 @@ public void flush() throws IOException { public void close() throws IOException { } } - diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java index e77b36d86..6fadccadb 100644 --- a/src/main/java/org/msgpack/template/AbstractTemplate.java +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -21,7 +21,6 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public abstract class AbstractTemplate implements Template { public void write(Packer pk, T v) throws IOException { @@ -32,4 +31,3 @@ public T read(Unpacker u, T to) throws IOException { return read(u, to, false); } } - diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 6c35174ca..0712644cc 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -18,11 +18,11 @@ package org.msgpack.template; import java.io.IOException; -import org.msgpack.*; + +import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public class AnyTemplate extends AbstractTemplate { private TemplateRegistry registry; @@ -34,20 +34,21 @@ public AnyTemplate(TemplateRegistry registry) { @SuppressWarnings("unchecked") public void write(Packer pk, T target, boolean required) throws IOException { if (target == null) { - if(required) { - throw new MessageTypeException("Attempted to write null"); + if (required) { + throw new MessageTypeException("Attempted to write null"); } - pk.writeNil(); - } else { - registry.lookup(target.getClass()).write(pk, target); - } + pk.writeNil(); + } else { + registry.lookup(target.getClass()).write(pk, target); + } } - public T read(Unpacker u, T to, boolean required) throws IOException, MessageTypeException { + public T read(Unpacker u, T to, boolean required) throws IOException, + MessageTypeException { if (!required && u.trySkipNil()) { return null; } - T o = u.read(to); + T o = u.read(to); if (required && o == null) { throw new MessageTypeException("Unexpected nil value"); } diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index 7518f4a2e..00b7c09e4 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -23,13 +23,14 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class BigDecimalTemplate extends AbstractTemplate { - private BigDecimalTemplate() { } + private BigDecimalTemplate() { + } - public void write(Packer pk, BigDecimal target, boolean required) throws IOException { - if(target == null) { - if(required) { + public void write(Packer pk, BigDecimal target, boolean required) + throws IOException { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); @@ -38,8 +39,9 @@ public void write(Packer pk, BigDecimal target, boolean required) throws IOExcep pk.write(target.toString()); } - public BigDecimal read(Unpacker u, BigDecimal to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + public BigDecimal read(Unpacker u, BigDecimal to, boolean required) + throws IOException { + if (!required && u.trySkipNil()) { return null; } String temp = u.readString(); @@ -52,4 +54,3 @@ static public BigDecimalTemplate getInstance() { static final BigDecimalTemplate instance = new BigDecimalTemplate(); } - diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index 2c34c639d..7879e2cdd 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -23,11 +23,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class BigIntegerTemplate extends AbstractTemplate { - private BigIntegerTemplate() { } + private BigIntegerTemplate() { + } - public void write(Packer pk, BigInteger target, boolean required) throws IOException { + public void write(Packer pk, BigInteger target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -35,10 +36,11 @@ public void write(Packer pk, BigInteger target, boolean required) throws IOExcep pk.writeNil(); return; } - pk.write((BigInteger)target); + pk.write((BigInteger) target); } - public BigInteger read(Unpacker u, BigInteger to, boolean required) throws IOException { + public BigInteger read(Unpacker u, BigInteger to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -51,4 +53,3 @@ static public BigIntegerTemplate getInstance() { static final BigIntegerTemplate instance = new BigIntegerTemplate(); } - diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index c3c07cf7c..1c372a19f 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class BooleanArrayTemplate extends AbstractTemplate { - private BooleanArrayTemplate() { } + private BooleanArrayTemplate() { + } - public void write(Packer pk, boolean[] target, boolean required) throws IOException { + public void write(Packer pk, boolean[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +42,8 @@ public void write(Packer pk, boolean[] target, boolean required) throws IOExcept pk.writeArrayEnd(); } - public boolean[] read(Unpacker u, boolean[] to, boolean required) throws IOException { + public boolean[] read(Unpacker u, boolean[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -49,7 +51,7 @@ public boolean[] read(Unpacker u, boolean[] to, boolean required) throws IOExcep if (to == null || to.length != n) { to = new boolean[n]; } - for (int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { to[i] = u.readBoolean(); } u.readArrayEnd(); @@ -62,4 +64,3 @@ static public BooleanArrayTemplate getInstance() { static final BooleanArrayTemplate instance = new BooleanArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index dffab8283..a3e632332 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -22,23 +22,25 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class BooleanTemplate extends AbstractTemplate { - private BooleanTemplate() { } + private BooleanTemplate() { + } - public void write(Packer pk, Boolean target, boolean required) throws IOException { - if(target == null) { - if(required) { + public void write(Packer pk, Boolean target, boolean required) + throws IOException { + if (target == null) { + if (required) { throw new MessageTypeException("Attempted to write null"); } pk.writeNil(); return; } - pk.write((boolean)target); + pk.write((boolean) target); } - public Boolean read(Unpacker u, Boolean to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + public Boolean read(Unpacker u, Boolean to, boolean required) + throws IOException { + if (!required && u.trySkipNil()) { return null; } return u.readBoolean(); @@ -50,4 +52,3 @@ static public BooleanTemplate getInstance() { static final BooleanTemplate instance = new BooleanTemplate(); } - diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index 9609cf2c2..cf6f733cf 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ByteArrayTemplate extends AbstractTemplate { - private ByteArrayTemplate() { } + private ByteArrayTemplate() { + } - public void write(Packer pk, byte[] target, boolean required) throws IOException { + public void write(Packer pk, byte[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -37,11 +38,12 @@ public void write(Packer pk, byte[] target, boolean required) throws IOException pk.write(target); } - public byte[] read(Unpacker u, byte[] to, boolean required) throws IOException { + public byte[] read(Unpacker u, byte[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } - return u.readByteArray(); // TODO read to 'to' obj + return u.readByteArray(); // TODO read to 'to' obj } static public ByteArrayTemplate getInstance() { @@ -50,4 +52,3 @@ static public ByteArrayTemplate getInstance() { static final ByteArrayTemplate instance = new ByteArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index 48a6d7176..d81079b52 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -24,11 +24,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ByteBufferTemplate extends AbstractTemplate { - private ByteBufferTemplate() { } + private ByteBufferTemplate() { + } - public void write(Packer pk, ByteBuffer target, boolean required) throws IOException { + public void write(Packer pk, ByteBuffer target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -39,11 +40,12 @@ public void write(Packer pk, ByteBuffer target, boolean required) throws IOExcep pk.write(target); } - public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) throws IOException { + public ByteBuffer read(Unpacker u, ByteBuffer to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } - return u.readByteBuffer(); // TODO read to 'to' obj? + return u.readByteBuffer(); // TODO read to 'to' obj? } static public ByteBufferTemplate getInstance() { @@ -52,4 +54,3 @@ static public ByteBufferTemplate getInstance() { static final ByteBufferTemplate instance = new ByteBufferTemplate(); } - diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index ff709b216..0202669b5 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ByteTemplate extends AbstractTemplate { - private ByteTemplate() { } + private ByteTemplate() { + } - public void write(Packer pk, Byte target, boolean required) throws IOException { + public void write(Packer pk, Byte target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -50,4 +51,3 @@ static public ByteTemplate getInstance() { static final ByteTemplate instance = new ByteTemplate(); } - diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java index e94a43dd8..0337c83a0 100644 --- a/src/main/java/org/msgpack/template/CharacterTemplate.java +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -24,15 +24,17 @@ /** * CharacterTemplate
- * - * @author watabiki + * + * @author watabiki */ public class CharacterTemplate extends AbstractTemplate { - private CharacterTemplate() { } + private CharacterTemplate() { + } @Override - public void write(Packer pk, Character target, boolean required) throws IOException { + public void write(Packer pk, Character target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -40,11 +42,12 @@ public void write(Packer pk, Character target, boolean required) throws IOExcept pk.writeNil(); return; } - pk.write((int)(char)target); + pk.write((int) (char) target); } @Override - public Character read(Unpacker u, Character to, boolean required) throws IOException { + public Character read(Unpacker u, Character to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index 2f7625b79..0828ff40a 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -24,7 +24,6 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class CollectionTemplate extends AbstractTemplate> { private Template elementTemplate; @@ -32,7 +31,8 @@ public CollectionTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, Collection target, boolean required) throws IOException { + public void write(Packer pk, Collection target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -48,7 +48,8 @@ public void write(Packer pk, Collection target, boolean required) throws IOEx pk.writeArrayEnd(); } - public Collection read(Unpacker u, Collection to, boolean required) throws IOException { + public Collection read(Unpacker u, Collection to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -58,7 +59,7 @@ public Collection read(Unpacker u, Collection to, boolean required) throws } else { to.clear(); } - for (int i= 0; i < n; i++) { + for (int i = 0; i < n; i++) { E e = elementTemplate.read(u, null); to.add(e); } @@ -66,4 +67,3 @@ public Collection read(Unpacker u, Collection to, boolean required) throws return to; } } - diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index a73f455db..599205705 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -24,11 +24,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class DateTemplate extends AbstractTemplate { - private DateTemplate() { } + private DateTemplate() { + } - public void write(Packer pk, Date target, boolean required) throws IOException { + public void write(Packer pk, Date target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -36,7 +37,7 @@ public void write(Packer pk, Date target, boolean required) throws IOException { pk.writeNil(); return; } - pk.write((long)target.getTime()); + pk.write((long) target.getTime()); } public Date read(Unpacker u, Date to, boolean required) throws IOException { @@ -53,4 +54,3 @@ static public DateTemplate getInstance() { static final DateTemplate instance = new DateTemplate(); } - diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index 80342ca4e..ad1b895ad 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class DoubleArrayTemplate extends AbstractTemplate { - private DoubleArrayTemplate() { } + private DoubleArrayTemplate() { + } - public void write(Packer pk, double[] target, boolean required) throws IOException { + public void write(Packer pk, double[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +42,8 @@ public void write(Packer pk, double[] target, boolean required) throws IOExcepti pk.writeArrayEnd(); } - public double[] read(Unpacker u, double[] to, boolean required) throws IOException { + public double[] read(Unpacker u, double[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -49,7 +51,7 @@ public double[] read(Unpacker u, double[] to, boolean required) throws IOExcepti if (to == null || to.length != n) { to = new double[n]; } - for (int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { to[i] = u.readDouble(); } u.readArrayEnd(); @@ -62,4 +64,3 @@ static public DoubleArrayTemplate getInstance() { static final DoubleArrayTemplate instance = new DoubleArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index 1357453ad..79937b76e 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class DoubleTemplate extends AbstractTemplate { - private DoubleTemplate() { } + private DoubleTemplate() { + } - public void write(Packer pk, Double target, boolean required) throws IOException { + public void write(Packer pk, Double target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -34,10 +35,11 @@ public void write(Packer pk, Double target, boolean required) throws IOException pk.writeNil(); return; } - pk.write((double)target); + pk.write((double) target); } - public Double read(Unpacker u, Double to, boolean required) throws IOException { + public Double read(Unpacker u, Double to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -50,4 +52,3 @@ static public DoubleTemplate getInstance() { static final DoubleTemplate instance = new DoubleTemplate(); } - diff --git a/src/main/java/org/msgpack/template/FieldList.java b/src/main/java/org/msgpack/template/FieldList.java index 6da0864ab..75a787538 100644 --- a/src/main/java/org/msgpack/template/FieldList.java +++ b/src/main/java/org/msgpack/template/FieldList.java @@ -20,65 +20,64 @@ import java.util.List; import java.util.ArrayList; - public class FieldList { public static class Entry { - private String name; + private String name; - private FieldOption option; + private FieldOption option; - public Entry() { - this(null, FieldOption.IGNORE); - } + public Entry() { + this(null, FieldOption.IGNORE); + } - public Entry(final String name, final FieldOption option) { - this.name = name; - this.option = option; - } + public Entry(final String name, final FieldOption option) { + this.name = name; + this.option = option; + } - public String getName() { - return name; - } + public String getName() { + return name; + } - public FieldOption getOption() { - return option; - } + public FieldOption getOption() { + return option; + } - public boolean isAvailable() { - return option != FieldOption.IGNORE; - } + public boolean isAvailable() { + return option != FieldOption.IGNORE; + } } private ArrayList list; public FieldList() { - list = new ArrayList(); + list = new ArrayList(); } public void add(final String name) { - add(name, FieldOption.DEFAULT); + add(name, FieldOption.DEFAULT); } public void add(final String name, final FieldOption option) { - list.add(new Entry(name, option)); + list.add(new Entry(name, option)); } public void put(final int index, final String name) { - put(index, name, FieldOption.DEFAULT); + put(index, name, FieldOption.DEFAULT); } public void put(final int index, final String name, final FieldOption option) { - if (list.size() < index) { - do { - list.add(new Entry()); - } while (list.size() < index); - list.add(new Entry(name, option)); - } else { - list.set(index, new Entry(name, option)); - } + if (list.size() < index) { + do { + list.add(new Entry()); + } while (list.size() < index); + list.add(new Entry(name, option)); + } else { + list.set(index, new Entry(name, option)); + } } public List getList() { - return list; + return list; } } diff --git a/src/main/java/org/msgpack/template/FieldOption.java b/src/main/java/org/msgpack/template/FieldOption.java index 58c1ecbb3..01cbd3c44 100644 --- a/src/main/java/org/msgpack/template/FieldOption.java +++ b/src/main/java/org/msgpack/template/FieldOption.java @@ -18,8 +18,5 @@ package org.msgpack.template; public enum FieldOption { - IGNORE, - OPTIONAL, - NOTNULLABLE, - DEFAULT; + IGNORE, OPTIONAL, NOTNULLABLE, DEFAULT; } diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index bbb627e0c..1089113e7 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class FloatArrayTemplate extends AbstractTemplate { - private FloatArrayTemplate() { } + private FloatArrayTemplate() { + } - public void write(Packer pk, float[] target, boolean required) throws IOException { + public void write(Packer pk, float[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,8 +42,9 @@ public void write(Packer pk, float[] target, boolean required) throws IOExceptio pk.writeArrayEnd(); } - public float[] read(Unpacker u, float[] to, boolean required) throws IOException { - if(!required && u.trySkipNil()) { + public float[] read(Unpacker u, float[] to, boolean required) + throws IOException { + if (!required && u.trySkipNil()) { return null; } int n = u.readArrayBegin(); @@ -62,4 +64,3 @@ static public FloatArrayTemplate getInstance() { static final FloatArrayTemplate instance = new FloatArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index ffa28449a..d8f283096 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class FloatTemplate extends AbstractTemplate { - private FloatTemplate() { } + private FloatTemplate() { + } - public void write(Packer pk, Float target, boolean required) throws IOException { + public void write(Packer pk, Float target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -34,10 +35,11 @@ public void write(Packer pk, Float target, boolean required) throws IOException pk.writeNil(); return; } - pk.write((float)target); + pk.write((float) target); } - public Float read(Unpacker u, Float to, boolean required) throws IOException { + public Float read(Unpacker u, Float to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -50,4 +52,3 @@ static public FloatTemplate getInstance() { static final FloatTemplate instance = new FloatTemplate(); } - diff --git a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java index 07474c05f..c6f9cd8e4 100644 --- a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -20,38 +20,36 @@ import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; - public class GenericCollectionTemplate implements GenericTemplate { @SuppressWarnings("rawtypes") Constructor constructor; @SuppressWarnings("rawtypes") public GenericCollectionTemplate(TemplateRegistry registry, Class tmpl) { - try { - constructor = tmpl.getConstructor(new Class[]{ Template.class }); - constructor.newInstance(new Object[]{ new AnyTemplate(registry)}); - } catch (NoSuchMethodException e) { - throw new IllegalArgumentException(e); - } catch (InvocationTargetException e) { - throw new IllegalArgumentException(e); - } catch (IllegalAccessException e) { - throw new IllegalArgumentException(e); - } catch (InstantiationException e) { - throw new IllegalArgumentException(e); - } + try { + constructor = tmpl.getConstructor(new Class[] { Template.class }); + constructor.newInstance(new Object[] { new AnyTemplate(registry) }); + } catch (NoSuchMethodException e) { + throw new IllegalArgumentException(e); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } } @SuppressWarnings("rawtypes") public Template build(Template[] params) { - try { - return constructor.newInstance((Object[]) params); - } catch (InvocationTargetException e) { - throw new IllegalArgumentException(e); - } catch (IllegalAccessException e) { - throw new IllegalArgumentException(e); - } catch (InstantiationException e) { - throw new IllegalArgumentException(e); - } + try { + return constructor.newInstance((Object[]) params); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } } } - diff --git a/src/main/java/org/msgpack/template/GenericMapTemplate.java b/src/main/java/org/msgpack/template/GenericMapTemplate.java index 12612b0fa..1d548abcf 100644 --- a/src/main/java/org/msgpack/template/GenericMapTemplate.java +++ b/src/main/java/org/msgpack/template/GenericMapTemplate.java @@ -20,40 +20,38 @@ import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; - public class GenericMapTemplate implements GenericTemplate { @SuppressWarnings("rawtypes") Constructor constructor; @SuppressWarnings("rawtypes") public GenericMapTemplate(TemplateRegistry registry, Class tmpl) { - try { - constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); - constructor.newInstance(new Object[] { - new AnyTemplate(registry),new AnyTemplate(registry)}); - //AnyTemplate.getInstance(registry), AnyTemplate.getInstance(registry)}); - } catch (NoSuchMethodException e) { - throw new IllegalArgumentException(e); - } catch (InvocationTargetException e) { - throw new IllegalArgumentException(e); - } catch (IllegalAccessException e) { - throw new IllegalArgumentException(e); - } catch (InstantiationException e) { - throw new IllegalArgumentException(e); - } + try { + constructor = tmpl.getConstructor(new Class[] { Template.class, Template.class }); + constructor.newInstance(new Object[] { new AnyTemplate(registry), new AnyTemplate(registry) }); + // AnyTemplate.getInstance(registry), + // AnyTemplate.getInstance(registry)}); + } catch (NoSuchMethodException e) { + throw new IllegalArgumentException(e); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } } @SuppressWarnings("rawtypes") public Template build(Template[] params) { - try { - return constructor.newInstance((Object[]) params); - } catch (InvocationTargetException e) { - throw new IllegalArgumentException(e); - } catch (IllegalAccessException e) { - throw new IllegalArgumentException(e); - } catch (InstantiationException e) { - throw new IllegalArgumentException(e); - } + try { + return constructor.newInstance((Object[]) params); + } catch (InvocationTargetException e) { + throw new IllegalArgumentException(e); + } catch (IllegalAccessException e) { + throw new IllegalArgumentException(e); + } catch (InstantiationException e) { + throw new IllegalArgumentException(e); + } } } - diff --git a/src/main/java/org/msgpack/template/GenericTemplate.java b/src/main/java/org/msgpack/template/GenericTemplate.java index 27010b965..ef27d1654 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate.java +++ b/src/main/java/org/msgpack/template/GenericTemplate.java @@ -17,7 +17,6 @@ // package org.msgpack.template; - public interface GenericTemplate { @SuppressWarnings("rawtypes") public Template build(Template[] params); diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index 369d41c89..e67bf44ee 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class IntegerArrayTemplate extends AbstractTemplate { - private IntegerArrayTemplate() { } + private IntegerArrayTemplate() { + } - public void write(Packer pk, int[] target, boolean required) throws IOException { + public void write(Packer pk, int[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +42,8 @@ public void write(Packer pk, int[] target, boolean required) throws IOException pk.writeArrayEnd(); } - public int[] read(Unpacker u, int[] to, boolean required) throws IOException { + public int[] read(Unpacker u, int[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -52,7 +54,7 @@ public int[] read(Unpacker u, int[] to, boolean required) throws IOException { } else { array = new int[n]; } - for (int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { array[i] = u.readInt(); } u.readArrayEnd(); @@ -65,4 +67,3 @@ static public IntegerArrayTemplate getInstance() { static final IntegerArrayTemplate instance = new IntegerArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index 22b95ea6b..a7f035f64 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class IntegerTemplate extends AbstractTemplate { - private IntegerTemplate() { } + private IntegerTemplate() { + } - public void write(Packer pk, Integer target, boolean required) throws IOException { + public void write(Packer pk, Integer target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -34,10 +35,11 @@ public void write(Packer pk, Integer target, boolean required) throws IOExceptio pk.writeNil(); return; } - pk.write((int)target); + pk.write((int) target); } - public Integer read(Unpacker u, Integer to, boolean required) throws IOException { + public Integer read(Unpacker u, Integer to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -50,4 +52,3 @@ static public IntegerTemplate getInstance() { static final IntegerTemplate instance = new IntegerTemplate(); } - diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index a4b9cb423..ee6bfa303 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -24,7 +24,6 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ListTemplate extends AbstractTemplate> { private Template elementTemplate; @@ -32,8 +31,9 @@ public ListTemplate(Template elementTemplate) { this.elementTemplate = elementTemplate; } - public void write(Packer pk, List target, boolean required) throws IOException { - if (! (target instanceof List)) { + public void write(Packer pk, List target, boolean required) + throws IOException { + if (!(target instanceof List)) { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +41,8 @@ public void write(Packer pk, List target, boolean required) throws IOExceptio pk.writeNil(); return; } - throw new MessageTypeException("Target is not a List but " + target.getClass()); + throw new MessageTypeException("Target is not a List but " + + target.getClass()); } pk.writeArrayBegin(target.size()); for (E e : target) { @@ -50,7 +51,8 @@ public void write(Packer pk, List target, boolean required) throws IOExceptio pk.writeArrayEnd(); } - public List read(Unpacker u, List to, boolean required) throws IOException { + public List read(Unpacker u, List to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -68,4 +70,3 @@ public List read(Unpacker u, List to, boolean required) throws IOException return to; } } - diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index f9a9cd890..3d9b7974b 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class LongArrayTemplate extends AbstractTemplate { - private LongArrayTemplate() { } + private LongArrayTemplate() { + } - public void write(Packer pk, long[] target, boolean required) throws IOException { + public void write(Packer pk, long[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +42,8 @@ public void write(Packer pk, long[] target, boolean required) throws IOException pk.writeArrayEnd(); } - public long[] read(Unpacker u, long[] to, boolean required) throws IOException { + public long[] read(Unpacker u, long[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -49,7 +51,7 @@ public long[] read(Unpacker u, long[] to, boolean required) throws IOException { if (to == null || to.length != n) { to = new long[n]; } - for (int i=0; i < n; i++) { + for (int i = 0; i < n; i++) { to[i] = u.readLong(); } u.readArrayEnd(); @@ -62,4 +64,3 @@ static public LongArrayTemplate getInstance() { static final LongArrayTemplate instance = new LongArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index 2d85ac65a..5de39cf48 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class LongTemplate extends AbstractTemplate { - private LongTemplate() { } + private LongTemplate() { + } - public void write(Packer pk, Long target, boolean required) throws IOException { + public void write(Packer pk, Long target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -34,7 +35,7 @@ public void write(Packer pk, Long target, boolean required) throws IOException { pk.writeNil(); return; } - pk.write((long)target); + pk.write((long) target); } public Long read(Unpacker u, Long to, boolean required) throws IOException { @@ -50,4 +51,3 @@ static public LongTemplate getInstance() { static final LongTemplate instance = new LongTemplate(); } - diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index 18d4eab55..631045502 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -24,8 +24,7 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - -public class MapTemplate extends AbstractTemplate> { +public class MapTemplate extends AbstractTemplate> { private Template keyTemplate; private Template valueTemplate; @@ -34,7 +33,8 @@ public MapTemplate(Template keyTemplate, Template valueTemplate) { this.valueTemplate = valueTemplate; } - public void write(Packer pk, Map target, boolean required) throws IOException { + public void write(Packer pk, Map target, boolean required) + throws IOException { if (!(target instanceof Map)) { if (target == null) { if (required) { @@ -43,28 +43,29 @@ public void write(Packer pk, Map target, boolean required) throws IOExcepti pk.writeNil(); return; } - throw new MessageTypeException("Target is not a Map but "+target.getClass()); + throw new MessageTypeException("Target is not a Map but " + target.getClass()); } - Map map = (Map) target; + Map map = (Map) target; pk.writeMapBegin(map.size()); - for (Map.Entry pair : map.entrySet()) { + for (Map.Entry pair : map.entrySet()) { keyTemplate.write(pk, pair.getKey()); valueTemplate.write(pk, pair.getValue()); } pk.writeMapEnd(); } - public Map read(Unpacker u, Map to, boolean required) throws IOException { + public Map read(Unpacker u, Map to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } int n = u.readMapBegin(); - Map map; + Map map; if (to != null) { - map = (Map) to; + map = (Map) to; map.clear(); } else { - map = new HashMap(n); + map = new HashMap(n); } for (int i = 0; i < n; i++) { K key = keyTemplate.read(u, null); @@ -75,4 +76,3 @@ public Map read(Unpacker u, Map to, boolean required) throws IOExcepti return map; } } - diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index 76cf25d6b..2637c9740 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -23,15 +23,15 @@ import org.msgpack.MessagePackable; import org.msgpack.MessageTypeException; - public class MessagePackableTemplate extends AbstractTemplate { private Class targetClass; MessagePackableTemplate(Class targetClass) { - this.targetClass = targetClass; + this.targetClass = targetClass; } - public void write(Packer pk, MessagePackable target, boolean required) throws IOException { + public void write(Packer pk, MessagePackable target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -42,21 +42,21 @@ public void write(Packer pk, MessagePackable target, boolean required) throws IO target.writeTo(pk); } - public MessagePackable read(Unpacker u, MessagePackable to, boolean required) throws IOException { + public MessagePackable read(Unpacker u, MessagePackable to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } - if (to == null) { - try { - to = (MessagePackable) targetClass.newInstance(); - } catch (InstantiationException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } - } - to.readFrom(u); - return to; + if (to == null) { + try { + to = (MessagePackable) targetClass.newInstance(); + } catch (InstantiationException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } + } + to.readFrom(u); + return to; } } - diff --git a/src/main/java/org/msgpack/template/NotNullableTemplate.java b/src/main/java/org/msgpack/template/NotNullableTemplate.java index 810a85a95..a85853e62 100644 --- a/src/main/java/org/msgpack/template/NotNullableTemplate.java +++ b/src/main/java/org/msgpack/template/NotNullableTemplate.java @@ -5,15 +5,14 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public class NotNullableTemplate extends AbstractTemplate { private Template tmpl; public NotNullableTemplate(Template elementTemplate) { - tmpl = elementTemplate; + tmpl = elementTemplate; } - + @Override public void write(Packer pk, T v, boolean required) throws IOException { tmpl.write(pk, v, required); @@ -26,7 +25,7 @@ public void write(Packer pk, T v) throws IOException { @Override public T read(Unpacker u, T to, boolean required) throws IOException { - return tmpl.read(u, to, required); + return tmpl.read(u, to, required); } @Override diff --git a/src/main/java/org/msgpack/template/ObjectArrayTemplate.java b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java index 304ea300f..08e9b72e5 100644 --- a/src/main/java/org/msgpack/template/ObjectArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ObjectArrayTemplate.java @@ -7,7 +7,6 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class ObjectArrayTemplate extends AbstractTemplate { protected Class componentClass; @@ -15,46 +14,47 @@ public class ObjectArrayTemplate extends AbstractTemplate { protected Template componentTemplate; public ObjectArrayTemplate(Class componentClass, Template componentTemplate) { - this.componentClass = componentClass; - this.componentTemplate = componentTemplate; + this.componentClass = componentClass; + this.componentTemplate = componentTemplate; } @Override public void write(Packer packer, Object v, boolean required) - throws IOException { - if (v == null) { - if (required) { - throw new MessageTypeException("Attempted to write null"); - } - packer.writeNil(); - return; - } - if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { - throw new MessageTypeException(); - } - - Object[] array = (Object[]) v; - int length = array.length; - packer.writeArrayBegin(length); - for (int i = 0; i < length; i++) { - componentTemplate.write(packer, array[i], required); - } - packer.writeArrayEnd(); + throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } + if (!(v instanceof Object[]) || + !componentClass.isAssignableFrom(v.getClass().getComponentType())) { + throw new MessageTypeException(); + } + + Object[] array = (Object[]) v; + int length = array.length; + packer.writeArrayBegin(length); + for (int i = 0; i < length; i++) { + componentTemplate.write(packer, array[i], required); + } + packer.writeArrayEnd(); } @Override public Object read(Unpacker unpacker, Object to, boolean required) - throws IOException { - if (!required && unpacker.trySkipNil()) { - return null; - } - - int length = unpacker.readArrayBegin(); - Object[] array = (Object[]) Array.newInstance(componentClass, length); - for (int i = 0; i < length; i++) { - array[i] = componentTemplate.read(unpacker, null, required); - } - unpacker.readArrayEnd(); - return array; + throws IOException { + if (!required && unpacker.trySkipNil()) { + return null; + } + + int length = unpacker.readArrayBegin(); + Object[] array = (Object[]) Array.newInstance(componentClass, length); + for (int i = 0; i < length; i++) { + array[i] = componentTemplate.read(unpacker, null, required); + } + unpacker.readArrayEnd(); + return array; } } diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 7c3e3bb02..b810ac85a 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -24,16 +24,15 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public class OrdinalEnumTemplate extends AbstractTemplate { protected T[] entries; protected HashMap reverse; public OrdinalEnumTemplate(Class targetClass) { - entries = targetClass.getEnumConstants(); + entries = targetClass.getEnumConstants(); reverse = new HashMap(); - for(int i = 0; i < entries.length; i++) { - reverse.put(entries[i], i); + for (int i = 0; i < entries.length; i++) { + reverse.put(entries[i], i); } } @@ -46,22 +45,25 @@ public void write(Packer pk, T target, boolean required) throws IOException { pk.writeNil(); return; } - Integer ordinal = reverse.get(target); + Integer ordinal = reverse.get(target); if (ordinal == null) { - throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); + throw new MessageTypeException( + new IllegalArgumentException("ordinal: " + ordinal)); } - pk.write((int)ordinal); + pk.write((int) ordinal); } @Override - public T read(Unpacker pac, T to, boolean required) throws IOException, MessageTypeException { - if (!required && pac.trySkipNil()) { - return null; - } + public T read(Unpacker pac, T to, boolean required) throws IOException, + MessageTypeException { + if (!required && pac.trySkipNil()) { + return null; + } int ordinal = pac.readInt(); if (entries.length <= ordinal) { - throw new MessageTypeException(new IllegalArgumentException("ordinal: " + ordinal)); + throw new MessageTypeException( + new IllegalArgumentException("ordinal: " + ordinal)); } return entries[ordinal]; } diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index 1f188ca1d..45a52ccfa 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ShortArrayTemplate extends AbstractTemplate { - private ShortArrayTemplate() { } + private ShortArrayTemplate() { + } - public void write(Packer pk, short[] target, boolean required) throws IOException { + public void write(Packer pk, short[] target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -41,7 +42,8 @@ public void write(Packer pk, short[] target, boolean required) throws IOExceptio pk.writeArrayEnd(); } - public short[] read(Unpacker u, short[] to, boolean required) throws IOException { + public short[] read(Unpacker u, short[] to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -62,4 +64,3 @@ static public ShortArrayTemplate getInstance() { static final ShortArrayTemplate instance = new ShortArrayTemplate(); } - diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index 11b3ae70d..173fc14cc 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class ShortTemplate extends AbstractTemplate { - private ShortTemplate() { } + private ShortTemplate() { + } - public void write(Packer pk, Short target, boolean required) throws IOException { + public void write(Packer pk, Short target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -37,7 +38,8 @@ public void write(Packer pk, Short target, boolean required) throws IOException pk.write(target); } - public Short read(Unpacker u, Short to, boolean required) throws IOException { + public Short read(Unpacker u, Short to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -50,4 +52,3 @@ static public ShortTemplate getInstance() { static final ShortTemplate instance = new ShortTemplate(); } - diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index d64795dd1..4094790dd 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -22,11 +22,12 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.MessageTypeException; - public class StringTemplate extends AbstractTemplate { - private StringTemplate() { } + private StringTemplate() { + } - public void write(Packer pk, String target, boolean required) throws IOException { + public void write(Packer pk, String target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -37,7 +38,8 @@ public void write(Packer pk, String target, boolean required) throws IOException pk.write(target); } - public String read(Unpacker u, String to, boolean required) throws IOException { + public String read(Unpacker u, String to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -50,4 +52,3 @@ static public StringTemplate getInstance() { static final StringTemplate instance = new StringTemplate(); } - diff --git a/src/main/java/org/msgpack/template/Template.java b/src/main/java/org/msgpack/template/Template.java index 31b2eadf3..d47172f26 100644 --- a/src/main/java/org/msgpack/template/Template.java +++ b/src/main/java/org/msgpack/template/Template.java @@ -21,7 +21,6 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public interface Template { public void write(Packer pk, T v) throws IOException; @@ -31,4 +30,3 @@ public interface Template { public T read(Unpacker u, T to, boolean required) throws IOException; } - diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java index d069d39ac..39447567d 100644 --- a/src/main/java/org/msgpack/template/TemplateReference.java +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -24,7 +24,6 @@ import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; - public class TemplateReference extends AbstractTemplate { private TemplateRegistry registry; @@ -34,41 +33,42 @@ public class TemplateReference extends AbstractTemplate { private Template actualTemplate; public TemplateReference(TemplateRegistry registry, Type targetType) { - this.registry = registry; - this.targetType = targetType; + this.registry = registry; + this.targetType = targetType; } @SuppressWarnings("unchecked") private void validateActualTemplate() { - if (actualTemplate == null) { - actualTemplate = (Template) registry.cache.get(targetType); - if (actualTemplate == null) { - throw new MessageTypeException("Actual template have not been created"); - } - } + if (actualTemplate == null) { + actualTemplate = (Template) registry.cache.get(targetType); + if (actualTemplate == null) { + throw new MessageTypeException( + "Actual template have not been created"); + } + } } @Override public void write(Packer pk, T v, boolean required) throws IOException { - validateActualTemplate(); - actualTemplate.write(pk, v, required); + validateActualTemplate(); + actualTemplate.write(pk, v, required); } @Override public void write(Packer pk, T v) throws IOException { - validateActualTemplate(); - actualTemplate.write(pk, v, false); + validateActualTemplate(); + actualTemplate.write(pk, v, false); } @Override public T read(Unpacker u, T to, boolean required) throws IOException { - validateActualTemplate(); - return actualTemplate.read(u, to, required); + validateActualTemplate(); + return actualTemplate.read(u, to, required); } @Override public T read(Unpacker u, T to) throws IOException { - validateActualTemplate(); - return actualTemplate.read(u, to, false); + validateActualTemplate(); + return actualTemplate.read(u, to, false); } } diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 8ecefbf8d..8785f0382 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -54,7 +54,6 @@ import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class TemplateRegistry { @@ -70,37 +69,36 @@ public class TemplateRegistry { * create TemplateRegistry object of root. */ private TemplateRegistry() { - parent = null; - chain = createTemplateBuilderChain(); - genericCache = new HashMap(); - cache = new HashMap>(); - registerTemplates(); - cache = Collections.unmodifiableMap(cache); + parent = null; + chain = createTemplateBuilderChain(); + genericCache = new HashMap(); + cache = new HashMap>(); + registerTemplates(); + cache = Collections.unmodifiableMap(cache); } /** - * + * * @param registry */ public TemplateRegistry(TemplateRegistry registry) { - if (registry != null) { - parent = registry; - } else { - parent = new TemplateRegistry(); - } - chain = createTemplateBuilderChain(); - cache = new HashMap>(); - genericCache = new HashMap(); + if (registry != null) { + parent = registry; + } else { + parent = new TemplateRegistry(); + } + chain = createTemplateBuilderChain(); + cache = new HashMap>(); + genericCache = new HashMap(); registerTemplatesWhichRefersRegistry(); } - protected TemplateBuilderChain createTemplateBuilderChain(){ + protected TemplateBuilderChain createTemplateBuilderChain() { return new TemplateBuilderChain(this); } - public void setClassLoader(final ClassLoader cl) { - chain = new TemplateBuilderChain(this, cl); + chain = new TemplateBuilderChain(this, cl); } private void registerTemplates() { @@ -143,30 +141,30 @@ protected void registerTemplatesWhichRefersRegistry() { register(List.class, new ListTemplate(anyTemplate)); register(Collection.class, new CollectionTemplate(anyTemplate)); - register(Map.class, new MapTemplate(anyTemplate,anyTemplate)); + register(Map.class, new MapTemplate(anyTemplate, anyTemplate)); registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); } public void register(final Class targetClass) { - buildAndRegister(null, targetClass, false, null); + buildAndRegister(null, targetClass, false, null); } public void register(final Class targetClass, final FieldList flist) { - if (flist == null) { - throw new NullPointerException("FieldList object is null"); - } + if (flist == null) { + throw new NullPointerException("FieldList object is null"); + } - buildAndRegister(null, targetClass, false, flist); + buildAndRegister(null, targetClass, false, flist); } public synchronized void register(final Type targetType, final Template tmpl) { - if (tmpl == null) { - throw new NullPointerException("Template object is null"); - } + if (tmpl == null) { + throw new NullPointerException("Template object is null"); + } - if (targetType instanceof ParameterizedType) { + if (targetType instanceof ParameterizedType) { cache.put(((ParameterizedType) targetType).getRawType(), tmpl); } else { cache.put(targetType, tmpl); @@ -174,187 +172,190 @@ public synchronized void register(final Type targetType, final Template tmpl) { } public synchronized void registerGeneric(final Type targetType, final GenericTemplate tmpl) { - if (targetType instanceof ParameterizedType) { - genericCache.put(((ParameterizedType) targetType).getRawType(), tmpl); - } else { - genericCache.put(targetType, tmpl); - } + if (targetType instanceof ParameterizedType) { + genericCache.put(((ParameterizedType) targetType).getRawType(), + tmpl); + } else { + genericCache.put(targetType, tmpl); + } } public synchronized boolean unregister(final Type targetType) { - Template tmpl = cache.remove(targetType); - return tmpl != null; + Template tmpl = cache.remove(targetType); + return tmpl != null; } public synchronized void unregister() { - cache.clear(); + cache.clear(); } public synchronized Template lookup(Type targetType) { - Template tmpl; - - tmpl = lookupGenericType(targetType); - if (tmpl != null) { - return tmpl; - } - - tmpl = lookupCache(targetType); - if (tmpl != null) { - return tmpl; - } - - Class targetClass = (Class) targetType; - - // MessagePackable interface is implemented - if (MessagePackable.class.isAssignableFrom(targetClass)) { - // FIXME #MN - // following processing should be merged into lookAfterBuilding - // or lookupInterfaceTypes method in next version - tmpl = new MessagePackableTemplate(targetClass); - register(targetClass, tmpl); - return tmpl; - } - - // find matched template builder and build template - tmpl = lookupAfterBuilding(targetClass); - if (tmpl != null) { - return tmpl; - } - - // lookup template of interface type - tmpl = lookupInterfaceTypes(targetClass); - if (tmpl != null) { - return tmpl; - } - - // lookup template of superclass type - tmpl = lookupSuperclasses(targetClass); - if (tmpl != null) { - return tmpl; - } - - // lookup template of interface type of superclasss - tmpl = lookupSuperclassInterfaceTypes(targetClass); - if (tmpl != null) { - return tmpl; - } - - throw new MessageTypeException( - "Cannot find template for " + targetClass + " class. Try to add @Message annotation to the class or call MessagePack.register(Type)."); + Template tmpl; + + tmpl = lookupGenericType(targetType); + if (tmpl != null) { + return tmpl; + } + + tmpl = lookupCache(targetType); + if (tmpl != null) { + return tmpl; + } + + Class targetClass = (Class) targetType; + + // MessagePackable interface is implemented + if (MessagePackable.class.isAssignableFrom(targetClass)) { + // FIXME #MN + // following processing should be merged into lookAfterBuilding + // or lookupInterfaceTypes method in next version + tmpl = new MessagePackableTemplate(targetClass); + register(targetClass, tmpl); + return tmpl; + } + + // find matched template builder and build template + tmpl = lookupAfterBuilding(targetClass); + if (tmpl != null) { + return tmpl; + } + + // lookup template of interface type + tmpl = lookupInterfaceTypes(targetClass); + if (tmpl != null) { + return tmpl; + } + + // lookup template of superclass type + tmpl = lookupSuperclasses(targetClass); + if (tmpl != null) { + return tmpl; + } + + // lookup template of interface type of superclasss + tmpl = lookupSuperclassInterfaceTypes(targetClass); + if (tmpl != null) { + return tmpl; + } + + throw new MessageTypeException( + "Cannot find template for " + targetClass + " class. " + + "Try to add @Message annotation to the class or call MessagePack.register(Type)."); } private Template lookupGenericType(Type targetType) { - Template tmpl = null; - if (targetType instanceof ParameterizedType) { - ParameterizedType paramedType = (ParameterizedType) targetType; - - // ParameterizedType is not a Class? - tmpl = lookupGenericTypeImpl(paramedType); - if (tmpl != null) { - return tmpl; - } - - try { - tmpl = parent.lookupGenericTypeImpl(paramedType); - if (tmpl != null) { - return tmpl; - } - } catch (NullPointerException e) { // ignore - } - targetType = paramedType.getRawType(); - } - return tmpl; + Template tmpl = null; + if (targetType instanceof ParameterizedType) { + ParameterizedType paramedType = (ParameterizedType) targetType; + + // ParameterizedType is not a Class? + tmpl = lookupGenericTypeImpl(paramedType); + if (tmpl != null) { + return tmpl; + } + + try { + tmpl = parent.lookupGenericTypeImpl(paramedType); + if (tmpl != null) { + return tmpl; + } + } catch (NullPointerException e) { // ignore + } + targetType = paramedType.getRawType(); + } + return tmpl; } private Template lookupGenericTypeImpl(final ParameterizedType targetType) { - Type rawType = targetType.getRawType(); + Type rawType = targetType.getRawType(); - GenericTemplate tmpl = genericCache.get(rawType); - if (tmpl == null) { - return null; - } + GenericTemplate tmpl = genericCache.get(rawType); + if (tmpl == null) { + return null; + } - Type[] types = targetType.getActualTypeArguments(); - Template[] tmpls = new Template[types.length]; - for (int i = 0; i < types.length; ++i) { - tmpls[i] = lookup(types[i]); - } + Type[] types = targetType.getActualTypeArguments(); + Template[] tmpls = new Template[types.length]; + for (int i = 0; i < types.length; ++i) { + tmpls[i] = lookup(types[i]); + } - return tmpl.build(tmpls); + return tmpl.build(tmpls); } private Template lookupCache(Type targetType) { - Template tmpl = cache.get(targetType); - if (tmpl != null) { - return tmpl; - } - - try { - tmpl = parent.lookupCache(targetType); - } catch (NullPointerException e) { // ignore - } - return tmpl; + Template tmpl = cache.get(targetType); + if (tmpl != null) { + return tmpl; + } + + try { + tmpl = parent.lookupCache(targetType); + } catch (NullPointerException e) { // ignore + } + return tmpl; } private Template lookupAfterBuilding(Class targetClass) { - TemplateBuilder builder = chain.select(targetClass, true); - Template tmpl = null; - if (builder != null) { - // TODO #MN for Android, we should modify here - tmpl = chain.getForceBuilder().loadTemplate(targetClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - tmpl = buildAndRegister(builder, targetClass, true, null); - } - return tmpl; + TemplateBuilder builder = chain.select(targetClass, true); + Template tmpl = null; + if (builder != null) { + // TODO #MN for Android, we should modify here + tmpl = chain.getForceBuilder().loadTemplate(targetClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } + tmpl = buildAndRegister(builder, targetClass, true, null); + } + return tmpl; } private Template lookupInterfaceTypes(Class targetClass) { - Class[] infTypes = targetClass.getInterfaces(); - Template tmpl = null; - for (Class infType : infTypes) { - tmpl = (Template) cache.get(infType); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } else { - try { - tmpl = (Template) parent.lookupCache(infType); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - } catch (NullPointerException e) { // ignore - } - } - } - return tmpl; + Class[] infTypes = targetClass.getInterfaces(); + Template tmpl = null; + for (Class infType : infTypes) { + tmpl = (Template) cache.get(infType); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } else { + try { + tmpl = (Template) parent.lookupCache(infType); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } + } catch (NullPointerException e) { // ignore + } + } + } + return tmpl; } private Template lookupSuperclasses(Class targetClass) { - Class superClass = targetClass.getSuperclass(); - Template tmpl = null; - if (superClass != null) { - for (; superClass != Object.class; superClass = superClass.getSuperclass()) { - tmpl = (Template) cache.get(superClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } else { - try { - tmpl = (Template) parent.lookupCache(superClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - } catch (NullPointerException e) { // ignore - } - } - } - } - return tmpl; + Class superClass = targetClass.getSuperclass(); + Template tmpl = null; + if (superClass != null) { + for (; superClass != Object.class; superClass = superClass + .getSuperclass()) { + tmpl = (Template) cache.get(superClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } else { + try { + tmpl = (Template) parent.lookupCache(superClass); + if (tmpl != null) { + register(targetClass, tmpl); + return tmpl; + } + } catch (NullPointerException e) { // ignore + } + } + } + } + return tmpl; } private Template lookupSuperclassInterfaceTypes(Class targetClass) { @@ -381,37 +382,39 @@ private Template lookupSuperclassInterfaceTypes(Class targetClass) { return tmpl; } - private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, - final boolean hasAnnotation, final FieldList flist) { - Template newTmpl = null; - Template oldTmpl = null; - try { - if (cache.containsKey(targetClass)) { - oldTmpl = cache.get(targetClass); - } - newTmpl = new TemplateReference(this, targetClass); - cache.put(targetClass, newTmpl); - if (builder == null) { - builder = chain.select(targetClass, hasAnnotation); - } - newTmpl = flist != null ? builder.buildTemplate(targetClass, flist) : builder.buildTemplate(targetClass); - return newTmpl; - } catch (Exception e) { - if (oldTmpl != null) { - cache.put(targetClass, oldTmpl); - } else { - cache.remove(targetClass); - } - newTmpl = null; - if (e instanceof MessageTypeException) { - throw (MessageTypeException) e; - } else { - throw new MessageTypeException(e); - } - } finally { - if (newTmpl != null) { - cache.put(targetClass, newTmpl); - } - } + private synchronized Template buildAndRegister(TemplateBuilder builder, + final Class targetClass, final boolean hasAnnotation, + final FieldList flist) { + Template newTmpl = null; + Template oldTmpl = null; + try { + if (cache.containsKey(targetClass)) { + oldTmpl = cache.get(targetClass); + } + newTmpl = new TemplateReference(this, targetClass); + cache.put(targetClass, newTmpl); + if (builder == null) { + builder = chain.select(targetClass, hasAnnotation); + } + newTmpl = flist != null ? + builder.buildTemplate(targetClass, flist) : builder.buildTemplate(targetClass); + return newTmpl; + } catch (Exception e) { + if (oldTmpl != null) { + cache.put(targetClass, oldTmpl); + } else { + cache.remove(targetClass); + } + newTmpl = null; + if (e instanceof MessageTypeException) { + throw (MessageTypeException) e; + } else { + throw new MessageTypeException(e); + } + } finally { + if (newTmpl != null) { + cache.put(targetClass, newTmpl); + } + } } } diff --git a/src/main/java/org/msgpack/template/Templates.java b/src/main/java/org/msgpack/template/Templates.java index 8e01a7b86..f1721f9c8 100644 --- a/src/main/java/org/msgpack/template/Templates.java +++ b/src/main/java/org/msgpack/template/Templates.java @@ -26,7 +26,6 @@ import java.math.BigDecimal; import org.msgpack.type.Value; - @SuppressWarnings({ "rawtypes", "unchecked" }) public final class Templates { public static final Template TValue = ValueTemplate.getInstance(); @@ -67,7 +66,7 @@ public static Template> tList(Template elementTemplate) { return new ListTemplate(elementTemplate); } - public static Template> tMap(Template keyTemplate, Template valueTemplate) { + public static Template> tMap(Template keyTemplate, Template valueTemplate) { return new MapTemplate(keyTemplate, valueTemplate); } @@ -79,79 +78,77 @@ public static Template tOrdinalEnum(Class enumClass) { return new OrdinalEnumTemplate(enumClass); } - //public static Template tClass(Class target) { - // // TODO - //} - + // public static Template tClass(Class target) { + // // TODO + // } @Deprecated - public static Template tByte() { - return TByte; - } + public static Template tByte() { + return TByte; + } @Deprecated - public static Template tShort() { - return TShort; - } + public static Template tShort() { + return TShort; + } @Deprecated - public static Template tInteger() { - return TInteger; - } + public static Template tInteger() { + return TInteger; + } @Deprecated - public static Template tLong() { - return TLong; - } + public static Template tLong() { + return TLong; + } @Deprecated - public static Template tCharacter() { - return TCharacter; - } + public static Template tCharacter() { + return TCharacter; + } @Deprecated - public static Template tBigInteger() { - return TBigInteger; - } + public static Template tBigInteger() { + return TBigInteger; + } @Deprecated - public static Template tBigDecimal() { - return TBigDecimal; - } + public static Template tBigDecimal() { + return TBigDecimal; + } @Deprecated - public static Template tFloat() { - return TFloat; - } + public static Template tFloat() { + return TFloat; + } @Deprecated - public static Template tDouble() { - return TDouble; - } + public static Template tDouble() { + return TDouble; + } @Deprecated - public static Template tBoolean() { - return TBoolean; - } + public static Template tBoolean() { + return TBoolean; + } @Deprecated - public static Template tString() { - return TString; - } + public static Template tString() { + return TString; + } @Deprecated - public static Template tByteArray() { - return TByteArray; - } + public static Template tByteArray() { + return TByteArray; + } @Deprecated - public static Template tByteBuffer() { - return TByteBuffer; - } + public static Template tByteBuffer() { + return TByteBuffer; + } @Deprecated - public static Template tDate() { - return TDate; - } + public static Template tDate() { + return TDate; + } } - diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 63cd23f53..41039c2f3 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -23,11 +23,12 @@ import org.msgpack.MessageTypeException; import org.msgpack.type.Value; - public class ValueTemplate extends AbstractTemplate { - private ValueTemplate() { } + private ValueTemplate() { + } - public void write(Packer pk, Value target, boolean required) throws IOException { + public void write(Packer pk, Value target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("Attempted to write null"); @@ -38,7 +39,8 @@ public void write(Packer pk, Value target, boolean required) throws IOException target.writeTo(pk); } - public Value read(Unpacker u, Value to, boolean required) throws IOException { + public Value read(Unpacker u, Value to, boolean required) + throws IOException { if (!required && u.trySkipNil()) { return null; } @@ -51,4 +53,3 @@ static public ValueTemplate getInstance() { static final ValueTemplate instance = new ValueTemplate(); } - diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 42d465225..173c7a53d 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -42,236 +42,248 @@ import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; - public abstract class AbstractTemplateBuilder implements TemplateBuilder { protected TemplateRegistry registry; protected AbstractTemplateBuilder(TemplateRegistry registry) { - this.registry = registry; + this.registry = registry; } @Override - public Template buildTemplate(final Type targetType) throws TemplateBuildException { - @SuppressWarnings("unchecked") - Class targetClass = (Class) targetType; - checkClassValidation(targetClass); - FieldOption fieldOption = getFieldOption(targetClass); - FieldEntry[] entries = toFieldEntries(targetClass, fieldOption); - return buildTemplate(targetClass, entries); + public Template buildTemplate(final Type targetType) + throws TemplateBuildException { + @SuppressWarnings("unchecked") + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + FieldOption fieldOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, fieldOption); + return buildTemplate(targetClass, entries); } @Override - public Template buildTemplate(final Class targetClass, final FieldList fieldList) throws TemplateBuildException { - checkClassValidation(targetClass); - FieldEntry[] entries = toFieldEntries(targetClass, fieldList); - return buildTemplate(targetClass, entries); + public Template buildTemplate(final Class targetClass, final FieldList fieldList) + throws TemplateBuildException { + checkClassValidation(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, fieldList); + return buildTemplate(targetClass, entries); } protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); protected void checkClassValidation(final Class targetClass) { - if (targetClass.isInterface()) { - throw new TemplateBuildException("Cannot build template for interface: " + targetClass.getName()); - } - if (targetClass.isArray()) { - throw new TemplateBuildException("Cannot build template for array class: " + targetClass.getName()); - } - if (targetClass.isPrimitive()) { - throw new TemplateBuildException("Cannot build template of primitive type: " + targetClass.getName()); - } + if (targetClass.isInterface()) { + throw new TemplateBuildException( + "Cannot build template for interface: " + targetClass.getName()); + } + if (targetClass.isArray()) { + throw new TemplateBuildException( + "Cannot build template for array class: " + targetClass.getName()); + } + if (targetClass.isPrimitive()) { + throw new TemplateBuildException( + "Cannot build template of primitive type: " + targetClass.getName()); + } } protected FieldOption getFieldOption(Class targetClass) { - Message m = targetClass.getAnnotation(Message.class); - if (m == null) { - return FieldOption.DEFAULT; - } - MessagePackMessage mpm = targetClass.getAnnotation(MessagePackMessage.class); - if (mpm == null) { - return FieldOption.DEFAULT; - } - // TODO #MN - return m.value(); + Message m = targetClass.getAnnotation(Message.class); + if (m == null) { + return FieldOption.DEFAULT; + } + MessagePackMessage mpm = targetClass + .getAnnotation(MessagePackMessage.class); + if (mpm == null) { + return FieldOption.DEFAULT; + } + // TODO #MN + return m.value(); } private FieldEntry[] toFieldEntries(final Class targetClass, final FieldList flist) { - List src = flist.getList(); - FieldEntry[] entries = new FieldEntry[src.size()]; - for (int i = 0; i < src.size(); i++) { - FieldList.Entry s = src.get(i); - if (s.isAvailable()) { - try { - entries[i] = new DefaultFieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); - } catch (SecurityException e) { - throw new TemplateBuildException(e); - } catch (NoSuchFieldException e) { - throw new TemplateBuildException(e); - } - } else { - entries[i] = new DefaultFieldEntry(); - } - } - return entries; + List src = flist.getList(); + FieldEntry[] entries = new FieldEntry[src.size()]; + for (int i = 0; i < src.size(); i++) { + FieldList.Entry s = src.get(i); + if (s.isAvailable()) { + try { + entries[i] = new DefaultFieldEntry(targetClass.getDeclaredField(s.getName()), s.getOption()); + } catch (SecurityException e) { + throw new TemplateBuildException(e); + } catch (NoSuchFieldException e) { + throw new TemplateBuildException(e); + } + } else { + entries[i] = new DefaultFieldEntry(); + } + } + return entries; } protected FieldEntry[] toFieldEntries(final Class targetClass, final FieldOption from) { - Field[] fields = getFields(targetClass); - - /* index: - * @Index(0) int field_a; // 0 - * int field_b; // 1 - * @Index(3) int field_c; // 3 - * int field_d; // 4 - * @Index(2) int field_e; // 2 - * int field_f; // 5 - */ - List indexed = new ArrayList(); - int maxIndex = -1; - for (Field f : fields) { - FieldOption opt = getFieldOption(f, from); - if (opt == FieldOption.IGNORE) { - // skip - continue; - } - - int index = getFieldIndex(f, maxIndex); - if (indexed.size() > index && indexed.get(index) != null) { - throw new TemplateBuildException("duplicated index: "+index); - } - if (index < 0) { - throw new TemplateBuildException("invalid index: "+index); - } - - while (indexed.size() <= index) { - indexed.add(null); - } - indexed.set(index, new DefaultFieldEntry(f, opt)); - - if (maxIndex < index) { - maxIndex = index; - } - } - - FieldEntry[] entries = new FieldEntry[maxIndex+1]; - for (int i = 0; i < indexed.size(); i++) { - FieldEntry e = indexed.get(i); - if (e == null) { - entries[i] = new DefaultFieldEntry(); - } else { - entries[i] = e; - } - } - return entries; + Field[] fields = getFields(targetClass); + + /* + * index: + * + * @Index(0) + * int field_a; // 0 + * int field_b; // 1 + * @Index(3) + * int field_c; // 3 + * int field_d; // 4 + * @Index(2) + * int field_e; // 2 + * int field_f; // 5 + */ + List indexed = new ArrayList(); + int maxIndex = -1; + for (Field f : fields) { + FieldOption opt = getFieldOption(f, from); + if (opt == FieldOption.IGNORE) { + // skip + continue; + } + + int index = getFieldIndex(f, maxIndex); + if (indexed.size() > index && indexed.get(index) != null) { + throw new TemplateBuildException("duplicated index: " + index); + } + if (index < 0) { + throw new TemplateBuildException("invalid index: " + index); + } + + while (indexed.size() <= index) { + indexed.add(null); + } + indexed.set(index, new DefaultFieldEntry(f, opt)); + + if (maxIndex < index) { + maxIndex = index; + } + } + + FieldEntry[] entries = new FieldEntry[maxIndex + 1]; + for (int i = 0; i < indexed.size(); i++) { + FieldEntry e = indexed.get(i); + if (e == null) { + entries[i] = new DefaultFieldEntry(); + } else { + entries[i] = e; + } + } + return entries; } private Field[] getFields(Class targetClass) { - // order: [fields of super class, ..., fields of this class] - List succ = new ArrayList(); - int total = 0; - for (Class c = targetClass; c != Object.class; c = c.getSuperclass()) { - Field[] fields = c.getDeclaredFields(); - total += fields.length; - succ.add(fields); - } - Field[] result = new Field[total]; - int off = 0; - for (int i = succ.size()-1; i >= 0; i--) { - Field[] fields = succ.get(i); - System.arraycopy(fields, 0, result, off, fields.length); - off += fields.length; - } - return result; + // order: [fields of super class, ..., fields of this class] + List succ = new ArrayList(); + int total = 0; + for (Class c = targetClass; c != Object.class; c = c.getSuperclass()) { + Field[] fields = c.getDeclaredFields(); + total += fields.length; + succ.add(fields); + } + Field[] result = new Field[total]; + int off = 0; + for (int i = succ.size() - 1; i >= 0; i--) { + Field[] fields = succ.get(i); + System.arraycopy(fields, 0, result, off, fields.length); + off += fields.length; + } + return result; } private FieldOption getFieldOption(Field field, FieldOption from) { - int mod = field.getModifiers(); - // default mode: - // transient, static, final : Ignore - // primitive type : NotNullable - // reference type : Ignore - if (Modifier.isStatic(mod) || Modifier.isFinal(mod) || Modifier.isTransient(mod)) { - return FieldOption.IGNORE; - } - - if (isAnnotated(field, Ignore.class)) { - return FieldOption.IGNORE; - } else if(isAnnotated(field, Optional.class)) { - return FieldOption.OPTIONAL; - } else if(isAnnotated(field, NotNullable.class)) { + int mod = field.getModifiers(); + // default mode: + // transient, static, final : Ignore + // primitive type : NotNullable + // reference type : Ignore + if (Modifier.isStatic(mod) || Modifier.isFinal(mod) + || Modifier.isTransient(mod)) { + return FieldOption.IGNORE; + } + + if (isAnnotated(field, Ignore.class)) { + return FieldOption.IGNORE; + } else if (isAnnotated(field, Optional.class)) { + return FieldOption.OPTIONAL; + } else if (isAnnotated(field, NotNullable.class)) { return FieldOption.NOTNULLABLE; - } + } - if (from != FieldOption.DEFAULT) { - return from; - } + if (from != FieldOption.DEFAULT) { + return from; + } - if (field.getType().isPrimitive()) { - return FieldOption.NOTNULLABLE; - } else { - return FieldOption.OPTIONAL; - } + if (field.getType().isPrimitive()) { + return FieldOption.NOTNULLABLE; + } else { + return FieldOption.OPTIONAL; + } } private int getFieldIndex(final Field field, int maxIndex) { - Index a = field.getAnnotation(Index.class); - if (a == null) { - return maxIndex + 1; - } else { - return a.value(); - } + Index a = field.getAnnotation(Index.class); + if (a == null) { + return maxIndex + 1; + } else { + return a.value(); + } } @Override public void writeTemplate(Type targetType, String directoryName) { - throw new UnsupportedOperationException(targetType.toString()); + throw new UnsupportedOperationException(targetType.toString()); } @Override public Template loadTemplate(Type targetType) { - return null; + return null; } - public static boolean isAnnotated(Class targetClass, Class with) { - return targetClass.getAnnotation(with) != null; + public static boolean isAnnotated(Class targetClass, + Class with) { + return targetClass.getAnnotation(with) != null; } public static boolean isAnnotated(AccessibleObject accessibleObject, Class with) { - return accessibleObject.getAnnotation(with) != null; + return accessibleObject.getAnnotation(with) != null; } public static boolean matchAtClassTemplateBuilder(Class targetClass, boolean hasAnnotation) { - if (hasAnnotation) { - return AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); - } else { - return !targetClass.isEnum() && !targetClass.isInterface(); - } + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated(targetClass, Message.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackMessage.class); + } else { + return !targetClass.isEnum() && !targetClass.isInterface(); + } } public static boolean matchAtBeansClassTemplateBuilder(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - if (hasAnnotation) { - return AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) - || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); - } else { - return !targetClass.isEnum() || !targetClass.isInterface(); - } + Class targetClass = (Class) targetType; + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated((Class) targetType, Beans.class) + || AbstractTemplateBuilder.isAnnotated((Class) targetType, MessagePackBeans.class); + } else { + return !targetClass.isEnum() || !targetClass.isInterface(); + } } public static boolean matchAtArrayTemplateBuilder(Class targetClass, boolean hasAnnotation) { - if (((Type) targetClass) instanceof GenericArrayType){ - return true; - } - return targetClass.isArray(); + if (((Type) targetClass) instanceof GenericArrayType) { + return true; + } + return targetClass.isArray(); } public static boolean matchAtOrdinalEnumTemplateBuilder(Class targetClass, boolean hasAnnotation) { - if (hasAnnotation) { - return AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) - || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); - } else { - return targetClass.isEnum(); - } + if (hasAnnotation) { + return AbstractTemplateBuilder.isAnnotated(targetClass, OrdinalEnum.class) + || AbstractTemplateBuilder.isAnnotated(targetClass, MessagePackOrdinalEnum.class); + } else { + return targetClass.isEnum(); + } } } diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index 1758ec009..ef5b68053 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -40,7 +40,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class ArrayTemplateBuilder extends AbstractTemplateBuilder { @@ -48,148 +47,150 @@ public class ArrayTemplateBuilder extends AbstractTemplateBuilder { static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { - private Class componentClass; - - private Template componentTemplate; - - public ReflectionMultidimentionalArrayTemplate(Class componentClass, Template componentTemplate) { - this.componentClass = componentClass; - this.componentTemplate = componentTemplate; - } - - Class getComponentClass() { - return componentClass; - } - - @Override - public void write(Packer packer, Object v, boolean required) throws IOException { - if (v == null) { - if (required) { - throw new MessageTypeException("Attempted to write null"); - } - packer.writeNil(); - return; - } - if (!(v instanceof Object[]) || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { - throw new MessageTypeException(); - } - - Object[] array = (Object[]) v; - int length = array.length; - packer.writeArrayBegin(length); - for (int i = 0; i < length; i++) { - componentTemplate.write(packer, array[i], required); - } - packer.writeArrayEnd(); - } - - @Override - public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { - if (!required && unpacker.trySkipNil()) { - return null; - } - - int length = unpacker.readArrayBegin(); - Object[] array = (Object[]) Array.newInstance(componentClass, length); - for (int i = 0; i < length; i++) { - array[i] = componentTemplate.read(unpacker, null, required); - } - unpacker.readArrayEnd(); - return array; - } + private Class componentClass; + + private Template componentTemplate; + + public ReflectionMultidimentionalArrayTemplate(Class componentClass, Template componentTemplate) { + this.componentClass = componentClass; + this.componentTemplate = componentTemplate; + } + + Class getComponentClass() { + return componentClass; + } + + @Override + public void write(Packer packer, Object v, boolean required) throws IOException { + if (v == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + packer.writeNil(); + return; + } + if (!(v instanceof Object[]) + || !componentClass.isAssignableFrom(v.getClass().getComponentType())) { + throw new MessageTypeException(); + } + + Object[] array = (Object[]) v; + int length = array.length; + packer.writeArrayBegin(length); + for (int i = 0; i < length; i++) { + componentTemplate.write(packer, array[i], required); + } + packer.writeArrayEnd(); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { + if (!required && unpacker.trySkipNil()) { + return null; + } + + int length = unpacker.readArrayBegin(); + Object[] array = (Object[]) Array.newInstance(componentClass, length); + for (int i = 0; i < length; i++) { + array[i] = componentTemplate.read(unpacker, null, required); + } + unpacker.readArrayEnd(); + return array; + } } public ArrayTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry); } @Override public boolean matchType(Type targetType, boolean forceBuild) { - Class targetClass = (Class) targetType; - boolean matched = AbstractTemplateBuilder.matchAtArrayTemplateBuilder(targetClass, false); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = AbstractTemplateBuilder.matchAtArrayTemplateBuilder(targetClass, false); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override public Template buildTemplate(Type arrayType) { - Type baseType; - Class baseClass; - int dim = 1; - if (arrayType instanceof GenericArrayType) { - GenericArrayType type = (GenericArrayType) arrayType; - baseType = type.getGenericComponentType(); - while (baseType instanceof GenericArrayType) { - baseType = ((GenericArrayType) baseType).getGenericComponentType(); - dim += 1; - } - if (baseType instanceof ParameterizedType) { - baseClass = (Class) ((ParameterizedType) baseType).getRawType(); - } else { - baseClass = (Class) baseType; - } - } else { - Class type = (Class) arrayType; - baseClass = type.getComponentType(); - while (baseClass.isArray()) { - baseClass = baseClass.getComponentType(); - dim += 1; - } - baseType = baseClass; - } - return toTemplate(arrayType, baseType, baseClass, dim); + Type baseType; + Class baseClass; + int dim = 1; + if (arrayType instanceof GenericArrayType) { + GenericArrayType type = (GenericArrayType) arrayType; + baseType = type.getGenericComponentType(); + while (baseType instanceof GenericArrayType) { + baseType = ((GenericArrayType) baseType).getGenericComponentType(); + dim += 1; + } + if (baseType instanceof ParameterizedType) { + baseClass = (Class) ((ParameterizedType) baseType).getRawType(); + } else { + baseClass = (Class) baseType; + } + } else { + Class type = (Class) arrayType; + baseClass = type.getComponentType(); + while (baseClass.isArray()) { + baseClass = baseClass.getComponentType(); + dim += 1; + } + baseType = baseClass; + } + return toTemplate(arrayType, baseType, baseClass, dim); } private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClass, int dim) { - if (dim == 1) { - if (baseClass == boolean.class) { - return BooleanArrayTemplate.getInstance(); - } else if (baseClass == short.class) { - return ShortArrayTemplate.getInstance(); - } else if (baseClass == int.class) { - return IntegerArrayTemplate.getInstance(); - } else if (baseClass == long.class) { - return LongArrayTemplate.getInstance(); - } else if (baseClass == float.class) { - return FloatArrayTemplate.getInstance(); - } else if (baseClass == double.class) { - return DoubleArrayTemplate.getInstance(); - } else { - Template baseTemplate = registry.lookup(genericBaseType); - return new ObjectArrayTemplate(baseClass, baseTemplate); - } - } else if (dim == 2) { - Class componentClass = Array.newInstance(baseClass, 0).getClass(); - Template componentTemplate = toTemplate(arrayType, genericBaseType, baseClass, dim - 1); - return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); - } else { - ReflectionMultidimentionalArrayTemplate componentTemplate = - (ReflectionMultidimentionalArrayTemplate) toTemplate(arrayType, genericBaseType, baseClass, dim - 1); - Class componentClass = Array.newInstance(componentTemplate.getComponentClass(), 0).getClass(); - return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); - } + if (dim == 1) { + if (baseClass == boolean.class) { + return BooleanArrayTemplate.getInstance(); + } else if (baseClass == short.class) { + return ShortArrayTemplate.getInstance(); + } else if (baseClass == int.class) { + return IntegerArrayTemplate.getInstance(); + } else if (baseClass == long.class) { + return LongArrayTemplate.getInstance(); + } else if (baseClass == float.class) { + return FloatArrayTemplate.getInstance(); + } else if (baseClass == double.class) { + return DoubleArrayTemplate.getInstance(); + } else { + Template baseTemplate = registry.lookup(genericBaseType); + return new ObjectArrayTemplate(baseClass, baseTemplate); + } + } else if (dim == 2) { + Class componentClass = Array.newInstance(baseClass, 0).getClass(); + Template componentTemplate = toTemplate(arrayType, genericBaseType, baseClass, dim - 1); + return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); + } else { + ReflectionMultidimentionalArrayTemplate componentTemplate = + (ReflectionMultidimentionalArrayTemplate) toTemplate(arrayType, genericBaseType, baseClass, dim - 1); + Class componentClass = Array.newInstance(componentTemplate.getComponentClass(), 0).getClass(); + return new ReflectionMultidimentionalArrayTemplate(componentClass, componentTemplate); + } } @Override - public Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException { - throw new UnsupportedOperationException(targetClass.getName()); + public Template buildTemplate(Class targetClass, FieldList flist) + throws TemplateBuildException { + throw new UnsupportedOperationException(targetClass.getName()); } @Override protected Template buildTemplate(Class targetClass, FieldEntry[] entries) { - throw new UnsupportedOperationException(targetClass.getName()); + throw new UnsupportedOperationException(targetClass.getName()); } @Override public void writeTemplate(Type targetType, String directoryName) { - throw new UnsupportedOperationException(targetType.toString()); + throw new UnsupportedOperationException(targetType.toString()); } @Override public Template loadTemplate(Type targetType) { - return null; + return null; } } diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 925a36e29..3e260b47d 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -29,7 +29,6 @@ import javassist.CtNewConstructor; import javassist.NotFoundException; - @SuppressWarnings("rawtypes") public class BeansBuildContext extends BuildContext { protected BeansFieldEntry[] entries; @@ -41,40 +40,39 @@ public class BeansBuildContext extends BuildContext { protected Template[] templates; public BeansBuildContext(JavassistTemplateBuilder director) { - super(director); + super(director); } - public Template buildTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = origClass.getName(); - return build(origName); + public Template buildTemplate(Class targetClass, + BeansFieldEntry[] entries, Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = origClass.getName(); + return build(origName); } protected void setSuperClass() throws CannotCompileException, NotFoundException { - tmplCtClass.setSuperclass(director.getCtClass( - JavassistTemplateBuilder.JavassistTemplate.class.getName())); + tmplCtClass.setSuperclass(director.getCtClass( + JavassistTemplateBuilder.JavassistTemplate.class.getName())); } protected void buildConstructor() throws CannotCompileException, - NotFoundException { - // Constructor(Class targetClass, Template[] templates) - CtConstructor newCtCons = CtNewConstructor.make( - new CtClass[] { - director.getCtClass(Class.class.getName()), - director.getCtClass(Template.class.getName() + "[]") - }, - new CtClass[0], tmplCtClass); - tmplCtClass.addConstructor(newCtCons); + NotFoundException { + // Constructor(Class targetClass, Template[] templates) + CtConstructor newCtCons = CtNewConstructor.make( + new CtClass[] { + director.getCtClass(Class.class.getName()), + director.getCtClass(Template.class.getName() + "[]") + }, new CtClass[0], tmplCtClass); + tmplCtClass.addConstructor(newCtCons); } protected Template buildInstance(Class c) throws NoSuchMethodException, - InstantiationException, IllegalAccessException, - InvocationTargetException { - Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); - Object tmpl = cons.newInstance(new Object[] { origClass, templates }); - return (Template) tmpl; + InstantiationException, IllegalAccessException, InvocationTargetException { + Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); + Object tmpl = cons.newInstance(new Object[] { origClass, templates }); + return (Template) tmpl; } protected void buildMethodInit() { @@ -82,8 +80,8 @@ protected void buildMethodInit() { @Override protected String buildWriteMethodBody() { - resetStringBuilder(); - buildString("{"); + resetStringBuilder(); + buildString("{"); buildString("if($2 == null) {"); buildString(" if($3) {"); @@ -93,96 +91,99 @@ protected String buildWriteMethodBody() { buildString(" return;"); buildString("}"); - buildString("%s _$$_t = (%s)$2;", origName, origName); - buildString("$1.writeArrayBegin(%d);", entries.length); - - for (int i = 0; i < entries.length; i++) { - BeansFieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.writeNil();"); - continue; - } - Class type = e.getType(); - if (type.isPrimitive()) { - buildString("$1.%s(_$$_t.%s());", primitiveWriteName(type), e.getGetterName()); - } else { - buildString("if(_$$_t.%s() == null) {", e.getGetterName()); - if (e.isNotNullable()) { - buildString("throw new %s();", MessageTypeException.class.getName()); - } else { - buildString("$1.writeNil();"); - } - buildString("} else {"); - buildString(" this.templates[%d].write($1, _$$_t.%s());", i, e.getGetterName()); - buildString("}"); - } - } - - buildString("$1.writeArrayEnd();"); - buildString("}"); - return getBuiltString(); + buildString("%s _$$_t = (%s)$2;", origName, origName); + buildString("$1.writeArrayBegin(%d);", entries.length); + + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString("$1.writeNil();"); + continue; + } + Class type = e.getType(); + if (type.isPrimitive()) { + buildString("$1.%s(_$$_t.%s());", primitiveWriteName(type), e.getGetterName()); + } else { + buildString("if(_$$_t.%s() == null) {", e.getGetterName()); + if (e.isNotNullable()) { + buildString("throw new %s();", MessageTypeException.class.getName()); + } else { + buildString("$1.writeNil();"); + } + buildString("} else {"); + buildString(" this.templates[%d].write($1, _$$_t.%s());", i, e.getGetterName()); + buildString("}"); + } + } + + buildString("$1.writeArrayEnd();"); + buildString("}"); + return getBuiltString(); } @Override protected String buildReadMethodBody() { - resetStringBuilder(); - buildString("{ "); + resetStringBuilder(); + buildString("{ "); buildString("if(!$3 && $1.trySkipNil()) {"); buildString(" return null;"); buildString("}"); - buildString("%s _$$_t;", origName); - buildString("if($2 == null) {"); - buildString(" _$$_t = new %s();", origName); - buildString("} else {"); - buildString(" _$$_t = (%s)$2;", origName); - buildString("}"); + buildString("%s _$$_t;", origName); + buildString("if($2 == null) {"); + buildString(" _$$_t = new %s();", origName); + buildString("} else {"); + buildString(" _$$_t = (%s)$2;", origName); + buildString("}"); - buildString("$1.readArrayBegin();"); + buildString("$1.readArrayBegin();"); - for(int i=0; i < entries.length; i++) { - BeansFieldEntry e = entries[i]; + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString("$1.skip();"); // TODO #MN + if (!e.isAvailable()) { + buildString("$1.skip();"); // TODO #MN continue; } if (e.isOptional()) { - buildString("if($1.trySkipNil()) {"); - buildString("_$$_t.%s(null);", e.getSetterName()); - buildString("} else {"); + buildString("if($1.trySkipNil()) {"); + buildString("_$$_t.%s(null);", e.getSetterName()); + buildString("} else {"); } Class type = e.getType(); if (type.isPrimitive()) { buildString("_$$_t.%s( $1.%s() );", e.getSetterName(), primitiveReadName(type)); } else { - buildString("_$$_t.%s( (%s)this.templates[%d].read($1, _$$_t.%s()) );", + buildString( + "_$$_t.%s( (%s)this.templates[%d].read($1, _$$_t.%s()) );", e.getSetterName(), e.getJavaTypeName(), i, e.getGetterName()); } if (e.isOptional()) { - buildString("}"); + buildString("}"); } } - buildString("$1.readArrayEnd();"); - buildString("return _$$_t;"); + buildString("$1.readArrayEnd();"); + buildString("return _$$_t;"); - buildString("}"); + buildString("}"); - return getBuiltString(); + return getBuiltString(); } @Override - public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates, String directoryName) { - throw new UnsupportedOperationException(targetClass.getName()); + public void writeTemplate(Class targetClass, BeansFieldEntry[] entries, + Template[] templates, String directoryName) { + throw new UnsupportedOperationException(targetClass.getName()); } @Override - public Template loadTemplate(Class targetClass, BeansFieldEntry[] entries, Template[] templates) { - return null; + public Template loadTemplate(Class targetClass, + BeansFieldEntry[] entries, Template[] templates) { + return null; } } diff --git a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java index 32aed5766..06a243aac 100644 --- a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java @@ -7,79 +7,78 @@ import org.msgpack.MessageTypeException; import org.msgpack.template.FieldOption; - public class BeansFieldEntry extends FieldEntry { protected PropertyDescriptor desc; public BeansFieldEntry() { - super(); + super(); } public BeansFieldEntry(final BeansFieldEntry e) { - super(e.option); - this.desc = e.getPropertyDescriptor(); + super(e.option); + this.desc = e.getPropertyDescriptor(); } public BeansFieldEntry(final PropertyDescriptor desc) { - this(desc, FieldOption.DEFAULT); + this(desc, FieldOption.DEFAULT); } public BeansFieldEntry(final PropertyDescriptor desc, final FieldOption option) { - super(option); - this.desc = desc; + super(option); + this.desc = desc; } public String getGetterName() { - return getPropertyDescriptor().getReadMethod().getName(); + return getPropertyDescriptor().getReadMethod().getName(); } public String getSetterName() { - return getPropertyDescriptor().getWriteMethod().getName(); + return getPropertyDescriptor().getWriteMethod().getName(); } public PropertyDescriptor getPropertyDescriptor() { - return desc; + return desc; } @Override public String getName() { - return getPropertyDescriptor().getDisplayName(); + return getPropertyDescriptor().getDisplayName(); } @Override public Class getType() { - return getPropertyDescriptor().getPropertyType(); + return getPropertyDescriptor().getPropertyType(); } @Override public Type getGenericType() { - return getPropertyDescriptor().getReadMethod().getGenericReturnType(); + return getPropertyDescriptor().getReadMethod().getGenericReturnType(); } @Override public Object get(Object target) { - try { - return getPropertyDescriptor().getReadMethod().invoke(target); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } catch (InvocationTargetException e) { - throw new MessageTypeException(e); - } + try { + return getPropertyDescriptor().getReadMethod().invoke(target); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } catch (InvocationTargetException e) { + throw new MessageTypeException(e); + } } @Override public void set(Object target, Object value) { - try { - getPropertyDescriptor().getWriteMethod().invoke(target, value); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } catch (InvocationTargetException e) { - throw new MessageTypeException(e); - } + try { + getPropertyDescriptor().getWriteMethod().invoke(target, value); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } catch (InvocationTargetException e) { + throw new MessageTypeException(e); + } } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index b596e19ad..cf348ce24 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -34,7 +34,6 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - @SuppressWarnings({ "rawtypes" }) public abstract class BuildContext { @@ -53,131 +52,133 @@ public abstract class BuildContext { protected abstract void buildConstructor() throws CannotCompileException, NotFoundException; public BuildContext(JavassistTemplateBuilder director) { - this.director = director; + this.director = director; } protected Template build(final String className) { - try { - reset(className, false); - LOG.debug("started generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); - buildClass(); - buildConstructor(); - buildMethodInit(); - buildWriteMethod(); - buildReadMethod(); - LOG.debug("finished generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); - return buildInstance(createClass()); - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } + try { + reset(className, false); + LOG.debug("started generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + LOG.debug("finished generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className }); + return buildInstance(createClass()); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } } protected void reset(String className, boolean isWritten) { - String tmplName = null; - if (!isWritten) { - tmplName = className + "_$$_Template" + "_" + director.hashCode() + "_" + director.nextSeqId(); - } else { - tmplName = className + "_$$_Template"; - } - tmplCtClass = director.makeCtClass(tmplName); + String tmplName = null; + if (!isWritten) { + tmplName = className + "_$$_Template" + "_" + director.hashCode() + + "_" + director.nextSeqId(); + } else { + tmplName = className + "_$$_Template"; + } + tmplCtClass = director.makeCtClass(tmplName); } - protected void buildClass() throws CannotCompileException, - NotFoundException { - setSuperClass(); - tmplCtClass.addInterface(director.getCtClass(Template.class.getName())); + protected void buildClass() throws CannotCompileException, NotFoundException { + setSuperClass(); + tmplCtClass.addInterface(director.getCtClass(Template.class.getName())); } protected void buildMethodInit() { } - protected abstract Template buildInstance(Class c) throws NoSuchMethodException, - InstantiationException, IllegalAccessException, InvocationTargetException; + protected abstract Template buildInstance(Class c) + throws NoSuchMethodException, InstantiationException, + IllegalAccessException, InvocationTargetException; protected void buildWriteMethod() throws CannotCompileException, NotFoundException { - LOG.debug("started generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); - String mbody = buildWriteMethodBody(); - int mod = javassist.Modifier.PUBLIC; - CtClass returnType = CtClass.voidType; - String mname = "write"; - CtClass[] paramTypes = new CtClass[] { - director.getCtClass(Packer.class.getName()), - director.getCtClass(Object.class.getName()), + LOG.debug("started generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildWriteMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = CtClass.voidType; + String mname = "write"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Packer.class.getName()), + director.getCtClass(Object.class.getName()), CtClass.booleanType - }; - CtClass[] exceptTypes = new CtClass[] { - director.getCtClass(IOException.class.getName()) - }; - LOG.debug("compiling write method body: %s", new Object[] { mbody }); - CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); - tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(IOException.class.getName()) + }; + LOG.debug("compiling write method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make( + mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating write method in template class %s", + new Object[] { tmplCtClass.getName() }); } protected abstract String buildWriteMethodBody(); protected void buildReadMethod() throws CannotCompileException, NotFoundException { - LOG.debug("started generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); - String mbody = buildReadMethodBody(); - int mod = javassist.Modifier.PUBLIC; - CtClass returnType = director.getCtClass(Object.class.getName()); - String mname = "read"; - CtClass[] paramTypes = new CtClass[] { - director.getCtClass(Unpacker.class.getName()), - director.getCtClass(Object.class.getName()), + LOG.debug("started generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); + String mbody = buildReadMethodBody(); + int mod = javassist.Modifier.PUBLIC; + CtClass returnType = director.getCtClass(Object.class.getName()); + String mname = "read"; + CtClass[] paramTypes = new CtClass[] { + director.getCtClass(Unpacker.class.getName()), + director.getCtClass(Object.class.getName()), CtClass.booleanType - }; - CtClass[] exceptTypes = new CtClass[] { - director.getCtClass(MessageTypeException.class.getName()) - }; - LOG.debug("compiling read method body: %s", new Object[] { mbody }); - CtMethod newCtMethod = CtNewMethod.make(mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); - tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); + }; + CtClass[] exceptTypes = new CtClass[] { + director.getCtClass(MessageTypeException.class.getName()) + }; + LOG.debug("compiling read method body: %s", new Object[] { mbody }); + CtMethod newCtMethod = CtNewMethod.make( + mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); + tmplCtClass.addMethod(newCtMethod); + LOG.debug("finished generating read method in template class %s", + new Object[] { tmplCtClass.getName() }); } protected abstract String buildReadMethodBody(); protected Class createClass() throws CannotCompileException { - return (Class) tmplCtClass.toClass(null, null); + return (Class) tmplCtClass.toClass(null, null); } - protected void saveClass(final String directoryName) - throws CannotCompileException, IOException { - tmplCtClass.writeFile(directoryName); + protected void saveClass(final String directoryName) throws CannotCompileException, IOException { + tmplCtClass.writeFile(directoryName); } protected StringBuilder stringBuilder = null; protected void resetStringBuilder() { - stringBuilder = new StringBuilder(); + stringBuilder = new StringBuilder(); } protected void buildString(String str) { - stringBuilder.append(str); + stringBuilder.append(str); } protected void buildString(String format, Object... args) { - stringBuilder.append(String.format(format, args)); + stringBuilder.append(String.format(format, args)); } protected String getBuiltString() { - if (stringBuilder == null) { - return null; - } - return stringBuilder.toString(); + if (stringBuilder == null) { + return null; + } + return stringBuilder.toString(); } protected String primitiveWriteName(Class type) { @@ -185,65 +186,66 @@ protected String primitiveWriteName(Class type) { } protected String primitiveReadName(Class type) { - if (type == boolean.class) { - return "readBoolean"; - } else if (type == byte.class) { - return "readByte"; - } else if (type == short.class) { - return "readShort"; - } else if (type == int.class) { - return "readInt"; - } else if (type == long.class) { - return "readLong"; - } else if (type == float.class) { - return "readFloat"; - } else if (type == double.class) { - return "readDouble"; - } else if (type == char.class) { - return "readInt"; - } - return null; - } - - protected abstract void writeTemplate(Class targetClass, T[] entries, Template[] templates, String directoryName); + if (type == boolean.class) { + return "readBoolean"; + } else if (type == byte.class) { + return "readByte"; + } else if (type == short.class) { + return "readShort"; + } else if (type == int.class) { + return "readInt"; + } else if (type == long.class) { + return "readLong"; + } else if (type == float.class) { + return "readFloat"; + } else if (type == double.class) { + return "readDouble"; + } else if (type == char.class) { + return "readInt"; + } + return null; + } + + protected abstract void writeTemplate(Class targetClass, T[] entries, + Template[] templates, String directoryName); protected void write(final String className, final String directoryName) { - try { - reset(className, true); - buildClass(); - buildConstructor(); - buildMethodInit(); - buildWriteMethod(); - buildReadMethod(); - saveClass(directoryName); - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } + try { + reset(className, true); + buildClass(); + buildConstructor(); + buildMethodInit(); + buildWriteMethod(); + buildReadMethod(); + saveClass(directoryName); + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } } protected abstract Template loadTemplate(Class targetClass, T[] entries, Template[] templates); protected Template load(final String className) { - String tmplName = className + "_$$_Template"; - try { - Class tmplClass = getClass().getClassLoader().loadClass(tmplName); - return buildInstance(tmplClass); - } catch (ClassNotFoundException e) { - return null; - } catch (Exception e) { - String code = getBuiltString(); - if (code != null) { - LOG.error("builder: " + code, e); - throw new TemplateBuildException("Cannot compile: " + code, e); - } else { - throw new TemplateBuildException(e); - } - } + String tmplName = className + "_$$_Template"; + try { + Class tmplClass = getClass().getClassLoader().loadClass(tmplName); + return buildInstance(tmplClass); + } catch (ClassNotFoundException e) { + return null; + } catch (Exception e) { + String code = getBuiltString(); + if (code != null) { + LOG.error("builder: " + code, e); + throw new TemplateBuildException("Cannot compile: " + code, e); + } else { + throw new TemplateBuildException(e); + } + } } } diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 7f128c980..498584ab0 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -33,7 +33,6 @@ import javassist.CtNewConstructor; import javassist.NotFoundException; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class DefaultBuildContext extends BuildContext { protected FieldEntry[] entries; @@ -45,46 +44,48 @@ public class DefaultBuildContext extends BuildContext { protected Template[] templates; public DefaultBuildContext(JavassistTemplateBuilder director) { - super(director); + super(director); } - public Template buildTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = origClass.getName(); - return build(origName); + public Template buildTemplate(Class targetClass, FieldEntry[] entries, + Template[] templates) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = origClass.getName(); + return build(origName); } protected void setSuperClass() throws CannotCompileException, NotFoundException { - tmplCtClass.setSuperclass(director.getCtClass( - JavassistTemplateBuilder.JavassistTemplate.class.getName())); + tmplCtClass.setSuperclass(director.getCtClass( + JavassistTemplateBuilder.JavassistTemplate.class.getName())); } protected void buildConstructor() throws CannotCompileException, - NotFoundException { - // Constructor(Class targetClass, Template[] templates) - CtConstructor newCtCons = CtNewConstructor.make( - new CtClass[] { - director.getCtClass(Class.class.getName()), - director.getCtClass(Template.class.getName() + "[]") - }, new CtClass[0], tmplCtClass); - tmplCtClass.addConstructor(newCtCons); + NotFoundException { + // Constructor(Class targetClass, Template[] templates) + CtConstructor newCtCons = CtNewConstructor.make( + new CtClass[] { + director.getCtClass(Class.class.getName()), + director.getCtClass(Template.class.getName() + "[]") + }, new CtClass[0], tmplCtClass); + tmplCtClass.addConstructor(newCtCons); } protected Template buildInstance(Class c) throws NoSuchMethodException, - InstantiationException, IllegalAccessException, InvocationTargetException { - Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); - Object tmpl = cons.newInstance(new Object[] { origClass, templates }); - return (Template) tmpl; + InstantiationException, IllegalAccessException, + InvocationTargetException { + Constructor cons = c.getConstructor(new Class[] { Class.class, Template[].class }); + Object tmpl = cons.newInstance(new Object[] { origClass, templates }); + return (Template) tmpl; } protected void buildMethodInit() { } protected String buildWriteMethodBody() { - resetStringBuilder(); - buildString("\n{\n"); + resetStringBuilder(); + buildString("\n{\n"); buildString(" if ($2 == null) {\n"); buildString(" if ($3) {\n"); @@ -94,182 +95,192 @@ protected String buildWriteMethodBody() { buildString(" return;\n"); buildString(" }\n"); - buildString(" %s _$$_t = (%s) $2;\n", origName, origName); - buildString(" $1.writeArrayBegin(%d);\n", entries.length); - - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString(" $1.writeNil();\n"); - continue; - } - DefaultFieldEntry de = (DefaultFieldEntry) e; - boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); - Class type = de.getType(); - if (type.isPrimitive()) { // primitive types - if (!isPrivate) { - buildString(" $1.%s(_$$_t.%s);\n", primitiveWriteName(type), de.getName()); - } else { - buildString(" %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); - } - } else { // reference types - if (!isPrivate) { + buildString(" %s _$$_t = (%s) $2;\n", origName, origName); + buildString(" $1.writeArrayBegin(%d);\n", entries.length); + + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString(" $1.writeNil();\n"); + continue; + } + DefaultFieldEntry de = (DefaultFieldEntry) e; + boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); + Class type = de.getType(); + if (type.isPrimitive()) { // primitive types + if (!isPrivate) { + buildString(" $1.%s(_$$_t.%s);\n", primitiveWriteName(type), de.getName()); + } else { + buildString( + " %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); + } + } else { // reference types + if (!isPrivate) { buildString(" if (_$$_t.%s == null) {\n", de.getName()); - } else { - buildString(" if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", + } else { + buildString( + " if (%s.readPrivateField(_$$_t, %s.class, \"%s\") == null) {\n", DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName()); - } - if (de.isNotNullable()) { - buildString(" throw new %s(\"%s cannot be null by @NotNullable\");\n", - MessageTypeException.class.getName(), de.getName()); - } else { - buildString(" $1.writeNil();\n"); - } - buildString(" } else {\n"); - if (!isPrivate) { - buildString(" templates[%d].write($1, _$$_t.%s);\n", i, de.getName()); - } else { - buildString(" %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); - } - buildString(" }\n"); - } - } - - buildString(" $1.writeArrayEnd();\n"); - buildString("}\n"); - return getBuiltString(); + } + if (de.isNotNullable()) { + buildString( + " throw new %s(\"%s cannot be null by @NotNullable\");\n", + MessageTypeException.class.getName(), de.getName()); + } else { + buildString(" $1.writeNil();\n"); + } + buildString(" } else {\n"); + if (!isPrivate) { + buildString(" templates[%d].write($1, _$$_t.%s);\n", i, de.getName()); + } else { + buildString( + " %s.writePrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); + } + buildString(" }\n"); + } + } + + buildString(" $1.writeArrayEnd();\n"); + buildString("}\n"); + return getBuiltString(); } public static Object readPrivateField(Object target, Class targetClass, String fieldName) { - Field field = null; - try { - field = targetClass.getDeclaredField(fieldName); - field.setAccessible(true); - Object valueReference = field.get(target); - return valueReference; - } catch (Exception e) { - throw new MessageTypeException(e); - } finally { - if (field != null) { - field.setAccessible(false); - } - } + Field field = null; + try { + field = targetClass.getDeclaredField(fieldName); + field.setAccessible(true); + Object valueReference = field.get(target); + return valueReference; + } catch (Exception e) { + throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } + } } - public static void writePrivateField(Packer packer, Object target, Class targetClass, String fieldName, Template tmpl) { - Field field = null; - try { - field = targetClass.getDeclaredField(fieldName); - field.setAccessible(true); - Object valueReference = field.get(target); - tmpl.write(packer, valueReference); - } catch (Exception e) { - throw new MessageTypeException(e); - } finally { - if (field != null) { - field.setAccessible(false); - } - } + public static void writePrivateField(Packer packer, Object target, + Class targetClass, String fieldName, Template tmpl) { + Field field = null; + try { + field = targetClass.getDeclaredField(fieldName); + field.setAccessible(true); + Object valueReference = field.get(target); + tmpl.write(packer, valueReference); + } catch (Exception e) { + throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } + } } protected String buildReadMethodBody() { - resetStringBuilder(); - buildString("\n{\n"); + resetStringBuilder(); + buildString("\n{\n"); buildString(" if (!$3 && $1.trySkipNil()) {\n"); buildString(" return null;\n"); buildString(" }\n"); - buildString(" %s _$$_t;\n", origName); - buildString(" if ($2 == null) {\n"); - buildString(" _$$_t = new %s();\n", origName); - buildString(" } else {\n"); - buildString(" _$$_t = (%s) $2;\n", origName); - buildString(" }\n"); - buildString(" $1.readArrayBegin();\n"); - - int i; - for (i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - if (!e.isAvailable()) { - buildString(" $1.skip();\n"); - continue; - } + buildString(" %s _$$_t;\n", origName); + buildString(" if ($2 == null) {\n"); + buildString(" _$$_t = new %s();\n", origName); + buildString(" } else {\n"); + buildString(" _$$_t = (%s) $2;\n", origName); + buildString(" }\n"); + buildString(" $1.readArrayBegin();\n"); + + int i; + for (i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + if (!e.isAvailable()) { + buildString(" $1.skip();\n"); + continue; + } if (e.isOptional()) { - buildString(" if ($1.trySkipNil()) {"); - // if Optional and nil, then keep default value - buildString(" } else {\n"); + buildString(" if ($1.trySkipNil()) {"); + // if Optional and nil, then keep default value + buildString(" } else {\n"); } - DefaultFieldEntry de = (DefaultFieldEntry) e; - boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); - Class type = de.getType(); - if (type.isPrimitive()) { - if (!isPrivate) { - buildString(" _$$_t.%s = $1.%s();\n", de.getName(), primitiveReadName(type)); - } else { - buildString(" %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); - } - } else { - if (!isPrivate) { - buildString(" _$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);\n", - de.getName(), de.getJavaTypeName(), i, de.getName()); - } else { - buildString(" %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", - DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); - } - } + DefaultFieldEntry de = (DefaultFieldEntry) e; + boolean isPrivate = Modifier.isPrivate(de.getField().getModifiers()); + Class type = de.getType(); + if (type.isPrimitive()) { + if (!isPrivate) { + buildString(" _$$_t.%s = $1.%s();\n", de.getName(), primitiveReadName(type)); + } else { + buildString( + " %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); + } + } else { + if (!isPrivate) { + buildString( + " _$$_t.%s = (%s) this.templates[%d].read($1, _$$_t.%s);\n", + de.getName(), de.getJavaTypeName(), i, de.getName()); + } else { + buildString( + " %s.readPrivateField($1, _$$_t, %s.class, \"%s\", templates[%d]);\n", + DefaultBuildContext.class.getName(), de.getField().getDeclaringClass().getName(), de.getName(), i); + } + } if (de.isOptional()) { - buildString(" }\n"); + buildString(" }\n"); } - } + } - buildString(" $1.readArrayEnd();\n"); - buildString(" return _$$_t;\n"); + buildString(" $1.readArrayEnd();\n"); + buildString(" return _$$_t;\n"); - buildString("}\n"); - return getBuiltString(); + buildString("}\n"); + return getBuiltString(); } - public static void readPrivateField(Unpacker unpacker, Object target, Class targetClass, String fieldName, Template tmpl) { - Field field = null; - try { - field = targetClass.getDeclaredField(fieldName); - field.setAccessible(true); - Object fieldReference = field.get(target); - Object valueReference = tmpl.read(unpacker, fieldReference); - if (valueReference != fieldReference) { - field.set(target, valueReference); - } - } catch (Exception e) { - throw new MessageTypeException(e); - } finally { - if (field != null) { - field.setAccessible(false); - } - } + public static void readPrivateField(Unpacker unpacker, Object target, + Class targetClass, String fieldName, Template tmpl) { + Field field = null; + try { + field = targetClass.getDeclaredField(fieldName); + field.setAccessible(true); + Object fieldReference = field.get(target); + Object valueReference = tmpl.read(unpacker, fieldReference); + if (valueReference != fieldReference) { + field.set(target, valueReference); + } + } catch (Exception e) { + throw new MessageTypeException(e); + } finally { + if (field != null) { + field.setAccessible(false); + } + } } @Override - public void writeTemplate(Class targetClass, FieldEntry[] entries, Template[] templates, String directoryName) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = origClass.getName(); - write(origName, directoryName); + public void writeTemplate(Class targetClass, FieldEntry[] entries, + Template[] templates, String directoryName) { + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = origClass.getName(); + write(origName, directoryName); } @Override public Template loadTemplate(Class targetClass, FieldEntry[] entries, Template[] templates) { - this.entries = entries; - this.templates = templates; - this.origClass = targetClass; - this.origName = origClass.getName(); - return load(origName); + this.entries = entries; + this.templates = templates; + this.origClass = targetClass; + this.origName = origClass.getName(); + return load(origName); } } diff --git a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java index b2998053a..47500d357 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java @@ -23,65 +23,64 @@ import org.msgpack.MessageTypeException; import org.msgpack.template.FieldOption; - public class DefaultFieldEntry extends FieldEntry { protected Field field; public DefaultFieldEntry() { - this(null, FieldOption.IGNORE); + this(null, FieldOption.IGNORE); } public DefaultFieldEntry(final DefaultFieldEntry e) { - this(e.field, e.option); + this(e.field, e.option); } public DefaultFieldEntry(final Field field, final FieldOption option) { - super(option); - this.field = field; + super(option); + this.field = field; } public Field getField() { - return field; + return field; } public void setField(final Field field) { - this.field = field; + this.field = field; } @Override public String getName() { - return field.getName(); + return field.getName(); } @Override public Class getType() { - return field.getType(); + return field.getType(); } @Override public Type getGenericType() { - return field.getGenericType(); + return field.getGenericType(); } @Override public Object get(Object target) { - try { - return getField().get(target); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } + try { + return getField().get(target); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } } @Override public void set(Object target, Object value) { - try { - field.set(target, value); - } catch (IllegalArgumentException e) { - throw new MessageTypeException(e); - } catch (IllegalAccessException e) { - throw new MessageTypeException(e); - } + try { + field.set(target, value); + } catch (IllegalArgumentException e) { + throw new MessageTypeException(e); + } catch (IllegalAccessException e) { + throw new MessageTypeException(e); + } } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 0e21ec19c..2f6c501ab 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -21,37 +21,36 @@ import org.msgpack.template.FieldOption; - public abstract class FieldEntry { protected FieldOption option; public FieldEntry() { - this(FieldOption.IGNORE); + this(FieldOption.IGNORE); } public FieldEntry(FieldOption option) { - this.option = option; + this.option = option; } public FieldOption getOption() { - return option; + return option; } public void setOption(FieldOption option) { - this.option = option; + this.option = option; } public boolean isAvailable() { - return option != FieldOption.IGNORE; + return option != FieldOption.IGNORE; } public boolean isOptional() { - return option == FieldOption.OPTIONAL; + return option == FieldOption.OPTIONAL; } public boolean isNotNullable() { - return option == FieldOption.NOTNULLABLE; + return option == FieldOption.NOTNULLABLE; } public abstract String getName(); @@ -65,27 +64,27 @@ public boolean isNotNullable() { public abstract void set(Object target, Object value); public String getJavaTypeName() { - Class type = getType(); - if (type.isArray()) { - return arrayTypeToString(type); - } else { - return type.getName(); - } + Class type = getType(); + if (type.isArray()) { + return arrayTypeToString(type); + } else { + return type.getName(); + } } public String arrayTypeToString(Class type) { - int dim = 1; - Class baseType = type.getComponentType(); - while (baseType.isArray()) { - baseType = baseType.getComponentType(); - dim += 1; - } - StringBuilder sb = new StringBuilder(); - sb.append(baseType.getName()); - for (int i = 0; i < dim; ++i) { - sb.append("[]"); - } - return sb.toString(); + int dim = 1; + Class baseType = type.getComponentType(); + while (baseType.isArray()) { + baseType = baseType.getComponentType(); + dim += 1; + } + StringBuilder sb = new StringBuilder(); + sb.append(baseType.getName()); + for (int i = 0; i < dim; ++i) { + sb.append("[]"); + } + return sb.toString(); } } diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index 597381037..2293f56c8 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -6,27 +6,26 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - @SuppressWarnings({ "rawtypes" }) public class JavassistBeansTemplateBuilder extends JavassistTemplateBuilder { private static final Logger LOG = LoggerFactory.getLogger(JavassistBeansTemplateBuilder.class); public JavassistBeansTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry); } @Override public boolean matchType(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override protected BuildContext createBuildContext() { - return new BeansBuildContext(this); + return new BeansBuildContext(this); } } \ No newline at end of file diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 50727a719..4c0855bd7 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -32,20 +32,19 @@ import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class JavassistTemplateBuilder extends AbstractTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(JavassistTemplateBuilder.class); public static abstract class JavassistTemplate extends AbstractTemplate { - public Class targetClass; - public Template[] templates; + public Class targetClass; + public Template[] templates; - public JavassistTemplate(Class targetClass, Template[] templates) { - this.targetClass = targetClass; - this.templates = templates; - } + public JavassistTemplate(Class targetClass, Template[] templates) { + this.targetClass = targetClass; + this.templates = templates; + } } protected ClassPool pool; @@ -53,115 +52,116 @@ public JavassistTemplate(Class targetClass, Template[] templates) { protected int seqId = 0; public JavassistTemplateBuilder(TemplateRegistry registry) { - super(registry); - pool = new ClassPool(); - boolean appended = false; - ClassLoader cl = null; - try { - cl = Thread.currentThread().getContextClassLoader(); - if (cl != null) { - pool.appendClassPath(new LoaderClassPath(cl)); - appended = true; - } - } catch (SecurityException e) { - LOG.debug("Cannot append a search path of context classloader", e); - } - try { - ClassLoader cl2 = getClass().getClassLoader(); - if (cl2 != null && cl2 != cl) { - pool.appendClassPath(new LoaderClassPath(cl2)); - appended = true; - } - } catch (SecurityException e) { - LOG.debug("Cannot append a search path of classloader", e); - } - if (!appended) { - pool.appendSystemPath(); - } + super(registry); + pool = new ClassPool(); + boolean appended = false; + ClassLoader cl = null; + try { + cl = Thread.currentThread().getContextClassLoader(); + if (cl != null) { + pool.appendClassPath(new LoaderClassPath(cl)); + appended = true; + } + } catch (SecurityException e) { + LOG.debug("Cannot append a search path of context classloader", e); + } + try { + ClassLoader cl2 = getClass().getClassLoader(); + if (cl2 != null && cl2 != cl) { + pool.appendClassPath(new LoaderClassPath(cl2)); + appended = true; + } + } catch (SecurityException e) { + LOG.debug("Cannot append a search path of classloader", e); + } + if (!appended) { + pool.appendSystemPath(); + } } @Override public boolean matchType(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } public void addClassLoader(ClassLoader cl) { - pool.appendClassPath(new LoaderClassPath(cl)); + pool.appendClassPath(new LoaderClassPath(cl)); } protected CtClass makeCtClass(String className) { - return pool.makeClass(className); + return pool.makeClass(className); } protected CtClass getCtClass(String className) throws NotFoundException { - return pool.get(className); + return pool.get(className); } protected int nextSeqId() { - return seqId++; + return seqId++; } protected BuildContext createBuildContext() { - return new DefaultBuildContext(this); + return new DefaultBuildContext(this); } @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - Template[] tmpls = toTemplate(entries); - BuildContext bc = createBuildContext(); - return bc.buildTemplate(targetClass, entries, tmpls); + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + return bc.buildTemplate(targetClass, entries, tmpls); } private Template[] toTemplate(FieldEntry[] from) { - Template[] tmpls = new Template[from.length]; - for(int i = 0; i < from.length; ++i) { - FieldEntry e = from[i]; - if(!e.isAvailable()) { - tmpls[i] = null; - } else { - Template tmpl = registry.lookup(e.getGenericType()); - tmpls[i] = tmpl; - } - } - return tmpls; + Template[] tmpls = new Template[from.length]; + for (int i = 0; i < from.length; ++i) { + FieldEntry e = from[i]; + if (!e.isAvailable()) { + tmpls[i] = null; + } else { + Template tmpl = registry.lookup(e.getGenericType()); + tmpls[i] = tmpl; + } + } + return tmpls; } @Override public void writeTemplate(Type targetType, String directoryName) { - Class targetClass = (Class)targetType; - checkClassValidation(targetClass); - FieldOption implicitOption = getFieldOption(targetClass); - FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); - writeTemplate(targetClass, entries, directoryName); + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); + writeTemplate(targetClass, entries, directoryName); } private void writeTemplate(Class targetClass, FieldEntry[] entries, String directoryName) { - Template[] tmpls = toTemplate(entries); - BuildContext bc = createBuildContext(); - bc.writeTemplate(targetClass, entries, tmpls, directoryName); + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + bc.writeTemplate(targetClass, entries, tmpls, directoryName); } @Override public Template loadTemplate(Type targetType) { - // FIXME #MN must consider how to load "reference cycle class" in next version - Class targetClass = (Class) targetType; - checkClassValidation(targetClass); - try { - // check loadable - String tmplName = targetClass.getName() + "_$$_Template"; - targetClass.getClassLoader().loadClass(tmplName); - } catch (ClassNotFoundException e) { - return null; - } - FieldOption implicitOption = getFieldOption(targetClass); - FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); - Template[] tmpls = toTemplate(entries); - BuildContext bc = createBuildContext(); - return bc.loadTemplate(targetClass, entries, tmpls); + // FIXME #MN must consider how to load "reference cycle class" in next + // version + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + try { + // check loadable + String tmplName = targetClass.getName() + "_$$_Template"; + targetClass.getClassLoader().loadClass(tmplName); + } catch (ClassNotFoundException e) { + return null; + } + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + return bc.loadTemplate(targetClass, entries, tmpls); } } diff --git a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java index 02f78303a..4938cf506 100644 --- a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java @@ -26,41 +26,41 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - public class OrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { private static final Logger LOG = LoggerFactory.getLogger(OrdinalEnumTemplateBuilder.class); public OrdinalEnumTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry); } @Override public boolean matchType(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - boolean matched = matchAtOrdinalEnumTemplateBuilder(targetClass, hasAnnotation); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = matchAtOrdinalEnumTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - throw new UnsupportedOperationException("fatal error: " + targetClass.getName()); + throw new UnsupportedOperationException("fatal error: " + targetClass.getName()); } @Override public Template buildTemplate(Type targetType) throws TemplateBuildException { - @SuppressWarnings("unchecked") - Class targetClass = (Class) targetType; - checkOrdinalEnumValidation(targetClass); - return new OrdinalEnumTemplate(targetClass); + @SuppressWarnings("unchecked") + Class targetClass = (Class) targetType; + checkOrdinalEnumValidation(targetClass); + return new OrdinalEnumTemplate(targetClass); } protected void checkOrdinalEnumValidation(Class targetClass) { - if(! targetClass.isEnum()) { - throw new TemplateBuildException("tried to build ordinal enum template of non-enum class: " + targetClass.getName()); - } + if (!targetClass.isEnum()) { + throw new TemplateBuildException( + "tried to build ordinal enum template of non-enum class: " + targetClass.getName()); + } } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 5d7d70f8d..b19968bcc 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -39,12 +39,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - /** * Class for building java reflection template builder for java beans class. * * @author takeshita - * + * */ @SuppressWarnings({ "rawtypes" }) public class ReflectionBeansTemplateBuilder extends ReflectionTemplateBuilder { @@ -52,160 +51,160 @@ public class ReflectionBeansTemplateBuilder extends ReflectionTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); static class ReflectionBeansFieldTemplate extends ReflectionFieldTemplate { - ReflectionBeansFieldTemplate(final FieldEntry entry) { - super(entry); - } - - @Override - public void write(Packer packer, Object v, boolean required) throws IOException { - packer.write(v); - } - - @Override - public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { - Object o = unpacker.read(entry.getType()); - entry.set(to, o); - return o; - } + ReflectionBeansFieldTemplate(final FieldEntry entry) { + super(entry); + } + + @Override + public void write(Packer packer, Object v, boolean required) throws IOException { + packer.write(v); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { + Object o = unpacker.read(entry.getType()); + entry.set(to, o); + return o; + } } public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry); } @Override public boolean matchType(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - boolean matched = matchAtBeansClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = matchAtBeansClassTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { - ReflectionFieldTemplate[] tmpls = new ReflectionFieldTemplate[entries.length]; - for (int i = 0; i < entries.length; i++) { - FieldEntry e = entries[i]; - Class type = e.getType(); - if (type.isPrimitive()) { - tmpls[i] = new ReflectionBeansFieldTemplate(e); - } else { - Template tmpl = registry.lookup(e.getGenericType()); - tmpls[i] = new FieldTemplateImpl(e, tmpl); - } - } - return tmpls; + ReflectionFieldTemplate[] tmpls = new ReflectionFieldTemplate[entries.length]; + for (int i = 0; i < entries.length; i++) { + FieldEntry e = entries[i]; + Class type = e.getType(); + if (type.isPrimitive()) { + tmpls[i] = new ReflectionBeansFieldTemplate(e); + } else { + Template tmpl = registry.lookup(e.getGenericType()); + tmpls[i] = new FieldTemplateImpl(e, tmpl); + } + } + return tmpls; } @Override public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOption) { - BeanInfo desc; - try { - desc = Introspector.getBeanInfo(targetClass); - } catch (IntrospectionException e1) { - throw new TemplateBuildException("Class must be java beans class:" + targetClass.getName()); - } - - PropertyDescriptor[] props = desc.getPropertyDescriptors(); - ArrayList list = new ArrayList(); - for (int i = 0; i < props.length; i++) { - PropertyDescriptor pd = props[i]; - if (!isIgnoreProperty(pd)) { - list.add(pd); - } - } - props = new PropertyDescriptor[list.size()]; - list.toArray(props); - - BeansFieldEntry[] entries = new BeansFieldEntry[props.length]; - for (int i = 0; i < props.length; i++) { - PropertyDescriptor p = props[i]; - int index = getPropertyIndex(p); - if (index >= 0) { - if (entries[index] != null) { - throw new TemplateBuildException("duplicated index: " - + index); - } - if (index >= entries.length) { - throw new TemplateBuildException("invalid index: " + index); - } - entries[index] = new BeansFieldEntry(p); - props[index] = null; - } - } - int insertIndex = 0; - for (int i = 0; i < props.length; i++) { - PropertyDescriptor p = props[i]; - if (p != null) { - while (entries[insertIndex] != null) { - insertIndex++; - } - entries[insertIndex] = new BeansFieldEntry(p); - } - - } - for (int i = 0; i < entries.length; i++) { - BeansFieldEntry e = entries[i]; - FieldOption op = getPropertyOption(e, implicitOption); - e.setOption(op); - } - return entries; + BeanInfo desc; + try { + desc = Introspector.getBeanInfo(targetClass); + } catch (IntrospectionException e1) { + throw new TemplateBuildException( + "Class must be java beans class:" + targetClass.getName()); + } + + PropertyDescriptor[] props = desc.getPropertyDescriptors(); + ArrayList list = new ArrayList(); + for (int i = 0; i < props.length; i++) { + PropertyDescriptor pd = props[i]; + if (!isIgnoreProperty(pd)) { + list.add(pd); + } + } + props = new PropertyDescriptor[list.size()]; + list.toArray(props); + + BeansFieldEntry[] entries = new BeansFieldEntry[props.length]; + for (int i = 0; i < props.length; i++) { + PropertyDescriptor p = props[i]; + int index = getPropertyIndex(p); + if (index >= 0) { + if (entries[index] != null) { + throw new TemplateBuildException("duplicated index: " + index); + } + if (index >= entries.length) { + throw new TemplateBuildException("invalid index: " + index); + } + entries[index] = new BeansFieldEntry(p); + props[index] = null; + } + } + int insertIndex = 0; + for (int i = 0; i < props.length; i++) { + PropertyDescriptor p = props[i]; + if (p != null) { + while (entries[insertIndex] != null) { + insertIndex++; + } + entries[insertIndex] = new BeansFieldEntry(p); + } + + } + for (int i = 0; i < entries.length; i++) { + BeansFieldEntry e = entries[i]; + FieldOption op = getPropertyOption(e, implicitOption); + e.setOption(op); + } + return entries; } private FieldOption getPropertyOption(BeansFieldEntry e, FieldOption implicitOption) { - FieldOption forGetter = getMethodOption(e.getPropertyDescriptor().getReadMethod()); - if (forGetter != FieldOption.DEFAULT) { - return forGetter; - } - FieldOption forSetter = getMethodOption(e.getPropertyDescriptor().getWriteMethod()); - if (forSetter != FieldOption.DEFAULT) { - return forSetter; - } else { - return implicitOption; - } + FieldOption forGetter = getMethodOption(e.getPropertyDescriptor().getReadMethod()); + if (forGetter != FieldOption.DEFAULT) { + return forGetter; + } + FieldOption forSetter = getMethodOption(e.getPropertyDescriptor().getWriteMethod()); + if (forSetter != FieldOption.DEFAULT) { + return forSetter; + } else { + return implicitOption; + } } private FieldOption getMethodOption(Method method) { - if (isAnnotated(method, Ignore.class)) { - return FieldOption.IGNORE; - } else if (isAnnotated(method, Optional.class)) { - return FieldOption.OPTIONAL; - } else if (isAnnotated(method, NotNullable.class)) { + if (isAnnotated(method, Ignore.class)) { + return FieldOption.IGNORE; + } else if (isAnnotated(method, Optional.class)) { + return FieldOption.OPTIONAL; + } else if (isAnnotated(method, NotNullable.class)) { return FieldOption.NOTNULLABLE; - } - return FieldOption.DEFAULT; + } + return FieldOption.DEFAULT; } private int getPropertyIndex(PropertyDescriptor desc) { - int getterIndex = getMethodIndex(desc.getReadMethod()); - if (getterIndex >= 0) { - return getterIndex; - } - int setterIndex = getMethodIndex(desc.getWriteMethod()); - return setterIndex; + int getterIndex = getMethodIndex(desc.getReadMethod()); + if (getterIndex >= 0) { + return getterIndex; + } + int setterIndex = getMethodIndex(desc.getWriteMethod()); + return setterIndex; } private int getMethodIndex(Method method) { - Index a = method.getAnnotation(Index.class); - if (a == null) { - return -1; - } else { - return a.value(); - } + Index a = method.getAnnotation(Index.class); + if (a == null) { + return -1; + } else { + return a.value(); + } } private boolean isIgnoreProperty(PropertyDescriptor desc) { - if (desc == null) { - return true; - } - Method getter = desc.getReadMethod(); - Method setter = desc.getWriteMethod(); - return getter == null || setter == null - || !Modifier.isPublic(getter.getModifiers()) - || !Modifier.isPublic(setter.getModifiers()) - || isAnnotated(getter, Ignore.class) - || isAnnotated(setter, Ignore.class); + if (desc == null) { + return true; + } + Method getter = desc.getReadMethod(); + Method setter = desc.getWriteMethod(); + return getter == null || setter == null + || !Modifier.isPublic(getter.getModifiers()) + || !Modifier.isPublic(setter.getModifiers()) + || isAnnotated(getter, Ignore.class) + || isAnnotated(setter, Ignore.class); } } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index d15582bed..7168509e1 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -31,61 +31,63 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - @SuppressWarnings({ "rawtypes", "unchecked" }) public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); protected static abstract class ReflectionFieldTemplate extends AbstractTemplate { - protected FieldEntry entry; + protected FieldEntry entry; - ReflectionFieldTemplate(final FieldEntry entry) { - this.entry = entry; - } + ReflectionFieldTemplate(final FieldEntry entry) { + this.entry = entry; + } - void setNil(Object v) { - entry.set(v, null); - } + void setNil(Object v) { + entry.set(v, null); + } } static final class FieldTemplateImpl extends ReflectionFieldTemplate { - private Template template; - - public FieldTemplateImpl(final FieldEntry entry, final Template template) { - super(entry); - this.template = template; - } - - @Override - public void write(Packer packer, Object v, boolean required) throws IOException { - template.write(packer, v, required); - } - - @Override - public Object read(Unpacker unpacker, Object to, boolean required) throws IOException { - //Class type = (Class) entry.getType(); - Object f = entry.get(to); - Object o = template.read(unpacker, f, required); - if (o != f) { - entry.set(to, o); - } - return o; - } + private Template template; + + public FieldTemplateImpl(final FieldEntry entry, final Template template) { + super(entry); + this.template = template; + } + + @Override + public void write(Packer packer, Object v, boolean required) + throws IOException { + template.write(packer, v, required); + } + + @Override + public Object read(Unpacker unpacker, Object to, boolean required) + throws IOException { + // Class type = (Class) entry.getType(); + Object f = entry.get(to); + Object o = template.read(unpacker, f, required); + if (o != f) { + entry.set(to, o); + } + return o; + } } protected static class ReflectionClassTemplate extends AbstractTemplate { - protected Class targetClass; + protected Class targetClass; - protected ReflectionFieldTemplate[] templates; + protected ReflectionFieldTemplate[] templates; - protected ReflectionClassTemplate(Class targetClass, ReflectionFieldTemplate[] templates) { - this.targetClass = targetClass; - this.templates = templates; - } + protected ReflectionClassTemplate(Class targetClass, ReflectionFieldTemplate[] templates) { + this.targetClass = targetClass; + this.templates = templates; + } - @Override - public void write(Packer packer, T target, boolean required) throws IOException { + @Override + public void write(Packer packer, T target, boolean required) + throws IOException { if (target == null) { if (required) { throw new MessageTypeException("attempted to write null"); @@ -93,44 +95,46 @@ public void write(Packer packer, T target, boolean required) throws IOException packer.writeNil(); return; } - try { - packer.writeArrayBegin(templates.length); - for (ReflectionFieldTemplate tmpl : templates) { - if (!tmpl.entry.isAvailable()) { - packer.writeNil(); - continue; - } - Object obj = tmpl.entry.get(target); - if (obj == null) { - if (tmpl.entry.isNotNullable()) { - throw new MessageTypeException(tmpl.entry.getName() + " cannot be null by @NotNullable"); - } - packer.writeNil(); - } else { - tmpl.write(packer, obj, true); - } - } - packer.writeArrayEnd(); - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new MessageTypeException(e); - } - } - - @Override - public T read(Unpacker unpacker, T to, boolean required) throws IOException { + try { + packer.writeArrayBegin(templates.length); + for (ReflectionFieldTemplate tmpl : templates) { + if (!tmpl.entry.isAvailable()) { + packer.writeNil(); + continue; + } + Object obj = tmpl.entry.get(target); + if (obj == null) { + if (tmpl.entry.isNotNullable()) { + throw new MessageTypeException(tmpl.entry.getName() + + " cannot be null by @NotNullable"); + } + packer.writeNil(); + } else { + tmpl.write(packer, obj, true); + } + } + packer.writeArrayEnd(); + } catch (IOException e) { + throw e; + } catch (Exception e) { + throw new MessageTypeException(e); + } + } + + @Override + public T read(Unpacker unpacker, T to, boolean required) + throws IOException { if (!required && unpacker.trySkipNil()) { return null; } - try { - if (to == null) { - to = targetClass.newInstance(); - } + try { + if (to == null) { + to = targetClass.newInstance(); + } - unpacker.readArrayBegin(); + unpacker.readArrayBegin(); for (int i = 0; i < templates.length; i++) { - ReflectionFieldTemplate tmpl = templates[i]; + ReflectionFieldTemplate tmpl = templates[i]; if (!tmpl.entry.isAvailable()) { unpacker.skip(); } else if (tmpl.entry.isOptional() && unpacker.trySkipNil()) { @@ -140,57 +144,57 @@ public T read(Unpacker unpacker, T to, boolean required) throws IOException { } } - unpacker.readArrayEnd(); - return to; - } catch (IOException e) { - throw e; - } catch (Exception e) { - throw new MessageTypeException(e); - } - } + unpacker.readArrayEnd(); + return to; + } catch (IOException e) { + throw e; + } catch (Exception e) { + throw new MessageTypeException(e); + } + } } public ReflectionTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry); } @Override public boolean matchType(Type targetType, boolean hasAnnotation) { - Class targetClass = (Class) targetType; - boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { - LOG.debug("matched type: " + targetClass.getName()); - } - return matched; + Class targetClass = (Class) targetType; + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); + if (matched) { + LOG.debug("matched type: " + targetClass.getName()); + } + return matched; } @Override public Template buildTemplate(Class targetClass, FieldEntry[] entries) { - if (entries == null) { - throw new NullPointerException("entries is null: " + targetClass); - } + if (entries == null) { + throw new NullPointerException("entries is null: " + targetClass); + } - ReflectionFieldTemplate[] tmpls = toTemplates(entries); - return new ReflectionClassTemplate(targetClass, tmpls); + ReflectionFieldTemplate[] tmpls = toTemplates(entries); + return new ReflectionClassTemplate(targetClass, tmpls); } protected ReflectionFieldTemplate[] toTemplates(FieldEntry[] entries) { - // TODO Now it is simply cast. #SF - for (FieldEntry entry : entries) { - Field field = ((DefaultFieldEntry) entry).getField(); - int mod = field.getModifiers(); - if (!Modifier.isPublic(mod)) { - field.setAccessible(true); - } - } - - ReflectionFieldTemplate[] templates = new ReflectionFieldTemplate[entries.length]; - for (int i = 0; i < entries.length; i++) { - FieldEntry entry = entries[i]; - //Class t = entry.getType(); - Template template = registry.lookup(entry.getGenericType()); - templates[i] = new FieldTemplateImpl(entry, template); - } - return templates; + // TODO Now it is simply cast. #SF + for (FieldEntry entry : entries) { + Field field = ((DefaultFieldEntry) entry).getField(); + int mod = field.getModifiers(); + if (!Modifier.isPublic(mod)) { + field.setAccessible(true); + } + } + + ReflectionFieldTemplate[] templates = new ReflectionFieldTemplate[entries.length]; + for (int i = 0; i < entries.length; i++) { + FieldEntry entry = entries[i]; + // Class t = entry.getType(); + Template template = registry.lookup(entry.getGenericType()); + templates[i] = new FieldTemplateImpl(entry, template); + } + return templates; } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuildException.java b/src/main/java/org/msgpack/template/builder/TemplateBuildException.java index f38ff63a8..373513598 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuildException.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuildException.java @@ -21,14 +21,14 @@ public class TemplateBuildException extends RuntimeException { public TemplateBuildException(String reason) { - super(reason); + super(reason); } public TemplateBuildException(String reason, Throwable t) { - super(reason, t); + super(reason, t); } public TemplateBuildException(Throwable t) { - super(t); + super(t); } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index e6b3ee57c..62de093a2 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -22,14 +22,15 @@ import org.msgpack.template.FieldList; import org.msgpack.template.Template; - public interface TemplateBuilder { boolean matchType(Type targetType, boolean forceBuild); - Template buildTemplate(Type targetType) throws TemplateBuildException; + Template buildTemplate(Type targetType) + throws TemplateBuildException; - Template buildTemplate(Class targetClass, FieldList flist) throws TemplateBuildException; + Template buildTemplate(Class targetClass, FieldList flist) + throws TemplateBuildException; void writeTemplate(Type targetType, String directoryName); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 6d26f1011..45c4ad9ac 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -23,15 +23,14 @@ import org.msgpack.template.TemplateRegistry; - public class TemplateBuilderChain { - private static boolean enableDynamicCodeGeneration(){ - try { - return !System.getProperty("java.vm.name").equals("Dalvik"); - } catch (Exception e) { - return true; - } + private static boolean enableDynamicCodeGeneration() { + try { + return !System.getProperty("java.vm.name").equals("Dalvik"); + } catch (Exception e) { + return true; + } } protected List templateBuilders; @@ -39,52 +38,53 @@ private static boolean enableDynamicCodeGeneration(){ protected TemplateBuilder forceBuilder; public TemplateBuilderChain(final TemplateRegistry registry) { - this(registry, null); + this(registry, null); } public TemplateBuilderChain(final TemplateRegistry registry, final ClassLoader cl) { - templateBuilders = new ArrayList(); - reset(registry, cl); + templateBuilders = new ArrayList(); + reset(registry, cl); } protected void reset(final TemplateRegistry registry, final ClassLoader cl) { - if (registry == null) { - throw new NullPointerException("registry is null"); - } + if (registry == null) { + throw new NullPointerException("registry is null"); + } - // forceBuilder - forceBuilder = new JavassistTemplateBuilder(registry); - if (cl != null) { - ((JavassistTemplateBuilder) forceBuilder).addClassLoader(cl); - } + // forceBuilder + forceBuilder = new JavassistTemplateBuilder(registry); + if (cl != null) { + ((JavassistTemplateBuilder) forceBuilder).addClassLoader(cl); + } - // builder - TemplateBuilder builder; - templateBuilders.add(new ArrayTemplateBuilder(registry)); - templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); - if (enableDynamicCodeGeneration()) { // use dynamic code generation - builder = forceBuilder; - templateBuilders.add(builder); - // FIXME #MN next version - //templateBuilders.add(new JavassistBeansTemplateBuilder(registry)); - templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); - } else { // use reflection - builder = new ReflectionTemplateBuilder(registry); - templateBuilders.add(builder); - templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); - } + // builder + TemplateBuilder builder; + templateBuilders.add(new ArrayTemplateBuilder(registry)); + templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); + if (enableDynamicCodeGeneration()) { // use dynamic code generation + builder = forceBuilder; + templateBuilders.add(builder); + // FIXME #MN next version + // templateBuilders.add(new + // JavassistBeansTemplateBuilder(registry)); + templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); + } else { // use reflection + builder = new ReflectionTemplateBuilder(registry); + templateBuilders.add(builder); + templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); + } } public TemplateBuilder getForceBuilder() { - return forceBuilder; + return forceBuilder; } public TemplateBuilder select(final Type targetType, final boolean hasAnnotation) { - for (TemplateBuilder tb : templateBuilders) { - if (tb.matchType(targetType, hasAnnotation)) { - return tb; - } - } - return null; + for (TemplateBuilder tb : templateBuilders) { + if (tb.matchType(targetType, hasAnnotation)) { + return tb; + } + } + return null; } } diff --git a/src/main/java/org/msgpack/type/AbstractArrayValue.java b/src/main/java/org/msgpack/type/AbstractArrayValue.java index b7bbcc82f..040b50bda 100644 --- a/src/main/java/org/msgpack/type/AbstractArrayValue.java +++ b/src/main/java/org/msgpack/type/AbstractArrayValue.java @@ -20,7 +20,6 @@ import java.util.AbstractList; import org.msgpack.MessageTypeException; - abstract class AbstractArrayValue extends AbstractList implements ArrayValue { @Override public ValueType getType() { @@ -97,4 +96,3 @@ public RawValue asRawValue() { throw new MessageTypeException(); } } - diff --git a/src/main/java/org/msgpack/type/AbstractBooleanValue.java b/src/main/java/org/msgpack/type/AbstractBooleanValue.java index d029bd417..e7f712b3f 100644 --- a/src/main/java/org/msgpack/type/AbstractBooleanValue.java +++ b/src/main/java/org/msgpack/type/AbstractBooleanValue.java @@ -17,7 +17,6 @@ // package org.msgpack.type; - abstract class AbstractBooleanValue extends AbstractValue implements BooleanValue { @Override public ValueType getType() { @@ -42,4 +41,3 @@ public BooleanValue asBooleanValue() { return this; } } - diff --git a/src/main/java/org/msgpack/type/AbstractMapValue.java b/src/main/java/org/msgpack/type/AbstractMapValue.java index 75830b90f..e2d578943 100644 --- a/src/main/java/org/msgpack/type/AbstractMapValue.java +++ b/src/main/java/org/msgpack/type/AbstractMapValue.java @@ -20,8 +20,7 @@ import java.util.AbstractMap; import org.msgpack.MessageTypeException; - -abstract class AbstractMapValue extends AbstractMap implements MapValue { +abstract class AbstractMapValue extends AbstractMap implements MapValue { @Override public ValueType getType() { return ValueType.MAP; @@ -97,4 +96,3 @@ public RawValue asRawValue() { throw new MessageTypeException(); } } - diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 1d13380d4..66731121b 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -24,7 +24,6 @@ import java.nio.charset.CharsetDecoder; import java.nio.charset.CodingErrorAction; - abstract class AbstractRawValue extends AbstractValue implements RawValue { @Override public ValueType getType() { @@ -43,14 +42,14 @@ public RawValue asRawValue() { @Override public boolean equals(Object o) { - if(this == o) { + if (this == o) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isRawValue()) { + if (!v.isRawValue()) { return false; } @@ -70,15 +69,15 @@ public String toString() { @Override public StringBuilder toString(StringBuilder sb) { String s; - if(getClass() == StringRawValueImpl.class) { + if (getClass() == StringRawValueImpl.class) { // StringRawValueImpl.getString never throws exception s = getString(); } else { // don't throw encoding error exception // ignore malformed bytes - CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder(). - onMalformedInput(CodingErrorAction.IGNORE). - onUnmappableCharacter(CodingErrorAction.IGNORE); + CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder() + .onMalformedInput(CodingErrorAction.IGNORE) + .onUnmappableCharacter(CodingErrorAction.IGNORE); try { s = decoder.decode(ByteBuffer.wrap(getByteArray())).toString(); } catch (CharacterCodingException ex) { @@ -88,10 +87,10 @@ public StringBuilder toString(StringBuilder sb) { } sb.append("\""); - for(int i=0; i < s.length(); i++) { + for (int i = 0; i < s.length(); i++) { char ch = s.charAt(i); - if(ch < 0x20) { - switch(ch) { + if (ch < 0x20) { + switch (ch) { case '\n': sb.append("\\n"); break; @@ -112,8 +111,8 @@ public StringBuilder toString(StringBuilder sb) { escapeChar(sb, ch); break; } - } else if(ch <= 0x7f) { - switch(ch) { + } else if (ch <= 0x7f) { + switch (ch) { case '\\': sb.append("\\\\"); break; @@ -124,7 +123,7 @@ public StringBuilder toString(StringBuilder sb) { sb.append(ch); break; } - } else if(ch >= 0xd800 && ch <= 0xdfff) { + } else if (ch >= 0xd800 && ch <= 0xdfff) { // surrogates escapeChar(sb, ch); } else { @@ -146,4 +145,3 @@ private void escapeChar(StringBuilder sb, int ch) { sb.append(HEX_TABLE[ch & 0x0f]); } } - diff --git a/src/main/java/org/msgpack/type/AbstractValue.java b/src/main/java/org/msgpack/type/AbstractValue.java index 2d98a384d..7f29b5984 100644 --- a/src/main/java/org/msgpack/type/AbstractValue.java +++ b/src/main/java/org/msgpack/type/AbstractValue.java @@ -19,7 +19,6 @@ import org.msgpack.MessageTypeException; - abstract class AbstractValue implements Value { public boolean isNilValue() { return false; @@ -77,4 +76,3 @@ public RawValue asRawValue() { throw new MessageTypeException(); } } - diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index 895563e90..e9b4dda49 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -21,7 +21,6 @@ import java.io.IOException; import org.msgpack.packer.Packer; - class ArrayValueImpl extends AbstractArrayValue { private static ArrayValueImpl emptyInstance = new ArrayValueImpl(new Value[0], true); @@ -37,7 +36,7 @@ public Value[] getElementArray() { } ArrayValueImpl(Value[] array, boolean gift) { - if(gift) { + if (gift) { this.array = array; } else { this.array = new Value[array.length]; @@ -57,7 +56,7 @@ public boolean isEmpty() { @Override public Value get(int index) { - if(index < 0 || array.length <= index) { + if (index < 0 || array.length <= index) { throw new IndexOutOfBoundsException(); } return array[index]; @@ -65,11 +64,11 @@ public Value get(int index) { @Override public int indexOf(Object o) { - if(o == null) { - return -1; // FIXME NullPointerException? + if (o == null) { + return -1; // FIXME NullPointerException? } - for(int i=0; i < array.length; i++) { - if(array[i].equals(o)) { + for (int i = 0; i < array.length; i++) { + if (array[i].equals(o)) { return i; } } @@ -78,11 +77,11 @@ public int indexOf(Object o) { @Override public int lastIndexOf(Object o) { - if(o == null) { - return -1; // FIXME NullPointerException? + if (o == null) { + return -1; // FIXME NullPointerException? } - for(int i=array.length-1; i >= 0; i--) { - if(array[i].equals(o)) { + for (int i = array.length - 1; i >= 0; i--) { + if (array[i].equals(o)) { return i; } } @@ -92,7 +91,7 @@ public int lastIndexOf(Object o) { @Override public void writeTo(Packer pk) throws IOException { pk.writeArrayBegin(array.length); - for(int i=0; i < array.length; i++) { + for (int i = 0; i < array.length; i++) { array[i].writeTo(pk); } pk.writeArrayEnd(); @@ -100,25 +99,25 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isArrayValue()) { + if (!v.isArrayValue()) { return false; } - if(v.getClass() == ArrayValueImpl.class) { + if (v.getClass() == ArrayValueImpl.class) { return equals((ArrayValueImpl) v); } ListIterator oi = v.asArrayValue().listIterator(); int i = 0; - while(i < array.length) { - if(!oi.hasNext() || !array[i].equals(oi.next())) { + while (i < array.length) { + if (!oi.hasNext() || !array[i].equals(oi.next())) { return false; } } @@ -126,11 +125,11 @@ public boolean equals(Object o) { } private boolean equals(ArrayValueImpl o) { - if(array.length != o.array.length) { + if (array.length != o.array.length) { return false; } - for(int i=0; i < array.length; i++) { - if(!array[i].equals(o.array[i])) { + for (int i = 0; i < array.length; i++) { + if (!array[i].equals(o.array[i])) { return false; } } @@ -142,9 +141,9 @@ private boolean equals(ArrayValueImpl o) { @Override public int hashCode() { int h = 1; - for(int i=0; i < array.length; i++) { + for (int i = 0; i < array.length; i++) { Value obj = array[i]; - h = 31*h + obj.hashCode(); + h = 31 * h + obj.hashCode(); } return h; } @@ -156,12 +155,12 @@ public String toString() { @Override public StringBuilder toString(StringBuilder sb) { - if(array.length == 0) { + if (array.length == 0) { return sb.append("[]"); } sb.append("["); sb.append(array[0]); - for(int i=1; i < array.length; i++) { + for (int i = 1; i < array.length; i++) { sb.append(","); array[i].toString(sb); } @@ -169,4 +168,3 @@ public StringBuilder toString(StringBuilder sb) { return sb; } } - diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index dab24b3de..88d2191e3 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -22,7 +22,6 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; - @SuppressWarnings("serial") class BigIntegerValueImpl extends IntegerValue { private BigInteger value; @@ -31,44 +30,43 @@ class BigIntegerValueImpl extends IntegerValue { this.value = value; } - private static BigInteger BYTE_MAX = BigInteger.valueOf((long)Byte.MAX_VALUE); - private static BigInteger SHORT_MAX = BigInteger.valueOf((long)Short.MAX_VALUE); - private static BigInteger INT_MAX = BigInteger.valueOf((long)Integer.MAX_VALUE); - private static BigInteger LONG_MAX = BigInteger.valueOf((long)Long.MAX_VALUE); - - private static BigInteger BYTE_MIN = BigInteger.valueOf((long)Byte.MIN_VALUE); - private static BigInteger SHORT_MIN = BigInteger.valueOf((long)Short.MIN_VALUE); - private static BigInteger INT_MIN = BigInteger.valueOf((long)Integer.MIN_VALUE); - private static BigInteger LONG_MIN = BigInteger.valueOf((long)Long.MIN_VALUE); + private static BigInteger BYTE_MAX = BigInteger.valueOf((long) Byte.MAX_VALUE); + private static BigInteger SHORT_MAX = BigInteger.valueOf((long) Short.MAX_VALUE); + private static BigInteger INT_MAX = BigInteger.valueOf((long) Integer.MAX_VALUE); + private static BigInteger LONG_MAX = BigInteger.valueOf((long) Long.MAX_VALUE); + private static BigInteger BYTE_MIN = BigInteger.valueOf((long) Byte.MIN_VALUE); + private static BigInteger SHORT_MIN = BigInteger.valueOf((long) Short.MIN_VALUE); + private static BigInteger INT_MIN = BigInteger.valueOf((long) Integer.MIN_VALUE); + private static BigInteger LONG_MIN = BigInteger.valueOf((long) Long.MIN_VALUE); @Override public byte getByte() { - if(value.compareTo(BYTE_MAX) > 0 || value.compareTo(BYTE_MIN) < 0) { - throw new MessageTypeException(); // TODO message + if (value.compareTo(BYTE_MAX) > 0 || value.compareTo(BYTE_MIN) < 0) { + throw new MessageTypeException(); // TODO message } return value.byteValue(); } @Override public short getShort() { - if(value.compareTo(SHORT_MAX) > 0 || value.compareTo(SHORT_MIN) < 0) { - throw new MessageTypeException(); // TODO message + if (value.compareTo(SHORT_MAX) > 0 || value.compareTo(SHORT_MIN) < 0) { + throw new MessageTypeException(); // TODO message } return value.shortValue(); } @Override public int getInt() { - if(value.compareTo(INT_MAX) > 0 || value.compareTo(INT_MIN) < 0) { - throw new MessageTypeException(); // TODO message + if (value.compareTo(INT_MAX) > 0 || value.compareTo(INT_MIN) < 0) { + throw new MessageTypeException(); // TODO message } return value.intValue(); } @Override public long getLong() { - if(value.compareTo(LONG_MAX) > 0 || value.compareTo(LONG_MIN) < 0) { - throw new MessageTypeException(); // TODO message + if (value.compareTo(LONG_MAX) > 0 || value.compareTo(LONG_MIN) < 0) { + throw new MessageTypeException(); // TODO message } return value.longValue(); } @@ -122,14 +120,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isIntegerValue()) { + if (!v.isIntegerValue()) { return false; } @@ -138,11 +136,12 @@ public boolean equals(Object o) { @Override public int hashCode() { - if(INT_MIN.compareTo(value) <= 0 && value.compareTo(INT_MAX) <= 0) { - return (int)value.longValue(); - } else if(LONG_MIN.compareTo(value) <= 0 && value.compareTo(LONG_MAX) <= 0) { + if (INT_MIN.compareTo(value) <= 0 && value.compareTo(INT_MAX) <= 0) { + return (int) value.longValue(); + } else if (LONG_MIN.compareTo(value) <= 0 + && value.compareTo(LONG_MAX) <= 0) { long v = value.longValue(); - return (int)(v^(v>>>32)); + return (int) (v ^ (v >>> 32)); } return value.hashCode(); } @@ -157,4 +156,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append(value.toString()); } } - diff --git a/src/main/java/org/msgpack/type/BooleanValue.java b/src/main/java/org/msgpack/type/BooleanValue.java index 3a4fa6e97..4aace11f5 100644 --- a/src/main/java/org/msgpack/type/BooleanValue.java +++ b/src/main/java/org/msgpack/type/BooleanValue.java @@ -17,8 +17,6 @@ // package org.msgpack.type; - public interface BooleanValue extends Value { public boolean getBoolean(); } - diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 859975d89..246f304b1 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -27,7 +27,6 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; - class ByteArrayRawValueImpl extends AbstractRawValue { private static ByteArrayRawValueImpl emptyInstance = new ByteArrayRawValueImpl(new byte[0], true); @@ -38,7 +37,7 @@ public static RawValue getEmptyInstance() { private byte[] bytes; ByteArrayRawValueImpl(byte[] bytes, boolean gift) { - if(gift) { + if (gift) { this.bytes = bytes; } else { this.bytes = new byte[bytes.length]; @@ -59,9 +58,9 @@ public byte[] getByteArray() { @Override public String getString() { - CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder(). - onMalformedInput(CodingErrorAction.REPORT). - onUnmappableCharacter(CodingErrorAction.REPORT); + CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder() + .onMalformedInput(CodingErrorAction.REPORT) + .onUnmappableCharacter(CodingErrorAction.REPORT); try { return decoder.decode(ByteBuffer.wrap(bytes)).toString(); } catch (CharacterCodingException ex) { @@ -76,14 +75,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(this == o) { + if (this == o) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isRawValue()) { + if (!v.isRawValue()) { return false; } @@ -95,4 +94,3 @@ public int hashCode() { return Arrays.hashCode(bytes); } } - diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index 099b351a8..17aabeea5 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -22,7 +22,6 @@ import java.io.IOException; import org.msgpack.packer.Packer; - @SuppressWarnings("serial") class DoubleValueImpl extends FloatValue { private double value; @@ -33,7 +32,7 @@ class DoubleValueImpl extends FloatValue { @Override public float getFloat() { - return (float)value; + return (float) value; } @Override @@ -43,22 +42,22 @@ public double getDouble() { @Override public byte byteValue() { - return (byte)value; + return (byte) value; } @Override public short shortValue() { - return (short)value; + return (short) value; } @Override public int intValue() { - return (int)value; + return (int) value; } @Override public long longValue() { - return (long)value; + return (long) value; } @Override @@ -68,7 +67,7 @@ public BigInteger bigIntegerValue() { @Override public float floatValue() { - return (float)value; + return (float) value; } @Override @@ -83,14 +82,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isFloatValue()) { + if (!v.isFloatValue()) { return false; } @@ -102,7 +101,7 @@ public boolean equals(Object o) { @Override public int hashCode() { long v = Double.doubleToLongBits(value); - return (int)(v^(v>>>32)); + return (int) (v ^ (v >>> 32)); } @Override @@ -115,4 +114,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append(Double.toString(value)); } } - diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index de2c8aed6..d8f93730e 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -20,9 +20,9 @@ import java.io.IOException; import org.msgpack.packer.Packer; - class FalseValueImpl extends AbstractBooleanValue { - private FalseValueImpl() { } + private FalseValueImpl() { + } private static FalseValueImpl instance = new FalseValueImpl(); @@ -42,14 +42,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isBooleanValue()) { + if (!v.isBooleanValue()) { return false; } @@ -71,4 +71,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append("false"); } } - diff --git a/src/main/java/org/msgpack/type/FloatValue.java b/src/main/java/org/msgpack/type/FloatValue.java index 98e29e6ae..b93a7f024 100644 --- a/src/main/java/org/msgpack/type/FloatValue.java +++ b/src/main/java/org/msgpack/type/FloatValue.java @@ -17,7 +17,6 @@ // package org.msgpack.type; - @SuppressWarnings("serial") public abstract class FloatValue extends NumberValue { @Override @@ -38,4 +37,3 @@ public FloatValue asFloatValue() { public abstract double getDouble(); } - diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index 7248a5848..d32a3115a 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -22,7 +22,6 @@ import java.io.IOException; import org.msgpack.packer.Packer; - @SuppressWarnings("serial") class FloatValueImpl extends FloatValue { private float value; @@ -38,32 +37,32 @@ public float getFloat() { @Override public double getDouble() { - return (double)value; + return (double) value; } @Override public byte byteValue() { - return (byte)value; + return (byte) value; } @Override public short shortValue() { - return (short)value; + return (short) value; } @Override public int intValue() { - return (int)value; + return (int) value; } @Override public long longValue() { - return (long)value; + return (long) value; } @Override public BigInteger bigIntegerValue() { - return new BigDecimal((double)value).toBigInteger(); + return new BigDecimal((double) value).toBigInteger(); } @Override @@ -73,23 +72,23 @@ public float floatValue() { @Override public double doubleValue() { - return (double)value; + return (double) value; } @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isFloatValue()) { + if (!v.isFloatValue()) { return false; } - return (double)value == v.asFloatValue().getDouble(); + return (double) value == v.asFloatValue().getDouble(); } @Override @@ -114,4 +113,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append(Float.toString(value)); } } - diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index 8ed72db41..2077620a2 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -22,7 +22,6 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; - @SuppressWarnings("serial") class IntValueImpl extends IntegerValue { private int value; @@ -31,26 +30,26 @@ class IntValueImpl extends IntegerValue { this.value = value; } - private static int BYTE_MAX = (int)Byte.MAX_VALUE; - private static int SHORT_MAX = (int)Short.MAX_VALUE; + private static int BYTE_MAX = (int) Byte.MAX_VALUE; + private static int SHORT_MAX = (int) Short.MAX_VALUE; - private static int BYTE_MIN = (int)Byte.MIN_VALUE; - private static int SHORT_MIN = (int)Short.MIN_VALUE; + private static int BYTE_MIN = (int) Byte.MIN_VALUE; + private static int SHORT_MIN = (int) Short.MIN_VALUE; @Override public byte getByte() { - if(value > BYTE_MAX || value < BYTE_MIN) { - throw new MessageTypeException(); // TODO message + if (value > BYTE_MAX || value < BYTE_MIN) { + throw new MessageTypeException(); // TODO message } - return (byte)value; + return (byte) value; } @Override public short getShort() { - if(value > SHORT_MAX || value < SHORT_MIN) { - throw new MessageTypeException(); // TODO message + if (value > SHORT_MAX || value < SHORT_MIN) { + throw new MessageTypeException(); // TODO message } - return (short)value; + return (short) value; } @Override @@ -65,17 +64,17 @@ public long getLong() { @Override public BigInteger getBigInteger() { - return BigInteger.valueOf((long)value); + return BigInteger.valueOf((long) value); } @Override public byte byteValue() { - return (byte)value; + return (byte) value; } @Override public short shortValue() { - return (short)value; + return (short) value; } @Override @@ -85,22 +84,22 @@ public int intValue() { @Override public long longValue() { - return (long)value; + return (long) value; } @Override public BigInteger bigIntegerValue() { - return BigInteger.valueOf((long)value); + return BigInteger.valueOf((long) value); } @Override public float floatValue() { - return (float)value; + return (float) value; } @Override public double doubleValue() { - return (double)value; + return (double) value; } @Override @@ -112,14 +111,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isIntegerValue()) { + if (!v.isIntegerValue()) { return false; } @@ -146,4 +145,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append(Integer.toString(value)); } } - diff --git a/src/main/java/org/msgpack/type/IntegerValue.java b/src/main/java/org/msgpack/type/IntegerValue.java index 7b406215e..d6e8000cf 100644 --- a/src/main/java/org/msgpack/type/IntegerValue.java +++ b/src/main/java/org/msgpack/type/IntegerValue.java @@ -19,7 +19,6 @@ import java.math.BigInteger; - @SuppressWarnings("serial") public abstract class IntegerValue extends NumberValue { @Override @@ -52,4 +51,3 @@ public BigInteger getBigInteger() { // TODO equals // TODO hashCode } - diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index e1b701586..fd12d4b7d 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -22,7 +22,6 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; - @SuppressWarnings("serial") class LongValueImpl extends IntegerValue { private long value; @@ -31,36 +30,36 @@ class LongValueImpl extends IntegerValue { this.value = value; } - private static long BYTE_MAX = (long)Byte.MAX_VALUE; - private static long SHORT_MAX = (long)Short.MAX_VALUE; - private static long INT_MAX = (long)Integer.MAX_VALUE; + private static long BYTE_MAX = (long) Byte.MAX_VALUE; + private static long SHORT_MAX = (long) Short.MAX_VALUE; + private static long INT_MAX = (long) Integer.MAX_VALUE; - private static long BYTE_MIN = (long)Byte.MIN_VALUE; - private static long SHORT_MIN = (long)Short.MIN_VALUE; - private static long INT_MIN = (long)Integer.MIN_VALUE; + private static long BYTE_MIN = (long) Byte.MIN_VALUE; + private static long SHORT_MIN = (long) Short.MIN_VALUE; + private static long INT_MIN = (long) Integer.MIN_VALUE; @Override public byte getByte() { - if(value > BYTE_MAX || value < BYTE_MIN) { - throw new MessageTypeException(); // TODO message + if (value > BYTE_MAX || value < BYTE_MIN) { + throw new MessageTypeException(); // TODO message } - return (byte)value; + return (byte) value; } @Override public short getShort() { - if(value > SHORT_MAX || value < SHORT_MIN) { - throw new MessageTypeException(); // TODO message + if (value > SHORT_MAX || value < SHORT_MIN) { + throw new MessageTypeException(); // TODO message } - return (short)value; + return (short) value; } @Override public int getInt() { - if(value > INT_MAX || value < INT_MIN) { - throw new MessageTypeException(); // TODO message + if (value > INT_MAX || value < INT_MIN) { + throw new MessageTypeException(); // TODO message } - return (int)value; + return (int) value; } @Override @@ -75,17 +74,17 @@ public BigInteger getBigInteger() { @Override public byte byteValue() { - return (byte)value; + return (byte) value; } @Override public short shortValue() { - return (short)value; + return (short) value; } @Override public int intValue() { - return (int)value; + return (int) value; } @Override @@ -100,12 +99,12 @@ public BigInteger bigIntegerValue() { @Override public float floatValue() { - return (float)value; + return (float) value; } @Override public double doubleValue() { - return (double)value; + return (double) value; } @Override @@ -117,14 +116,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isIntegerValue()) { + if (!v.isIntegerValue()) { return false; } @@ -138,10 +137,10 @@ public boolean equals(Object o) { @Override public int hashCode() { - if(INT_MIN <= value && value <= INT_MAX) { - return (int)value; + if (INT_MIN <= value && value <= INT_MAX) { + return (int) value; } else { - return (int)(value^(value>>>32)); + return (int) (value ^ (value >>> 32)); } } @@ -155,4 +154,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append(Long.toString(value)); } } - diff --git a/src/main/java/org/msgpack/type/MapValue.java b/src/main/java/org/msgpack/type/MapValue.java index 5f9d13518..17678dfe3 100644 --- a/src/main/java/org/msgpack/type/MapValue.java +++ b/src/main/java/org/msgpack/type/MapValue.java @@ -19,8 +19,6 @@ import java.util.Map; - public interface MapValue extends Value, Map { public Value[] getKeyValueArray(); } - diff --git a/src/main/java/org/msgpack/type/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java index 1ea1d3d8f..85f916def 100644 --- a/src/main/java/org/msgpack/type/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -20,9 +20,9 @@ import java.io.IOException; import org.msgpack.packer.Packer; - public class NilValue extends AbstractValue { - private NilValue() { } + private NilValue() { + } private static NilValue instance = new NilValue(); @@ -62,10 +62,10 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } return ((Value) o).isNilValue(); @@ -76,4 +76,3 @@ public int hashCode() { return 0; } } - diff --git a/src/main/java/org/msgpack/type/NumberValue.java b/src/main/java/org/msgpack/type/NumberValue.java index cf5d69379..c916ab56c 100644 --- a/src/main/java/org/msgpack/type/NumberValue.java +++ b/src/main/java/org/msgpack/type/NumberValue.java @@ -20,7 +20,6 @@ import java.math.BigInteger; import org.msgpack.MessageTypeException; - @SuppressWarnings("serial") public abstract class NumberValue extends Number implements Value { @Override @@ -95,4 +94,3 @@ public RawValue asRawValue() { public abstract BigInteger bigIntegerValue(); } - diff --git a/src/main/java/org/msgpack/type/RawValue.java b/src/main/java/org/msgpack/type/RawValue.java index 03d1d07a4..19e0d7875 100644 --- a/src/main/java/org/msgpack/type/RawValue.java +++ b/src/main/java/org/msgpack/type/RawValue.java @@ -17,10 +17,8 @@ // package org.msgpack.type; - public interface RawValue extends Value { public byte[] getByteArray(); public String getString(); } - diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 599e41d61..ba3099a04 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -28,7 +28,6 @@ import java.io.IOException; import org.msgpack.packer.Packer; - class SequentialMapValueImpl extends AbstractMapValue { private static SequentialMapValueImpl emptyInstance = new SequentialMapValueImpl(new Value[0], true); @@ -44,10 +43,10 @@ public Value[] getKeyValueArray() { } SequentialMapValueImpl(Value[] array, boolean gift) { - if(array.length % 2 != 0) { - throw new IllegalArgumentException(); // TODO message + if (array.length % 2 != 0) { + throw new IllegalArgumentException(); // TODO message } - if(gift) { + if (gift) { this.array = array; } else { this.array = new Value[array.length]; @@ -57,18 +56,18 @@ public Value[] getKeyValueArray() { @Override public Value get(Object key) { - if(key == null) { + if (key == null) { return null; } - for(int i=array.length-2; i >= 0; i-=2) { - if(array[i].equals(key)) { - return array[i+1]; + for (int i = array.length - 2; i >= 0; i -= 2) { + if (array[i].equals(key)) { + return array[i + 1]; } } return null; } - private static class EntrySet extends AbstractSet> { + private static class EntrySet extends AbstractSet> { private Value[] array; EntrySet(Value[] array) { @@ -81,12 +80,13 @@ public int size() { } @Override - public Iterator> iterator() { + public Iterator> iterator() { return new EntrySetIterator(array); } } - private static class EntrySetIterator implements Iterator> { + private static class EntrySetIterator implements + Iterator> { private Value[] array; private int pos; @@ -101,18 +101,19 @@ public boolean hasNext() { } @Override - public Map.Entry next() { - if(pos >= array.length) { - throw new NoSuchElementException(); // TODO message + public Map.Entry next() { + if (pos >= array.length) { + throw new NoSuchElementException(); // TODO message } - Map.Entry pair = new AbstractMap.SimpleImmutableEntry(array[pos], array[pos+1]); + Map.Entry pair = + new AbstractMap.SimpleImmutableEntry(array[pos], array[pos + 1]); pos += 2; return pair; } @Override public void remove() { - throw new UnsupportedOperationException(); // TODO message + throw new UnsupportedOperationException(); // TODO message } } @@ -168,8 +169,8 @@ public boolean hasNext() { @Override public Value next() { - if(pos >= array.length) { - throw new NoSuchElementException(); // TODO message + if (pos >= array.length) { + throw new NoSuchElementException(); // TODO message } Value v = array[pos]; pos += 2; @@ -178,12 +179,12 @@ public Value next() { @Override public void remove() { - throw new UnsupportedOperationException(); // TODO message + throw new UnsupportedOperationException(); // TODO message } } @Override - public Set> entrySet() { + public Set> entrySet() { return new EntrySet(array); } @@ -199,8 +200,8 @@ public Collection values() { @Override public void writeTo(Packer pk) throws IOException { - pk.writeMapBegin(array.length/2); - for(int i=0; i < array.length; i++) { + pk.writeMapBegin(array.length / 2); + for (int i = 0; i < array.length; i++) { array[i].writeTo(pk); } pk.writeMapEnd(); @@ -208,27 +209,27 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isMapValue()) { + if (!v.isMapValue()) { return false; } - Map om = v.asMapValue(); - if (om.size() != array.length/2) { + Map om = v.asMapValue(); + if (om.size() != array.length / 2) { return false; } try { - for(int i=0; i < array.length; i+=2) { + for (int i = 0; i < array.length; i += 2) { Value key = array[i]; - Value value = array[i+1]; - if(!value.equals(om.get(key))) { + Value value = array[i + 1]; + if (!value.equals(om.get(key))) { return false; } } @@ -241,47 +242,47 @@ public boolean equals(Object o) { return true; } - //private boolean equals(SequentialMapValueImpl o) { - // if(array.length != o.array.length) { - // return false; - // } - // for(int i=0; i < array.length; i+=2) { - // if(!equalsValue(o.array, array[i], array[i+1], i)) { - // return false; - // } - // } - // return true; - //} - -// private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { -// for(int j=hint; j < array.length; j+=2) { -// if(key.equals(oarray[j])) { -// if(val.equals(oarray[j+1])) { -// return true; -// } else { -// return false; -// } -// } -// } -// for(int j=0; j < hint; j+=2) { -// if(key.equals(oarray[j])) { -// if(val.equals(oarray[j+1])) { -// return true; -// } else { -// return false; -// } -// } -// } -// return false; -// } + // private boolean equals(SequentialMapValueImpl o) { + // if(array.length != o.array.length) { + // return false; + // } + // for(int i=0; i < array.length; i+=2) { + // if(!equalsValue(o.array, array[i], array[i+1], i)) { + // return false; + // } + // } + // return true; + // } + + // private boolean equalsValue(Value[] oarray, Value key, Value val, int hint) { + // for(int j=hint; j < array.length; j+=2) { + // if(key.equals(oarray[j])) { + // if(val.equals(oarray[j+1])) { + // return true; + // } else { + // return false; + // } + // } + // } + // for(int j=0; j < hint; j+=2) { + // if(key.equals(oarray[j])) { + // if(val.equals(oarray[j+1])) { + // return true; + // } else { + // return false; + // } + // } + // } + // return false; + // } // TODO compareTo? @Override public int hashCode() { int h = 0; - for(int i=0; i < array.length; i+=2) { - h += array[i].hashCode() ^ array[i+1].hashCode(); + for (int i = 0; i < array.length; i += 2) { + h += array[i].hashCode() ^ array[i + 1].hashCode(); } return h; } @@ -293,21 +294,20 @@ public String toString() { @Override public StringBuilder toString(StringBuilder sb) { - if(array.length == 0) { + if (array.length == 0) { return sb.append("{}"); } sb.append("{"); sb.append(array[0]); sb.append(":"); sb.append(array[1]); - for(int i=2; i < array.length; i+=2) { + for (int i = 2; i < array.length; i += 2) { sb.append(","); array[i].toString(sb); sb.append(":"); - array[i+1].toString(sb); + array[i + 1].toString(sb); } sb.append("}"); return sb; } } - diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index 815bb8438..4d6d4a052 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -23,7 +23,6 @@ import org.msgpack.packer.Packer; import org.msgpack.MessageTypeException; - class StringRawValueImpl extends AbstractRawValue { private String string; @@ -53,22 +52,21 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(this == o) { + if (this == o) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isRawValue()) { + if (!v.isRawValue()) { return false; } - if(v.getClass() == StringRawValueImpl.class) { + if (v.getClass() == StringRawValueImpl.class) { return string.equals(((StringRawValueImpl) v).string); } return Arrays.equals(getByteArray(), v.asRawValue().getByteArray()); } } - diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index c65c1b807..0414f2e6a 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -20,9 +20,9 @@ import java.io.IOException; import org.msgpack.packer.Packer; - class TrueValueImpl extends AbstractBooleanValue { - private TrueValueImpl() { } + private TrueValueImpl() { + } private static TrueValueImpl instance = new TrueValueImpl(); @@ -42,14 +42,14 @@ public void writeTo(Packer pk) throws IOException { @Override public boolean equals(Object o) { - if(o == this) { + if (o == this) { return true; } - if(!(o instanceof Value)) { + if (!(o instanceof Value)) { return false; } Value v = (Value) o; - if(!v.isBooleanValue()) { + if (!v.isBooleanValue()) { return false; } @@ -71,4 +71,3 @@ public StringBuilder toString(StringBuilder sb) { return sb.append("true"); } } - diff --git a/src/main/java/org/msgpack/type/Value.java b/src/main/java/org/msgpack/type/Value.java index 6bbdcd2a7..580e7f56f 100644 --- a/src/main/java/org/msgpack/type/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -20,7 +20,6 @@ import java.io.IOException; import org.msgpack.packer.Packer; - public interface Value { public ValueType getType(); @@ -56,4 +55,3 @@ public interface Value { public StringBuilder toString(StringBuilder sb); } - diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index 57cf65a56..2d55a118e 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -20,14 +20,13 @@ import java.math.BigInteger; import java.nio.ByteBuffer; - public final class ValueFactory { public static NilValue createNilValue() { return NilValue.getInstance(); } public static BooleanValue createBooleanValue(boolean v) { - if(v) { + if (v) { return TrueValueImpl.getInstance(); } else { return FalseValueImpl.getInstance(); @@ -35,11 +34,11 @@ public static BooleanValue createBooleanValue(boolean v) { } public static IntegerValue createIntegerValue(byte v) { - return new IntValueImpl((int)v); + return new IntValueImpl((int) v); } public static IntegerValue createIntegerValue(short v) { - return new IntValueImpl((int)v); + return new IntValueImpl((int) v); } public static IntegerValue createIntegerValue(int v) { @@ -98,7 +97,7 @@ public static ArrayValue createArrayValue() { } public static ArrayValue createArrayValue(Value[] array) { - if(array.length == 0) { + if (array.length == 0) { // TODO EmptyArrayValueImpl? return ArrayValueImpl.getEmptyInstance(); } @@ -106,7 +105,7 @@ public static ArrayValue createArrayValue(Value[] array) { } public static ArrayValue createArrayValue(Value[] array, boolean gift) { - if(array.length == 0) { + if (array.length == 0) { // TODO EmptyArrayValueImpl? return ArrayValueImpl.getEmptyInstance(); } @@ -118,7 +117,7 @@ public static MapValue createMapValue() { } public static MapValue createMapValue(Value[] kvs) { - if(kvs.length == 0) { + if (kvs.length == 0) { // TODO EmptyMapValueImpl? return SequentialMapValueImpl.getEmptyInstance(); } @@ -126,18 +125,18 @@ public static MapValue createMapValue(Value[] kvs) { } public static MapValue createMapValue(Value[] kvs, boolean gift) { - if(kvs.length == 0) { + if (kvs.length == 0) { // TODO EmptyMapValueImpl? return SequentialMapValueImpl.getEmptyInstance(); } return new SequentialMapValueImpl(kvs, gift); } - //TODO - //public static Value get(Object obj) { - // return new Unconverter().pack(obj).getResult(); - //} + // TODO + // public static Value get(Object obj) { + // return new Unconverter().pack(obj).getResult(); + // } - private ValueFactory() { } + private ValueFactory() { + } } - diff --git a/src/main/java/org/msgpack/type/ValueType.java b/src/main/java/org/msgpack/type/ValueType.java index fc0864c00..c20c61eb9 100644 --- a/src/main/java/org/msgpack/type/ValueType.java +++ b/src/main/java/org/msgpack/type/ValueType.java @@ -18,12 +18,5 @@ package org.msgpack.type; public enum ValueType { - NIL, - BOOLEAN, - INTEGER, - FLOAT, - ARRAY, - MAP, - RAW; + NIL, BOOLEAN, INTEGER, FLOAT, ARRAY, MAP, RAW; } - diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index f644769b6..45575bb3e 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -24,7 +24,6 @@ import org.msgpack.template.Template; import org.msgpack.packer.Unconverter; - public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; @@ -35,7 +34,7 @@ public abstract class AbstractUnpacker implements Unpacker { protected int mapSizeLimit = 4096; protected AbstractUnpacker(MessagePack msgpack) { - this.msgpack = msgpack; + this.msgpack = msgpack; } @Override @@ -43,19 +42,16 @@ public ByteBuffer readByteBuffer() throws IOException { return ByteBuffer.wrap(readByteArray()); } - @Override public void readArrayEnd() throws IOException { readArrayEnd(false); } - @Override public void readMapEnd() throws IOException { readMapEnd(false); } - @Override public UnpackerIterator iterator() { return new UnpackerIterator(this); @@ -70,12 +66,11 @@ public Value readValue() throws IOException { return uc.getResult(); } - protected abstract boolean tryReadNil() throws IOException; @Override public T read(Class klass) throws IOException { - if(tryReadNil()) { + if (tryReadNil()) { return null; } Template tmpl = msgpack.lookup(klass); @@ -85,7 +80,7 @@ public T read(Class klass) throws IOException { @SuppressWarnings("unchecked") @Override public T read(T to) throws IOException { - if(tryReadNil()) { + if (tryReadNil()) { return null; } Template tmpl = msgpack.lookup((Class) to.getClass()); @@ -94,15 +89,15 @@ public T read(T to) throws IOException { @Override public T read(Template tmpl) throws IOException { - if (tryReadNil()) { - return null; - } - return (T) tmpl.read(this, null); + if (tryReadNil()) { + return null; + } + return (T) tmpl.read(this, null); } @Override public T read(T to, Template tmpl) throws IOException { - if(tryReadNil()) { + if (tryReadNil()) { return null; } return (T) tmpl.read(this, to); diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index ab39dfbb8..5c0ccd922 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -22,7 +22,6 @@ import org.msgpack.io.BufferReferer; import org.msgpack.MessageTypeException; - abstract class Accept implements BufferReferer { void acceptBoolean(boolean v) throws IOException { throw new MessageTypeException("Unexpected boolean value"); @@ -60,9 +59,9 @@ void acceptUnsignedInteger(long v) throws IOException { throw new MessageTypeException("Unexpected integer value"); } - //void checkRawAcceptable() throws IOException { - // throw new MessageTypeException("Unexpected raw value"); - //} + // void checkRawAcceptable() throws IOException { + // throw new MessageTypeException("Unexpected raw value"); + // } void acceptRaw(byte[] raw) throws IOException { throw new MessageTypeException("Unexpected raw value"); @@ -72,17 +71,17 @@ void acceptEmptyRaw() throws IOException { throw new MessageTypeException("Unexpected raw value"); } - //void checkArrayAcceptable(int size) throws IOException { - // throw new MessageTypeException("Unexpected array value"); - //} + // void checkArrayAcceptable(int size) throws IOException { + // throw new MessageTypeException("Unexpected array value"); + // } void acceptArray(int size) throws IOException { throw new MessageTypeException("Unexpected array value"); } - //void checkMapAcceptable(int size) throws IOException { - // throw new MessageTypeException("Unexpected map value"); - //} + // void checkMapAcceptable(int size) throws IOException { + // throw new MessageTypeException("Unexpected map value"); + // } void acceptMap(int size) throws IOException { throw new MessageTypeException("Unexpected map value"); @@ -104,4 +103,3 @@ public void refer(ByteBuffer bb, boolean gift) throws IOException { throw new MessageTypeException("Unexpected raw value"); } } - diff --git a/src/main/java/org/msgpack/unpacker/ArrayAccept.java b/src/main/java/org/msgpack/unpacker/ArrayAccept.java index c073c8fe4..a9633d4e1 100644 --- a/src/main/java/org/msgpack/unpacker/ArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ArrayAccept.java @@ -17,7 +17,6 @@ // package org.msgpack.unpacker; - final class ArrayAccept extends Accept { int size; @@ -26,4 +25,3 @@ void acceptArray(int size) { this.size = size; } } - diff --git a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java index 25208681a..12aa8d8e8 100644 --- a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java +++ b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java @@ -19,23 +19,22 @@ import java.math.BigInteger; - final class BigIntegerAccept extends Accept { BigInteger value; @Override void acceptInteger(byte v) { - this.value = BigInteger.valueOf((long)v); + this.value = BigInteger.valueOf((long) v); } @Override void acceptInteger(short v) { - this.value = BigInteger.valueOf((long)v); + this.value = BigInteger.valueOf((long) v); } @Override void acceptInteger(int v) { - this.value = BigInteger.valueOf((long)v); + this.value = BigInteger.valueOf((long) v); } @Override @@ -45,30 +44,29 @@ void acceptInteger(long v) { @Override void acceptUnsignedInteger(byte v) { - BigInteger.valueOf((long)(v & 0xff)); + BigInteger.valueOf((long) (v & 0xff)); } @Override void acceptUnsignedInteger(short v) { - BigInteger.valueOf((long)(v & 0xffff)); + BigInteger.valueOf((long) (v & 0xffff)); } @Override void acceptUnsignedInteger(int v) { - if(v < 0) { - this.value = BigInteger.valueOf((long)(v & 0x7fffffff) + 0x80000000L); + if (v < 0) { + this.value = BigInteger.valueOf((long) (v & 0x7fffffff) + 0x80000000L); } else { - this.value = BigInteger.valueOf((long)v); + this.value = BigInteger.valueOf((long) v); } } @Override void acceptUnsignedInteger(long v) { - if(v < 0L) { - this.value = BigInteger.valueOf(v+Long.MAX_VALUE+1L).setBit(63); + if (v < 0L) { + this.value = BigInteger.valueOf(v + Long.MAX_VALUE + 1L).setBit(63); } else { this.value = BigInteger.valueOf(v); } } } - diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 1ef8b2ce2..fe41b1b73 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -21,7 +21,7 @@ /** * This class is buffer-specific deserializer. - * + * * @version 0.6.0 * @see {@link org.msgpack.packer.Unpacker} */ @@ -46,4 +46,3 @@ public interface BufferUnpacker extends Unpacker { public void clear(); } - diff --git a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java index 01a89e36c..e1a4d3921 100644 --- a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java @@ -20,7 +20,6 @@ import java.io.IOException; import java.nio.ByteBuffer; - final class ByteArrayAccept extends Accept { byte[] value; @@ -41,4 +40,3 @@ public void refer(ByteBuffer bb, boolean gift) throws IOException { bb.get(value); } } - diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 18433608e..39ad334c8 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -28,7 +28,6 @@ import org.msgpack.type.ArrayValue; import org.msgpack.type.MapValue; - public class Converter extends AbstractUnpacker { private final UnpackerStack stack; private Object[] values; @@ -50,7 +49,7 @@ protected Value nextValue() throws IOException { } private void ensureValue() throws IOException { - if(value == null) { + if (value == null) { value = nextValue(); } } @@ -58,9 +57,9 @@ private void ensureValue() throws IOException { @Override public boolean tryReadNil() throws IOException { stack.checkCount(); - if(getTop().isNilValue()) { + if (getTop().isNilValue()) { stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return true; @@ -72,14 +71,14 @@ public boolean tryReadNil() throws IOException { public boolean trySkipNil() throws IOException { ensureValue(); - if(stack.getDepth() > 0 && stack.getTopCount() <= 0) { + if (stack.getDepth() > 0 && stack.getTopCount() <= 0) { // end of array or map return true; } - if(getTop().isNilValue()) { + if (getTop().isNilValue()) { stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return true; @@ -89,11 +88,11 @@ public boolean trySkipNil() throws IOException { @Override public void readNil() throws IOException { - if(!getTop().isNilValue()) { + if (!getTop().isNilValue()) { throw new MessageTypeException("Expected nil but got not nil value"); } stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } } @@ -109,7 +108,7 @@ public boolean readBoolean() throws IOException { public byte readByte() throws IOException { byte v = getTop().asIntegerValue().getByte(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -119,7 +118,7 @@ public byte readByte() throws IOException { public short readShort() throws IOException { short v = getTop().asIntegerValue().getShort(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -129,7 +128,7 @@ public short readShort() throws IOException { public int readInt() throws IOException { int v = getTop().asIntegerValue().getInt(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -139,7 +138,7 @@ public int readInt() throws IOException { public long readLong() throws IOException { long v = getTop().asIntegerValue().getLong(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -149,7 +148,7 @@ public long readLong() throws IOException { public BigInteger readBigInteger() throws IOException { BigInteger v = getTop().asIntegerValue().getBigInteger(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -159,7 +158,7 @@ public BigInteger readBigInteger() throws IOException { public float readFloat() throws IOException { float v = getTop().asFloatValue().getFloat(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -169,7 +168,7 @@ public float readFloat() throws IOException { public double readDouble() throws IOException { double v = getTop().asFloatValue().getDouble(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return v; @@ -179,7 +178,7 @@ public double readDouble() throws IOException { public byte[] readByteArray() throws IOException { byte[] raw = getTop().asRawValue().getByteArray(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return raw; @@ -189,7 +188,7 @@ public byte[] readByteArray() throws IOException { public String readString() throws IOException { String str = getTop().asRawValue().getString(); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return str; @@ -198,8 +197,9 @@ public String readString() throws IOException { @Override public int readArrayBegin() throws IOException { Value v = getTop(); - if(!v.isArrayValue()) { - throw new MessageTypeException("Expected array but got not array value"); + if (!v.isArrayValue()) { + throw new MessageTypeException( + "Expected array but got not array value"); } ArrayValue a = v.asArrayValue(); stack.reduceCount(); @@ -210,22 +210,24 @@ public int readArrayBegin() throws IOException { @Override public void readArrayEnd(boolean check) throws IOException { - if(!stack.topIsArray()) { - throw new MessageTypeException("readArrayEnd() is called but readArrayBegin() is not called"); + if (!stack.topIsArray()) { + throw new MessageTypeException( + "readArrayEnd() is called but readArrayBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("readArrayEnd(check=true) is called but the array is not end"); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "readArrayEnd(check=true) is called but the array is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { skip(); } } stack.pop(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } } @@ -233,7 +235,7 @@ public void readArrayEnd(boolean check) throws IOException { @Override public int readMapBegin() throws IOException { Value v = getTop(); - if(!v.isMapValue()) { + if (!v.isMapValue()) { throw new MessageTypeException("Expected map but got not map value"); } MapValue m = v.asMapValue(); @@ -245,22 +247,24 @@ public int readMapBegin() throws IOException { @Override public void readMapEnd(boolean check) throws IOException { - if(!stack.topIsMap()) { - throw new MessageTypeException("readMapEnd() is called but readMapBegin() is not called"); + if (!stack.topIsMap()) { + throw new MessageTypeException( + "readMapEnd() is called but readMapBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("readMapEnd(check=true) is called but the map is not end"); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "readMapEnd(check=true) is called but the map is not end"); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { skip(); } } stack.pop(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } } @@ -269,11 +273,11 @@ private Value getTop() throws IOException { ensureValue(); stack.checkCount(); - if(stack.getDepth() == 0) { - //if(stack.getTopCount() < 0) { - // //throw new EOFException(); // TODO - // throw new RuntimeException(new EOFException()); - //} + if (stack.getDepth() == 0) { + // if(stack.getTopCount() < 0) { + // //throw new EOFException(); // TODO + // throw new RuntimeException(new EOFException()); + // } return value; } Value[] array = (Value[]) values[stack.getDepth()]; @@ -282,8 +286,8 @@ private Value getTop() throws IOException { @Override public Value readValue() throws IOException { - if(stack.getDepth() == 0) { - if(value == null) { + if (stack.getDepth() == 0) { + if (value == null) { return nextValue(); } else { Value v = value; @@ -296,52 +300,52 @@ public Value readValue() throws IOException { @Override protected void readValue(Unconverter uc) throws IOException { - if(uc.getResult() != null) { + if (uc.getResult() != null) { uc.resetResult(); } stack.checkCount(); Value v = getTop(); - if(!v.isArrayValue() && !v.isMapValue()) { + if (!v.isArrayValue() && !v.isMapValue()) { uc.write(v); stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } - if(uc.getResult() != null) { + if (uc.getResult() != null) { return; } } - while(true) { - while(stack.getDepth() != 0 && stack.getTopCount() == 0) { - if(stack.topIsArray()) { + while (true) { + while (stack.getDepth() != 0 && stack.getTopCount() == 0) { + if (stack.topIsArray()) { uc.writeArrayEnd(true); stack.pop(); - } else if(stack.topIsMap()) { + } else if (stack.topIsMap()) { uc.writeMapEnd(true); stack.pop(); } else { throw new RuntimeException("invalid stack"); // FIXME error? } - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } - if(uc.getResult() != null) { + if (uc.getResult() != null) { return; } } stack.checkCount(); v = getTop(); - if(v.isArrayValue()) { + if (v.isArrayValue()) { ArrayValue a = v.asArrayValue(); uc.writeArrayBegin(a.size()); stack.reduceCount(); stack.pushArray(a.size()); values[stack.getDepth()] = a.getElementArray(); - } else if(v.isMapValue()) { + } else if (v.isMapValue()) { MapValue m = v.asMapValue(); uc.writeMapBegin(m.size()); stack.reduceCount(); @@ -359,34 +363,34 @@ protected void readValue(Unconverter uc) throws IOException { public void skip() throws IOException { stack.checkCount(); Value v = getTop(); - if(!v.isArrayValue() && !v.isMapValue()) { + if (!v.isArrayValue() && !v.isMapValue()) { stack.reduceCount(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } return; } int targetDepth = stack.getDepth(); - while(true) { - while(stack.getTopCount() == 0) { + while (true) { + while (stack.getTopCount() == 0) { stack.pop(); - if(stack.getDepth() == 0) { + if (stack.getDepth() == 0) { value = null; } - if(stack.getDepth() <= targetDepth) { + if (stack.getDepth() <= targetDepth) { return; } } stack.checkCount(); v = getTop(); - if(v.isArrayValue()) { + if (v.isArrayValue()) { ArrayValue a = v.asArrayValue(); stack.reduceCount(); stack.pushArray(a.size()); values[stack.getDepth()] = a.getElementArray(); - } else if(v.isMapValue()) { + } else if (v.isMapValue()) { MapValue m = v.asMapValue(); stack.reduceCount(); stack.pushMap(m.size()); @@ -414,17 +418,16 @@ public int getReadByteCount() { @Override public void setRawSizeLimit(int size) { - throw new UnsupportedOperationException("Not implemented yet"); + throw new UnsupportedOperationException("Not implemented yet"); } @Override public void setArraySizeLimit(int size) { - throw new UnsupportedOperationException("Not implemented yet"); + throw new UnsupportedOperationException("Not implemented yet"); } @Override public void setMapSizeLimit(int size) { - throw new UnsupportedOperationException("Not implemented yet"); + throw new UnsupportedOperationException("Not implemented yet"); } } - diff --git a/src/main/java/org/msgpack/unpacker/DoubleAccept.java b/src/main/java/org/msgpack/unpacker/DoubleAccept.java index de575652d..249a4871c 100644 --- a/src/main/java/org/msgpack/unpacker/DoubleAccept.java +++ b/src/main/java/org/msgpack/unpacker/DoubleAccept.java @@ -17,16 +17,14 @@ // package org.msgpack.unpacker; - final class DoubleAccept extends Accept { double value; void acceptFloat(float v) { - this.value = (double)v; + this.value = (double) v; } void acceptDouble(double v) { this.value = v; } } - diff --git a/src/main/java/org/msgpack/unpacker/IntAccept.java b/src/main/java/org/msgpack/unpacker/IntAccept.java index 65adfb509..607903fcd 100644 --- a/src/main/java/org/msgpack/unpacker/IntAccept.java +++ b/src/main/java/org/msgpack/unpacker/IntAccept.java @@ -19,18 +19,17 @@ import org.msgpack.MessageTypeException; - final class IntAccept extends Accept { int value; @Override void acceptInteger(byte v) { - this.value = (int)v; + this.value = (int) v; } @Override void acceptInteger(short v) { - this.value = (int)v; + this.value = (int) v; } @Override @@ -40,10 +39,10 @@ void acceptInteger(int v) { @Override void acceptInteger(long v) { - if(value < (long)Integer.MIN_VALUE || value > (long)Integer.MAX_VALUE) { - throw new MessageTypeException(); // TODO message + if (value < (long) Integer.MIN_VALUE || value > (long) Integer.MAX_VALUE) { + throw new MessageTypeException(); // TODO message } - this.value = (int)v; + this.value = (int) v; } @Override @@ -58,18 +57,17 @@ void acceptUnsignedInteger(short v) { @Override void acceptUnsignedInteger(int v) { - if(v < 0) { - throw new MessageTypeException(); // TODO message + if (v < 0) { + throw new MessageTypeException(); // TODO message } this.value = v; } @Override void acceptUnsignedInteger(long v) { - if(v < 0 || v > (long)Integer.MAX_VALUE) { - throw new MessageTypeException(); // TODO message + if (v < 0 || v > (long) Integer.MAX_VALUE) { + throw new MessageTypeException(); // TODO message } - this.value = (int)v; + this.value = (int) v; } } - diff --git a/src/main/java/org/msgpack/unpacker/LongAccept.java b/src/main/java/org/msgpack/unpacker/LongAccept.java index 8d4ac5578..96f77bafe 100644 --- a/src/main/java/org/msgpack/unpacker/LongAccept.java +++ b/src/main/java/org/msgpack/unpacker/LongAccept.java @@ -19,23 +19,22 @@ import org.msgpack.MessageTypeException; - final class LongAccept extends Accept { long value; @Override void acceptInteger(byte v) { - this.value = (long)v; + this.value = (long) v; } @Override void acceptInteger(short v) { - this.value = (long)v; + this.value = (long) v; } @Override void acceptInteger(int v) { - this.value = (long)v; + this.value = (long) v; } @Override @@ -45,29 +44,28 @@ void acceptInteger(long v) { @Override void acceptUnsignedInteger(byte v) { - this.value = (long)(v & 0xff); + this.value = (long) (v & 0xff); } @Override void acceptUnsignedInteger(short v) { - this.value = (long)(v & 0xffff); + this.value = (long) (v & 0xffff); } @Override void acceptUnsignedInteger(int v) { - if(v < 0) { - this.value = (long)(v & 0x7fffffff) + 0x80000000L; + if (v < 0) { + this.value = (long) (v & 0x7fffffff) + 0x80000000L; } else { - this.value = (long)v; + this.value = (long) v; } } @Override void acceptUnsignedInteger(long v) { - if(v < 0L) { - throw new MessageTypeException(); // TODO message + if (v < 0L) { + throw new MessageTypeException(); // TODO message } this.value = v; } } - diff --git a/src/main/java/org/msgpack/unpacker/MapAccept.java b/src/main/java/org/msgpack/unpacker/MapAccept.java index 9cd10d1fc..59b53e224 100644 --- a/src/main/java/org/msgpack/unpacker/MapAccept.java +++ b/src/main/java/org/msgpack/unpacker/MapAccept.java @@ -17,7 +17,6 @@ // package org.msgpack.unpacker; - final class MapAccept extends Accept { int size; @@ -26,4 +25,3 @@ void acceptMap(int size) { this.size = size; } } - diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 117e5b7c2..3b465c4dd 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -22,16 +22,16 @@ import org.msgpack.MessagePack; import org.msgpack.io.LinkedBufferInput; - public class MessagePackBufferUnpacker extends MessagePackUnpacker implements BufferUnpacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer + // size public MessagePackBufferUnpacker(MessagePack msgpack) { - this(msgpack, DEFAULT_BUFFER_SIZE); + this(msgpack, DEFAULT_BUFFER_SIZE); } public MessagePackBufferUnpacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new LinkedBufferInput(bufferSize)); + super(msgpack, new LinkedBufferInput(bufferSize)); } @Override @@ -95,4 +95,3 @@ public void clear() { reset(); } } - diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index c0020f4c9..26d348dbc 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -28,9 +28,8 @@ import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; - public class MessagePackUnpacker extends AbstractUnpacker { - private static final byte REQUIRE_TO_READ_HEAD = (byte)0xc6; + private static final byte REQUIRE_TO_READ_HEAD = (byte) 0xc6; protected final Input in; private final UnpackerStack stack = new UnpackerStack(); @@ -84,23 +83,23 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } - final int b = (int)getHeadByte(); + final int b = (int) getHeadByte(); - if ((b & 0x80) == 0) { // Positive Fixnum - //System.out.println("positive fixnum "+b); + if ((b & 0x80) == 0) { // Positive Fixnum + // System.out.println("positive fixnum "+b); a.acceptInteger(b); headByte = REQUIRE_TO_READ_HEAD; return true; } - if ((b & 0xe0) == 0xe0) { // Negative Fixnum - //System.out.println("negative fixnum "+b); + if ((b & 0xe0) == 0xe0) { // Negative Fixnum + // System.out.println("negative fixnum "+b); a.acceptInteger(b); headByte = REQUIRE_TO_READ_HEAD; return true; } - if ((b & 0xe0) == 0xa0) { // FixRaw + if ((b & 0xe0) == 0xa0) { // FixRaw int count = b & 0x1f; if (count == 0) { a.acceptEmptyRaw(); @@ -116,9 +115,9 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return true; } - if ((b & 0xf0) == 0x90) { // FixArray + if ((b & 0xf0) == 0x90) { // FixArray int count = b & 0x0f; - //System.out.println("fixarray count:"+count); + // System.out.println("fixarray count:"+count); a.acceptArray(count); stack.reduceCount(); stack.pushArray(count); @@ -126,9 +125,9 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return false; } - if ((b & 0xf0) == 0x80) { // FixMap + if ((b & 0xf0) == 0x80) { // FixMap int count = b & 0x0f; - //System.out.println("fixmap count:"+count/2); + // System.out.println("fixmap count:"+count/2); a.acceptMap(count); stack.reduceCount(); stack.pushMap(count); @@ -139,181 +138,188 @@ final boolean readOneWithoutStack(Accept a) throws IOException { return readOneWithoutStackLarge(a, b); } - private boolean readOneWithoutStackLarge(Accept a, final int b) throws IOException { - switch(b & 0xff) { - case 0xc0: // nil + private boolean readOneWithoutStackLarge(Accept a, final int b) + throws IOException { + switch (b & 0xff) { + case 0xc0: // nil a.acceptNil(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xc2: // false + case 0xc2: // false a.acceptBoolean(false); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xc3: // true + case 0xc3: // true a.acceptBoolean(true); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xca: // float + case 0xca: // float a.acceptFloat(in.getFloat()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xcb: // double + case 0xcb: // double a.acceptDouble(in.getDouble()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xcc: // unsigned int 8 + case 0xcc: // unsigned int 8 a.acceptUnsignedInteger(in.getByte()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xcd: // unsigned int 16 + case 0xcd: // unsigned int 16 a.acceptUnsignedInteger(in.getShort()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xce: // unsigned int 32 + case 0xce: // unsigned int 32 a.acceptUnsignedInteger(in.getInt()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xcf: // unsigned int 64 + case 0xcf: // unsigned int 64 a.acceptUnsignedInteger(in.getLong()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xd0: // signed int 8 + case 0xd0: // signed int 8 a.acceptInteger(in.getByte()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xd1: // signed int 16 + case 0xd1: // signed int 16 a.acceptInteger(in.getShort()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xd2: // signed int 32 + case 0xd2: // signed int 32 a.acceptInteger(in.getInt()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xd3: // signed int 64 + case 0xd3: // signed int 64 a.acceptInteger(in.getLong()); in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; - case 0xda: // raw 16 - { - int count = in.getShort() & 0xffff; - if (count == 0) { - a.acceptEmptyRaw(); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return true; - } - if (count >= rawSizeLimit) { - String reason = String.format("Size of raw (%d) over limit at %d", - new Object[] { count, rawSizeLimit }); - throw new SizeLimitException(reason); - } + case 0xda: // raw 16 + { + int count = in.getShort() & 0xffff; + if (count == 0) { + a.acceptEmptyRaw(); in.advance(); - if (!tryReferRawBody(a, count)) { - readRawBody(count); - a.acceptRaw(raw); - raw = null; - } headByte = REQUIRE_TO_READ_HEAD; return true; } - case 0xdb: // raw 32 - { - int count = in.getInt(); - if (count == 0) { - a.acceptEmptyRaw(); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return true; - } - if (count < 0 || count >= rawSizeLimit) { - String reason = String.format("Size of raw (%d) over limit at %d", - new Object[] { count, rawSizeLimit }); - throw new SizeLimitException(reason); - } + if (count >= rawSizeLimit) { + String reason = String.format( + "Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); + } + in.advance(); + if (!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; + } + headByte = REQUIRE_TO_READ_HEAD; + return true; + } + case 0xdb: // raw 32 + { + int count = in.getInt(); + if (count == 0) { + a.acceptEmptyRaw(); in.advance(); - if (!tryReferRawBody(a, count)) { - readRawBody(count); - a.acceptRaw(raw); - raw = null; - } headByte = REQUIRE_TO_READ_HEAD; return true; } - case 0xdc: // array 16 - { - int count = in.getShort() & 0xffff; - if (count >= arraySizeLimit) { - String reason = String.format("Size of array (%d) over limit at %d", - new Object[] { count, arraySizeLimit }); - throw new SizeLimitException(reason); - } - a.acceptArray(count); - stack.reduceCount(); - stack.pushArray(count); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return false; + if (count < 0 || count >= rawSizeLimit) { + String reason = String.format( + "Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); } - case 0xdd: // array 32 - { - int count = in.getInt(); - if (count < 0 || count >= arraySizeLimit) { - String reason = String.format("Size of array (%d) over limit at %d", - new Object[] { count, arraySizeLimit }); - throw new SizeLimitException(reason); - } - a.acceptArray(count); - stack.reduceCount(); - stack.pushArray(count); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return false; + in.advance(); + if (!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; } - case 0xde: // map 16 - { - int count = in.getShort() & 0xffff; - if (count >= mapSizeLimit) { - String reason = String.format("Size of map (%d) over limit at %d", - new Object[] { count, mapSizeLimit }); - throw new SizeLimitException(reason); - } - a.acceptMap(count); - stack.reduceCount(); - stack.pushMap(count); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return false; + headByte = REQUIRE_TO_READ_HEAD; + return true; + } + case 0xdc: // array 16 + { + int count = in.getShort() & 0xffff; + if (count >= arraySizeLimit) { + String reason = String.format( + "Size of array (%d) over limit at %d", + new Object[] { count, arraySizeLimit }); + throw new SizeLimitException(reason); } - case 0xdf: // map 32 - { - int count = in.getInt(); - if (count < 0 || count >= mapSizeLimit) { - String reason = String.format("Size of map (%d) over limit at %d", - new Object[] { count, mapSizeLimit }); - throw new SizeLimitException(reason); - } - a.acceptMap(count); - stack.reduceCount(); - stack.pushMap(count); - in.advance(); - headByte = REQUIRE_TO_READ_HEAD; - return false; + a.acceptArray(count); + stack.reduceCount(); + stack.pushArray(count); + in.advance(); + headByte = REQUIRE_TO_READ_HEAD; + return false; + } + case 0xdd: // array 32 + { + int count = in.getInt(); + if (count < 0 || count >= arraySizeLimit) { + String reason = String.format( + "Size of array (%d) over limit at %d", + new Object[] { count, arraySizeLimit }); + throw new SizeLimitException(reason); + } + a.acceptArray(count); + stack.reduceCount(); + stack.pushArray(count); + in.advance(); + headByte = REQUIRE_TO_READ_HEAD; + return false; + } + case 0xde: // map 16 + { + int count = in.getShort() & 0xffff; + if (count >= mapSizeLimit) { + String reason = String.format( + "Size of map (%d) over limit at %d", + new Object[] { count, mapSizeLimit }); + throw new SizeLimitException(reason); + } + a.acceptMap(count); + stack.reduceCount(); + stack.pushMap(count); + in.advance(); + headByte = REQUIRE_TO_READ_HEAD; + return false; + } + case 0xdf: // map 32 + { + int count = in.getInt(); + if (count < 0 || count >= mapSizeLimit) { + String reason = String.format( + "Size of map (%d) over limit at %d", + new Object[] { count, mapSizeLimit }); + throw new SizeLimitException(reason); } + a.acceptMap(count); + stack.reduceCount(); + stack.pushMap(count); + in.advance(); + headByte = REQUIRE_TO_READ_HEAD; + return false; + } default: - //System.out.println("unknown b "+(b&0xff)); + // System.out.println("unknown b "+(b&0xff)); // headByte = CS_INVALID headByte = REQUIRE_TO_READ_HEAD; - throw new IOException("Invalid byte: "+b); // TODO error FormatException + throw new IOException("Invalid byte: " + b); // TODO error FormatException } } @@ -394,7 +400,8 @@ public boolean readBoolean() throws IOException { headByte = REQUIRE_TO_READ_HEAD; return true; } - throw new MessageTypeException("Expected Boolean but got not boolean value"); + throw new MessageTypeException( + "Expected Boolean but got not boolean value"); } @Override @@ -403,11 +410,11 @@ public byte readByte() throws IOException { stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; - if (value < (int)Byte.MIN_VALUE || value > (int)Byte.MAX_VALUE) { - throw new MessageTypeException(); // TODO message + if (value < (int) Byte.MIN_VALUE || value > (int) Byte.MAX_VALUE) { + throw new MessageTypeException(); // TODO message } stack.reduceCount(); - return (byte)value; + return (byte) value; } @Override @@ -416,11 +423,11 @@ public short readShort() throws IOException { stack.checkCount(); readOneWithoutStack(intAccept); int value = intAccept.value; - if (value < (int)Short.MIN_VALUE || value > (int)Short.MAX_VALUE) { - throw new MessageTypeException(); // TODO message + if (value < (int) Short.MIN_VALUE || value > (int) Short.MAX_VALUE) { + throw new MessageTypeException(); // TODO message } stack.reduceCount(); - return (short)value; + return (short) value; } @Override @@ -444,7 +451,7 @@ public BigInteger readBigInteger() throws IOException { @Override public float readFloat() throws IOException { readOne(doubleAccept); - return (float)doubleAccept.value; + return (float) doubleAccept.value; } @Override @@ -474,13 +481,15 @@ public int readArrayBegin() throws IOException { @Override public void readArrayEnd(boolean check) throws IOException { if (!stack.topIsArray()) { - throw new MessageTypeException("readArrayEnd() is called but readArrayBegin() is not called"); + throw new MessageTypeException( + "readArrayEnd() is called but readArrayBegin() is not called"); } int remain = stack.getTopCount(); if (remain > 0) { if (check) { - throw new MessageTypeException("readArrayEnd(check=true) is called but the array is not end"); + throw new MessageTypeException( + "readArrayEnd(check=true) is called but the array is not end"); } for (int i = 0; i < remain; i++) { skip(); @@ -498,13 +507,15 @@ public int readMapBegin() throws IOException { @Override public void readMapEnd(boolean check) throws IOException { if (!stack.topIsMap()) { - throw new MessageTypeException("readMapEnd() is called but readMapBegin() is not called"); + throw new MessageTypeException( + "readMapEnd() is called but readMapBegin() is not called"); } int remain = stack.getTopCount(); if (remain > 0) { if (check) { - throw new MessageTypeException("readMapEnd(check=true) is called but the map is not end"); + throw new MessageTypeException( + "readMapEnd(check=true) is called but the map is not end"); } for (int i = 0; i < remain; i++) { skip(); @@ -532,11 +543,11 @@ protected void readValue(Unconverter uc) throws IOException { if (stack.topIsArray()) { uc.writeArrayEnd(true); stack.pop(); - //stack.reduceCount(); + // stack.reduceCount(); } else if (stack.topIsMap()) { uc.writeMapEnd(true); stack.pop(); - //stack.reduceCount(); + // stack.reduceCount(); } else { throw new RuntimeException("invalid stack"); // FIXME error? } @@ -589,4 +600,3 @@ public void resetReadByteCount() { in.resetReadByteCount(); } } - diff --git a/src/main/java/org/msgpack/unpacker/SizeLimitException.java b/src/main/java/org/msgpack/unpacker/SizeLimitException.java index 1053129be..e46fbf174 100644 --- a/src/main/java/org/msgpack/unpacker/SizeLimitException.java +++ b/src/main/java/org/msgpack/unpacker/SizeLimitException.java @@ -19,7 +19,6 @@ import java.io.IOException; - @SuppressWarnings("serial") public class SizeLimitException extends IOException { public SizeLimitException() { diff --git a/src/main/java/org/msgpack/unpacker/SkipAccept.java b/src/main/java/org/msgpack/unpacker/SkipAccept.java index 18f761bf5..21fe69dc0 100644 --- a/src/main/java/org/msgpack/unpacker/SkipAccept.java +++ b/src/main/java/org/msgpack/unpacker/SkipAccept.java @@ -17,7 +17,6 @@ // package org.msgpack.unpacker; - final class SkipAccept extends Accept { @Override void acceptBoolean(boolean v) { @@ -83,4 +82,3 @@ void acceptFloat(float v) { void acceptDouble(double v) { } } - diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index 8b91d57f5..5c5256089 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -25,15 +25,14 @@ import java.nio.charset.CodingErrorAction; import org.msgpack.MessageTypeException; - final class StringAccept extends Accept { String value; private CharsetDecoder decoder; public StringAccept() { - this.decoder = Charset.forName("UTF-8").newDecoder(). - onMalformedInput(CodingErrorAction.REPORT). - onUnmappableCharacter(CodingErrorAction.REPORT); + this.decoder = Charset.forName("UTF-8").newDecoder() + .onMalformedInput(CodingErrorAction.REPORT) + .onUnmappableCharacter(CodingErrorAction.REPORT); } @Override @@ -59,4 +58,3 @@ public void refer(ByteBuffer bb, boolean gift) throws IOException { } } } - diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 69f552f29..277e55322 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -28,7 +28,7 @@ /** * Standard deserializer. - * + * * @version 0.6.0 */ public interface Unpacker extends Iterable, Closeable { @@ -40,7 +40,6 @@ public interface Unpacker extends Iterable, Closeable { public T read(T to, Template tmpl) throws IOException; - public void skip() throws IOException; public int readArrayBegin() throws IOException; @@ -59,7 +58,6 @@ public interface Unpacker extends Iterable, Closeable { public boolean trySkipNil() throws IOException; - public boolean readBoolean() throws IOException; public byte readByte() throws IOException; @@ -84,18 +82,15 @@ public interface Unpacker extends Iterable, Closeable { public Value readValue() throws IOException; - public UnpackerIterator iterator(); public int getReadByteCount(); public void resetReadByteCount(); - public void setRawSizeLimit(int size); public void setArraySizeLimit(int size); public void setMapSizeLimit(int size); } - diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index 7b5be6792..7d91dbc15 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -24,9 +24,8 @@ import org.msgpack.type.Value; import org.msgpack.packer.Unconverter; - public class UnpackerIterator implements Iterator { - private final AbstractUnpacker u; // FIXME -> Unpacker + private final AbstractUnpacker u; // FIXME -> Unpacker private final Unconverter uc; private IOException exception; @@ -36,7 +35,7 @@ public UnpackerIterator(AbstractUnpacker u) { } public boolean hasNext() { - if(uc.getResult() != null) { + if (uc.getResult() != null) { return true; } try { @@ -52,7 +51,7 @@ public boolean hasNext() { } public Value next() { - if(!hasNext()) { + if (!hasNext()) { throw new NoSuchElementException(); } Value v = uc.getResult(); @@ -68,4 +67,3 @@ public IOException getException() { return exception; } } - diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index c6ad5002f..cfa5b6fa9 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -19,7 +19,6 @@ import org.msgpack.MessageTypeException; - public final class UnpackerStack { private int top; private byte[] types; @@ -47,21 +46,23 @@ public void pushArray(int size) { public void pushMap(int size) { top++; types[top] = TYPE_MAP; - counts[top] = size*2; + counts[top] = size * 2; } /** * throws MessageTypeException if stack is invalid */ public void checkCount() { - if(counts[top] > 0) { + if (counts[top] > 0) { return; } - if(types[top] == TYPE_ARRAY) { - throw new MessageTypeException("Array is end but readArrayEnd() is not called"); - } else if(types[top] == TYPE_MAP) { - throw new MessageTypeException("Map is end but readMapEnd() is not called"); + if (types[top] == TYPE_ARRAY) { + throw new MessageTypeException( + "Array is end but readArrayEnd() is not called"); + } else if (types[top] == TYPE_MAP) { + throw new MessageTypeException( + "Map is end but readMapEnd() is not called"); } else { // empty return; } @@ -95,4 +96,3 @@ public void clear() { top = 0; } } - diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 3e5dd8fc6..3f22af64c 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -23,7 +23,6 @@ import org.msgpack.type.ValueFactory; import org.msgpack.packer.Unconverter; - final class ValueAccept extends Accept { private Unconverter uc = null; @@ -68,8 +67,8 @@ void acceptUnsignedInteger(short v) throws IOException { @Override void acceptUnsignedInteger(int v) throws IOException { - if(v < 0) { - long value = (long)(v & 0x7fffffff) + 0x80000000L; + if (v < 0) { + long value = (long) (v & 0x7fffffff) + 0x80000000L; uc.write(ValueFactory.createIntegerValue(value)); } else { uc.write(ValueFactory.createIntegerValue(v)); @@ -78,8 +77,9 @@ void acceptUnsignedInteger(int v) throws IOException { @Override void acceptUnsignedInteger(long v) throws IOException { - if(v < 0L) { - BigInteger value = BigInteger.valueOf(v+Long.MAX_VALUE+1L).setBit(63); + if (v < 0L) { + BigInteger value = BigInteger.valueOf(v + Long.MAX_VALUE + 1L) + .setBit(63); uc.write(ValueFactory.createIntegerValue(value)); } else { uc.write(ValueFactory.createIntegerValue(v)); @@ -129,4 +129,3 @@ void acceptDouble(double v) throws IOException { uc.write(ValueFactory.createFloatValue(v)); } } - diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index eaac758c2..8a6e61bb0 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -38,12 +38,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; - /** - * This class is a template precompiler, which is used for saving templates - * that TemplateBuilder generated. It saves templates as .class files. + * This class is a template precompiler, which is used for saving templates that + * TemplateBuilder generated. It saves templates as .class files. * Application enables to load the .class files and use templates. - * + * */ public class TemplatePrecompiler { @@ -53,99 +52,113 @@ public class TemplatePrecompiler { public static final String DEFAULT_DEST = "."; - public static void saveTemplates(final String[] classNames) throws IOException, ClassNotFoundException { - // TODO #MN - TemplateRegistry registry = new TemplateRegistry(null); - List ret = new ArrayList(); - for (String className : classNames) { - matchClassNames(ret, className); - } - List> ret0 = toClass(ret); - for (Class c : ret0) { - saveTemplateClass(registry, c); - } + public static void saveTemplates(final String[] classNames) + throws IOException, ClassNotFoundException { + // TODO #MN + TemplateRegistry registry = new TemplateRegistry(null); + List ret = new ArrayList(); + for (String className : classNames) { + matchClassNames(ret, className); + } + List> ret0 = toClass(ret); + for (Class c : ret0) { + saveTemplateClass(registry, c); + } } @SuppressWarnings("serial") - private static void matchClassNames(List ret, final String className) throws IOException { - String packageName = className.substring(0, className.lastIndexOf('.')); - String relativedName = className.substring(className.lastIndexOf('.') + 1, className.length()); - String patName = relativedName.replace("*", "(\\w+)"); - Pattern pat = Pattern.compile(patName); - - JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); - JavaFileManager fm = compiler.getStandardFileManager( - new DiagnosticCollector(), null, null); - HashSet kind = new HashSet(){{ - add(JavaFileObject.Kind.CLASS); - }}; - - for (JavaFileObject f : fm.list(StandardLocation.PLATFORM_CLASS_PATH, packageName, kind, false)) { - String relatived0 = f.getName(); - String name0 = relatived0.substring(0, relatived0.length() - ".class".length()); - Matcher m = pat.matcher(name0); - if (m.matches()) { - String name = packageName + '.' + name0; - if (!ret.contains(name)) { - ret.add(name); - } - } - } + private static void matchClassNames(List ret, final String className) + throws IOException { + String packageName = className.substring(0, className.lastIndexOf('.')); + String relativedName = className.substring( + className.lastIndexOf('.') + 1, className.length()); + String patName = relativedName.replace("*", "(\\w+)"); + Pattern pat = Pattern.compile(patName); + + JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); + JavaFileManager fm = compiler.getStandardFileManager( + new DiagnosticCollector(), null, null); + HashSet kind = new HashSet() { + { + add(JavaFileObject.Kind.CLASS); + } + }; + + for (JavaFileObject f : fm.list(StandardLocation.PLATFORM_CLASS_PATH, packageName, kind, false)) { + String relatived0 = f.getName(); + String name0 = relatived0.substring(0, relatived0.length() - ".class".length()); + Matcher m = pat.matcher(name0); + if (m.matches()) { + String name = packageName + '.' + name0; + if (!ret.contains(name)) { + ret.add(name); + } + } + } } - private static List> toClass(List classNames) throws ClassNotFoundException { - List> ret = new ArrayList>(classNames.size()); - ClassLoader cl = TemplatePrecompiler.class.getClassLoader(); - for (String className : classNames) { - Class c = cl.loadClass(className); - ret.add(c); - } - return ret; + private static List> toClass(List classNames) + throws ClassNotFoundException { + List> ret = new ArrayList>(classNames.size()); + ClassLoader cl = TemplatePrecompiler.class.getClassLoader(); + for (String className : classNames) { + Class c = cl.loadClass(className); + ret.add(c); + } + return ret; } - public static void saveTemplateClasses(TemplateRegistry registry, Class[] targetClasses) throws IOException { - for (Class c : targetClasses) { - saveTemplateClass(registry, c); - } + public static void saveTemplateClasses(TemplateRegistry registry, Class[] targetClasses) + throws IOException { + for (Class c : targetClasses) { + saveTemplateClass(registry, c); + } } - public static void saveTemplateClass(TemplateRegistry registry, Class targetClass) throws IOException { - LOG.info("Saving template of " + targetClass.getName() + "..."); - Properties props = System.getProperties(); - String distDirName = getDirName(props, DEST, DEFAULT_DEST); - if (targetClass.isEnum()) { - throw new UnsupportedOperationException("Not supported enum type yet: " + targetClass.getName()); - } else { - new JavassistTemplateBuilder(registry).writeTemplate(targetClass, distDirName); - } - LOG.info("Saved .class file of template class of " + targetClass.getName()); + public static void saveTemplateClass(TemplateRegistry registry, Class targetClass) + throws IOException { + LOG.info("Saving template of " + targetClass.getName() + "..."); + Properties props = System.getProperties(); + String distDirName = getDirName(props, DEST, DEFAULT_DEST); + if (targetClass.isEnum()) { + throw new UnsupportedOperationException( + "Not supported enum type yet: " + targetClass.getName()); + } else { + new JavassistTemplateBuilder(registry).writeTemplate(targetClass, + distDirName); + } + LOG.info("Saved .class file of template class of " + targetClass.getName()); } - public static boolean deleteTemplateClass(Class targetClass) throws IOException { - LOG.info("Deleting template of " + targetClass.getName() + "..."); - Properties props = System.getProperties(); - String distDirName = getDirName(props, DEST, DEFAULT_DEST); - String targetClassName = targetClass.getName(); - String targetClassFileName = targetClassName.replace('.', File.separatorChar) + "_$$_Template.class"; - File targetFile = new File(distDirName + File.separatorChar + targetClassFileName); - boolean deleted = false; - if (!targetFile.isDirectory() && targetFile.exists()) { - deleted = targetFile.delete(); - } - LOG.info("Deleted .class file of template class of " + targetClass.getName()); - return deleted; + public static boolean deleteTemplateClass(Class targetClass) + throws IOException { + LOG.info("Deleting template of " + targetClass.getName() + "..."); + Properties props = System.getProperties(); + String distDirName = getDirName(props, DEST, DEFAULT_DEST); + String targetClassName = targetClass.getName(); + String targetClassFileName = targetClassName.replace('.', + File.separatorChar) + "_$$_Template.class"; + File targetFile = new File(distDirName + File.separatorChar + + targetClassFileName); + boolean deleted = false; + if (!targetFile.isDirectory() && targetFile.exists()) { + deleted = targetFile.delete(); + } + LOG.info("Deleted .class file of template class of " + targetClass.getName()); + return deleted; } - private static String getDirName(Properties props, String dirName, String defaultDirName) throws IOException { - String dName = props.getProperty(dirName, defaultDirName); - File d = new File(dName); - if (!d.isDirectory() && !d.exists()) { - throw new IOException("Directory not exists: " + dName); - } - return d.getAbsolutePath(); + private static String getDirName(Properties props, String dirName, String defaultDirName) + throws IOException { + String dName = props.getProperty(dirName, defaultDirName); + File d = new File(dName); + if (!d.isDirectory() && !d.exists()) { + throw new IOException("Directory not exists: " + dName); + } + return d.getAbsolutePath(); } public static void main(final String[] args) throws Exception { - TemplatePrecompiler.saveTemplates(args); + TemplatePrecompiler.saveTemplates(args); } } diff --git a/src/main/java/org/msgpack/util/json/JSON.java b/src/main/java/org/msgpack/util/json/JSON.java index fb1dc73bf..0f38f7303 100644 --- a/src/main/java/org/msgpack/util/json/JSON.java +++ b/src/main/java/org/msgpack/util/json/JSON.java @@ -26,7 +26,6 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.unpacker.BufferUnpacker; - public class JSON extends MessagePack { public JSON() { super(); @@ -36,7 +35,6 @@ public JSON(MessagePack msgpack) { super(msgpack); } - @Override public Packer createPacker(OutputStream stream) { return new JSONPacker(this, stream); @@ -77,4 +75,3 @@ public BufferUnpacker createBufferUnpacker(ByteBuffer bb) { return createBufferUnpacker().wrap(bb); } } - diff --git a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java index 39c6dc954..d4f051aec 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -21,9 +21,9 @@ import org.msgpack.io.LinkedBufferOutput; import org.msgpack.packer.BufferPacker; - public class JSONBufferPacker extends JSONPacker implements BufferPacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer + // size public JSONBufferPacker() { this(DEFAULT_BUFFER_SIZE); @@ -34,11 +34,11 @@ public JSONBufferPacker(int bufferSize) { } public JSONBufferPacker(MessagePack msgpack) { - this(msgpack, DEFAULT_BUFFER_SIZE); + this(msgpack, DEFAULT_BUFFER_SIZE); } public JSONBufferPacker(MessagePack msgpack, int bufferSize) { - super(msgpack, new LinkedBufferOutput(bufferSize)); + super(msgpack, new LinkedBufferOutput(bufferSize)); } @Override @@ -52,4 +52,3 @@ public void clear() { ((LinkedBufferOutput) out).clear(); } } - diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 4ad19b7d7..5d2500ad3 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -24,9 +24,8 @@ import org.msgpack.MessagePack; import org.msgpack.unpacker.BufferUnpacker; - public class JSONBufferUnpacker extends JSONUnpacker implements BufferUnpacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size public JSONBufferUnpacker() { this(DEFAULT_BUFFER_SIZE); @@ -58,37 +57,44 @@ public JSONBufferUnpacker wrap(byte[] b, int off, int len) { @Override public JSONBufferUnpacker wrap(ByteBuffer buf) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support wrap(ByteBuffer buf)"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support wrap(ByteBuffer buf)"); } @Override public JSONBufferUnpacker feed(byte[] b) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override public JSONBufferUnpacker feed(byte[] b, boolean nocopy) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override public JSONBufferUnpacker feed(byte[] b, int off, int len) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override public JSONBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override public JSONBufferUnpacker feed(ByteBuffer buf) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { - throw new UnsupportedOperationException("JSONBufferUnpacker doesn't support feed()"); + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support feed()"); } @Override @@ -101,4 +107,3 @@ private static Reader newEmptyReader() { return new InputStreamReader(new ByteArrayInputStream(new byte[0])); } } - diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index ac28edd67..6e97a402b 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -32,11 +32,11 @@ import org.msgpack.packer.AbstractPacker; import org.msgpack.packer.PackerStack; - public class JSONPacker extends AbstractPacker { private static final byte[] NULL = new byte[] { 0x6e, 0x75, 0x6c, 0x6c }; private static final byte[] TRUE = new byte[] { 0x74, 0x72, 0x75, 0x65 }; private static final byte[] FALSE = new byte[] { 0x66, 0x61, 0x6c, 0x73, 0x65 }; + private static final byte COMMA = 0x2c; private static final byte COLON = 0x3a; private static final byte QUOTE = 0x22; @@ -48,9 +48,9 @@ public class JSONPacker extends AbstractPacker { private static final byte ZERO = 0x30; private static final int FLAG_FIRST_ELEMENT = 0x01; - private static final int FLAG_MAP_KEY = 0x02; - private static final int FLAG_MAP_VALUE = 0x04; - //private static final int FLAG_MAP = FLAG_MAP_KEY | FLAG_MAP_VALUE; + private static final int FLAG_MAP_KEY = 0x02; + private static final int FLAG_MAP_VALUE = 0x04; + // private static final int FLAG_MAP = FLAG_MAP_KEY | FLAG_MAP_VALUE; protected final Output out; private int[] flags; @@ -63,7 +63,7 @@ public JSONPacker(OutputStream stream) { } public JSONPacker(MessagePack msgpack, OutputStream stream) { - this(msgpack, new StreamOutput(stream)); + this(msgpack, new StreamOutput(stream)); } protected JSONPacker(MessagePack msgpack, Output out) { @@ -71,15 +71,15 @@ protected JSONPacker(MessagePack msgpack, Output out) { this.out = out; this.stack = new PackerStack(); this.flags = new int[PackerStack.MAX_STACK_SIZE]; - this.decoder = Charset.forName("UTF-8").newDecoder(). - onMalformedInput(CodingErrorAction.REPORT). - onUnmappableCharacter(CodingErrorAction.REPORT); + this.decoder = Charset.forName("UTF-8").newDecoder() + .onMalformedInput(CodingErrorAction.REPORT) + .onUnmappableCharacter(CodingErrorAction.REPORT); } @Override protected void writeBoolean(boolean v) throws IOException { beginElement(); - if(v) { + if (v) { out.write(TRUE, 0, TRUE.length); } else { out.write(FALSE, 0, FALSE.length); @@ -90,7 +90,7 @@ protected void writeBoolean(boolean v) throws IOException { @Override protected void writeByte(byte v) throws IOException { beginElement(); - byte[] b = Byte.toString(v).getBytes(); // TODO optimize + byte[] b = Byte.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -98,7 +98,7 @@ protected void writeByte(byte v) throws IOException { @Override protected void writeShort(short v) throws IOException { beginElement(); - byte[] b = Short.toString(v).getBytes(); // TODO optimize + byte[] b = Short.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -106,7 +106,7 @@ protected void writeShort(short v) throws IOException { @Override protected void writeInt(int v) throws IOException { beginElement(); - byte[] b = Integer.toString(v).getBytes(); // TODO optimize + byte[] b = Integer.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -114,7 +114,7 @@ protected void writeInt(int v) throws IOException { @Override protected void writeLong(long v) throws IOException { beginElement(); - byte[] b = Long.toString(v).getBytes(); // TODO optimize + byte[] b = Long.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -122,7 +122,7 @@ protected void writeLong(long v) throws IOException { @Override protected void writeBigInteger(BigInteger v) throws IOException { beginElement(); - byte[] b = v.toString().getBytes(); // TODO optimize + byte[] b = v.toString().getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -131,10 +131,11 @@ protected void writeBigInteger(BigInteger v) throws IOException { protected void writeFloat(float v) throws IOException { beginElement(); Float r = v; - if(r.isInfinite() || r.isNaN()) { - throw new IOException("JSONPacker doesn't support NaN and infinite float value"); + if (r.isInfinite() || r.isNaN()) { + throw new IOException( + "JSONPacker doesn't support NaN and infinite float value"); } - byte[] b = Float.toString(v).getBytes(); // TODO optimize + byte[] b = Float.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -143,10 +144,11 @@ protected void writeFloat(float v) throws IOException { protected void writeDouble(double v) throws IOException { beginElement(); Double r = v; - if(r.isInfinite() || r.isNaN()) { - throw new IOException("JSONPacker doesn't support NaN and infinite float value"); + if (r.isInfinite() || r.isNaN()) { + throw new IOException( + "JSONPacker doesn't support NaN and infinite float value"); } - byte[] b = Double.toString(v).getBytes(); // TODO optimize + byte[] b = Double.toString(v).getBytes(); // TODO optimize out.write(b, 0, b.length); endElement(); } @@ -203,16 +205,18 @@ public Packer writeArrayBegin(int size) throws IOException { @Override public Packer writeArrayEnd(boolean check) throws IOException { - if(!stack.topIsArray()) { - throw new MessageTypeException("writeArrayEnd() is called but writeArrayBegin() is not called"); + if (!stack.topIsArray()) { + throw new MessageTypeException( + "writeArrayEnd() is called but writeArrayBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeArrayEnd(check=true) is called but the array is not end: "+remain); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeArrayEnd(check=true) is called but the array is not end: " + remain); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } @@ -234,16 +238,18 @@ public Packer writeMapBegin(int size) throws IOException { @Override public Packer writeMapEnd(boolean check) throws IOException { - if(!stack.topIsMap()) { - throw new MessageTypeException("writeMapEnd() is called but writeMapBegin() is not called"); + if (!stack.topIsMap()) { + throw new MessageTypeException( + "writeMapEnd() is called but writeMapBegin() is not called"); } int remain = stack.getTopCount(); - if(remain > 0) { - if(check) { - throw new MessageTypeException("writeMapEnd(check=true) is called but the map is not end: "+remain); + if (remain > 0) { + if (check) { + throw new MessageTypeException( + "writeMapEnd(check=true) is called but the map is not end: " + remain); } - for(int i=0; i < remain; i++) { + for (int i = 0; i < remain; i++) { writeNil(); } } @@ -269,7 +275,7 @@ public void reset() { private void beginElement() throws IOException { int flag = flags[stack.getDepth()]; - if((flag & FLAG_MAP_KEY) != 0) { + if ((flag & FLAG_MAP_KEY) != 0) { throw new IOException("Key of a map must be a string in JSON"); } beginStringElement(); @@ -277,19 +283,19 @@ private void beginElement() throws IOException { private void beginStringElement() throws IOException { int flag = flags[stack.getDepth()]; - if((flag & FLAG_MAP_VALUE) != 0) { + if ((flag & FLAG_MAP_VALUE) != 0) { out.writeByte(COLON); - } else if(stack.getDepth() > 0 && (flag & FLAG_FIRST_ELEMENT) == 0) { + } else if (stack.getDepth() > 0 && (flag & FLAG_FIRST_ELEMENT) == 0) { out.writeByte(COMMA); } } private void endElement() throws IOException { int flag = flags[stack.getDepth()]; - if((flag & FLAG_MAP_KEY) != 0) { + if ((flag & FLAG_MAP_KEY) != 0) { flag &= ~FLAG_MAP_KEY; flag |= FLAG_MAP_VALUE; - } else if((flag & FLAG_MAP_VALUE) != 0) { + } else if ((flag & FLAG_MAP_VALUE) != 0) { flag &= ~FLAG_MAP_VALUE; flag |= FLAG_MAP_KEY; } @@ -335,7 +341,7 @@ private void escape(Output out, ByteBuffer bb) throws IOException { private static void escape(Output out, String s) throws IOException { byte[] tmp = new byte[] { (byte) '\\', (byte) 'u', 0, 0, 0, 0 }; char[] chars = s.toCharArray(); - for(int i=0; i < chars.length; i++) { + for (int i = 0; i < chars.length; i++) { int ch = chars[i]; if (ch <= 0x7f) { int e = ESCAPE_TABLE[ch]; @@ -378,4 +384,3 @@ private static void escape(Output out, String s) throws IOException { } } } - diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index cd0957232..3871c7db0 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -31,7 +31,6 @@ import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; - public class JSONUnpacker extends Converter { protected Reader in; private JSONParser parser; @@ -56,28 +55,28 @@ protected Value nextValue() throws IOException { Object obj = parser.parse(in); return objectToValue(obj); } catch (ParseException e) { - throw new IOException(e); // TODO error FormatException + throw new IOException(e); // TODO error FormatException } catch (IOException e) { - throw new IOException(e); // TODO error FormatException + throw new IOException(e); // TODO error FormatException } } @SuppressWarnings("rawtypes") private Value objectToValue(Object obj) { - if(obj instanceof String) { - return ValueFactory.createRawValue((String)obj); - } else if(obj instanceof Integer) { - return ValueFactory.createIntegerValue((Integer)obj); - } else if(obj instanceof Long) { - return ValueFactory.createIntegerValue((Long)obj); - } else if(obj instanceof Map) { - return mapToValue((Map)obj); - } else if(obj instanceof List) { - return listToValue((List)obj); - } else if(obj instanceof Boolean) { - return ValueFactory.createBooleanValue((Boolean)obj); - } else if(obj instanceof Double) { - return ValueFactory.createFloatValue((Double)obj); + if (obj instanceof String) { + return ValueFactory.createRawValue((String) obj); + } else if (obj instanceof Integer) { + return ValueFactory.createIntegerValue((Integer) obj); + } else if (obj instanceof Long) { + return ValueFactory.createIntegerValue((Long) obj); + } else if (obj instanceof Map) { + return mapToValue((Map) obj); + } else if (obj instanceof List) { + return listToValue((List) obj); + } else if (obj instanceof Boolean) { + return ValueFactory.createBooleanValue((Boolean) obj); + } else if (obj instanceof Double) { + return ValueFactory.createFloatValue((Double) obj); } else { return ValueFactory.createNilValue(); } @@ -86,7 +85,7 @@ private Value objectToValue(Object obj) { @SuppressWarnings("rawtypes") private Value listToValue(List list) { Value[] array = new Value[list.size()]; - for(int i=0; i < array.length; i++) { + for (int i = 0; i < array.length; i++) { array[i] = objectToValue(list.get(i)); } return ValueFactory.createArrayValue(array, true); @@ -94,12 +93,12 @@ private Value listToValue(List list) { @SuppressWarnings({ "unchecked", "rawtypes" }) private Value mapToValue(Map map) { - Value[] kvs = new Value[map.size()*2]; + Value[] kvs = new Value[map.size() * 2]; Iterator it = map.entrySet().iterator(); - for(int i=0; i < kvs.length; i+=2) { + for (int i = 0; i < kvs.length; i += 2) { Map.Entry pair = it.next(); kvs[i] = objectToValue(pair.getKey()); - kvs[i+1] = objectToValue(pair.getValue()); + kvs[i + 1] = objectToValue(pair.getValue()); } return ValueFactory.createMapValue(kvs, true); } @@ -119,4 +118,3 @@ public void close() throws IOException { super.close(); } } - From aa884c411e3ffa5314066a08f5d5f1f446fae535 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 17 Nov 2011 08:03:58 +0900 Subject: [PATCH 273/409] optimized LinkedBufferInput to recycle allocated buffer positively --- .../org/msgpack/io/LinkedBufferInput.java | 13 +- .../org/msgpack/io/TestLinkedBufferInput.java | 208 ++++++++++++++++++ 2 files changed, 214 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 6d4336511..b9371caaa 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -23,9 +23,9 @@ import java.nio.ByteBuffer; public class LinkedBufferInput extends AbstractInput { - private LinkedList link; + LinkedList link; - private int writable; + int writable; private int nextAdvance; @@ -143,7 +143,6 @@ private boolean removeFirstLink(ByteBuffer first) { } } else { link.removeFirst(); - writable = -1; return true; } } @@ -226,8 +225,8 @@ public void feed(byte[] b, int off, int len) { public void feed(byte[] b, int off, int len, boolean nocopy) { if (nocopy) { - if (writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { - link.addFirst(ByteBuffer.wrap(b, off, len)); + if (writable > 0 && link.peekLast().remaining() == 0) { + link.add(link.size()-1, ByteBuffer.wrap(b, off, len)); return; } link.addLast(ByteBuffer.wrap(b, off, len)); @@ -272,8 +271,8 @@ public void feed(ByteBuffer b) { public void feed(ByteBuffer buf, boolean nocopy) { if (nocopy) { - if (writable > 0 && link.size() == 1 && link.peekFirst().remaining() == 0) { - link.addFirst(buf); + if (writable > 0 && link.peekLast().remaining() == 0) { + link.add(link.size()-1, buf); return; } link.addLast(buf); diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java index c22df636c..98910e77b 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java @@ -1,6 +1,7 @@ package org.msgpack.io; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; import static org.junit.Assert.fail; import java.nio.ByteBuffer; @@ -438,6 +439,213 @@ public void testClear() throws IOException { } } + @Test + public void testBufferRecycleByteArray() throws IOException { + byte[] data = new byte[16]; + data[0] = (byte)4; + data[3] = (byte)5; + data[6] = (byte)6; + data[10] = (byte)7; + + LinkedBufferInput b = new LinkedBufferInput(32); + int n; + byte[] buf = new byte[16]; + + b.feed(data); // feed 1; buffer allocated; remains 32-16 = 16 bytes + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + ByteBuffer allocated = b.link.peekLast(); + + b.feed(data); // feed 2; remains 16-16 = 0 bytes + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume 16 bytes 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); // no writable + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume 16 bytes 2; comsume all buffer; recycled + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEndOfBuffer(b); + assertEquals(1, b.link.size()); + assertEquals(32, b.writable); // recycled + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(data); // feed 1; remains 32-16 = 16 bytes + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + b.clear(); // clear; recycled + assertEndOfBuffer(b); + assertEquals(1, b.link.size()); + assertEquals(32, b.writable); // recycled + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(data, true); // feed nocopy 1; + assertEquals(2, b.link.size()); // leaves last writable buffer + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(data, true); // feed nocopy 2; + assertEquals(3, b.link.size()); // leaves last writable buffer + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume first link 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(2, b.link.size()); // first link is removed + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume first link 2 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); // first link is removed + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(data); // feed 1; remains 32-16 = 16 bytes; + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(data, true); // feed nocopy 2; writable buffer is hidden + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(2, b.link.size()); + assertEquals(-1, b.writable); // now not writable + assertEquals(true, allocated != b.link.peekLast()); + assertEquals(true, allocated == b.link.peekFirst()); + + n = b.read(buf, 0, 16); // consume data 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); // recycled buffer is removed + assertEquals(-1, b.writable); + assertEquals(true, allocated != b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume data 2 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEndOfBuffer(b); + assertEquals(0, b.link.size()); + assertEquals(-1, b.writable); + } + + // copied from testBufferRecycleByteArray + @Test + public void testBufferRecycleByteBuffer() throws IOException { + byte[] data = new byte[16]; + data[0] = (byte)4; + data[3] = (byte)5; + data[6] = (byte)6; + data[10] = (byte)7; + + ByteBuffer bb = ByteBuffer.wrap(data); + + LinkedBufferInput b = new LinkedBufferInput(32); + int n; + byte[] buf = new byte[16]; + + b.feed(bb.duplicate()); // feed 1; buffer allocated; remains 32-16 = 16 bytes + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + ByteBuffer allocated = b.link.peekLast(); + + b.feed(bb.duplicate()); // feed 2; remains 16-16 = 0 bytes + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume 16 bytes 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); // no writable + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume 16 bytes 2; comsume all buffer; recycled + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEndOfBuffer(b); + assertEquals(1, b.link.size()); + assertEquals(32, b.writable); // recycled + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(bb.duplicate()); // feed 1; remains 32-16 = 16 bytes + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + b.clear(); // clear; recycled + assertEndOfBuffer(b); + assertEquals(1, b.link.size()); + assertEquals(32, b.writable); // recycled + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(bb.duplicate(), true); // feed nocopy 1; + assertEquals(2, b.link.size()); // leaves last writable buffer + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(bb.duplicate(), true); // feed nocopy 2; + assertEquals(3, b.link.size()); // leaves last writable buffer + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume first link 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(2, b.link.size()); // first link is removed + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume first link 2 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); // first link is removed + assertEquals(32, b.writable); // which remains 32 bytes + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(bb.duplicate()); // feed 1; remains 32-16 = 16 bytes; + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + assertEquals(true, allocated == b.link.peekLast()); + + b.feed(bb.duplicate(), true); // feed nocopy 2; writable buffer is hidden + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(2, b.link.size()); + assertEquals(-1, b.writable); // now not writable + assertEquals(true, allocated != b.link.peekLast()); + assertEquals(true, allocated == b.link.peekFirst()); + + n = b.read(buf, 0, 16); // consume data 1 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEquals(1, b.link.size()); // recycled buffer is removed + assertEquals(-1, b.writable); + assertEquals(true, allocated != b.link.peekLast()); + + n = b.read(buf, 0, 16); // consume data 2 + assertEquals(n, 16); + assertArrayEquals(data, buf); + assertEndOfBuffer(b); + assertEquals(0, b.link.size()); + assertEquals(-1, b.writable); + } + private void assertEndOfBuffer(LinkedBufferInput b) throws IOException { try { b.readByte(); From 5c92d1dfb6892bab6dcf056dbd28f3d791007b50 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 17 Nov 2011 08:33:05 +0900 Subject: [PATCH 274/409] added LinkedBufferInput#copyReferencedBuffer --- .../org/msgpack/io/LinkedBufferInput.java | 43 ++++++++- .../org/msgpack/io/TestLinkedBufferInput.java | 95 +++++++++++++++++++ 2 files changed, 137 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index b9371caaa..df6fc40ba 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -20,6 +20,7 @@ import java.io.IOException; import java.io.EOFException; import java.util.LinkedList; +import java.util.Iterator; import java.nio.ByteBuffer; public class LinkedBufferInput extends AbstractInput { @@ -315,7 +316,7 @@ public void feed(ByteBuffer buf, boolean nocopy) { } public void clear() { - if (writable > 0) { + if (writable >= 0) { ByteBuffer bb = link.getLast(); link.clear(); bb.position(0); @@ -328,6 +329,46 @@ public void clear() { } } + public void copyReferencedBuffer() { + if (link.isEmpty()) { + return; + } + + int size = 0; + for(ByteBuffer bb : link) { + size += bb.remaining(); + } + if (size == 0) { + return; + } + + if (writable >= 0) { + ByteBuffer last = link.removeLast(); + byte[] copy = new byte[size - last.remaining()]; + int off = 0; + for(ByteBuffer bb : link) { + int len = bb.remaining(); + bb.get(copy, off, len); + off += len; + } + link.clear(); + link.add(ByteBuffer.wrap(copy)); + link.add(last); + + } else { + byte[] copy = new byte[size]; + int off = 0; + for(ByteBuffer bb : link) { + int len = bb.remaining(); + bb.get(copy, off, len); + off += len; + } + link.clear(); + link.add(ByteBuffer.wrap(copy)); + writable = 0; + } + } + public void close() { } } diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java index 98910e77b..1a8e58524 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java @@ -439,6 +439,101 @@ public void testClear() throws IOException { } } + @Test + public void testClearRecycle() throws IOException { + byte[] data = new byte[8]; + data[0] = (byte)1; + data[2] = (byte)1; + data[4] = (byte)1; + + LinkedBufferInput b = new LinkedBufferInput(16); + + b.feed(data); + assertEquals(1, b.link.size()); + assertEquals(8, b.writable); + b.clear(); + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + + b.feed(data); + b.feed(data); + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); + b.clear(); + assertEquals(1, b.link.size()); + assertEquals(16, b.writable); + } + + @Test + public void testCopyReferencedBuffer() throws IOException { + byte[] data = new byte[16]; + data[0] = (byte)4; + data[3] = (byte)5; + data[6] = (byte)6; + data[10] = (byte)7; + + LinkedBufferInput b = new LinkedBufferInput(32); + int n; + byte[] buf = new byte[16]; + + b.feed(data, true); + b.feed(data, true); + b.feed(data, true); + assertEquals(3, b.link.size()); + assertEquals(-1, b.writable); + + b.copyReferencedBuffer(); + assertEquals(1, b.link.size()); + assertEquals(0, b.writable); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + } + + @Test + public void testCopyReferencedBufferOptimized() throws IOException { + byte[] data = new byte[16]; + data[0] = (byte)4; + data[3] = (byte)5; + data[6] = (byte)6; + data[10] = (byte)7; + + LinkedBufferInput b = new LinkedBufferInput(32); + int n; + byte[] buf = new byte[16]; + + b.feed(data, true); + b.feed(data, true); + b.feed(data); // buffer allocated + assertEquals(3, b.link.size()); + assertEquals(16, b.writable); + + b.copyReferencedBuffer(); + assertEquals(2, b.link.size()); + assertEquals(16, b.writable); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + + n = b.read(buf, 0, 16); + assertEquals(n, 16); + assertArrayEquals(data, buf); + } + @Test public void testBufferRecycleByteArray() throws IOException { byte[] data = new byte[16]; From 6e9d65427bb23db05d5f78e986dbad24e35e4a3b Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 17 Nov 2011 08:38:41 +0900 Subject: [PATCH 275/409] added BufferUnpacker.copyReferencedBuffer --- .../org/msgpack/io/LinkedBufferInput.java | 12 +++++------ .../org/msgpack/unpacker/BufferUnpacker.java | 8 +++++--- .../unpacker/MessagePackBufferUnpacker.java | 17 ++++++++++------ .../msgpack/util/json/JSONBufferUnpacker.java | 12 ++++++++--- .../org/msgpack/io/TestLinkedBufferInput.java | 20 +++++++++---------- 5 files changed, 41 insertions(+), 28 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index df6fc40ba..9d85140ae 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -216,16 +216,16 @@ public void feed(byte[] b) { feed(b, 0, b.length, false); } - public void feed(byte[] b, boolean nocopy) { - feed(b, 0, b.length, nocopy); + public void feed(byte[] b, boolean reference) { + feed(b, 0, b.length, reference); } public void feed(byte[] b, int off, int len) { feed(b, off, len, false); } - public void feed(byte[] b, int off, int len, boolean nocopy) { - if (nocopy) { + public void feed(byte[] b, int off, int len, boolean reference) { + if (reference) { if (writable > 0 && link.peekLast().remaining() == 0) { link.add(link.size()-1, ByteBuffer.wrap(b, off, len)); return; @@ -270,8 +270,8 @@ public void feed(ByteBuffer b) { feed(b, false); } - public void feed(ByteBuffer buf, boolean nocopy) { - if (nocopy) { + public void feed(ByteBuffer buf, boolean reference) { + if (reference) { if (writable > 0 && link.peekLast().remaining() == 0) { link.add(link.size()-1, buf); return; diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index fe41b1b73..a7114cb44 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -34,15 +34,17 @@ public interface BufferUnpacker extends Unpacker { public BufferUnpacker feed(byte[] b); - public BufferUnpacker feed(byte[] b, boolean nocopy); + public BufferUnpacker feed(byte[] b, boolean reference); public BufferUnpacker feed(byte[] b, int off, int len); - public BufferUnpacker feed(byte[] b, int off, int len, boolean nocopy); + public BufferUnpacker feed(byte[] b, int off, int len, boolean reference); public BufferUnpacker feed(ByteBuffer b); - public BufferUnpacker feed(ByteBuffer buf, boolean nocopy); + public BufferUnpacker feed(ByteBuffer buf, boolean reference); + + public void copyReferencedBuffer(); public void clear(); } diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 3b465c4dd..a34ae8600 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -60,8 +60,8 @@ public MessagePackBufferUnpacker feed(byte[] b) { } @Override - public MessagePackBufferUnpacker feed(byte[] b, boolean nocopy) { - ((LinkedBufferInput) in).feed(b, nocopy); + public MessagePackBufferUnpacker feed(byte[] b, boolean reference) { + ((LinkedBufferInput) in).feed(b, reference); return this; } @@ -72,8 +72,8 @@ public MessagePackBufferUnpacker feed(byte[] b, int off, int len) { } @Override - public MessagePackBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { - ((LinkedBufferInput) in).feed(b, off, len, nocopy); + public MessagePackBufferUnpacker feed(byte[] b, int off, int len, boolean reference) { + ((LinkedBufferInput) in).feed(b, off, len, reference); return this; } @@ -84,11 +84,16 @@ public MessagePackBufferUnpacker feed(ByteBuffer b) { } @Override - public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { - ((LinkedBufferInput) in).feed(buf, nocopy); + public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean reference) { + ((LinkedBufferInput) in).feed(buf, reference); return this; } + @Override + public void copyReferencedBuffer() { + ((LinkedBufferInput) in).copyReferencedBuffer(); + } + @Override public void clear() { ((LinkedBufferInput) in).clear(); diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 5d2500ad3..c531be694 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -68,7 +68,7 @@ public JSONBufferUnpacker feed(byte[] b) { } @Override - public JSONBufferUnpacker feed(byte[] b, boolean nocopy) { + public JSONBufferUnpacker feed(byte[] b, boolean reference) { throw new UnsupportedOperationException( "JSONBufferUnpacker doesn't support feed()"); } @@ -80,7 +80,7 @@ public JSONBufferUnpacker feed(byte[] b, int off, int len) { } @Override - public JSONBufferUnpacker feed(byte[] b, int off, int len, boolean nocopy) { + public JSONBufferUnpacker feed(byte[] b, int off, int len, boolean reference) { throw new UnsupportedOperationException( "JSONBufferUnpacker doesn't support feed()"); } @@ -92,11 +92,17 @@ public JSONBufferUnpacker feed(ByteBuffer buf) { } @Override - public JSONBufferUnpacker feed(ByteBuffer buf, boolean nocopy) { + public JSONBufferUnpacker feed(ByteBuffer buf, boolean reference) { throw new UnsupportedOperationException( "JSONBufferUnpacker doesn't support feed()"); } + @Override + public void copyReferencedBuffer() { + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support copyReferencedBuffer()"); + } + @Override public void clear() { reset(); diff --git a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java index 1a8e58524..bccd45f36 100644 --- a/src/test/java/org/msgpack/io/TestLinkedBufferInput.java +++ b/src/test/java/org/msgpack/io/TestLinkedBufferInput.java @@ -73,7 +73,7 @@ public void testFeedByteArrayCopy() throws IOException { } @Test - public void testFeedByteArrayNoCopy() throws IOException { + public void testFeedByteArrayReference() throws IOException { byte[] small = new byte[8]; small[0] = (byte)1; small[2] = (byte)1; @@ -112,7 +112,7 @@ public void testFeedByteArrayNoCopy() throws IOException { } @Test - public void testFeedByteArrayCopyNoCopy() throws IOException { + public void testFeedByteArrayCopyReference() throws IOException { byte[] small = new byte[8]; small[0] = (byte)1; small[2] = (byte)1; @@ -325,7 +325,7 @@ public void testFeedByteBufferCopy() throws IOException { } @Test - public void testFeedByteBufferNoCopy() throws IOException { + public void testFeedByteBufferReference() throws IOException { byte[] small = new byte[8]; small[0] = (byte)1; small[2] = (byte)1; @@ -364,7 +364,7 @@ public void testFeedByteBufferNoCopy() throws IOException { } @Test - public void testFeedByteBufferCopyNoCopy() throws IOException { + public void testFeedByteBufferCopyReference() throws IOException { byte[] small = new byte[8]; small[0] = (byte)1; small[2] = (byte)1; @@ -582,12 +582,12 @@ public void testBufferRecycleByteArray() throws IOException { assertEquals(32, b.writable); // recycled assertEquals(true, allocated == b.link.peekLast()); - b.feed(data, true); // feed nocopy 1; + b.feed(data, true); // feed reference 1; assertEquals(2, b.link.size()); // leaves last writable buffer assertEquals(32, b.writable); // which remains 32 bytes assertEquals(true, allocated == b.link.peekLast()); - b.feed(data, true); // feed nocopy 2; + b.feed(data, true); // feed reference 2; assertEquals(3, b.link.size()); // leaves last writable buffer assertEquals(32, b.writable); // which remains 32 bytes assertEquals(true, allocated == b.link.peekLast()); @@ -613,7 +613,7 @@ public void testBufferRecycleByteArray() throws IOException { assertEquals(16, b.writable); assertEquals(true, allocated == b.link.peekLast()); - b.feed(data, true); // feed nocopy 2; writable buffer is hidden + b.feed(data, true); // feed reference 2; writable buffer is hidden assertEquals(n, 16); assertArrayEquals(data, buf); assertEquals(2, b.link.size()); @@ -687,12 +687,12 @@ public void testBufferRecycleByteBuffer() throws IOException { assertEquals(32, b.writable); // recycled assertEquals(true, allocated == b.link.peekLast()); - b.feed(bb.duplicate(), true); // feed nocopy 1; + b.feed(bb.duplicate(), true); // feed reference 1; assertEquals(2, b.link.size()); // leaves last writable buffer assertEquals(32, b.writable); // which remains 32 bytes assertEquals(true, allocated == b.link.peekLast()); - b.feed(bb.duplicate(), true); // feed nocopy 2; + b.feed(bb.duplicate(), true); // feed reference 2; assertEquals(3, b.link.size()); // leaves last writable buffer assertEquals(32, b.writable); // which remains 32 bytes assertEquals(true, allocated == b.link.peekLast()); @@ -718,7 +718,7 @@ public void testBufferRecycleByteBuffer() throws IOException { assertEquals(16, b.writable); assertEquals(true, allocated == b.link.peekLast()); - b.feed(bb.duplicate(), true); // feed nocopy 2; writable buffer is hidden + b.feed(bb.duplicate(), true); // feed reference 2; writable buffer is hidden assertEquals(n, 16); assertArrayEquals(data, buf); assertEquals(2, b.link.size()); From 2eaa5b654f77919b99f4e4cbf2a83ed6e103feec Mon Sep 17 00:00:00 2001 From: Watabiki Naoya Date: Fri, 25 Nov 2011 17:53:06 +0900 Subject: [PATCH 276/409] Update TemplateRegistry for array serialize --- .../java/org/msgpack/template/TemplateRegistry.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 8785f0382..e314dff6f 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -50,6 +50,7 @@ import org.msgpack.template.StringTemplate; import org.msgpack.template.Template; import org.msgpack.template.ValueTemplate; +import org.msgpack.template.builder.ArrayTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; @@ -78,7 +79,7 @@ private TemplateRegistry() { } /** - * + * * @param registry */ public TemplateRegistry(TemplateRegistry registry) { @@ -300,8 +301,12 @@ private Template lookupAfterBuilding(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); Template tmpl = null; if (builder != null) { - // TODO #MN for Android, we should modify here - tmpl = chain.getForceBuilder().loadTemplate(targetClass); + if (builder instanceof ArrayTemplateBuilder) { + tmpl = builder.loadTemplate(targetClass); + } else { + // TODO #MN for Android, we should modify here + tmpl = chain.getForceBuilder().loadTemplate(targetClass); + } if (tmpl != null) { register(targetClass, tmpl); return tmpl; From 85b455f38ad26a55c7faeec5fb336be00446971d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 27 Nov 2011 05:38:47 +0900 Subject: [PATCH 277/409] fixed bug: validation error occurs when loading templates of array classes with JavassistTemplateBuilder --- src/main/java/org/msgpack/template/TemplateRegistry.java | 8 ++------ .../template/builder/JavassistTemplateBuilder.java | 9 +++++++-- src/test/java/org/msgpack/TestSimpleArrays.java | 8 +++----- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index e314dff6f..3045ba314 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -301,12 +301,8 @@ private Template lookupAfterBuilding(Class targetClass) { TemplateBuilder builder = chain.select(targetClass, true); Template tmpl = null; if (builder != null) { - if (builder instanceof ArrayTemplateBuilder) { - tmpl = builder.loadTemplate(targetClass); - } else { - // TODO #MN for Android, we should modify here - tmpl = chain.getForceBuilder().loadTemplate(targetClass); - } + // TODO #MN for Android, we should modify here + tmpl = chain.getForceBuilder().loadTemplate(targetClass); if (tmpl != null) { register(targetClass, tmpl); return tmpl; diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 4c0855bd7..f3f36bbf3 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -150,11 +150,16 @@ public Template loadTemplate(Type targetType) { // FIXME #MN must consider how to load "reference cycle class" in next // version Class targetClass = (Class) targetType; - checkClassValidation(targetClass); + //checkClassValidation(targetClass); try { // check loadable String tmplName = targetClass.getName() + "_$$_Template"; - targetClass.getClassLoader().loadClass(tmplName); + ClassLoader cl = targetClass.getClassLoader(); + if (cl != null) { + cl.loadClass(tmplName); + } else { + return null; + } } catch (ClassNotFoundException e) { return null; } diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java index 447576655..684abfa5c 100644 --- a/src/test/java/org/msgpack/TestSimpleArrays.java +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -17,8 +17,6 @@ import org.msgpack.unpacker.BufferUnpacker; import org.msgpack.unpacker.Converter; - -@Ignore public class TestSimpleArrays { @Message @@ -204,7 +202,7 @@ public GenericsTest() { } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Test + @Ignore @Test public void testGenerics() throws Exception { MessagePack msgpack = new MessagePack(); @@ -272,7 +270,7 @@ public Dim2Test() { } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Test + @Ignore @Test public void testDim2() throws Exception { MessagePack msgpack = new MessagePack(); Dim2Test t = new Dim2Test(); @@ -337,7 +335,7 @@ public Dim3Test() { } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Test + @Ignore @Test public void testDim3() throws Exception { MessagePack msgpack = new MessagePack(); From ddd1cb154cf611b40c47472a500121266b9759cd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 27 Nov 2011 05:48:14 +0900 Subject: [PATCH 278/409] changed CHANGES.txt --- CHANGES.txt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index f7fa2eefb..2ad99bca0 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,9 @@ -Release 0.6.3 - +Release 0.6.4 - + BUG FIXES + Fixes bug:validation error occurs when loading templates of array classes with + Javassist-based template builder. + +Release 0.6.3 - 2011/11/08 NEW FEATURES Adds getReadByteCount and resetReadByteCount methods to Unpacker interface. Adds setRawSizeLimit, setArraySizeLimit and setMapSizeLimit methods to From 0169c776822a5b4cd32d6beaa72f45e9ca7a6e58 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Tue, 29 Nov 2011 12:49:09 -0800 Subject: [PATCH 279/409] added src/test/java/org/msgpack/simple --- .../simple/TestSimpleDynamicTyping.java | 69 ++++++++++++++++++ .../{ => simple}/TestSimplePackUnpack.java | 16 ++++- .../msgpack/simple/TestSimpleStreaming.java | 70 +++++++++++++++++++ 3 files changed, 152 insertions(+), 3 deletions(-) create mode 100644 src/test/java/org/msgpack/simple/TestSimpleDynamicTyping.java rename src/test/java/org/msgpack/{ => simple}/TestSimplePackUnpack.java (60%) create mode 100644 src/test/java/org/msgpack/simple/TestSimpleStreaming.java diff --git a/src/test/java/org/msgpack/simple/TestSimpleDynamicTyping.java b/src/test/java/org/msgpack/simple/TestSimpleDynamicTyping.java new file mode 100644 index 000000000..4d8cfe560 --- /dev/null +++ b/src/test/java/org/msgpack/simple/TestSimpleDynamicTyping.java @@ -0,0 +1,69 @@ +package org.msgpack.simple; + +import org.msgpack.MessagePack; +import org.msgpack.type.Value; +import org.msgpack.type.IntegerValue; +import org.msgpack.type.RawValue; +import org.msgpack.type.ArrayValue; + +import java.io.IOException; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import org.junit.Test; + + +public class TestSimpleDynamicTyping { + @Test + @SuppressWarnings("unused") + public void testTypes() throws IOException { + MessagePack msgpack = new MessagePack(); + + byte[] raw = msgpack.write(new int[] {1,2,3}); + Value v = msgpack.read(raw); + + if(v.isArrayValue()) { + // ArrayValue extends List + ArrayValue array = v.asArrayValue(); + int n0 = array.get(0).asIntegerValue().intValue(); + assertEquals(1, n0); + int n1 = array.get(1).asIntegerValue().intValue(); + assertEquals(2, n1); + int n2 = array.get(2).asIntegerValue().intValue(); + assertEquals(3, n2); + + } else if(v.isIntegerValue()) { + // IntegerValue extends Number + int num = v.asIntegerValue().intValue(); + + } else if(v.isRawValue()) { + // getString() or getByteArray() + String str = v.asRawValue().getString(); + } + // other types: + // NilValue asNilValue() / isNilValue() + // BooleanValue asBooleanValue() / isBooleanValue() + // IntegerValue asIntegerValue() / isIntegerValue() + // FloatValue asFloatValue() / isFloatValue() + // ArrayValue asArrayValue() / isArrayValue() + // MapValue asMapValue() / isMapValue() + // RawValue asRawValue() / isRawValue + } + + @Test + public void testSimpleConvert() throws IOException { + MessagePack msgpack = new MessagePack(); + + byte[] raw = msgpack.write(new int[] {1,2,3}); + Value v = msgpack.read(raw); + + // convert from dynamic type (Value) to static type (int[]) + int[] array = msgpack.convert(v, new int[3]); + assertArrayEquals(new int[] {1,2,3}, array); + + // unconvert from static type (int[]) to dynamic type (Value) + Value v2 = msgpack.unconvert(array); + assertEquals(v, v2); + } +} + diff --git a/src/test/java/org/msgpack/TestSimplePackUnpack.java b/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java similarity index 60% rename from src/test/java/org/msgpack/TestSimplePackUnpack.java rename to src/test/java/org/msgpack/simple/TestSimplePackUnpack.java index 6e8c20c20..3dffd4d01 100644 --- a/src/test/java/org/msgpack/TestSimplePackUnpack.java +++ b/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java @@ -3,23 +3,33 @@ import java.nio.ByteBuffer; import java.io.IOException; -import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.type.Value; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import org.junit.Test; + public class TestSimplePackUnpack { @SuppressWarnings("unused") @Test public void testSimplePackUnpack() throws IOException { MessagePack msgpack = new MessagePack(); + + // serialize byte[] raw = msgpack.write(new int[] {1,2,3}); - Value v = msgpack.read(raw); + // deserialize to static type int[] a = msgpack.read(raw, new int[3]); + assertArrayEquals(new int[] {1,2,3}, a); + + // deserialize to dynamic type (see TestSimpleDynamicTyping.java) + Value v = msgpack.read(raw); - Value vb = msgpack.read(ByteBuffer.wrap(raw)); + // ByteBuffer is also supported int[] ab = msgpack.read(ByteBuffer.wrap(raw), new int[3]); + assertArrayEquals(new int[] {1,2,3}, ab); } } diff --git a/src/test/java/org/msgpack/simple/TestSimpleStreaming.java b/src/test/java/org/msgpack/simple/TestSimpleStreaming.java new file mode 100644 index 000000000..b97c6910b --- /dev/null +++ b/src/test/java/org/msgpack/simple/TestSimpleStreaming.java @@ -0,0 +1,70 @@ +package org.msgpack; + +import org.msgpack.MessagePack; +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.BufferUnpacker; + +import java.io.ByteArrayOutputStream; +import java.io.ByteArrayInputStream; +import java.io.IOException; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertArrayEquals; +import org.junit.Test; + + +public class TestSimpleStreaming { + @SuppressWarnings("unused") + @Test + public void testSimpleStreamingSerialize() throws IOException { + MessagePack msgpack = new MessagePack(); + + // streaming serialize + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + + packer.write(new String[] {"a", "b", "c"}); + packer.write(new int[] {1, 2, 3}); + packer.write(9.1); + + // streaming deserialize + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + Unpacker unpacker = msgpack.createUnpacker(in); + + String[] msg1 = unpacker.read(new String[3]); + int[] msg2 = unpacker.read(new int[3]); + double msg3 = unpacker.read(double.class); + + assertArrayEquals(new String[] {"a", "b", "c"}, msg1); + assertArrayEquals(new int[] {1, 2, 3}, msg2); + assertEquals(9.1, msg3, 0.001); + } + + @SuppressWarnings("unused") + @Test + public void testBufferPackUnpacker() throws IOException { + MessagePack msgpack = new MessagePack(); + + // streaming serialize into efficient buffer + BufferPacker packer = msgpack.createBufferPacker(); + + packer.write(new String[] {"a", "b", "c"}); + packer.write(new int[] {1, 2, 3}); + packer.write(9.1); + + // streaming deserialize from the buffer + // BufferUnpacker reduces copies + BufferUnpacker unpacker = msgpack.createBufferUnpacker(packer.toByteArray()); + + String[] msg1 = unpacker.read(new String[3]); + int[] msg2 = unpacker.read(new int[3]); + double msg3 = unpacker.read(double.class); + + assertArrayEquals(new String[] {"a", "b", "c"}, msg1); + assertArrayEquals(new int[] {1, 2, 3}, msg2); + assertEquals(9.1, msg3, 0.01); + } +} + From 3782bacb9c261578de54d092073f575313a2db8e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 30 Nov 2011 07:50:07 +0900 Subject: [PATCH 280/409] modified CHANGES.txt --- CHANGES.txt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 2ad99bca0..fc283206d 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -38,7 +38,18 @@ Release 0.6.1 - 2011/10/07 Deleted unused methods in Packer and Unpacker classes. Release 0.6.0 - 2011/10/03 - See "Quick Start" (http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Java). + NEW FEATURES + Adds some new APIs (Packer, Unpacker, Value, and so on). See + "Quick Start" (http://wiki.msgpack.org/display/MSGPACK/QuickStart+for+Java). + Adds JSON data serialization. See org.msgpack.util.json package. It allows + serializing JSON data to MessagePack binary. + MessagePack jar file was deployed to Maven's central repository. + License of Javassist was changed into triple license of the MPL, the LGPL, + and the Apache License. MessagePack uses Javassist under Apache License. + + IMPROVEMENTS + Refactors and optimizes core library for serialization/deserialization. + Refactors template classes and those builder classes. Release 0.5.2 - 2011/04/23 NEW FEATURES From 7b58f0420c77cb78032a132decfd969d3528e27e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 30 Nov 2011 16:22:49 +0900 Subject: [PATCH 281/409] added getBufferSize method in BufferPacker.java --- src/main/java/org/msgpack/packer/BufferPacker.java | 2 ++ .../java/org/msgpack/packer/MessagePackBufferPacker.java | 9 +++++---- .../java/org/msgpack/util/json/JSONBufferPacker.java | 9 +++++---- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index bcdf00921..98d388ab2 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -24,6 +24,8 @@ * @see {@link org.msgpack.packer.Packer} */ public interface BufferPacker extends Packer { + public int getBufferSize(); + public byte[] toByteArray(); public void clear(); diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 6ebf990b4..45e0b4fac 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -21,8 +21,7 @@ import org.msgpack.io.LinkedBufferOutput; public class MessagePackBufferPacker extends MessagePackPacker implements BufferPacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer - // size + private static final int DEFAULT_BUFFER_SIZE = 512; public MessagePackBufferPacker(MessagePack msgpack) { this(msgpack, DEFAULT_BUFFER_SIZE); @@ -32,12 +31,14 @@ public MessagePackBufferPacker(MessagePack msgpack, int bufferSize) { super(msgpack, new LinkedBufferOutput(bufferSize)); } - @Override + public int getBufferSize() { + return ((LinkedBufferOutput) out).getSize(); + } + public byte[] toByteArray() { return ((LinkedBufferOutput) out).toByteArray(); } - @Override public void clear() { reset(); ((LinkedBufferOutput) out).clear(); diff --git a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java index d4f051aec..f9e3f5c5e 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -22,8 +22,7 @@ import org.msgpack.packer.BufferPacker; public class JSONBufferPacker extends JSONPacker implements BufferPacker { - private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer - // size + private static final int DEFAULT_BUFFER_SIZE = 512; // TODO default buffer size public JSONBufferPacker() { this(DEFAULT_BUFFER_SIZE); @@ -41,12 +40,14 @@ public JSONBufferPacker(MessagePack msgpack, int bufferSize) { super(msgpack, new LinkedBufferOutput(bufferSize)); } - @Override + public int getBufferSize() { + return ((LinkedBufferOutput) out).getSize(); + } + public byte[] toByteArray() { return ((LinkedBufferOutput) out).toByteArray(); } - @Override public void clear() { reset(); ((LinkedBufferOutput) out).clear(); From bffc6b1d19ebbd582f54d2d23a9d3bc97c1962c2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 30 Nov 2011 16:24:27 +0900 Subject: [PATCH 282/409] modified CHANGES.txt --- CHANGES.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index fc283206d..12778e1ce 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,7 @@ Release 0.6.4 - + NEW FEATURES + Adds getBufferSize in BufferUnpacker interface. + BUG FIXES Fixes bug:validation error occurs when loading templates of array classes with Javassist-based template builder. From 548ddafdad36a1db304a0e21915ca3912cb0843c Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 15 Dec 2011 09:52:48 -0800 Subject: [PATCH 283/409] added BufferUnpacker#getBufferSize() --- src/main/java/org/msgpack/io/LinkedBufferInput.java | 8 ++++++++ src/main/java/org/msgpack/unpacker/BufferUnpacker.java | 2 ++ .../org/msgpack/unpacker/MessagePackBufferUnpacker.java | 5 +++++ .../java/org/msgpack/util/json/JSONBufferUnpacker.java | 6 ++++++ 4 files changed, 21 insertions(+) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 9d85140ae..7c03183d8 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -369,6 +369,14 @@ public void copyReferencedBuffer() { } } + public int getSize() { + int size = 0; + for(ByteBuffer bb : link) { + size += bb.remaining(); + } + return size; + } + public void close() { } } diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index a7114cb44..91466fe85 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -44,6 +44,8 @@ public interface BufferUnpacker extends Unpacker { public BufferUnpacker feed(ByteBuffer buf, boolean reference); + public int getBufferSize(); + public void copyReferencedBuffer(); public void clear(); diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index a34ae8600..573c84051 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -89,6 +89,11 @@ public MessagePackBufferUnpacker feed(ByteBuffer buf, boolean reference) { return this; } + @Override + public int getBufferSize() { + return ((LinkedBufferInput) in).getSize(); + } + @Override public void copyReferencedBuffer() { ((LinkedBufferInput) in).copyReferencedBuffer(); diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index c531be694..52f65b36b 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -97,6 +97,12 @@ public JSONBufferUnpacker feed(ByteBuffer buf, boolean reference) { "JSONBufferUnpacker doesn't support feed()"); } + @Override + public int getBufferSize() { + throw new UnsupportedOperationException( + "JSONBufferUnpacker doesn't support getBufferSize()"); + } + @Override public void copyReferencedBuffer() { throw new UnsupportedOperationException( From a6451a1813829036f221cb9f600a73403d9cdeab Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 15 Dec 2011 10:12:25 -0800 Subject: [PATCH 284/409] fixed LinkedBufferInput: consume ByteBuffer --- src/main/java/org/msgpack/io/LinkedBufferInput.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index 7c03183d8..a8a3cc247 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -123,6 +123,7 @@ public void advance() { break; } len -= bb.remaining(); + bb.position(bb.position() + bb.remaining()); if (!removeFirstLink(bb)) { break; } From 817157131291d2036d234612c4878e2fd603fadd Mon Sep 17 00:00:00 2001 From: Keiji Muraishi Date: Sun, 18 Dec 2011 01:38:51 +0900 Subject: [PATCH 285/409] fixed compilation error --- src/test/java/org/msgpack/simple/TestSimplePackUnpack.java | 2 +- src/test/java/org/msgpack/simple/TestSimpleStreaming.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java b/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java index 3dffd4d01..400eda846 100644 --- a/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java +++ b/src/test/java/org/msgpack/simple/TestSimplePackUnpack.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.simple; import java.nio.ByteBuffer; import java.io.IOException; diff --git a/src/test/java/org/msgpack/simple/TestSimpleStreaming.java b/src/test/java/org/msgpack/simple/TestSimpleStreaming.java index b97c6910b..ee1a38022 100644 --- a/src/test/java/org/msgpack/simple/TestSimpleStreaming.java +++ b/src/test/java/org/msgpack/simple/TestSimpleStreaming.java @@ -1,4 +1,4 @@ -package org.msgpack; +package org.msgpack.simple; import org.msgpack.MessagePack; import org.msgpack.packer.Packer; From ba15049a672a525b371c6412a28d6f4397d28c0a Mon Sep 17 00:00:00 2001 From: Keiji Muraishi Date: Tue, 20 Dec 2011 03:26:39 +0900 Subject: [PATCH 286/409] try to lookup remaining interface types after lookup super interface types and super classes --- .../msgpack/template/TemplateRegistry.java | 109 +++++++----------- .../template/TestTemplateRegistry.java | 48 ++++++++ .../UnsupportedOperationTemplate.java | 29 +++++ 3 files changed, 120 insertions(+), 66 deletions(-) create mode 100644 src/test/java/org/msgpack/template/UnsupportedOperationTemplate.java diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 3045ba314..415d4caa2 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -17,40 +17,20 @@ // package org.msgpack.template; -import java.util.Collection; -import java.util.Collections; -import java.util.Date; -import java.util.List; -import java.util.Map; -import java.util.HashMap; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.math.BigDecimal; import java.math.BigInteger; import java.nio.ByteBuffer; +import java.util.Collection; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; import org.msgpack.MessagePackable; import org.msgpack.MessageTypeException; -import org.msgpack.template.BigIntegerTemplate; -import org.msgpack.template.BooleanTemplate; -import org.msgpack.template.ByteArrayTemplate; -import org.msgpack.template.ByteTemplate; -import org.msgpack.template.DoubleArrayTemplate; -import org.msgpack.template.DoubleTemplate; -import org.msgpack.template.FieldList; -import org.msgpack.template.FloatArrayTemplate; -import org.msgpack.template.FloatTemplate; -import org.msgpack.template.GenericTemplate; -import org.msgpack.template.IntegerArrayTemplate; -import org.msgpack.template.IntegerTemplate; -import org.msgpack.template.LongArrayTemplate; -import org.msgpack.template.LongTemplate; -import org.msgpack.template.ShortArrayTemplate; -import org.msgpack.template.ShortTemplate; -import org.msgpack.template.StringTemplate; -import org.msgpack.template.Template; -import org.msgpack.template.ValueTemplate; -import org.msgpack.template.builder.ArrayTemplateBuilder; import org.msgpack.template.builder.TemplateBuilder; import org.msgpack.template.builder.TemplateBuilderChain; import org.msgpack.type.Value; @@ -218,24 +198,28 @@ public synchronized Template lookup(Type targetType) { // find matched template builder and build template tmpl = lookupAfterBuilding(targetClass); if (tmpl != null) { + register(targetClass, tmpl); return tmpl; } // lookup template of interface type tmpl = lookupInterfaceTypes(targetClass); if (tmpl != null) { + register(targetClass, tmpl); return tmpl; } // lookup template of superclass type tmpl = lookupSuperclasses(targetClass); if (tmpl != null) { + register(targetClass, tmpl); return tmpl; } // lookup template of interface type of superclasss - tmpl = lookupSuperclassInterfaceTypes(targetClass); + tmpl = lookupRemainingInterfaceTypes(targetClass); if (tmpl != null) { + register(targetClass, tmpl); return tmpl; } @@ -304,7 +288,6 @@ private Template lookupAfterBuilding(Class targetClass) { // TODO #MN for Android, we should modify here tmpl = chain.getForceBuilder().loadTemplate(targetClass); if (tmpl != null) { - register(targetClass, tmpl); return tmpl; } tmpl = buildAndRegister(builder, targetClass, true, null); @@ -316,19 +299,9 @@ private Template lookupInterfaceTypes(Class targetClass) { Class[] infTypes = targetClass.getInterfaces(); Template tmpl = null; for (Class infType : infTypes) { - tmpl = (Template) cache.get(infType); + tmpl = (Template) lookupCache(infType); if (tmpl != null) { - register(targetClass, tmpl); return tmpl; - } else { - try { - tmpl = (Template) parent.lookupCache(infType); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - } catch (NullPointerException e) { // ignore - } } } return tmpl; @@ -338,51 +311,55 @@ private Template lookupSuperclasses(Class targetClass) { Class superClass = targetClass.getSuperclass(); Template tmpl = null; if (superClass != null) { - for (; superClass != Object.class; superClass = superClass - .getSuperclass()) { - tmpl = (Template) cache.get(superClass); + for (; superClass != Object.class; superClass = superClass.getSuperclass()) { + tmpl = (Template) lookupCache(superClass); if (tmpl != null) { - register(targetClass, tmpl); return tmpl; - } else { - try { - tmpl = (Template) parent.lookupCache(superClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - } catch (NullPointerException e) { // ignore - } } } } return tmpl; } - private Template lookupSuperclassInterfaceTypes(Class targetClass) { - Class superClass = targetClass.getSuperclass(); + private Template lookupRemainingInterfaceTypes(Class targetClass) { Template tmpl = null; - if (superClass != null) { + Class[] infTypes = targetClass.getInterfaces(); + for (Class infType : infTypes) { + tmpl = (Template) lookupInterfaceTypesRecursively(infType); + if (tmpl != null) { + return tmpl; + } + } + Class superClass = targetClass.getSuperclass(); + if (superClass != null && superClass != Object.class) { for (; superClass != Object.class; superClass = superClass.getSuperclass()) { - tmpl = (Template) lookupInterfaceTypes(superClass); + tmpl = (Template) lookupInterfaceTypesRecursively(superClass); if (tmpl != null) { - register(targetClass, tmpl); return tmpl; - } else { - try { - tmpl = (Template) parent.lookupCache(superClass); - if (tmpl != null) { - register(targetClass, tmpl); - return tmpl; - } - } catch (NullPointerException e) { // ignore - } } } } return tmpl; } + private Template lookupInterfaceTypesRecursively(Class targetClass) { + Class[] infTypes = targetClass.getInterfaces(); + Template tmpl = null; + for (Class infType : infTypes) { + tmpl = (Template) lookupCache(infType); + if (tmpl != null) { + return tmpl; + } + } + for (Class infType : infTypes) { + tmpl = (Template) lookupInterfaceTypesRecursively(infType); + if (tmpl != null) { + return tmpl; + } + } + return tmpl; + } + private synchronized Template buildAndRegister(TemplateBuilder builder, final Class targetClass, final boolean hasAnnotation, final FieldList flist) { diff --git a/src/test/java/org/msgpack/template/TestTemplateRegistry.java b/src/test/java/org/msgpack/template/TestTemplateRegistry.java index ed6c38546..a9013a941 100644 --- a/src/test/java/org/msgpack/template/TestTemplateRegistry.java +++ b/src/test/java/org/msgpack/template/TestTemplateRegistry.java @@ -35,4 +35,52 @@ public void testArraysAsListIsPackable() throws Exception { assertThat(template, is(instanceOf(ListTemplate.class))); } + // Iface2 < Iface1 + static interface Iface0 {} + static interface Iface1 extends Iface0 {} + static interface Iface2 extends Iface1 {} + + static class ImplementsIface0 implements Iface0 {} + static class ImplementsIface1 implements Iface1 {} + static class ImplementsIface2 implements Iface2 {} + + static class Iface0Template extends UnsupportedOperationTemplate {} + static class Iface1Template extends UnsupportedOperationTemplate {} + static class Iface2Template extends UnsupportedOperationTemplate {} + + @SuppressWarnings("unchecked") + @Test + public void testCanLookupByInheritanceHierarchy() throws Exception { + TemplateRegistry registry = new TemplateRegistry(null); + registry.register(Iface0.class, new Iface0Template()); + + // Iface0 == Iface0 + Template template = registry.lookup(Iface0.class); + assertThat(template, is(instanceOf(Iface0Template.class))); + + // ImplementsIface2 (< Iface2 < Iface1) < Iface0 + template = registry.lookup(ImplementsIface2.class); + assertThat(template, is(instanceOf(Iface0Template.class))); + + // ImplementsIface1 (< Iface1) < Iface0 + template = registry.lookup(ImplementsIface1.class); + assertThat(template, is(instanceOf(Iface0Template.class))); + + // ImplementsIface0 < Iface0 + template = registry.lookup(ImplementsIface0.class); + assertThat(template, is(instanceOf(Iface0Template.class))); + + // register specialized (override) templates and lookup again + registry.register(ImplementsIface1.class, new Iface1Template()); + registry.register(ImplementsIface2.class, new Iface2Template()); + + template = registry.lookup(ImplementsIface2.class); + assertThat(template, is(instanceOf(Iface2Template.class))); + + template = registry.lookup(ImplementsIface1.class); + assertThat(template, is(instanceOf(Iface1Template.class))); + + template = registry.lookup(ImplementsIface0.class); + assertThat(template, is(instanceOf(Iface0Template.class))); + } } diff --git a/src/test/java/org/msgpack/template/UnsupportedOperationTemplate.java b/src/test/java/org/msgpack/template/UnsupportedOperationTemplate.java new file mode 100644 index 000000000..35277d407 --- /dev/null +++ b/src/test/java/org/msgpack/template/UnsupportedOperationTemplate.java @@ -0,0 +1,29 @@ +package org.msgpack.template; + +import java.io.IOException; + +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; + +public class UnsupportedOperationTemplate implements Template { + + @Override + public void write(Packer pk, T v) throws IOException { + throw new UnsupportedOperationException(); + } + + @Override + public void write(Packer pk, T v, boolean required) throws IOException { + throw new UnsupportedOperationException(); + } + + @Override + public T read(Unpacker u, T to) throws IOException { + throw new UnsupportedOperationException(); + } + + @Override + public T read(Unpacker u, T to, boolean required) throws IOException { + throw new UnsupportedOperationException(); + } +} From 32eedc4ea3365d19a30c07d33cdf9c2a1146134c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 19 Dec 2011 10:53:49 -0800 Subject: [PATCH 287/409] modified CHANGES.txt --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index 12778e1ce..21ce88b5f 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,6 +5,7 @@ Release 0.6.4 - BUG FIXES Fixes bug:validation error occurs when loading templates of array classes with Javassist-based template builder. + PULL REQUEST-10 Fix compilation error caused by package name mistake. Release 0.6.3 - 2011/11/08 NEW FEATURES From 9f48d2f80a29a63cd7b7142ee61e64f167f7d402 Mon Sep 17 00:00:00 2001 From: Ming Fang Date: Thu, 22 Dec 2011 07:53:07 -0500 Subject: [PATCH 288/409] check LOG.isDebugEnabled() before logging --- .../java/org/msgpack/template/builder/ArrayTemplateBuilder.java | 2 +- .../msgpack/template/builder/JavassistBeansTemplateBuilder.java | 2 +- .../org/msgpack/template/builder/JavassistTemplateBuilder.java | 2 +- .../msgpack/template/builder/OrdinalEnumTemplateBuilder.java | 2 +- .../template/builder/ReflectionBeansTemplateBuilder.java | 2 +- .../org/msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index ef5b68053..8e1d88c34 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -107,7 +107,7 @@ public ArrayTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean forceBuild) { Class targetClass = (Class) targetType; boolean matched = AbstractTemplateBuilder.matchAtArrayTemplateBuilder(targetClass, false); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index 2293f56c8..7f73ef8e7 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -18,7 +18,7 @@ public JavassistBeansTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index f3f36bbf3..0c01dfbb5 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -83,7 +83,7 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; diff --git a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java index 4938cf506..96b0a4eab 100644 --- a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java @@ -38,7 +38,7 @@ public OrdinalEnumTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtOrdinalEnumTemplateBuilder(targetClass, hasAnnotation); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index b19968bcc..85686a654 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -76,7 +76,7 @@ public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtBeansClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 7168509e1..2d5a17f0d 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -162,7 +162,7 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched) { + if (matched && LOG.isDebugEnabled()) { LOG.debug("matched type: " + targetClass.getName()); } return matched; From 520fe4985e10bc638cc198165658b6ea34506fd8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 31 Dec 2011 01:24:05 +0900 Subject: [PATCH 289/409] MSGPACK-58: changed logging library to java.util.logging.Logger --- CHANGES.txt | 1 + pom.xml | 10 ----- .../builder/ArrayTemplateBuilder.java | 10 ++--- .../template/builder/BuildContext.java | 40 +++++++++---------- .../JavassistBeansTemplateBuilder.java | 10 ++--- .../builder/JavassistTemplateBuilder.java | 16 ++++---- .../builder/OrdinalEnumTemplateBuilder.java | 10 ++--- .../ReflectionBeansTemplateBuilder.java | 10 ++--- .../builder/ReflectionTemplateBuilder.java | 10 ++--- .../org/msgpack/util/TemplatePrecompiler.java | 5 +-- 10 files changed, 56 insertions(+), 66 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 21ce88b5f..e67c228d5 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,6 +5,7 @@ Release 0.6.4 - BUG FIXES Fixes bug:validation error occurs when loading templates of array classes with Javassist-based template builder. + MSGPACK-58 Changes logging library from SLF4J to java.util.logging.Logger. PULL REQUEST-10 Fix compilation error caused by package name mistake. Release 0.6.3 - 2011/11/08 diff --git a/pom.xml b/pom.xml index 7ed996d24..860f4713d 100644 --- a/pom.xml +++ b/pom.xml @@ -54,16 +54,6 @@ 3.15.0-GA compile - - org.slf4j - slf4j-api - 1.6.1 - - - org.slf4j - slf4j-log4j12 - 1.6.1 - junit junit diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index 8e1d88c34..c1e76130b 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -22,6 +22,8 @@ import java.lang.reflect.GenericArrayType; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; @@ -37,13 +39,11 @@ import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; @SuppressWarnings({ "rawtypes", "unchecked" }) public class ArrayTemplateBuilder extends AbstractTemplateBuilder { - private static final Logger LOG = LoggerFactory.getLogger(ArrayTemplateBuilder.class); + private static final Logger LOG = Logger.getLogger(ArrayTemplateBuilder.class.getName()); static class ReflectionMultidimentionalArrayTemplate extends AbstractTemplate { @@ -107,8 +107,8 @@ public ArrayTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean forceBuild) { Class targetClass = (Class) targetType; boolean matched = AbstractTemplateBuilder.matchAtArrayTemplateBuilder(targetClass, false); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index cf348ce24..4cb86c490 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -19,6 +19,7 @@ import java.io.IOException; import java.lang.reflect.InvocationTargetException; +import java.util.logging.Logger; import org.msgpack.*; import org.msgpack.packer.Packer; @@ -31,13 +32,10 @@ import javassist.CtNewMethod; import javassist.NotFoundException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - @SuppressWarnings({ "rawtypes" }) public abstract class BuildContext { - private static Logger LOG = LoggerFactory.getLogger(BuildContext.class); + private static Logger LOG = Logger.getLogger(BuildContext.class.getName()); protected JavassistTemplateBuilder director; @@ -58,20 +56,20 @@ public BuildContext(JavassistTemplateBuilder director) { protected Template build(final String className) { try { reset(className, false); - LOG.debug("started generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); + LOG.fine(String.format("started generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className })); buildClass(); buildConstructor(); buildMethodInit(); buildWriteMethod(); buildReadMethod(); - LOG.debug("finished generating template class %s for original class %s", - new Object[] { tmplCtClass.getName(), className }); + LOG.fine(String.format("finished generating template class %s for original class %s", + new Object[] { tmplCtClass.getName(), className })); return buildInstance(createClass()); } catch (Exception e) { String code = getBuiltString(); if (code != null) { - LOG.error("builder: " + code, e); + LOG.severe("builder: " + code); throw new TemplateBuildException("Cannot compile: " + code, e); } else { throw new TemplateBuildException(e); @@ -103,8 +101,8 @@ protected abstract Template buildInstance(Class c) IllegalAccessException, InvocationTargetException; protected void buildWriteMethod() throws CannotCompileException, NotFoundException { - LOG.debug("started generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); + LOG.fine(String.format("started generating write method in template class %s", + new Object[] { tmplCtClass.getName() })); String mbody = buildWriteMethodBody(); int mod = javassist.Modifier.PUBLIC; CtClass returnType = CtClass.voidType; @@ -117,19 +115,19 @@ protected void buildWriteMethod() throws CannotCompileException, NotFoundExcepti CtClass[] exceptTypes = new CtClass[] { director.getCtClass(IOException.class.getName()) }; - LOG.debug("compiling write method body: %s", new Object[] { mbody }); + LOG.fine(String.format("compiling write method body: %s", new Object[] { mbody })); CtMethod newCtMethod = CtNewMethod.make( mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating write method in template class %s", - new Object[] { tmplCtClass.getName() }); + LOG.fine(String.format("finished generating write method in template class %s", + new Object[] { tmplCtClass.getName() })); } protected abstract String buildWriteMethodBody(); protected void buildReadMethod() throws CannotCompileException, NotFoundException { - LOG.debug("started generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); + LOG.fine(String.format("started generating read method in template class %s", + new Object[] { tmplCtClass.getName() })); String mbody = buildReadMethodBody(); int mod = javassist.Modifier.PUBLIC; CtClass returnType = director.getCtClass(Object.class.getName()); @@ -142,12 +140,12 @@ protected void buildReadMethod() throws CannotCompileException, NotFoundExceptio CtClass[] exceptTypes = new CtClass[] { director.getCtClass(MessageTypeException.class.getName()) }; - LOG.debug("compiling read method body: %s", new Object[] { mbody }); + LOG.fine(String.format("compiling read method body: %s", new Object[] { mbody })); CtMethod newCtMethod = CtNewMethod.make( mod, returnType, mname, paramTypes, exceptTypes, mbody, tmplCtClass); tmplCtClass.addMethod(newCtMethod); - LOG.debug("finished generating read method in template class %s", - new Object[] { tmplCtClass.getName() }); + LOG.fine(String.format("finished generating read method in template class %s", + new Object[] { tmplCtClass.getName() })); } protected abstract String buildReadMethodBody(); @@ -221,7 +219,7 @@ protected void write(final String className, final String directoryName) { } catch (Exception e) { String code = getBuiltString(); if (code != null) { - LOG.error("builder: " + code, e); + LOG.severe("builder: " + code); throw new TemplateBuildException("Cannot compile: " + code, e); } else { throw new TemplateBuildException(e); @@ -241,7 +239,7 @@ protected Template load(final String className) { } catch (Exception e) { String code = getBuiltString(); if (code != null) { - LOG.error("builder: " + code, e); + LOG.severe("builder: " + code); throw new TemplateBuildException("Cannot compile: " + code, e); } else { throw new TemplateBuildException(e); diff --git a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java index 7f73ef8e7..371672810 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistBeansTemplateBuilder.java @@ -1,14 +1,14 @@ package org.msgpack.template.builder; import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.template.TemplateRegistry; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; @SuppressWarnings({ "rawtypes" }) public class JavassistBeansTemplateBuilder extends JavassistTemplateBuilder { - private static final Logger LOG = LoggerFactory.getLogger(JavassistBeansTemplateBuilder.class); + private static final Logger LOG = Logger.getLogger(JavassistBeansTemplateBuilder.class.getName()); public JavassistBeansTemplateBuilder(TemplateRegistry registry) { super(registry); @@ -18,8 +18,8 @@ public JavassistBeansTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 0c01dfbb5..5fa70e249 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -19,14 +19,14 @@ import java.lang.Thread; import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; import javassist.ClassPool; import javassist.CtClass; import javassist.LoaderClassPath; import javassist.NotFoundException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; @@ -35,7 +35,7 @@ @SuppressWarnings({ "rawtypes", "unchecked" }) public class JavassistTemplateBuilder extends AbstractTemplateBuilder { - private static Logger LOG = LoggerFactory.getLogger(JavassistTemplateBuilder.class); + private static Logger LOG = Logger.getLogger(JavassistTemplateBuilder.class.getName()); public static abstract class JavassistTemplate extends AbstractTemplate { public Class targetClass; @@ -63,7 +63,8 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { appended = true; } } catch (SecurityException e) { - LOG.debug("Cannot append a search path of context classloader", e); + LOG.fine("Cannot append a search path of context classloader"); + e.printStackTrace(); } try { ClassLoader cl2 = getClass().getClassLoader(); @@ -72,7 +73,8 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { appended = true; } } catch (SecurityException e) { - LOG.debug("Cannot append a search path of classloader", e); + LOG.fine("Cannot append a search path of classloader"); + e.printStackTrace(); } if (!appended) { pool.appendSystemPath(); @@ -83,8 +85,8 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java index 96b0a4eab..bdb5bbcc6 100644 --- a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java @@ -18,17 +18,17 @@ package org.msgpack.template.builder; import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.template.OrdinalEnumTemplate; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; public class OrdinalEnumTemplateBuilder extends AbstractTemplateBuilder { - private static final Logger LOG = LoggerFactory.getLogger(OrdinalEnumTemplateBuilder.class); + private static final Logger LOG = Logger.getLogger(OrdinalEnumTemplateBuilder.class.getName()); public OrdinalEnumTemplateBuilder(TemplateRegistry registry) { super(registry); @@ -38,8 +38,8 @@ public OrdinalEnumTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtOrdinalEnumTemplateBuilder(targetClass, hasAnnotation); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 85686a654..e94b4283b 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -26,6 +26,8 @@ import java.lang.reflect.Modifier; import java.lang.reflect.Type; import java.util.ArrayList; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.annotation.Ignore; import org.msgpack.annotation.Index; @@ -36,8 +38,6 @@ import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * Class for building java reflection template builder for java beans class. @@ -48,7 +48,7 @@ @SuppressWarnings({ "rawtypes" }) public class ReflectionBeansTemplateBuilder extends ReflectionTemplateBuilder { - private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); + private static Logger LOG = Logger.getLogger(ReflectionBeansTemplateBuilder.class.getName()); static class ReflectionBeansFieldTemplate extends ReflectionFieldTemplate { ReflectionBeansFieldTemplate(final FieldEntry entry) { @@ -76,8 +76,8 @@ public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtBeansClassTemplateBuilder(targetClass, hasAnnotation); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 2d5a17f0d..7fbdaee87 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -21,6 +21,8 @@ import java.lang.reflect.Field; import java.lang.reflect.Modifier; import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.MessageTypeException; import org.msgpack.packer.Packer; @@ -28,13 +30,11 @@ import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; import org.msgpack.unpacker.Unpacker; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; @SuppressWarnings({ "rawtypes", "unchecked" }) public class ReflectionTemplateBuilder extends AbstractTemplateBuilder { - private static Logger LOG = LoggerFactory.getLogger(ReflectionBeansTemplateBuilder.class); + private static Logger LOG = Logger.getLogger(ReflectionBeansTemplateBuilder.class.getName()); protected static abstract class ReflectionFieldTemplate extends AbstractTemplate { protected FieldEntry entry; @@ -162,8 +162,8 @@ public ReflectionTemplateBuilder(TemplateRegistry registry) { public boolean matchType(Type targetType, boolean hasAnnotation) { Class targetClass = (Class) targetType; boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); - if (matched && LOG.isDebugEnabled()) { - LOG.debug("matched type: " + targetClass.getName()); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); } return matched; } diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index 8a6e61bb0..bdc2b2d9a 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -23,6 +23,7 @@ import java.util.HashSet; import java.util.List; import java.util.Properties; +import java.util.logging.Logger; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -35,8 +36,6 @@ import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.JavassistTemplateBuilder; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; /** * This class is a template precompiler, which is used for saving templates that @@ -46,7 +45,7 @@ */ public class TemplatePrecompiler { - private static final Logger LOG = LoggerFactory.getLogger(TemplatePrecompiler.class); + private static final Logger LOG = Logger.getLogger(TemplatePrecompiler.class.getName()); public static final String DEST = "msgpack.template.destdir"; From 8ebf23bc38530b3698185cfb5302e144bfb62886 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 5 Jan 2012 04:13:22 +0900 Subject: [PATCH 290/409] updated CHANGES --- CHANGES.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index e67c228d5..9fefedbc6 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,4 @@ -Release 0.6.4 - +Release 0.6.4 - 2012/01/05 NEW FEATURES Adds getBufferSize in BufferUnpacker interface. From 1b72858ebbd3a0cdc2f6a2756ccd5b1857f3d10e Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 5 Jan 2012 04:15:22 +0900 Subject: [PATCH 291/409] [maven-release-plugin] prepare release msgpack-0.6.4 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 860f4713d..088fb2f5f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.4-SNAPSHOT + 0.6.4 jar http://msgpack.org/ From 63f7391dfc2cabd3af05cf9bb6a27c3a0bf12512 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 5 Jan 2012 04:15:34 +0900 Subject: [PATCH 292/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 088fb2f5f..da4693f43 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.4 + 0.6.5-SNAPSHOT jar http://msgpack.org/ From 600268928315fccb5274a9196ff282ba6f219054 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 5 Jan 2012 04:19:30 +0900 Subject: [PATCH 293/409] fixed typo --- src/main/java/org/msgpack/MessagePack.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 554b1758e..77ef57b66 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -683,9 +683,9 @@ public static void pack(OutputStream out, T v, Template template) } /** - * Converts byte array to {@linke org.msgpack.type.Value} object. + * Converts byte array to {@link org.msgpack.type.Value} object. * - * @deprecated {@linke MessagePack#read(byte[])} + * @deprecated {@link MessagePack#read(byte[])} * @param bytes * @return * @throws IOException From 859d5b3882ab58630111b3e8c25b35a859064e06 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 7 Jan 2012 17:39:08 +0900 Subject: [PATCH 294/409] MSGPACK-59: included OSGi headers in manifest --- pom.xml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index da4693f43..16e184b90 100644 --- a/pom.xml +++ b/pom.xml @@ -7,7 +7,7 @@ MessagePack for Java is a binary-based efficient object serialization library in Java. 0.6.5-SNAPSHOT - jar + bundle http://msgpack.org/ @@ -88,6 +88,12 @@ UTF-8 + + org.apache.felix + maven-bundle-plugin + 2.3.6 + true + maven-eclipse-plugin 2.5.1 From c0e75854bb0db334a2bf709b5bf24150387d6cc9 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 7 Jan 2012 18:23:00 +0900 Subject: [PATCH 295/409] modified CHANGES.txt --- CHANGES.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 9fefedbc6..a31632368 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,7 @@ +Release 0.6.5 + IMPROVEMENTS + MSGPACK-59: includes OSGi headers in manifest + Release 0.6.4 - 2012/01/05 NEW FEATURES Adds getBufferSize in BufferUnpacker interface. From 5eb6058e4c13d67e966139325be5f46b07014d03 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 12 Jan 2012 13:45:50 +0900 Subject: [PATCH 296/409] [maven-release-plugin] prepare release msgpack-0.6.5 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 16e184b90..7ea2e344f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.5-SNAPSHOT + 0.6.5 bundle http://msgpack.org/ From 7087a2db7d9a47a92c7a0aefaaae552de374b5bd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 12 Jan 2012 13:46:00 +0900 Subject: [PATCH 297/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7ea2e344f..2f63be742 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.5 + 0.6.6-SNAPSHOT bundle http://msgpack.org/ From 8ca01e4fdb6cef08f957fe0a4f960a153bd1a7f0 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 25 Feb 2012 13:59:19 -0800 Subject: [PATCH 298/409] added Unpacker.getNextType() --- src/main/java/org/msgpack/type/Value.java | 1 + .../java/org/msgpack/unpacker/Converter.java | 5 ++ .../msgpack/unpacker/MessagePackUnpacker.java | 50 +++++++++++++++++++ .../java/org/msgpack/unpacker/Unpacker.java | 3 ++ 4 files changed, 59 insertions(+) diff --git a/src/main/java/org/msgpack/type/Value.java b/src/main/java/org/msgpack/type/Value.java index 580e7f56f..1140a63ff 100644 --- a/src/main/java/org/msgpack/type/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -19,6 +19,7 @@ import java.io.IOException; import org.msgpack.packer.Packer; +import org.msgpack.type.ValueType; public interface Value { public ValueType getType(); diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 39ad334c8..733c4521e 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -25,6 +25,7 @@ import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; import org.msgpack.type.Value; +import org.msgpack.type.ValueType; import org.msgpack.type.ArrayValue; import org.msgpack.type.MapValue; @@ -402,6 +403,10 @@ public void skip() throws IOException { } } + public ValueType getNextType() throws IOException { + return getTop().getType(); + } + public void reset() { stack.clear(); value = null; diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 26d348dbc..4eeb5f1c6 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -27,6 +27,7 @@ import org.msgpack.MessagePack; import org.msgpack.MessageTypeException; import org.msgpack.packer.Unconverter; +import org.msgpack.type.ValueType; public class MessagePackUnpacker extends AbstractUnpacker { private static final byte REQUIRE_TO_READ_HEAD = (byte) 0xc6; @@ -581,6 +582,55 @@ public void skip() throws IOException { } } + public ValueType getNextType() throws IOException { + final int b = (int) getHeadByte(); + if ((b & 0x80) == 0) { // Positive Fixnum + return ValueType.INTEGER; + } + if ((b & 0xe0) == 0xe0) { // Negative Fixnum + return ValueType.INTEGER; + } + if ((b & 0xe0) == 0xa0) { // FixRaw + return ValueType.RAW; + } + if ((b & 0xf0) == 0x90) { // FixArray + return ValueType.ARRAY; + } + if ((b & 0xf0) == 0x80) { // FixMap + return ValueType.MAP; + } + switch (b & 0xff) { + case 0xc0: // nil + return ValueType.NIL; + case 0xc2: // false + case 0xc3: // true + return ValueType.BOOLEAN; + case 0xca: // float + case 0xcb: // double + return ValueType.FLOAT; + case 0xcc: // unsigned int 8 + case 0xcd: // unsigned int 16 + case 0xce: // unsigned int 32 + case 0xcf: // unsigned int 64 + case 0xd0: // signed int 8 + case 0xd1: // signed int 16 + case 0xd2: // signed int 32 + case 0xd3: // signed int 64 + return ValueType.INTEGER; + case 0xda: // raw 16 + case 0xdb: // raw 32 + return ValueType.RAW; + case 0xdc: // array 16 + case 0xdd: // array 32 + return ValueType.ARRAY; + case 0xde: // map 16 + case 0xdf: // map 32 + return ValueType.MAP; + default: + throw new IOException("Invalid byte: " + b); // TODO error FormatException + } + } + public void reset() { raw = null; stack.clear(); diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 277e55322..7bbff1c90 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -25,6 +25,7 @@ import org.msgpack.template.Template; import org.msgpack.type.Value; +import org.msgpack.type.ValueType; /** * Standard deserializer. @@ -82,6 +83,8 @@ public interface Unpacker extends Iterable, Closeable { public Value readValue() throws IOException; + public ValueType getNextType() throws IOException; + public UnpackerIterator iterator(); public int getReadByteCount(); From bb9ed18a44c65c9c5d5e61452a5e27486ffccc56 Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Thu, 22 Mar 2012 11:11:11 -0700 Subject: [PATCH 299/409] fixed Unpacker#skip --- .../msgpack/unpacker/MessagePackUnpacker.java | 9 +- .../java/org/msgpack/unpacker/SkipAccept.java | 7 ++ .../msgpack/unpacker/TestUnpackerSkip.java | 82 +++++++++++++++++++ 3 files changed, 92 insertions(+), 6 deletions(-) create mode 100644 src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index 4eeb5f1c6..e88c99c89 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -571,14 +571,11 @@ public void skip() throws IOException { while (true) { while (stack.getTopCount() == 0) { stack.pop(); - if (stack.getTopCount() == 0) { - stack.pop(); - if (stack.getDepth() <= targetDepth) { - return; - } + if (stack.getDepth() <= targetDepth) { + return; } } - readOne(valueAccept); + readOne(skipAccept); } } diff --git a/src/main/java/org/msgpack/unpacker/SkipAccept.java b/src/main/java/org/msgpack/unpacker/SkipAccept.java index 21fe69dc0..dbfd6956f 100644 --- a/src/main/java/org/msgpack/unpacker/SkipAccept.java +++ b/src/main/java/org/msgpack/unpacker/SkipAccept.java @@ -17,6 +17,9 @@ // package org.msgpack.unpacker; +import java.io.IOException; +import java.nio.ByteBuffer; + final class SkipAccept extends Accept { @Override void acceptBoolean(boolean v) { @@ -62,6 +65,10 @@ void acceptRaw(byte[] raw) { void acceptEmptyRaw() { } + @Override + public void refer(ByteBuffer bb, boolean gift) throws IOException { + } + @Override void acceptArray(int size) { } diff --git a/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java b/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java new file mode 100644 index 000000000..aa2bb6fb7 --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java @@ -0,0 +1,82 @@ +package org.msgpack.unpacker; + +import static org.junit.Assert.assertEquals; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; + +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.unpacker.BufferUnpacker; +import org.msgpack.type.Value; +import org.msgpack.type.ValueFactory; + +public class TestUnpackerSkip { + @Test + public void testPrimitive() throws Exception { + MessagePack msgpack = new MessagePack(); + + BufferPacker packer = msgpack.createBufferPacker(); + + for(int i=0; i < 10; i++) { + packer.write(1); + packer.write(i); + } + + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + + for(int i=0; i < 10; i++) { + unpacker.skip(); + int n = unpacker.readInt(); + assertEquals(i, n); + } + } + + @Test + public void testNested() throws Exception { + MessagePack msgpack = new MessagePack(); + + BufferPacker packer = msgpack.createBufferPacker(); + + Value v1 = ValueFactory.createArrayValue(new Value[] { + ValueFactory.createRawValue("a"), + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }) + }) + }); + + Value v2 = ValueFactory.createArrayValue(new Value[] { + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }), + ValueFactory.createRawValue("k2"), + ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(2) }) + }), + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }), + ValueFactory.createRawValue("k2"), + ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(2) }) + }), + ValueFactory.createRawValue("a") + }); + + for(int i=0; i < 10; i++) { + packer.write(v1); + packer.write(v2); + } + + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); + + for(int i=0; i < 10; i++) { + unpacker.skip(); + Value v2a = unpacker.readValue(); + assertEquals(v2, v2a); + } + } +} + From 3c684db27c418fe76531b6a96d6b65edde5ab4bd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 27 Apr 2012 01:58:35 +0900 Subject: [PATCH 300/409] implemented a template generation for GenericArrayType --- .../msgpack/template/TemplateRegistry.java | 129 ++++++++++++++++++ 1 file changed, 129 insertions(+) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 3045ba314..9ec638178 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Map; import java.util.HashMap; +import java.lang.reflect.GenericArrayType; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.math.BigDecimal; @@ -193,11 +194,17 @@ public synchronized void unregister() { public synchronized Template lookup(Type targetType) { Template tmpl; + // TODO FIXME #MN should refactor this method call. tmpl = lookupGenericType(targetType); if (tmpl != null) { return tmpl; } + tmpl = lookupGenericArrayType(targetType); + if (tmpl != null) { + return tmpl; + } + tmpl = lookupCache(targetType); if (tmpl != null) { return tmpl; @@ -284,6 +291,88 @@ private Template lookupGenericTypeImpl(final ParameterizedType targetType) { return tmpl.build(tmpls); } + private Template lookupGenericArrayType(Type targetType) { + // TODO GenericArrayType is not a Class => buildArrayTemplate + if (! (targetType instanceof GenericArrayType)) { + return null; + } + + GenericArrayType genericArrayType = (GenericArrayType) targetType; + Template tmpl = lookupGenericArrayTypeImpl(genericArrayType); + if (tmpl != null) { + return tmpl; + } + + try { + tmpl = parent.lookupGenericArrayTypeImpl(genericArrayType); + if (tmpl != null) { + return tmpl; + } + } catch (NullPointerException e) { // ignore + } + + return null; + } + + private Template lookupGenericArrayTypeImpl(GenericArrayType genericArrayType) { + String genericArrayTypeName = "" + genericArrayType; + int dim = genericArrayTypeName.split("\\[").length - 1; + if (dim <= 0) { + throw new MessageTypeException( + String.format("fatal error: type=", genericArrayTypeName)); + } else if (dim > 1) { + throw new UnsupportedOperationException(String.format( + "Not implemented template generation of %s", genericArrayTypeName)); + } + + String genericCompTypeName = "" + genericArrayType.getGenericComponentType(); + boolean isPrimitiveType = isPrimitiveType(genericCompTypeName); + StringBuffer sbuf = new StringBuffer(); + for (int i = 0; i < dim; i++) { + sbuf.append('['); + } + if (!isPrimitiveType) { + sbuf.append('L'); + sbuf.append(toJvmReferenceTypeName(genericCompTypeName)); + sbuf.append(';'); + } else { + sbuf.append(toJvmPrimitiveTypeName(genericCompTypeName)); + } + + String jvmArrayClassName = sbuf.toString(); + Class jvmArrayClass = null; + ClassLoader cl = null; + try { + cl = Thread.currentThread().getContextClassLoader(); + if (cl != null) { + jvmArrayClass = cl.loadClass(jvmArrayClassName); + if (jvmArrayClass != null) { + return lookupAfterBuilding(jvmArrayClass); + } + } + } catch (ClassNotFoundException e) {} // ignore + + try { + cl = getClass().getClassLoader(); + if (cl != null) { + jvmArrayClass = cl.loadClass(jvmArrayClassName); + if (jvmArrayClass != null) { + return lookupAfterBuilding(jvmArrayClass); + } + } + } catch (ClassNotFoundException e) {} // ignore + + try { + jvmArrayClass = Class.forName(jvmArrayClassName); + if (jvmArrayClass != null) { + return lookupAfterBuilding(jvmArrayClass); + } + } catch (ClassNotFoundException e) {} // ignore + + throw new MessageTypeException(String.format( + "cannot find template of %s", jvmArrayClassName)); + } + private Template lookupCache(Type targetType) { Template tmpl = cache.get(targetType); if (tmpl != null) { @@ -418,4 +507,44 @@ private synchronized Template buildAndRegister(TemplateBuilder builder, } } } + + private static boolean isPrimitiveType(String genericCompTypeName) { + return (genericCompTypeName.equals("byte") + || genericCompTypeName.equals("short") + || genericCompTypeName.equals("int") + || genericCompTypeName.equals("long") + || genericCompTypeName.equals("float") + || genericCompTypeName.equals("double") + || genericCompTypeName.equals("boolean") + || genericCompTypeName.equals("char")); + } + + private static String toJvmReferenceTypeName(String typeName) { + // delete "class " from class name + // e.g. "class Foo" to "Foo" by this method + return typeName.substring(6); + } + + private static String toJvmPrimitiveTypeName(String typeName) { + if (typeName.equals("byte")) { + return "B"; + } else if (typeName.equals("short")) { + return "S"; + } else if (typeName.equals("int")) { + return "I"; + } else if (typeName.equals("long")) { + return "J"; + } else if (typeName.equals("float")) { + return "F"; + } else if (typeName.equals("double")) { + return "D"; + } else if (typeName.equals("boolean")) { + return "Z"; + } else if (typeName.equals("char")) { + return "C"; + } else { + throw new MessageTypeException(String.format( + "fatal error: type=%s", typeName)); + } + } } From 0d7b49ce157c6029846835cb276a6fcc7ae7302e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 27 Apr 2012 02:01:23 +0900 Subject: [PATCH 301/409] changed test programs for support of GenericArrayType --- .../org/msgpack/template/builder/TestSet.java | 52 ++++++++- .../testclasses/ListTypeFieldsClass.java | 99 +++++++++++++++- .../ListTypeFieldsClassNotNullable.java | 108 +++++++++++++++++- .../testclasses/MapTypeFieldsClass.java | 87 +++++++++++++- .../MapTypeFieldsClassNotNullable.java | 96 +++++++++++++++- 5 files changed, 435 insertions(+), 7 deletions(-) diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index f48a16c8e..52f073178 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -145,6 +145,19 @@ public void testListTypeFieldsClass() throws Exception { v.f5.add(ByteBuffer.wrap("e1".getBytes())); v.f5.add(ByteBuffer.wrap("e2".getBytes())); v.f5.add(ByteBuffer.wrap("e3".getBytes())); + v.f6 = new ArrayList(); + v.f6.add(new int[] { 1, 2, 3 }); + v.f6.add(new int[] { 3, 3, 3 }); + v.f7 = new ArrayList(); + v.f7.add(new String[] { "muga", "nishizawa", "fryusuki" }); + v.f8 = new ArrayList(); + ListTypeFieldsClass.NestedClass nested01 = new ListTypeFieldsClass.NestedClass(); + nested01.f0 = new byte[] { 0x01, 0x02 }; + nested01.f1 = "muga"; + ListTypeFieldsClass.NestedClass nested02 = new ListTypeFieldsClass.NestedClass(); + nested02.f0 = new byte[] { 0x01, 0x02 }; + nested02.f1 = "muga"; + v.f8.add(new ListTypeFieldsClass.NestedClass[] { nested01, nested02 }); testListTypeFieldsClass(v); } @@ -180,6 +193,19 @@ public void testListTypeFieldsClassNotNullable() throws Exception { v.f5.add(ByteBuffer.wrap("e1".getBytes())); v.f5.add(ByteBuffer.wrap("e2".getBytes())); v.f5.add(ByteBuffer.wrap("e3".getBytes())); + v.f6 = new ArrayList(); + v.f6.add(new int[] { 1, 2, 3 }); + v.f6.add(new int[] { 3, 3, 3 }); + v.f7 = new ArrayList(); + v.f7.add(new String[] { "muga", "nishizawa", "fryusuki" }); + v.f8 = new ArrayList(); + ListTypeFieldsClassNotNullable.NestedClass nested01 = new ListTypeFieldsClassNotNullable.NestedClass(); + nested01.f0 = new byte[] { 0x01, 0x02 }; + nested01.f1 = "muga"; + ListTypeFieldsClassNotNullable.NestedClass nested02 = new ListTypeFieldsClassNotNullable.NestedClass(); + nested02.f0 = new byte[] { 0x01, 0x02 }; + nested02.f1 = "muga"; + v.f8.add(new ListTypeFieldsClassNotNullable.NestedClass[] { nested01, nested02 }); testListTypeFieldsClassNotNullable(v); } @@ -200,9 +226,19 @@ public void testMapTypeFieldsClass() throws Exception { v.f2.put("k2", 2); v.f2.put("k3", 3); v.f3 = new HashMap(); - MapTypeFieldsClass.NestedClass nested = new MapTypeFieldsClass.NestedClass(); - nested.f0 = "muga"; - v.f3.put("muga", nested); + MapTypeFieldsClass.NestedClass nested01 = new MapTypeFieldsClass.NestedClass(); + nested01.f0 = "muga"; + v.f3.put("muga", nested01); + v.f4 = new HashMap(); + v.f4.put("nishizawa", new int[] { 1, 2, 3 }); + v.f4.put("fryusuki", new int[] { 3, 3, 3 }); + v.f5 = new HashMap(); + v.f5.put("muga", new String[] { "f1", "f2", "f3" }); + v.f5.put("nishizawa", new String[] { "f3", "f2", "f1" }); + v.f6 = new HashMap(); + MapTypeFieldsClass.NestedClass nested02 = new MapTypeFieldsClass.NestedClass(); + nested02.f0 = "nishizawa"; + v.f6.put("muga", new MapTypeFieldsClass.NestedClass[] { nested02 }); testMapTypeFieldsClass(v); } @@ -231,6 +267,16 @@ public void testMapTypeFieldsClassNotNullable() throws Exception { MapTypeFieldsClassNotNullable.NestedClass nested = new MapTypeFieldsClassNotNullable.NestedClass(); nested.f0 = "muga"; v.f3.put("muga", nested); + v.f4 = new HashMap(); + v.f4.put("nishizawa", new int[] { 1, 2, 3 }); + v.f4.put("fryusuki", new int[] { 3, 3, 3 }); + v.f5 = new HashMap(); + v.f5.put("muga", new String[] { "f1", "f2", "f3" }); + v.f5.put("nishizawa", new String[] { "f3", "f2", "f1" }); + v.f6 = new HashMap(); + MapTypeFieldsClassNotNullable.NestedClass nested02 = new MapTypeFieldsClassNotNullable.NestedClass(); + nested02.f0 = "nishizawa"; + v.f6.put("muga", new MapTypeFieldsClassNotNullable.NestedClass[] { nested02 }); testMapTypeFieldsClassNotNullable(v); } diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java index 1b3668c9e..239f2f371 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClass.java @@ -24,6 +24,12 @@ public class ListTypeFieldsClass { public List f5; + public List f6; + + public List f7; + + public List f8; + public ListTypeFieldsClass() { } @@ -75,6 +81,30 @@ public void setF5(List f5) { this.f5 = f5; } + public List getF6() { + return f6; + } + + public void setF6(List f6) { + this.f6 = f6; + } + + public List getF7() { + return f7; + } + + public void setF7(List f7) { + this.f7 = f7; + } + + public List getF8() { + return f8; + } + + public void setF8(List f8) { + this.f8 = f8; + } + @Override public boolean equals(Object o) { if (! (o instanceof ListTypeFieldsClass)) { @@ -205,7 +235,74 @@ public boolean equals(Object o) { } } } - return true; + // f6 + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null) { + if (f6.size() != that.f6.size()) { + return false; + } + Iterator this_f6_iter = f6.iterator(); + Iterator that_f6_iter = that.f6.iterator(); + for (; this_f6_iter.hasNext();) { + int[] this_f6_elm = this_f6_iter.next(); + int[] that_f6_elm = that_f6_iter.next(); + for (int i = 0; i < this_f6_elm.length; i++) { + if (this_f6_elm[i] != that_f6_elm[i]) { + return false; + } + } + } + } + // f7 + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (that.f7 != null) { + if (f7.size() != that.f7.size()) { + return false; + } + Iterator this_f7_iter = f7.iterator(); + Iterator that_f7_iter = that.f7.iterator(); + for (; this_f7_iter.hasNext();) { + String[] this_f7_elm = this_f7_iter.next(); + String[] that_f7_elm = that_f7_iter.next(); + for (int i = 0; i < this_f7_elm.length; i++) { + if (!this_f7_elm[i].equals(that_f7_elm[i])) { + return false; + } + } + } + } + // f8 + if (f8 == null) { + if (that.f8 != null) { + return false; + } + } + if (that.f8 != null) { + if (f8.size() != that.f8.size()) { + return false; + } + Iterator this_f8_iter = f8.iterator(); + Iterator that_f8_iter = that.f8.iterator(); + for (; this_f8_iter.hasNext();) { + NestedClass[] this_f8_elm = this_f8_iter.next(); + NestedClass[] that_f8_elm = that_f8_iter.next(); + for (int i = 0; i < this_f8_elm.length; i++) { + if (!this_f8_elm[i].equals(that_f8_elm[i])) { + return false; + } + } + } + } + + return true; } @Ignore @Message @Beans diff --git a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java index e5d68ad26..321b6796a 100644 --- a/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/ListTypeFieldsClassNotNullable.java @@ -31,6 +31,15 @@ public class ListTypeFieldsClassNotNullable { @NotNullable public List f5; + @NotNullable + public List f6; + + @NotNullable + public List f7; + + @NotNullable + public List f8; + public ListTypeFieldsClassNotNullable() { } @@ -94,6 +103,36 @@ public void setF5(List f5) { this.f5 = f5; } + @NotNullable + public List getF6() { + return f6; + } + + @NotNullable + public void setF6(List f6) { + this.f6 = f6; + } + + @NotNullable + public List getF7() { + return f7; + } + + @NotNullable + public void setF7(List f7) { + this.f7 = f7; + } + + @NotNullable + public List getF8() { + return f8; + } + + @NotNullable + public void setF8(List f8) { + this.f8 = f8; + } + @Override public boolean equals(Object o) { if (! (o instanceof ListTypeFieldsClassNotNullable)) { @@ -224,7 +263,74 @@ public boolean equals(Object o) { } } } - return true; + // f6 + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null) { + if (f6.size() != that.f6.size()) { + return false; + } + Iterator this_f6_iter = f6.iterator(); + Iterator that_f6_iter = that.f6.iterator(); + for (; this_f6_iter.hasNext();) { + int[] this_f6_elm = this_f6_iter.next(); + int[] that_f6_elm = that_f6_iter.next(); + for (int i = 0; i < this_f6_elm.length; i++) { + if (this_f6_elm[i] != that_f6_elm[i]) { + return false; + } + } + } + } + // f7 + if (f7 == null) { + if (that.f7 != null) { + return false; + } + } + if (that.f7 != null) { + if (f7.size() != that.f7.size()) { + return false; + } + Iterator this_f7_iter = f7.iterator(); + Iterator that_f7_iter = that.f7.iterator(); + for (; this_f7_iter.hasNext();) { + String[] this_f7_elm = this_f7_iter.next(); + String[] that_f7_elm = that_f7_iter.next(); + for (int i = 0; i < this_f7_elm.length; i++) { + if (!this_f7_elm[i].equals(that_f7_elm[i])) { + return false; + } + } + } + } + // f8 + if (f8 == null) { + if (that.f8 != null) { + return false; + } + } + if (that.f8 != null) { + if (f8.size() != that.f8.size()) { + return false; + } + Iterator this_f8_iter = f8.iterator(); + Iterator that_f8_iter = that.f8.iterator(); + for (; this_f8_iter.hasNext();) { + NestedClass[] this_f8_elm = this_f8_iter.next(); + NestedClass[] that_f8_elm = that_f8_iter.next(); + for (int i = 0; i < this_f8_elm.length; i++) { + if (!this_f8_elm[i].equals(that_f8_elm[i])) { + return false; + } + } + } + } + + return true; } @Ignore @Message @Beans diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java index 0740ea0e7..16862a334 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClass.java @@ -17,6 +17,12 @@ public class MapTypeFieldsClass { public Map f3; + public Map f4; + + public Map f5; + + public Map f6; + public MapTypeFieldsClass() { } @@ -52,6 +58,30 @@ public void setF3(Map f3) { this.f3 = f3; } + public Map getF4() { + return f4; + } + + public void setF4(Map f4) { + this.f4 = f4; + } + + public Map getF5() { + return f5; + } + + public void setF5(Map f5) { + this.f5 = f5; + } + + public Map getF6() { + return f6; + } + + public void setF6(Map f6) { + this.f6 = f6; + } + @Override public boolean equals(Object o) { if (! (o instanceof MapTypeFieldsClass)) { @@ -118,7 +148,62 @@ public boolean equals(Object o) { } } } - return true; + // f4 + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null) { + for (Map.Entry e : f4.entrySet()) { + String key = e.getKey(); + int[] this_val = e.getValue(); + int[] that_val = that.f4.get(key); + for (int i = 0; i < this_val.length; i++) { + if (this_val[i] != that_val[i]) { + return false; + } + } + } + } + // f5 + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null) { + for (Map.Entry e : f5.entrySet()) { + String key = e.getKey(); + String[] this_val = e.getValue(); + String[] that_val = that.f5.get(key); + for (int i = 0; i < this_val.length; i++) { + if (!this_val[i].equals(that_val[i])) { + return false; + } + } + } + } + // f6 + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null) { + for (Map.Entry e : f6.entrySet()) { + String key = e.getKey(); + NestedClass[] this_val = e.getValue(); + NestedClass[] that_val = that.f6.get(key); + for (int i = 0; i < this_val.length; i++) { + if (!this_val[i].equals(that_val[i])) { + return false; + } + } + } + } + + return true; } @Ignore @Message @Beans diff --git a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java index d1e05757f..c9ddcd3b3 100644 --- a/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java +++ b/src/test/java/org/msgpack/testclasses/MapTypeFieldsClassNotNullable.java @@ -22,6 +22,15 @@ public class MapTypeFieldsClassNotNullable { @NotNullable public Map f3; + @NotNullable + public Map f4; + + @NotNullable + public Map f5; + + @NotNullable + public Map f6; + public MapTypeFieldsClassNotNullable() { } @@ -65,6 +74,36 @@ public void setF3(Map f3) { this.f3 = f3; } + @NotNullable + public Map getF4() { + return f4; + } + + @NotNullable + public void setF4(Map f4) { + this.f4 = f4; + } + + @NotNullable + public Map getF5() { + return f5; + } + + @NotNullable + public void setF5(Map f5) { + this.f5 = f5; + } + + @NotNullable + public Map getF6() { + return f6; + } + + @NotNullable + public void setF6(Map f6) { + this.f6 = f6; + } + @Override public boolean equals(Object o) { if (! (o instanceof MapTypeFieldsClassNotNullable)) { @@ -131,7 +170,62 @@ public boolean equals(Object o) { } } } - return true; + // f4 + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null) { + for (Map.Entry e : f4.entrySet()) { + String key = e.getKey(); + int[] this_val = e.getValue(); + int[] that_val = that.f4.get(key); + for (int i = 0; i < this_val.length; i++) { + if (this_val[i] != that_val[i]) { + return false; + } + } + } + } + // f5 + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null) { + for (Map.Entry e : f5.entrySet()) { + String key = e.getKey(); + String[] this_val = e.getValue(); + String[] that_val = that.f5.get(key); + for (int i = 0; i < this_val.length; i++) { + if (!this_val[i].equals(that_val[i])) { + return false; + } + } + } + } + // f6 + if (f6 == null) { + if (that.f6 != null) { + return false; + } + } + if (that.f6 != null) { + for (Map.Entry e : f6.entrySet()) { + String key = e.getKey(); + NestedClass[] this_val = e.getValue(); + NestedClass[] that_val = that.f6.get(key); + for (int i = 0; i < this_val.length; i++) { + if (!this_val[i].equals(that_val[i])) { + return false; + } + } + } + } + + return true; } @Ignore @Message @Beans From bbad98355eb5b10c6412d7a9d6d72609978d8080 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 27 Apr 2012 02:01:41 +0900 Subject: [PATCH 302/409] changed CHANGES.txt --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index a31632368..7c553a275 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,7 @@ Release 0.6.5 IMPROVEMENTS MSGPACK-59: includes OSGi headers in manifest + Implements a template generation for GenericArrayType Release 0.6.4 - 2012/01/05 NEW FEATURES From 65a31733f353c3e82885ee9fd66714199b43e726 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 5 May 2012 14:37:01 -0700 Subject: [PATCH 303/409] changed versions of dependencies: javassist and json-simple --- CHANGES.txt | 7 ++++++- pom.xml | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 7c553a275..e3a27bbe7 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,9 @@ -Release 0.6.5 +Release 0.6.6 - 2011/11/08 + IMPROVEMENTS + Changes version of dependency json-simple: 1.1 to 1.1.1 + Changes version of dependency Javassist: 3.15.0-GA to 3.16.1-GA + +Release 0.6.5 - 2012/01/12 IMPROVEMENTS MSGPACK-59: includes OSGi headers in manifest Implements a template generation for GenericArrayType diff --git a/pom.xml b/pom.xml index 2f63be742..4c57d8431 100644 --- a/pom.xml +++ b/pom.xml @@ -46,12 +46,12 @@ com.googlecode.json-simple json-simple - 1.1 + 1.1.1 org.javassist javassist - 3.15.0-GA + 3.16.1-GA compile From 8ec64c1351f91da89c8e0f8da95a7adf8ec37a3b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:05:20 -0700 Subject: [PATCH 304/409] fixed bug: cannot generate templates of classes that have fields of generic WildcardType types --- .../org/msgpack/template/AnyTemplate.java | 3 + .../msgpack/template/TemplateRegistry.java | 60 ++++++++++++------- 2 files changed, 40 insertions(+), 23 deletions(-) diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 0712644cc..03c06e216 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -48,6 +48,9 @@ public T read(Unpacker u, T to, boolean required) throws IOException, if (!required && u.trySkipNil()) { return null; } + if (to == null) { + throw new MessageTypeException("convert into unknown type is invalid"); + } T o = u.read(to); if (required && o == null) { throw new MessageTypeException("Unexpected nil value"); diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 9ec638178..75b90568e 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -26,6 +26,7 @@ import java.lang.reflect.GenericArrayType; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.lang.reflect.WildcardType; import java.math.BigDecimal; import java.math.BigInteger; import java.nio.ByteBuffer; @@ -194,10 +195,14 @@ public synchronized void unregister() { public synchronized Template lookup(Type targetType) { Template tmpl; - // TODO FIXME #MN should refactor this method call. - tmpl = lookupGenericType(targetType); - if (tmpl != null) { - return tmpl; + if (targetType instanceof ParameterizedType) { + // ParameterizedType is not a Class + ParameterizedType paramedType = (ParameterizedType) targetType; + tmpl = lookupGenericType(paramedType); + if (tmpl != null) { + return tmpl; + } + targetType = paramedType.getRawType(); } tmpl = lookupGenericArrayType(targetType); @@ -210,6 +215,13 @@ public synchronized Template lookup(Type targetType) { return tmpl; } + if (targetType instanceof WildcardType) { + // WildcardType is not a Class + tmpl = new AnyTemplate(this); + register(targetType, tmpl); + return tmpl; + } + Class targetClass = (Class) targetType; // MessagePackable interface is implemented @@ -222,6 +234,14 @@ public synchronized Template lookup(Type targetType) { return tmpl; } + if (targetClass.isInterface()) { + // writing interfaces will succeed + // reading into interfaces will fail + tmpl = new AnyTemplate(this); + register(targetType, tmpl); + return tmpl; + } + // find matched template builder and build template tmpl = lookupAfterBuilding(targetClass); if (tmpl != null) { @@ -251,34 +271,28 @@ public synchronized Template lookup(Type targetType) { "Try to add @Message annotation to the class or call MessagePack.register(Type)."); } - private Template lookupGenericType(Type targetType) { - Template tmpl = null; - if (targetType instanceof ParameterizedType) { - ParameterizedType paramedType = (ParameterizedType) targetType; + private Template lookupGenericType(ParameterizedType paramedType) { + Template tmpl = lookupGenericTypeImpl(paramedType); + if (tmpl != null) { + return tmpl; + } - // ParameterizedType is not a Class? - tmpl = lookupGenericTypeImpl(paramedType); + try { + tmpl = parent.lookupGenericTypeImpl(paramedType); if (tmpl != null) { return tmpl; } - - try { - tmpl = parent.lookupGenericTypeImpl(paramedType); - if (tmpl != null) { - return tmpl; - } - } catch (NullPointerException e) { // ignore - } - targetType = paramedType.getRawType(); + } catch (NullPointerException e) { // ignore } - return tmpl; + + return null; } private Template lookupGenericTypeImpl(final ParameterizedType targetType) { Type rawType = targetType.getRawType(); - GenericTemplate tmpl = genericCache.get(rawType); - if (tmpl == null) { + GenericTemplate gtmpl = genericCache.get(rawType); + if (gtmpl == null) { return null; } @@ -288,7 +302,7 @@ private Template lookupGenericTypeImpl(final ParameterizedType targetType) { tmpls[i] = lookup(types[i]); } - return tmpl.build(tmpls); + return gtmpl.build(tmpls); } private Template lookupGenericArrayType(Type targetType) { From c8e6435b801d8ac107bc022394dbeb18f28af09b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:06:04 -0700 Subject: [PATCH 305/409] changed CHANGES file --- CHANGES.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index e3a27bbe7..4a2392338 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,12 +1,16 @@ -Release 0.6.6 - 2011/11/08 +Release 0.6.6 - 2012/XX/XX + BUG FIXES + Fixes bug: cannot generate templates of user-classes that have fields of + generic WildcardType types + IMPROVEMENTS Changes version of dependency json-simple: 1.1 to 1.1.1 Changes version of dependency Javassist: 3.15.0-GA to 3.16.1-GA + Implements a template generation for GenericArrayType Release 0.6.5 - 2012/01/12 IMPROVEMENTS MSGPACK-59: includes OSGi headers in manifest - Implements a template generation for GenericArrayType Release 0.6.4 - 2012/01/05 NEW FEATURES From a348681839b05a1202d788ed14fb2e82313bd542 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:24:25 -0700 Subject: [PATCH 306/409] increased limition of element sizes of unpacked array and map objects --- src/main/java/org/msgpack/unpacker/AbstractUnpacker.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 45575bb3e..d9731cdf1 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -27,9 +27,9 @@ public abstract class AbstractUnpacker implements Unpacker { protected MessagePack msgpack; - protected int rawSizeLimit = 67108864; + protected int rawSizeLimit = 134217728; - protected int arraySizeLimit = 4096; + protected int arraySizeLimit = 65536; protected int mapSizeLimit = 4096; From a9b3d2541f5d5ea59a1cc56800c6fc8f9f46507d Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:26:37 -0700 Subject: [PATCH 307/409] changed CHANGES file --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index 4a2392338..14b0b6dd9 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -7,6 +7,7 @@ Release 0.6.6 - 2012/XX/XX Changes version of dependency json-simple: 1.1 to 1.1.1 Changes version of dependency Javassist: 3.15.0-GA to 3.16.1-GA Implements a template generation for GenericArrayType + Increases limition of element sizes of unpacked array and map objects Release 0.6.5 - 2012/01/12 IMPROVEMENTS From f9b011465fdf09b772ac68e8e51c02573fff85c5 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:37:23 -0700 Subject: [PATCH 308/409] Increased limition of element sizes of unpacked array and map objects --- .../msgpack/unpacker/AbstractUnpacker.java | 4 +- .../org/msgpack/unpacker/TestSizeLimit.java | 168 ------------------ 2 files changed, 2 insertions(+), 170 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index d9731cdf1..4fd8322fb 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -29,9 +29,9 @@ public abstract class AbstractUnpacker implements Unpacker { protected int rawSizeLimit = 134217728; - protected int arraySizeLimit = 65536; + protected int arraySizeLimit = 4194304; - protected int mapSizeLimit = 4096; + protected int mapSizeLimit = 2097152; protected AbstractUnpacker(MessagePack msgpack) { this.msgpack = msgpack; diff --git a/src/test/java/org/msgpack/unpacker/TestSizeLimit.java b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java index db0b756c0..08762bc19 100644 --- a/src/test/java/org/msgpack/unpacker/TestSizeLimit.java +++ b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java @@ -28,62 +28,6 @@ public class TestSizeLimit { public void testRawSizeLimit() throws Exception { MessagePack msgpack = new MessagePack(); Template tmpl = Templates.TByteArray; - { // default limit = 67108864, size < 67108864 - int len = 67108863; - byte[] src = new byte[len]; - for (int i = 0; i < len; i++) { - src[i] = 0x0a; - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - byte[] dst = unpacker.read(tmpl); - assertEquals(src.length, dst.length); - } - { // default limit = 67108864, size == 67108864 - int len = 67108864; - byte[] src = new byte[len]; - for (int i = 0; i < len; i++) { - src[i] = 0x0a; - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } - { // default limit = 67108864, size > 67108864 - int len = 67108865; - byte[] src = new byte[len]; - for (int i = 0; i < len; i++) { - src[i] = 0x0a; - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } { // set limit == 10, size < 10 int len = 9; byte[] src = new byte[len]; @@ -301,62 +245,6 @@ public void testRawSizeLimit() throws Exception { public void testArraySizeLimit() throws Exception { MessagePack msgpack = new MessagePack(); Template> tmpl = new ListTemplate(Templates.TInteger); - { // default limit == 4096, size < 4096 - int len = 4095; - List src = new ArrayList(len); - for (int i = 0; i < len; i++) { - src.add(i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - List dst = unpacker.read(tmpl); - assertEquals(src.size(), dst.size()); - } - { // default limit == 4096, size == 4096 - int len = 4096; - List src = new ArrayList(len); - for (int i = 0; i < len; i++) { - src.add(i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } - { // default limit == 4096, size > 4096 - int len = 4097; - List src = new ArrayList(len); - for (int i = 0; i < len; i++) { - src.add(i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } { // set limit == 10, size < 10 int len = 9; List src = new ArrayList(len); @@ -575,62 +463,6 @@ public void testMapSizeLimit() throws Exception { MessagePack msgpack = new MessagePack(); Template> tmpl = new MapTemplate(Templates.TInteger, Templates.TInteger); - { // default limit == 4096, size < 4096 - int len = 4095; - Map src = new HashMap(len); - for (int i = 0; i < len; i++) { - src.put(i, i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - Map dst = unpacker.read(tmpl); - assertEquals(src.size(), dst.size()); - } - { // default limit == 4096, size == 4096 - int len = 4096; - Map src = new HashMap(len); - for (int i = 0; i < len; i++) { - src.put(i, i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } - { // default limit == 4096, size > 4096 - int len = 4097; - Map src = new HashMap(len); - for (int i = 0; i < len; i++) { - src.put(i, i); - } - - ByteArrayOutputStream out = new ByteArrayOutputStream(); - Packer packer = msgpack.createPacker(out); - packer.write(src); - byte[] bytes = out.toByteArray(); - - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - try { - unpacker.read(tmpl); - fail(); - } catch (Throwable t) { - assertTrue(t instanceof SizeLimitException); - } - } { // set limit == 10, size < 10 int len = 9; Map src = new HashMap(len); From 3b6c1b517b0921f6477712e170cc0767462de109 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:48:12 -0700 Subject: [PATCH 309/409] [maven-release-plugin] prepare release msgpack-0.6.6 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4c57d8431..96e92edcc 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.6-SNAPSHOT + 0.6.6 bundle http://msgpack.org/ From c07c45a2f0dcc5c766bb21eb8d96ff584a4097eb Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:48:18 -0700 Subject: [PATCH 310/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 96e92edcc..be9552d16 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.6 + 0.6.7-SNAPSHOT bundle http://msgpack.org/ From a91036c4c21507adc5680c6d62daf82b935299ed Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 9 May 2012 12:54:36 -0700 Subject: [PATCH 311/409] modified CHANGES file --- CHANGES.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 14b0b6dd9..f23f4afb4 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ -Release 0.6.6 - 2012/XX/XX +Release 0.6.7 - 20XX/XX/XX + +Release 0.6.6 - 2012/05/09 BUG FIXES Fixes bug: cannot generate templates of user-classes that have fields of generic WildcardType types From 5e3b8d2f2cd4844c61148c34f90a69d9b57243fd Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 16 May 2012 23:30:06 -0700 Subject: [PATCH 312/409] Fixed bug: Writing message with java.util.Set field causes StackOverflowError (MSGPACK-74) --- .../msgpack/template/TemplateRegistry.java | 56 ++++++++++++++++++- 1 file changed, 55 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 75b90568e..7a8621f4d 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -285,12 +285,25 @@ private Template lookupGenericType(ParameterizedType paramedType) { } catch (NullPointerException e) { // ignore } + tmpl = lookupGenericInterfaceTypes(paramedType); + if (tmpl != null) { + return tmpl; + } + + tmpl = lookupGenericSuperclasses(paramedType); + if (tmpl != null) { + return tmpl; + } + return null; } - private Template lookupGenericTypeImpl(final ParameterizedType targetType) { + private Template lookupGenericTypeImpl(ParameterizedType targetType) { Type rawType = targetType.getRawType(); + return lookupGenericTypeImpl0(targetType, rawType); + } + private Template lookupGenericTypeImpl0(ParameterizedType targetType, Type rawType) { GenericTemplate gtmpl = genericCache.get(rawType); if (gtmpl == null) { return null; @@ -305,6 +318,47 @@ private Template lookupGenericTypeImpl(final ParameterizedType targetType) { return gtmpl.build(tmpls); } + private Template lookupGenericInterfaceTypes(ParameterizedType targetType) { + Type rawType = targetType.getRawType(); + Template tmpl = null; + + try { + Class[] infTypes = ((Class) rawType).getInterfaces(); + for (Class infType : infTypes) { + tmpl = lookupGenericTypeImpl0(targetType, infType); + if (tmpl != null) { + return tmpl; + } + } + } catch (ClassCastException e) { // ignore + } + + return tmpl; + } + + private Template lookupGenericSuperclasses(ParameterizedType targetType) { + Type rawType = targetType.getRawType(); + Template tmpl = null; + + try { + Class superClass = ((Class) rawType).getSuperclass(); + if (superClass == null) { + return null; + } + + for (; superClass != Object.class; superClass = superClass.getSuperclass()) { + tmpl = lookupGenericTypeImpl0(targetType, superClass); + if (tmpl != null) { + register(targetType, tmpl); + return tmpl; + } + } + } catch (ClassCastException e) { // ignore + } + + return tmpl; + } + private Template lookupGenericArrayType(Type targetType) { // TODO GenericArrayType is not a Class => buildArrayTemplate if (! (targetType instanceof GenericArrayType)) { From 8f0ccde5a2ef2e9db8fadf00b3b3e84195a27134 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 17 May 2012 17:35:03 -0700 Subject: [PATCH 313/409] Fixed bug: Reading message with java.util.Set field causes IllegalArgumentException (MSGPACK-74) --- .../org/msgpack/template/SetTemplate.java | 73 +++++++++++++++++++ .../msgpack/template/TemplateRegistry.java | 3 + 2 files changed, 76 insertions(+) create mode 100644 src/main/java/org/msgpack/template/SetTemplate.java diff --git a/src/main/java/org/msgpack/template/SetTemplate.java b/src/main/java/org/msgpack/template/SetTemplate.java new file mode 100644 index 000000000..0e9e009c8 --- /dev/null +++ b/src/main/java/org/msgpack/template/SetTemplate.java @@ -0,0 +1,73 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template; + +import java.io.IOException; +import java.util.HashSet; +import java.util.Set; + +import org.msgpack.packer.Packer; +import org.msgpack.unpacker.Unpacker; +import org.msgpack.MessageTypeException; + +public class SetTemplate extends AbstractTemplate> { + private Template elementTemplate; + + public SetTemplate(Template elementTemplate) { + this.elementTemplate = elementTemplate; + } + + public void write(Packer pk, Set target, boolean required) + throws IOException { + if (!(target instanceof Set)) { + if (target == null) { + if (required) { + throw new MessageTypeException("Attempted to write null"); + } + pk.writeNil(); + return; + } + throw new MessageTypeException("Target is not a List but " + + target.getClass()); + } + pk.writeArrayBegin(target.size()); + for (E e : target) { + elementTemplate.write(pk, e); + } + pk.writeArrayEnd(); + } + + public Set read(Unpacker u, Set to, boolean required) + throws IOException { + if (!required && u.trySkipNil()) { + return null; + } + int n = u.readArrayBegin(); + if (to == null) { + to = new HashSet(n); + } else { + to.clear(); + } + for (int i = 0; i < n; i++) { + E e = elementTemplate.read(u, null); + to.add(e); + } + u.readArrayEnd(); + return to; + } +} diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7a8621f4d..7cde94b4d 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Map; import java.util.HashMap; +import java.util.Set; import java.lang.reflect.GenericArrayType; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; @@ -143,9 +144,11 @@ protected void registerTemplatesWhichRefersRegistry() { AnyTemplate anyTemplate = new AnyTemplate(this); register(List.class, new ListTemplate(anyTemplate)); + register(Set.class, new SetTemplate(anyTemplate)); register(Collection.class, new CollectionTemplate(anyTemplate)); register(Map.class, new MapTemplate(anyTemplate, anyTemplate)); registerGeneric(List.class, new GenericCollectionTemplate(this, ListTemplate.class)); + registerGeneric(Set.class, new GenericCollectionTemplate(this, SetTemplate.class)); registerGeneric(Collection.class, new GenericCollectionTemplate(this, CollectionTemplate.class)); registerGeneric(Map.class, new GenericMapTemplate(this, MapTemplate.class)); } From 0991094af1a23eab629ed7d51ed58d97cc27f254 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 17 May 2012 17:40:25 -0700 Subject: [PATCH 314/409] modified CHANGES.txt --- CHANGES.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index f23f4afb4..7232af880 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,7 @@ Release 0.6.7 - 20XX/XX/XX + BUG FIXES + MSGPACK-74 Writing message with java.util.Set field causes StackOverflowError + MSGPACK-74 Reading message with java.util.Set field causes IllegalArgumentException Release 0.6.6 - 2012/05/09 BUG FIXES From 34d41677523cc71cf7d7915843486c81abaaca40 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 25 May 2012 17:07:14 -0700 Subject: [PATCH 315/409] changed the issue manager: JIRA to GitHub --- pom.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index be9552d16..d9bb67aeb 100644 --- a/pom.xml +++ b/pom.xml @@ -25,8 +25,8 @@ - JIRA - http://jira.msgpack.org/browse/MSGPACK + GitHub + https://github.com/msgpack/msgpack-java/issues From 4106ac22aaeb4f19ac1e721bae14f5d9e7fcc405 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 4 Jun 2012 19:49:11 -0700 Subject: [PATCH 316/409] fixed a bug: ClassCastException occurs during generating a class that has fields of TypeVariable types (MSGPACK-75) --- src/main/java/org/msgpack/template/TemplateRegistry.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index 7cde94b4d..c5d9369cb 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -27,6 +27,7 @@ import java.lang.reflect.GenericArrayType; import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; +import java.lang.reflect.TypeVariable; import java.lang.reflect.WildcardType; import java.math.BigDecimal; import java.math.BigInteger; @@ -218,7 +219,8 @@ public synchronized Template lookup(Type targetType) { return tmpl; } - if (targetType instanceof WildcardType) { + if (targetType instanceof WildcardType || + targetType instanceof TypeVariable) { // WildcardType is not a Class tmpl = new AnyTemplate(this); register(targetType, tmpl); From f15805d0f8f285a9d52d671e41d813400afc7335 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 5 Jun 2012 12:18:08 -0700 Subject: [PATCH 317/409] fixed a bug: tries to generate a template of an abstract class (MSGPACK-76) --- .../org/msgpack/template/builder/AbstractTemplateBuilder.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 173c7a53d..96817f695 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -72,6 +72,10 @@ public Template buildTemplate(final Class targetClass, final FieldList protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); protected void checkClassValidation(final Class targetClass) { + if (javassist.Modifier.isAbstract(targetClass.getModifiers())) { + throw new TemplateBuildException( + "Cannot build template for abstract class: " + targetClass.getName()); + } if (targetClass.isInterface()) { throw new TemplateBuildException( "Cannot build template for interface: " + targetClass.getName()); From 5996f7c822b7d7136f8a449a0f92436d41f351a0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 5 Jun 2012 12:18:44 -0700 Subject: [PATCH 318/409] changed test programs for MSGPACK-76 --- .../template/builder/TestJavassistBufferPackBufferUnpack.java | 1 + .../msgpack/template/builder/TestJavassistBufferPackConvert.java | 1 + .../msgpack/template/builder/TestJavassistBufferPackUnpack.java | 1 + .../msgpack/template/builder/TestJavassistPackBufferUnpack.java | 1 + .../org/msgpack/template/builder/TestJavassistPackConvert.java | 1 + .../org/msgpack/template/builder/TestJavassistPackUnpack.java | 1 + .../builder/TestReflectionBeansBufferPackBufferUnpack.java | 1 + .../template/builder/TestReflectionBeansBufferPackConvert.java | 1 + .../template/builder/TestReflectionBeansBufferPackUnpack.java | 1 + .../template/builder/TestReflectionBeansPackBufferUnpack.java | 1 + .../msgpack/template/builder/TestReflectionBeansPackConvert.java | 1 + .../msgpack/template/builder/TestReflectionBeansPackUnpack.java | 1 + .../template/builder/TestReflectionBufferPackBufferUnpack.java | 1 + .../template/builder/TestReflectionBufferPackConvert.java | 1 + .../msgpack/template/builder/TestReflectionBufferPackUnpack.java | 1 + .../msgpack/template/builder/TestReflectionPackBufferUnpack.java | 1 + .../org/msgpack/template/builder/TestReflectionPackConvert.java | 1 + .../org/msgpack/template/builder/TestReflectionPackUnpack.java | 1 + 18 files changed, 18 insertions(+) diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java index 512fe57c6..f31575e46 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackBufferUnpack.java @@ -239,6 +239,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java index 767fd8f07..059ad7b39 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackConvert.java @@ -259,6 +259,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java index c55748735..e7cdc94eb 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistBufferPackUnpack.java @@ -232,6 +232,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java index 6817728d3..f636eca7b 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackBufferUnpack.java @@ -250,6 +250,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java index 352e90842..febd9f760 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackConvert.java @@ -261,6 +261,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java index e5106c804..c3122970f 100644 --- a/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestJavassistPackUnpack.java @@ -242,6 +242,7 @@ public void testAbstractClass() throws Exception { JavassistTemplateBuilder builder = new JavassistTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index a38d64d84..ad82c3ae4 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -239,6 +239,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index 9ff0c3a66..b1bb32ffc 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -259,6 +259,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index 74e1c41bf..553b47818 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -232,6 +232,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index f5195373d..6481724a1 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -250,6 +250,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index 151601afa..b0238c5f5 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -270,6 +270,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 14b80cf61..4c88d4baf 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -242,6 +242,7 @@ public void testAbstractClass() throws Exception { ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java index c452e18c1..f41c20691 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackBufferUnpack.java @@ -239,6 +239,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java index be33bd10d..95663681b 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackConvert.java @@ -259,6 +259,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java index 6d569bbae..7d418aaee 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBufferPackUnpack.java @@ -232,6 +232,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java index 267a785e8..3617a0791 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackBufferUnpack.java @@ -250,6 +250,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java index 64158c3f0..b6727442e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackConvert.java @@ -270,6 +270,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java index a918bfddb..a6645210e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionPackUnpack.java @@ -242,6 +242,7 @@ public void testAbstractClass() throws Exception { ReflectionTemplateBuilder builder = new ReflectionTemplateBuilder(registry); try { builder.buildTemplate(AbstractClass.class); + fail(); } catch (Throwable t) { assertTrue(t instanceof TemplateBuildException); } From 27a4db7865b1b596bff1a0b014302236c77e3a96 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 5 Jun 2012 12:20:44 -0700 Subject: [PATCH 319/409] changed CHANGES.txt --- CHANGES.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 7232af880..df7e68eff 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,7 @@ Release 0.6.7 - 20XX/XX/XX BUG FIXES + MSGPACK-76 Tries to generate a template of an abstract class + MSGPACK-75 ClassCastException occurs during generating a class that has fields of TypeVariable types MSGPACK-74 Writing message with java.util.Set field causes StackOverflowError MSGPACK-74 Reading message with java.util.Set field causes IllegalArgumentException From 9d320f859b4a31e64aa466b1210ad48b7422a288 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 8 Jun 2012 15:23:26 -0700 Subject: [PATCH 320/409] add .travis.yml --- .travis.yml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..093978f87 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,9 @@ +language: java +jdk: + - openjdk6 +branches: + only: + - master +notifications: + email: + - muga.nishizawa@gmail.com From 5065eece54478b7fe194ee9d3f4e2ba553aa4c3c Mon Sep 17 00:00:00 2001 From: Takanori Takase Date: Thu, 14 Jun 2012 16:13:31 +0900 Subject: [PATCH 321/409] Added ProtectionDomain argument when creating a template class. When a template is created in Java web start application, the generated template class must have the signer infromation identical to other classes in the same package. Otherwise, java.lang.SecurityException is thrown from ClassLoader's checkCerts() method. --- src/main/java/org/msgpack/template/builder/BuildContext.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 4cb86c490..5a1311a05 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -151,7 +151,7 @@ protected void buildReadMethod() throws CannotCompileException, NotFoundExceptio protected abstract String buildReadMethodBody(); protected Class createClass() throws CannotCompileException { - return (Class) tmplCtClass.toClass(null, null); + return (Class) tmplCtClass.toClass(null, getClass().getProtectionDomain()); } protected void saveClass(final String directoryName) throws CannotCompileException, IOException { From 2b3b4ae627dac37eb10ca799aa6a441fba80a510 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 14 Jun 2012 01:01:24 -0700 Subject: [PATCH 322/409] changed CHANGES.txt according to a patch of MSGPACK-78 --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index df7e68eff..b22a8d0f1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,6 @@ Release 0.6.7 - 20XX/XX/XX BUG FIXES + MSGPACK-78 Generated template causes SecurityException when used from Java web start applications MSGPACK-76 Tries to generate a template of an abstract class MSGPACK-75 ClassCastException occurs during generating a class that has fields of TypeVariable types MSGPACK-74 Writing message with java.util.Set field causes StackOverflowError From c7ca1c3168ba0b626e66a60f4b8f80b0949f4307 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miko=C5=82aj=20Koziarkiewicz?= <> Date: Sun, 24 Jun 2012 19:40:58 +0200 Subject: [PATCH 323/409] Added android adaptations. --- NOTICE | 52 + .../java/custom/beans/BeanDescriptor.java | 105 ++ src/main/java/custom/beans/BeanInfo.java | 36 + .../java/custom/beans/EventSetDescriptor.java | 432 +++++ .../java/custom/beans/ExceptionListener.java | 23 + src/main/java/custom/beans/Expression.java | 72 + .../java/custom/beans/FeatureDescriptor.java | 249 +++ .../beans/IndexedPropertyDescriptor.java | 383 +++++ .../custom/beans/IntrospectionException.java | 27 + src/main/java/custom/beans/Introspector.java | 368 ++++ .../java/custom/beans/MethodDescriptor.java | 109 ++ .../custom/beans/ParameterDescriptor.java | 25 + .../custom/beans/PropertyChangeEvent.java | 62 + .../custom/beans/PropertyChangeListener.java | 25 + .../java/custom/beans/PropertyDescriptor.java | 300 ++++ .../java/custom/beans/PropertyEditor.java | 43 + .../custom/beans/PropertyVetoException.java | 55 + .../java/custom/beans/SimpleBeanInfo.java | 54 + .../java/custom/beans/StandardBeanInfo.java | 1505 +++++++++++++++++ src/main/java/custom/beans/Statement.java | 610 +++++++ src/main/java/custom/beans/XMLDecoder.java | 705 ++++++++ .../org/apache/harmony/beans/Argument.java | 62 + .../org/apache/harmony/beans/BeansUtils.java | 122 ++ .../org/apache/harmony/beans/Command.java | 865 ++++++++++ .../org/apache/harmony/beans/Handler.java | 146 ++ .../harmony/beans/internal/nls/Messages.java | 240 +++ .../beans/internal/nls/messages.properties | 133 ++ .../template/builder/BeansFieldEntry.java | 2 +- .../ReflectionBeansTemplateBuilder.java | 8 +- 29 files changed, 6813 insertions(+), 5 deletions(-) create mode 100644 NOTICE create mode 100644 src/main/java/custom/beans/BeanDescriptor.java create mode 100644 src/main/java/custom/beans/BeanInfo.java create mode 100644 src/main/java/custom/beans/EventSetDescriptor.java create mode 100644 src/main/java/custom/beans/ExceptionListener.java create mode 100644 src/main/java/custom/beans/Expression.java create mode 100644 src/main/java/custom/beans/FeatureDescriptor.java create mode 100644 src/main/java/custom/beans/IndexedPropertyDescriptor.java create mode 100644 src/main/java/custom/beans/IntrospectionException.java create mode 100644 src/main/java/custom/beans/Introspector.java create mode 100644 src/main/java/custom/beans/MethodDescriptor.java create mode 100644 src/main/java/custom/beans/ParameterDescriptor.java create mode 100644 src/main/java/custom/beans/PropertyChangeEvent.java create mode 100644 src/main/java/custom/beans/PropertyChangeListener.java create mode 100644 src/main/java/custom/beans/PropertyDescriptor.java create mode 100644 src/main/java/custom/beans/PropertyEditor.java create mode 100644 src/main/java/custom/beans/PropertyVetoException.java create mode 100644 src/main/java/custom/beans/SimpleBeanInfo.java create mode 100644 src/main/java/custom/beans/StandardBeanInfo.java create mode 100644 src/main/java/custom/beans/Statement.java create mode 100644 src/main/java/custom/beans/XMLDecoder.java create mode 100644 src/main/java/org/apache/harmony/beans/Argument.java create mode 100644 src/main/java/org/apache/harmony/beans/BeansUtils.java create mode 100644 src/main/java/org/apache/harmony/beans/Command.java create mode 100644 src/main/java/org/apache/harmony/beans/Handler.java create mode 100644 src/main/java/org/apache/harmony/beans/internal/nls/Messages.java create mode 100644 src/main/java/org/apache/harmony/beans/internal/nls/messages.properties diff --git a/NOTICE b/NOTICE new file mode 100644 index 000000000..ab41a4cb6 --- /dev/null +++ b/NOTICE @@ -0,0 +1,52 @@ +This project uses code from the ASF Apache Harmony project. The following are the relevant notices +from that project, included in order to comply with its license requirements. +------------------- +Apache Harmony +Copyright 2006, 2010 The Apache Software Foundation. + +This product includes software developed at +The Apache Software Foundation (http://www.apache.org/). + +Portions of Apache Harmony were originally developed by +Intel Corporation and are licensed to the Apache Software +Foundation under the "Software Grant and Corporate Contribution +License Agreement" and for which the following copyright notices +apply + (C) Copyright 2005 Intel Corporation + (C) Copyright 2005-2006 Intel Corporation + (C) Copyright 2006 Intel Corporation + +Portions of Apache Harmony's Class Library TEXT module contain JavaDoc +derived from the ICU project. +Copyright (c) 1995-2008 International Business Machines Corporation and others + + +The Apache Harmony Development Kit (HDK) contains a jar file from the +Apache Derby Project for which the following notice applies: + +Apache Derby +Copyright 2004-2007 The Apache Software Foundation + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + +Portions of Derby were originally developed by +International Business Machines Corporation and are +licensed to the Apache Software Foundation under the +"Software Grant and Corporate Contribution License Agreement", +informally known as the "Derby CLA". +The following copyright notice(s) were affixed to portions of the code +with which this file is now or was at one time distributed +and are placed here unaltered. + +(C) Copyright 1997,2004 International Business Machines Corporation. +All rights reserved. + +(C) Copyright IBM Corp. 2003. + +The portion of the functionTests under 'nist' was originally +developed by the National Institute of Standards and Technology (NIST), +an agency of the United States Department of Commerce, and adapted by +International Business Machines Corporation in accordance with the NIST +Software Acknowledgment and Redistribution document at +http://www.itl.nist.gov/div897/ctg/sql_form.htm \ No newline at end of file diff --git a/src/main/java/custom/beans/BeanDescriptor.java b/src/main/java/custom/beans/BeanDescriptor.java new file mode 100644 index 000000000..f0b963833 --- /dev/null +++ b/src/main/java/custom/beans/BeanDescriptor.java @@ -0,0 +1,105 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package custom.beans; + + +/** + * Describes a bean's global information. + */ +public class BeanDescriptor extends FeatureDescriptor { + + private Class beanClass; + + private Class customizerClass; + + /** + *

+ * Constructs an instance with the bean's {@link Class} and a customizer + * {@link Class}. The descriptor's {@link #getName()} is set as the + * unqualified name of the beanClass. + *

+ * + * @param beanClass + * The bean's Class. + * @param customizerClass + * The bean's customizer Class. + */ + public BeanDescriptor(Class beanClass, Class customizerClass) { + if (beanClass == null) { + throw new NullPointerException(); + } + setName(getShortClassName(beanClass)); + this.beanClass = beanClass; + this.customizerClass = customizerClass; + } + + /** + *

+ * Constructs an instance with the bean's {@link Class}. The descriptor's + * {@link #getName()} is set as the unqualified name of the + * beanClass. + *

+ * + * @param beanClass + * The bean's Class. + */ + public BeanDescriptor(Class beanClass) { + this(beanClass, null); + } + + /** + *

+ * Gets the bean's customizer {@link Class}/ + *

+ * + * @return A {@link Class} instance or null. + */ + public Class getCustomizerClass() { + return customizerClass; + } + + /** + *

+ * Gets the bean's {@link Class}. + *

+ * + * @return A {@link Class} instance. + */ + public Class getBeanClass() { + return beanClass; + } + + /** + *

+ * Utility method for getting the unqualified name of a {@link Class}. + *

+ * + * @param leguminaClass + * The Class to get the name from. + * @return A String instance or null. + */ + private String getShortClassName(Class leguminaClass) { + if(leguminaClass == null) { + return null; + } + String beanClassName = leguminaClass.getName(); + int lastIndex = beanClassName.lastIndexOf("."); //$NON-NLS-1$ + return (lastIndex == -1) ? beanClassName : beanClassName.substring(lastIndex + 1); + } + +} diff --git a/src/main/java/custom/beans/BeanInfo.java b/src/main/java/custom/beans/BeanInfo.java new file mode 100644 index 000000000..2c4a24ab4 --- /dev/null +++ b/src/main/java/custom/beans/BeanInfo.java @@ -0,0 +1,36 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + + +public interface BeanInfo { + + public PropertyDescriptor[] getPropertyDescriptors(); + + public MethodDescriptor[] getMethodDescriptors(); + + public EventSetDescriptor[] getEventSetDescriptors(); + + public BeanInfo[] getAdditionalBeanInfo(); + + public BeanDescriptor getBeanDescriptor(); + + public int getDefaultPropertyIndex(); + + public int getDefaultEventIndex(); +} diff --git a/src/main/java/custom/beans/EventSetDescriptor.java b/src/main/java/custom/beans/EventSetDescriptor.java new file mode 100644 index 000000000..db5063914 --- /dev/null +++ b/src/main/java/custom/beans/EventSetDescriptor.java @@ -0,0 +1,432 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.TooManyListenersException; +import org.apache.harmony.beans.internal.nls.Messages; + +public class EventSetDescriptor extends FeatureDescriptor { + private Class listenerType; + + private ArrayList listenerMethodDescriptors; + + private Method[] listenerMethods; + + private Method getListenerMethod; + + private Method addListenerMethod; + + private Method removeListenerMethod; + + private boolean unicast; + + private boolean inDefaultEventSet = true; + + public EventSetDescriptor(Class sourceClass, String eventSetName, + Class listenerType, String listenerMethodName) + throws IntrospectionException { + checkNotNull(sourceClass, eventSetName, listenerType, + listenerMethodName); + setName(eventSetName); + this.listenerType = listenerType; + + Method method = findListenerMethodByName(listenerMethodName); + checkEventType(eventSetName, method); + listenerMethodDescriptors = new ArrayList(); + listenerMethodDescriptors.add(new MethodDescriptor(method)); + addListenerMethod = findMethodByPrefix(sourceClass, "add", ""); //$NON-NLS-1$ //$NON-NLS-2$ + removeListenerMethod = findMethodByPrefix(sourceClass, "remove", ""); //$NON-NLS-1$ //$NON-NLS-2$ + + if (addListenerMethod == null || removeListenerMethod == null) { + throw new IntrospectionException(Messages.getString("custom.beans.38")); //$NON-NLS-1$ + } + + getListenerMethod = findMethodByPrefix(sourceClass, "get", "s"); //$NON-NLS-1$ //$NON-NLS-2$ + unicast = isUnicastByDefault(addListenerMethod); + } + + public EventSetDescriptor(Class sourceClass, String eventSetName, + Class listenerType, String[] listenerMethodNames, + String addListenerMethodName, String removeListenerMethodName) + throws IntrospectionException { + this(sourceClass, eventSetName, listenerType, listenerMethodNames, + addListenerMethodName, removeListenerMethodName, null); + + } + + public EventSetDescriptor(Class sourceClass, String eventSetName, + Class listenerType, String[] listenerMethodNames, + String addListenerMethodName, String removeListenerMethodName, + String getListenerMethodName) throws IntrospectionException { + + checkNotNull(sourceClass, eventSetName, listenerType, + listenerMethodNames); + + setName(eventSetName); + this.listenerType = listenerType; + + listenerMethodDescriptors = new ArrayList(); + for (String element : listenerMethodNames) { + Method m = findListenerMethodByName(element); + + // checkEventType(eventSetName, m); + listenerMethodDescriptors.add(new MethodDescriptor(m)); + } + + if (addListenerMethodName != null) { + this.addListenerMethod = findAddRemoveListenerMethod(sourceClass, + addListenerMethodName); + } + if (removeListenerMethodName != null) { + this.removeListenerMethod = findAddRemoveListenerMethod( + sourceClass, removeListenerMethodName); + } + if (getListenerMethodName != null) { + this.getListenerMethod = findGetListenerMethod(sourceClass, + getListenerMethodName); + } + this.unicast = isUnicastByDefault(addListenerMethod); + } + + private Method findListenerMethodByName(String listenerMethodName) + throws IntrospectionException { + Method result = null; + Method[] methods = listenerType.getMethods(); + for (Method method : methods) { + if (listenerMethodName.equals(method.getName())) { + Class[] paramTypes = method.getParameterTypes(); + if (paramTypes.length == 1 + && paramTypes[0].getName().endsWith("Event")) { //$NON-NLS-1$ + result = method; + break; + } + + } + } + if (null == result) { + throw new IntrospectionException(Messages.getString("custom.beans.31", //$NON-NLS-1$ + listenerMethodName, listenerType.getName())); + } + return result; + } + + public EventSetDescriptor(String eventSetName, Class listenerType, + Method[] listenerMethods, Method addListenerMethod, + Method removeListenerMethod) throws IntrospectionException { + + this(eventSetName, listenerType, listenerMethods, addListenerMethod, + removeListenerMethod, null); + } + + public EventSetDescriptor(String eventSetName, Class listenerType, + Method[] listenerMethods, Method addListenerMethod, + Method removeListenerMethod, Method getListenerMethod) + throws IntrospectionException { + + setName(eventSetName); + this.listenerType = listenerType; + + this.listenerMethods = listenerMethods; + if (listenerMethods != null) { + listenerMethodDescriptors = new ArrayList(); + + for (Method element : listenerMethods) { + // XXX do we need this check? + // checkEventType(eventSetName, element); + // if (checkMethod(listenerType, element)) { + this.listenerMethodDescriptors + .add(new MethodDescriptor(element)); + // } + } + } + + this.addListenerMethod = addListenerMethod; + this.removeListenerMethod = removeListenerMethod; + this.getListenerMethod = getListenerMethod; + this.unicast = isUnicastByDefault(addListenerMethod); + } + + public EventSetDescriptor(String eventSetName, Class listenerType, + MethodDescriptor[] listenerMethodDescriptors, + Method addListenerMethod, Method removeListenerMethod) + throws IntrospectionException { + + this(eventSetName, listenerType, null, addListenerMethod, + removeListenerMethod, null); + + if (listenerMethodDescriptors != null) { + this.listenerMethodDescriptors = new ArrayList(); + + for (MethodDescriptor element : listenerMethodDescriptors) { + this.listenerMethodDescriptors.add(element); + } + } + } + + // ensures that there is no nulls + @SuppressWarnings("nls") + private void checkNotNull(Object sourceClass, Object eventSetName, + Object alistenerType, Object listenerMethodName) { + if (sourceClass == null) { + throw new NullPointerException(Messages.getString("custom.beans.0C")); + } + if (eventSetName == null) { + throw new NullPointerException(Messages.getString("custom.beans.53")); + } + if (alistenerType == null) { + throw new NullPointerException(Messages.getString("custom.beans.54")); + } + if (listenerMethodName == null) { + throw new NullPointerException(Messages.getString("custom.beans.52")); + } + } + + /** + * Checks that given listener method has an argument of the valid type. + * + * @param eventSetName + * event set name + * @param listenerMethod + * listener method + * @throws IntrospectionException + * if check fails + */ + private static void checkEventType(String eventSetName, + Method listenerMethod) throws IntrospectionException { + Class[] params = listenerMethod.getParameterTypes(); + String firstParamTypeName = null; + String eventTypeName = prepareEventTypeName(eventSetName); + + if (params.length > 0) { + firstParamTypeName = extractShortClassName(params[0] + .getName()); + } + + if (firstParamTypeName == null + || !firstParamTypeName.equals(eventTypeName)) { + throw new IntrospectionException(Messages.getString("custom.beans.51", //$NON-NLS-1$ + listenerMethod.getName(), eventTypeName)); + } + } + + /** + * @param fullClassName full name of the class + * @return name with package and encapsulating class info omitted + */ + private static String extractShortClassName(String fullClassName) { + int k = fullClassName.lastIndexOf('$'); + k = (k == -1 ? fullClassName.lastIndexOf('.') : k); + return fullClassName.substring(k + 1); + } + + private static String prepareEventTypeName(String eventSetName) { + StringBuilder sb = new StringBuilder(); + + if (eventSetName != null && eventSetName.length() > 0) { + sb.append(Character.toUpperCase(eventSetName.charAt(0))); + + if (eventSetName.length() > 1) { + sb.append(eventSetName.substring(1)); + } + } + + sb.append("Event"); //$NON-NLS-1$ + return sb.toString(); + } + + public Method[] getListenerMethods() { + if (listenerMethods != null) { + return listenerMethods; + } + + if (listenerMethodDescriptors != null) { + listenerMethods = new Method[listenerMethodDescriptors.size()]; + int index = 0; + for (MethodDescriptor md : listenerMethodDescriptors) { + listenerMethods[index++] = md.getMethod(); + } + return listenerMethods; + } + return null; + } + + public MethodDescriptor[] getListenerMethodDescriptors() { + return listenerMethodDescriptors == null ? null + : listenerMethodDescriptors.toArray(new MethodDescriptor[0]); + } + + public Method getRemoveListenerMethod() { + return removeListenerMethod; + } + + public Method getGetListenerMethod() { + return getListenerMethod; + } + + public Method getAddListenerMethod() { + return addListenerMethod; + } + + public Class getListenerType() { + return listenerType; + } + + public void setUnicast(boolean unicast) { + this.unicast = unicast; + } + + public void setInDefaultEventSet(boolean inDefaultEventSet) { + this.inDefaultEventSet = inDefaultEventSet; + } + + public boolean isUnicast() { + return unicast; + } + + public boolean isInDefaultEventSet() { + return inDefaultEventSet; + } + + /** + * Searches for {add|remove}Listener methods in the event source. Parameter + * check is also performed. + * + * @param sourceClass + * event source class + * @param methodName + * method name to search + * @return found method + * @throws IntrospectionException + * if no valid method found + */ + private Method findAddRemoveListenerMethod(Class sourceClass, + String methodName) throws IntrospectionException { + try { + return sourceClass.getMethod(methodName, listenerType); + } catch (NoSuchMethodException e) { + return findAddRemoveListnerMethodWithLessCheck(sourceClass, + methodName); + } catch (Exception e) { + throw new IntrospectionException(Messages.getString("custom.beans.31", //$NON-NLS-1$ + methodName, listenerType.getName())); + } + } + + private Method findAddRemoveListnerMethodWithLessCheck( + Class sourceClass, String methodName) + throws IntrospectionException { + Method[] methods = sourceClass.getMethods(); + Method result = null; + for (Method method : methods) { + if (method.getName().equals(methodName)) { + Class[] paramTypes = method.getParameterTypes(); + if (paramTypes.length == 1) { + result = method; + break; + } + } + } + if (null == result) { + throw new IntrospectionException(Messages.getString("custom.beans.31", //$NON-NLS-1$ + methodName, listenerType.getName())); + } + return result; + } + + /** + * @param sourceClass + * class of event source + * @param methodName + * name of the custom getListeners() method + * @return found Method object for custom getListener or null if nothing is + * found + */ + private Method findGetListenerMethod(Class sourceClass, String methodName) { + try { + return sourceClass.getMethod(methodName); + } catch (Exception e) { + // RI keeps silence here and just returns null + return null; + } + } + + private Method findMethodByPrefix(Class sourceClass, String prefix, + String postfix) { + String shortName = listenerType.getName(); + if (listenerType.getPackage() != null) { + shortName = shortName.substring(listenerType.getPackage().getName() + .length() + 1); + } + String methodName = prefix + shortName + postfix; + try { + if ("get".equals(prefix)) { //$NON-NLS-1$ + return sourceClass.getMethod(methodName); + } + } catch (NoSuchMethodException nsme) { + return null; + } + Method[] methods = sourceClass.getMethods(); + for (int i = 0; i < methods.length; i++) { + if (methods[i].getName().equals(methodName)) { + Class[] paramTypes = methods[i].getParameterTypes(); + if (paramTypes.length == 1) { + return methods[i]; + } + } + } + return null; + } + + private static boolean isUnicastByDefault(Method addMethod) { + if (addMethod != null) { + Class[] exceptionTypes = addMethod.getExceptionTypes(); + for (Class element : exceptionTypes) { + if (element.equals(TooManyListenersException.class)) { + return true; + } + } + } + return false; + } + + void merge(EventSetDescriptor event) { + super.merge(event); + if (addListenerMethod == null) { + addListenerMethod = event.addListenerMethod; + } + if (getListenerMethod == null) { + getListenerMethod = event.getListenerMethod; + } + if (listenerMethodDescriptors == null) { + listenerMethodDescriptors = event.listenerMethodDescriptors; + } + if (listenerMethods == null) { + listenerMethods = event.listenerMethods; + } + if (listenerType == null) { + listenerType = event.listenerType; + } + + if (removeListenerMethod == null) { + removeListenerMethod = event.removeListenerMethod; + } + inDefaultEventSet &= event.inDefaultEventSet; + } +} diff --git a/src/main/java/custom/beans/ExceptionListener.java b/src/main/java/custom/beans/ExceptionListener.java new file mode 100644 index 000000000..390ba4326 --- /dev/null +++ b/src/main/java/custom/beans/ExceptionListener.java @@ -0,0 +1,23 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +public interface ExceptionListener { + + public void exceptionThrown(Exception e); +} diff --git a/src/main/java/custom/beans/Expression.java b/src/main/java/custom/beans/Expression.java new file mode 100644 index 000000000..aaddf09b4 --- /dev/null +++ b/src/main/java/custom/beans/Expression.java @@ -0,0 +1,72 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import org.apache.harmony.beans.BeansUtils; + +public class Expression extends Statement { + + boolean valueIsDefined = false; + + Object value; + + public Expression(Object value, Object target, String methodName, + Object[] arguments) { + super(target, methodName, arguments); + this.value = value; + this.valueIsDefined = true; + } + + public Expression(Object target, String methodName, Object[] arguments) { + super(target, methodName, arguments); + this.value = null; + this.valueIsDefined = false; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + if (!valueIsDefined) { + sb.append(""); //$NON-NLS-1$ + } else { + if (value == null) { + sb.append(BeansUtils.NULL); + } else { + Class clazz = value.getClass(); + sb.append(clazz == String.class ? BeansUtils.QUOTE : BeansUtils + .idOfClass(clazz)); + } + } + sb.append('='); + sb.append(super.toString()); + return sb.toString(); + } + + public void setValue(Object value) { + this.value = value; + this.valueIsDefined = true; + } + + public Object getValue() throws Exception { + if (!valueIsDefined) { + value = invokeMethod(); + valueIsDefined = true; + } + return value; + } +} \ No newline at end of file diff --git a/src/main/java/custom/beans/FeatureDescriptor.java b/src/main/java/custom/beans/FeatureDescriptor.java new file mode 100644 index 000000000..4a4612939 --- /dev/null +++ b/src/main/java/custom/beans/FeatureDescriptor.java @@ -0,0 +1,249 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package custom.beans; + +import java.util.Collections; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.Map; + +/** + * Common base class for Descriptors. + */ +public class FeatureDescriptor { + + private Map values; + + boolean preferred, hidden, expert; + + String shortDescription; + + String name; + + String displayName; + + /** + *

+ * Constructs an instance. + *

+ */ + public FeatureDescriptor() { + this.values = new HashMap(); + } + + /** + *

+ * Sets the value for the named attribute. + *

+ * + * @param attributeName + * The name of the attribute to set a value with. + * @param value + * The value to set. + */ + public void setValue(String attributeName, Object value) { + if (attributeName == null || value == null) { + throw new NullPointerException(); + } + values.put(attributeName, value); + } + + /** + *

+ * Gets the value associated with the named attribute. + *

+ * + * @param attributeName + * The name of the attribute to get a value for. + * @return The attribute's value. + */ + public Object getValue(String attributeName) { + if (attributeName != null) { + return values.get(attributeName); + } + return null; + } + + /** + *

+ * Enumerates the attribute names. + *

+ * + * @return An instance of {@link Enumeration}. + */ + public Enumeration attributeNames() { + // Create a new list, so that the references are copied + return Collections.enumeration(new LinkedList(values.keySet())); + } + + /** + *

+ * Sets the short description. + *

+ * + * @param text + * The description to set. + */ + public void setShortDescription(String text) { + this.shortDescription = text; + } + + /** + *

+ * Sets the name. + *

+ * + * @param name + * The name to set. + */ + public void setName(String name) { + this.name = name; + } + + /** + *

+ * Sets the display name. + *

+ * + * @param displayName + * The display name to set. + */ + public void setDisplayName(String displayName) { + this.displayName = displayName; + } + + /** + *

+ * Gets the short description or {@link #getDisplayName()} if not set. + *

+ * + * @return The description. + */ + public String getShortDescription() { + return shortDescription == null ? getDisplayName() : shortDescription; + } + + /** + *

+ * Gets the name. + *

+ * + * @return The name. + */ + public String getName() { + return name; + } + + /** + *

+ * Gets the display name or {@link #getName()} if not set. + *

+ * + * @return The display name. + */ + public String getDisplayName() { + return displayName == null ? getName() : displayName; + } + + /** + *

+ * Sets the preferred indicator. + *

+ * + * @param preferred + * true if preferred, false + * otherwise. + */ + public void setPreferred(boolean preferred) { + this.preferred = preferred; + } + + /** + *

+ * Sets the hidden indicator. + *

+ * + * @param hidden + * true if hidden, false otherwise. + */ + public void setHidden(boolean hidden) { + this.hidden = hidden; + } + + /** + *

+ * Sets the expert indicator. + *

+ * + * @param expert + * true if expert, false otherwise. + */ + public void setExpert(boolean expert) { + this.expert = expert; + } + + /** + *

+ * Indicates if this feature is preferred. + *

+ * + * @return true if preferred, false otherwise. + */ + public boolean isPreferred() { + return preferred; + } + + /** + *

+ * Indicates if this feature is hidden. + *

+ * + * @return true if hidden, false otherwise. + */ + public boolean isHidden() { + return hidden; + } + + /** + *

+ * Indicates if this feature is an expert feature. + *

+ * + * @return true if hidden, false otherwise. + */ + public boolean isExpert() { + return expert; + } + + void merge(FeatureDescriptor feature){ + assert(name.equals(feature.name)); + expert |= feature.expert; + hidden |= feature.hidden; + preferred |= feature.preferred; + if(shortDescription == null){ + shortDescription = feature.shortDescription; + } + if(name == null){ + name = feature.name; + } + if(displayName == null){ + displayName = feature.displayName; + } + } +} diff --git a/src/main/java/custom/beans/IndexedPropertyDescriptor.java b/src/main/java/custom/beans/IndexedPropertyDescriptor.java new file mode 100644 index 000000000..57946b6db --- /dev/null +++ b/src/main/java/custom/beans/IndexedPropertyDescriptor.java @@ -0,0 +1,383 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.lang.reflect.Method; + +import org.apache.harmony.beans.BeansUtils; +import org.apache.harmony.beans.internal.nls.Messages; + +public class IndexedPropertyDescriptor extends PropertyDescriptor { + + private Class indexedPropertyType; + + private Method indexedGetter; + + private Method indexedSetter; + + /** + * Constructs a new instance of IndexedPropertyDescriptor. + * + * @param propertyName + * the specified indexed property's name. + * @param beanClass + * the bean class + * @param getterName + * the name of the array getter + * @param setterName + * the name of the array setter + * @param indexedGetterName + * the name of the indexed getter. + * @param indexedSetterName + * the name of the indexed setter. + * @throws IntrospectionException + */ + public IndexedPropertyDescriptor(String propertyName, Class beanClass, + String getterName, String setterName, String indexedGetterName, + String indexedSetterName) throws IntrospectionException { + super(propertyName, beanClass, getterName, setterName); + setIndexedByName(beanClass, indexedGetterName, indexedSetterName); + } + + private void setIndexedByName(Class beanClass, String indexedGetterName, + String indexedSetterName) throws IntrospectionException { + + String theIndexedGetterName = indexedGetterName; + if (theIndexedGetterName == null) { + if (indexedSetterName != null) { + setIndexedWriteMethod(beanClass, indexedSetterName); + } + } else { + if (theIndexedGetterName.length() == 0) { + theIndexedGetterName = "get" + name; //$NON-NLS-1$ + } + setIndexedReadMethod(beanClass, theIndexedGetterName); + if (indexedSetterName != null) { + setIndexedWriteMethod(beanClass, indexedSetterName, + indexedPropertyType); + } + } + + if (!isCompatible()) { + // custom.beans.57=Property type is incompatible with the indexed property type + throw new IntrospectionException(Messages.getString("custom.beans.57")); //$NON-NLS-1$ + } + } + + private boolean isCompatible() { + Class propertyType = getPropertyType(); + + if (propertyType == null) { + return true; + } + Class componentTypeOfProperty = propertyType.getComponentType(); + if (componentTypeOfProperty == null) { + return false; + } + if (indexedPropertyType == null) { + return false; + } + + return componentTypeOfProperty.getName().equals( + indexedPropertyType.getName()); + } + + /** + * Constructs a new instance of IndexedPropertyDescriptor. + * + * @param propertyName + * the specified indexed property's name. + * @param getter + * the array getter + * @param setter + * the array setter + * @param indexedGetter + * the indexed getter + * @param indexedSetter + * the indexed setter + * @throws IntrospectionException + */ + public IndexedPropertyDescriptor(String propertyName, Method getter, + Method setter, Method indexedGetter, Method indexedSetter) + throws IntrospectionException { + super(propertyName, getter, setter); + if (indexedGetter != null) { + internalSetIndexedReadMethod(indexedGetter); + internalSetIndexedWriteMethod(indexedSetter, true); + } else { + internalSetIndexedWriteMethod(indexedSetter, true); + internalSetIndexedReadMethod(indexedGetter); + } + + if (!isCompatible()) { + // custom.beans.57=Property type is incompatible with the indexed property type + throw new IntrospectionException(Messages.getString("custom.beans.57")); //$NON-NLS-1$ + } + } + + /** + * Constructs a new instance of IndexedPropertyDescriptor. + * + * @param propertyName + * the specified indexed property's name. + * @param beanClass + * the bean class. + * @throws IntrospectionException + */ + public IndexedPropertyDescriptor(String propertyName, Class beanClass) + throws IntrospectionException { + super(propertyName, beanClass); + setIndexedByName(beanClass, "get" //$NON-NLS-1$ + .concat(initialUpperCase(propertyName)), "set" //$NON-NLS-1$ + .concat(initialUpperCase(propertyName))); + } + + /** + * Sets the indexed getter as the specified method. + * + * @param indexedGetter + * the specified indexed getter. + * @throws IntrospectionException + */ + public void setIndexedReadMethod(Method indexedGetter) + throws IntrospectionException { + this.internalSetIndexedReadMethod(indexedGetter); + } + + /** + * Sets the indexed setter as the specified method. + * + * @param indexedSetter + * the specified indexed setter. + * @throws IntrospectionException + */ + public void setIndexedWriteMethod(Method indexedSetter) + throws IntrospectionException { + this.internalSetIndexedWriteMethod(indexedSetter, false); + } + + /** + * Obtains the indexed setter. + * + * @return the indexed setter. + */ + public Method getIndexedWriteMethod() { + return indexedSetter; + } + + /** + * Obtains the indexed getter. + * + * @return the indexed getter. + */ + public Method getIndexedReadMethod() { + return indexedGetter; + } + + /** + * Determines if this IndexedPropertyDescriptor is equal to + * the specified object. Two IndexedPropertyDescriptor s are + * equal if the reader, indexed reader, writer, indexed writer, property + * types, indexed property type, property editor and flags are equal. + * + * @param obj + * @return true if this indexed property descriptor is equal to the + * specified object. + */ + @Override + public boolean equals(Object obj) { + if (!(obj instanceof IndexedPropertyDescriptor)) { + return false; + } + + IndexedPropertyDescriptor other = (IndexedPropertyDescriptor) obj; + + return (super.equals(other) + && (indexedPropertyType == null ? other.indexedPropertyType == null + : indexedPropertyType.equals(other.indexedPropertyType)) + && (indexedGetter == null ? other.indexedGetter == null + : indexedGetter.equals(other.indexedGetter)) && (indexedSetter == null ? other.indexedSetter == null + : indexedSetter.equals(other.indexedSetter))); + } + + /** + * HashCode of the IndexedPropertyDescriptor + */ + @Override + public int hashCode() { + return super.hashCode() + BeansUtils.getHashCode(indexedPropertyType) + + BeansUtils.getHashCode(indexedGetter) + + BeansUtils.getHashCode(indexedSetter); + } + + /** + * Obtains the Class object of the indexed property type. + * + * @return the Class object of the indexed property type. + */ + public Class getIndexedPropertyType() { + return indexedPropertyType; + } + + private void setIndexedReadMethod(Class beanClass, String indexedGetterName) + throws IntrospectionException { + Method getter; + try { + getter = beanClass.getMethod(indexedGetterName, + new Class[] { Integer.TYPE }); + } catch (NoSuchMethodException exception) { + // custom.beans.58=No such indexed read method + throw new IntrospectionException(Messages.getString("custom.beans.58")); //$NON-NLS-1$ + } catch (SecurityException exception) { + // custom.beans.59=Security violation accessing indexed read method + throw new IntrospectionException(Messages.getString("custom.beans.59")); //$NON-NLS-1$ + } + internalSetIndexedReadMethod(getter); + } + + private void internalSetIndexedReadMethod(Method indexGetter) + throws IntrospectionException { + // Clearing the indexed read method. + if (indexGetter == null) { + if (indexedSetter == null) { + if (getPropertyType() != null) { + // custom.beans.5A=Indexed method is not compatible with non indexed method + throw new IntrospectionException(Messages + .getString("custom.beans.5A")); //$NON-NLS-1$ + } + indexedPropertyType = null; + } + this.indexedGetter = null; + return; + } + // Validate the indexed getter. + if ((indexGetter.getParameterTypes().length != 1) + || (indexGetter.getParameterTypes()[0] != Integer.TYPE)) { + // custom.beans.5B=Indexed read method must take a single int argument + throw new IntrospectionException(Messages.getString("custom.beans.5B")); //$NON-NLS-1$ + } + Class indexedReadType = indexGetter.getReturnType(); + if (indexedReadType == Void.TYPE) { + // custom.beans.5B=Indexed read method must take a single int argument + throw new IntrospectionException(Messages.getString("custom.beans.5B")); //$NON-NLS-1$ + } else if (indexedSetter != null + && indexGetter.getReturnType() != indexedSetter + .getParameterTypes()[1]) { + // custom.beans.5A=Indexed read method is not compatible with indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5A")); //$NON-NLS-1$ + } + + // Set the indexed property type if not already set, confirm validity if + // it is. + if (this.indexedGetter == null) { + indexedPropertyType = indexedReadType; + } else { + if (indexedPropertyType != indexedReadType) { + // custom.beans.5A=Indexed read method is not compatible with indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5A")); //$NON-NLS-1$ + } + } + + // Set the indexed getter + this.indexedGetter = indexGetter; + } + + private void setIndexedWriteMethod(Class beanClass, String indexedSetterName) + throws IntrospectionException { + Method setter = null; + try { + setter = beanClass.getMethod(indexedSetterName, new Class[] { + Integer.TYPE, getPropertyType().getComponentType() }); + } catch (SecurityException e) { + // custom.beans.5C=Security violation accessing indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5C")); //$NON-NLS-1$ + } catch (NoSuchMethodException e) { + // custom.beans.5D=No such indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5D")); //$NON-NLS-1$ + } + internalSetIndexedWriteMethod(setter, true); + } + + private void setIndexedWriteMethod(Class beanClass, + String indexedSetterName, Class argType) + throws IntrospectionException { + try { + Method setter = beanClass.getMethod(indexedSetterName, new Class[] { + Integer.TYPE, argType }); + internalSetIndexedWriteMethod(setter, true); + } catch (NoSuchMethodException exception) { + // custom.beans.5D=No such indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5D")); //$NON-NLS-1$ + } catch (SecurityException exception) { + // custom.beans.5C=Security violation accessing indexed write method + throw new IntrospectionException(Messages.getString("custom.beans.5C")); //$NON-NLS-1$ + } + } + + private void internalSetIndexedWriteMethod(Method indexSetter, + boolean initialize) throws IntrospectionException { + // Clearing the indexed write method. + if (indexSetter == null) { + if (indexedGetter == null) { + if (getPropertyType() != null) { + // custom.beans.5E=Indexed method is not compatible with non indexed method + throw new IntrospectionException(Messages + .getString("custom.beans.5E")); //$NON-NLS-1$ + } + indexedPropertyType = null; + } + this.indexedSetter = null; + return; + } + + // Validate the indexed write method. + Class[] indexedSetterArgs = indexSetter.getParameterTypes(); + if (indexedSetterArgs.length != 2) { + // custom.beans.5F=Indexed write method must take two arguments + throw new IntrospectionException(Messages.getString("custom.beans.5F")); //$NON-NLS-1$ + } + if (indexedSetterArgs[0] != Integer.TYPE) { + // custom.beans.60=Indexed write method must take an int as its first argument + throw new IntrospectionException(Messages.getString("custom.beans.60")); //$NON-NLS-1$ + } + + // Set the indexed property type if not already set, confirm validity if + // it is. + Class indexedWriteType = indexedSetterArgs[1]; + if (initialize && indexedGetter == null) { + indexedPropertyType = indexedWriteType; + } else { + if (indexedPropertyType != indexedWriteType) { + // custom.beans.61=Indexed write method is not compatible with indexed read method + throw new IntrospectionException(Messages.getString("custom.beans.61")); //$NON-NLS-1$ + } + } + + // Set the indexed write method. + this.indexedSetter = indexSetter; + } + + private static String initialUpperCase(String string) { + if (Character.isUpperCase(string.charAt(0))) { + return string; + } + + String initial = string.substring(0, 1).toUpperCase(); + return initial.concat(string.substring(1)); + } +} diff --git a/src/main/java/custom/beans/IntrospectionException.java b/src/main/java/custom/beans/IntrospectionException.java new file mode 100644 index 000000000..e75429ac8 --- /dev/null +++ b/src/main/java/custom/beans/IntrospectionException.java @@ -0,0 +1,27 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +public class IntrospectionException extends Exception { + + private static final long serialVersionUID = -3728150539969542619L; + + public IntrospectionException(String message) { + super(message); + } +} diff --git a/src/main/java/custom/beans/Introspector.java b/src/main/java/custom/beans/Introspector.java new file mode 100644 index 000000000..616bb44cb --- /dev/null +++ b/src/main/java/custom/beans/Introspector.java @@ -0,0 +1,368 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.util.Collections; +import java.util.Map; +import java.util.WeakHashMap; + +/** + * The Introspector is a utility for developers to figure out + * which properties, events, and methods a JavaBean supports. + *

+ * The Introspector class walks over the class/superclass chain + * of the target bean class. At each level it checks if there is a matching + * BeanInfo class which provides explicit information about the + * bean, and if so uses that explicit information. Otherwise it uses the low + * level reflection APIs to study the target class and uses design patterns to + * analyze its behaviour and then proceeds to continue the introspection with + * its baseclass. + *

+ *

+ * To look for the explicit information of a bean: + *

+ *
    + *
  1. The Introspector appends "BeanInfo" to the qualified name + * of the bean class, try to use the new class as the "BeanInfo" class. If the + * "BeanInfo" class exsits and returns non-null value when queried for explicit + * information, use the explicit information
  2. + *
  3. If the first step fails, the Introspector will extract a + * simple class name of the bean class by removing the package name from the + * qualified name of the bean class, append "BeanInfo" to it. And look for the + * simple class name in the packages defined in the "BeanInfo" search path (The + * default "BeanInfo" search path is sun.beans.infos). If it + * finds a "BeanInfo" class and the "BeanInfo" class returns non-null value when + * queried for explicit information, use the explicit information
  4. + *
+ * + */ +//ScrollPane cannot be introspected correctly +public class Introspector extends java.lang.Object { + + // Public fields + /** + * Constant values to indicate that the Introspector will + * ignore all BeanInfo class. + */ + public static final int IGNORE_ALL_BEANINFO = 3; + + /** + * Constant values to indicate that the Introspector will + * ignore the BeanInfo class of the current bean class. + */ + public static final int IGNORE_IMMEDIATE_BEANINFO = 2; + + /** + * Constant values to indicate that the Introspector will use + * all BeanInfo class which have been found. This is the default one. + */ + public static final int USE_ALL_BEANINFO = 1; + + // Default search path for BeanInfo classes + private static final String DEFAULT_BEANINFO_SEARCHPATH = "sun.beans.infos"; //$NON-NLS-1$ + + // The search path to use to find BeanInfo classes + // - an array of package names that are used in turn + private static String[] searchPath = { DEFAULT_BEANINFO_SEARCHPATH }; + + // The cache to store Bean Info objects that have been found or created + private static final int DEFAULT_CAPACITY = 128; + + private static Map, StandardBeanInfo> theCache = Collections.synchronizedMap(new WeakHashMap, StandardBeanInfo>(DEFAULT_CAPACITY)); + + private Introspector() { + super(); + } + + /** + * Decapitalizes a given string according to the rule: + *
    + *
  • If the first or only character is Upper Case, it is made Lower Case + *
  • UNLESS the second character is also Upper Case, when the String is + * returned unchanged + * + * @param name - + * the String to decapitalize + * @return the decapitalized version of the String + */ + public static String decapitalize(String name) { + + if (name == null) + return null; + // The rule for decapitalize is that: + // If the first letter of the string is Upper Case, make it lower case + // UNLESS the second letter of the string is also Upper Case, in which case no + // changes are made. + if (name.length() == 0 || (name.length() > 1 && Character.isUpperCase(name.charAt(1)))) { + return name; + } + + char[] chars = name.toCharArray(); + chars[0] = Character.toLowerCase(chars[0]); + return new String(chars); + } + + /** + * Flushes all BeanInfo caches. + * + */ + public static void flushCaches() { + // Flush the cache by throwing away the cache HashMap and creating a + // new empty one + theCache.clear(); + } + + /** + * Flushes the BeanInfo caches of the specified bean class + * + * @param clazz + * the specified bean class + */ + public static void flushFromCaches(Class clazz) { + if(clazz == null){ + throw new NullPointerException(); + } + theCache.remove(clazz); + } + + /** + * Gets the BeanInfo object which contains the information of + * the properties, events and methods of the specified bean class. + * + *

    + * The Introspector will cache the BeanInfo + * object. Subsequent calls to this method will be answered with the cached + * data. + *

    + * + * @param beanClass + * the specified bean class. + * @return the BeanInfo of the bean class. + * @throws IntrospectionException + */ + public static BeanInfo getBeanInfo(Class beanClass) + throws IntrospectionException { + StandardBeanInfo beanInfo = theCache.get(beanClass); + if (beanInfo == null) { + beanInfo = getBeanInfoImplAndInit(beanClass, null, USE_ALL_BEANINFO); + theCache.put(beanClass, beanInfo); + } + return beanInfo; + } + + /** + * Gets the BeanInfo object which contains the information of + * the properties, events and methods of the specified bean class. It will + * not introspect the "stopclass" and its super class. + * + *

    + * The Introspector will cache the BeanInfo + * object. Subsequent calls to this method will be answered with the cached + * data. + *

    + * + * @param beanClass + * the specified beanClass. + * @param stopClass + * the sopt class which should be super class of the bean class. + * May be null. + * @return the BeanInfo of the bean class. + * @throws IntrospectionException + */ + public static BeanInfo getBeanInfo(Class beanClass, Class stopClass) + throws IntrospectionException { + if(stopClass == null){ + //try to use cache + return getBeanInfo(beanClass); + } + return getBeanInfoImplAndInit(beanClass, stopClass, USE_ALL_BEANINFO); + } + + /** + * Gets the BeanInfo object which contains the information of + * the properties, events and methods of the specified bean class. + *
      + *
    1. If flag==IGNORE_ALL_BEANINFO, the + * Introspector will ignore all BeanInfo + * class.
    2. + *
    3. If flag==IGNORE_IMMEDIATE_BEANINFO, the + * Introspector will ignore the BeanInfo class + * of the current bean class.
    4. + *
    5. If flag==USE_ALL_BEANINFO, the + * Introspector will use all BeanInfo class + * which have been found.
    6. + *
    + *

    + * The Introspector will cache the BeanInfo + * object. Subsequent calls to this method will be answered with the cached + * data. + *

    + * + * @param beanClass + * the specified bean class. + * @param flags + * the flag to control the usage of the explicit + * BeanInfo class. + * @return the BeanInfo of the bean class. + * @throws IntrospectionException + */ + public static BeanInfo getBeanInfo(Class beanClass, int flags) + throws IntrospectionException { + if(flags == USE_ALL_BEANINFO){ + //try to use cache + return getBeanInfo(beanClass); + } + return getBeanInfoImplAndInit(beanClass, null, flags); + } + + /** + * Gets an array of search packages. + * + * @return an array of search packages. + */ + public static String[] getBeanInfoSearchPath() { + String[] path = new String[searchPath.length]; + System.arraycopy(searchPath, 0, path, 0, searchPath.length); + return path; + } + + /** + * Sets the search packages. + * + * @param path the new search packages to be set. + */ + public static void setBeanInfoSearchPath(String[] path) { + if (System.getSecurityManager() != null) { + System.getSecurityManager().checkPropertiesAccess(); + } + searchPath = path; + } + + private static StandardBeanInfo getBeanInfoImpl(Class beanClass, Class stopClass, + int flags) throws IntrospectionException { + BeanInfo explicitInfo = null; + if (flags == USE_ALL_BEANINFO) { + explicitInfo = getExplicitBeanInfo(beanClass); + } + StandardBeanInfo beanInfo = new StandardBeanInfo(beanClass, explicitInfo, stopClass); + + if (beanInfo.additionalBeanInfo != null) { + for (int i = beanInfo.additionalBeanInfo.length-1; i >=0; i--) { + BeanInfo info = beanInfo.additionalBeanInfo[i]; + beanInfo.mergeBeanInfo(info, true); + } + } + + // recursive get beaninfo for super classes + Class beanSuperClass = beanClass.getSuperclass(); + if (beanSuperClass != stopClass) { + if (beanSuperClass == null) + throw new IntrospectionException( + "Stop class is not super class of bean class"); //$NON-NLS-1$ + int superflags = flags == IGNORE_IMMEDIATE_BEANINFO ? USE_ALL_BEANINFO + : flags; + BeanInfo superBeanInfo = getBeanInfoImpl(beanSuperClass, stopClass, + superflags); + if (superBeanInfo != null) { + beanInfo.mergeBeanInfo(superBeanInfo, false); + } + } + return beanInfo; + } + + private static BeanInfo getExplicitBeanInfo(Class beanClass) { + String beanInfoClassName = beanClass.getName() + "BeanInfo"; //$NON-NLS-1$ + try { + return loadBeanInfo(beanInfoClassName, beanClass); + } catch (Exception e) { + // fall through + } + + int index = beanInfoClassName.lastIndexOf('.'); + String beanInfoName = index >= 0 ? beanInfoClassName + .substring(index + 1) : beanInfoClassName; + BeanInfo theBeanInfo = null; + BeanDescriptor beanDescriptor = null; + for (int i = 0; i < searchPath.length; i++) { + beanInfoClassName = searchPath[i] + "." + beanInfoName; //$NON-NLS-1$ + try { + theBeanInfo = loadBeanInfo(beanInfoClassName, beanClass); + } catch (Exception e) { + // ignore, try next one + continue; + } + beanDescriptor = theBeanInfo.getBeanDescriptor(); + if (beanDescriptor != null + && beanClass == beanDescriptor.getBeanClass()) { + return theBeanInfo; + } + } + if (BeanInfo.class.isAssignableFrom(beanClass)) { + try { + return loadBeanInfo(beanClass.getName(), beanClass); + } catch (Exception e) { + // fall through + } + } + return null; + } + + /* MODIFIED FOR THE MSGPACK PROJECT + * Method which attempts to instantiate a BeanInfo object of the supplied + * classname + * + * @param theBeanInfoClassName - + * the Class Name of the class of which the BeanInfo is an + * instance + * @param classLoader + * @return A BeanInfo object which is an instance of the Class named + * theBeanInfoClassName null if the Class does not exist or if there + * are problems instantiating the instance + */ + private static BeanInfo loadBeanInfo(String beanInfoClassName, + Class beanClass) throws Exception{ + try { + ClassLoader cl = beanClass.getClassLoader(); + if(cl != null){ + return (BeanInfo) Class.forName(beanInfoClassName, true, + beanClass.getClassLoader()).newInstance(); + } + } catch (Exception e) { + // fall through + } + try { + return (BeanInfo) Class.forName(beanInfoClassName, true, + ClassLoader.getSystemClassLoader()).newInstance(); + } catch (Exception e) { + // fall through + } + return (BeanInfo) Class.forName(beanInfoClassName, true, + Thread.currentThread().getContextClassLoader()).newInstance(); + } + + private static StandardBeanInfo getBeanInfoImplAndInit(Class beanClass, + Class stopClass, int flag) throws IntrospectionException { + StandardBeanInfo standardBeanInfo = getBeanInfoImpl(beanClass, + stopClass, flag); + standardBeanInfo.init(); + return standardBeanInfo; + } +} + + + diff --git a/src/main/java/custom/beans/MethodDescriptor.java b/src/main/java/custom/beans/MethodDescriptor.java new file mode 100644 index 000000000..1cb0aa40c --- /dev/null +++ b/src/main/java/custom/beans/MethodDescriptor.java @@ -0,0 +1,109 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package custom.beans; + +import java.lang.reflect.Method; + +/** + * Describes a bean's method. + */ +public class MethodDescriptor extends FeatureDescriptor { + + private Method method; + + private ParameterDescriptor[] parameterDescriptors; + + /** + *

    + * Constructs an instance with the given {@link Method} and + * {@link ParameterDescriptor}s. The {@link #getName()} is set as the name + * of the method passed. + *

    + * + * @param method + * The Method to set. + * @param parameterDescriptors + * An array of parameter descriptors. + */ + public MethodDescriptor(Method method, + ParameterDescriptor[] parameterDescriptors) { + super(); + + if (method == null) { + throw new NullPointerException(); + } + this.method = method; + this.parameterDescriptors = parameterDescriptors; + + setName(method.getName()); + } + + /** + *

    + * Constructs an instance with the given {@link Method}. The + * {@link #getName()} is set as the name of the method + * passed. + *

    + * + * @param method + * The Method to set. + */ + public MethodDescriptor(Method method) { + super(); + + if (method == null) { + throw new NullPointerException(); + } + this.method = method; + + setName(method.getName()); + } + + /** + *

    + * Gets the method. + *

    + * + * @return A {@link Method} instance. + */ + public Method getMethod() { + return method; + } + + /** + *

    + * Gets the parameter descriptors. + *

    + * + * @return An array of {@link ParameterDescriptor} instance or + * null. + */ + public ParameterDescriptor[] getParameterDescriptors() { + return parameterDescriptors; + } + + void merge(MethodDescriptor anotherMethod){ + super.merge(anotherMethod); + if(method == null){ + method = anotherMethod.method; + } + if(parameterDescriptors == null){ + parameterDescriptors = anotherMethod.parameterDescriptors; + } + } +} diff --git a/src/main/java/custom/beans/ParameterDescriptor.java b/src/main/java/custom/beans/ParameterDescriptor.java new file mode 100644 index 000000000..acd9a112c --- /dev/null +++ b/src/main/java/custom/beans/ParameterDescriptor.java @@ -0,0 +1,25 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +public class ParameterDescriptor extends FeatureDescriptor { + + public ParameterDescriptor() { + // do nothing + } +} diff --git a/src/main/java/custom/beans/PropertyChangeEvent.java b/src/main/java/custom/beans/PropertyChangeEvent.java new file mode 100644 index 000000000..d0edc4a47 --- /dev/null +++ b/src/main/java/custom/beans/PropertyChangeEvent.java @@ -0,0 +1,62 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.util.EventObject; + +public class PropertyChangeEvent extends EventObject { + + private static final long serialVersionUID = 7042693688939648123L; + + String propertyName; + + Object oldValue; + + Object newValue; + + Object propagationId; + + public PropertyChangeEvent(Object source, String propertyName, + Object oldValue, Object newValue) { + super(source); + + this.propertyName = propertyName; + this.oldValue = oldValue; + this.newValue = newValue; + } + + public String getPropertyName() { + return propertyName; + } + + public void setPropagationId(Object propagationId) { + this.propagationId = propagationId; + } + + public Object getPropagationId() { + return propagationId; + } + + public Object getOldValue() { + return oldValue; + } + + public Object getNewValue() { + return newValue; + } +} diff --git a/src/main/java/custom/beans/PropertyChangeListener.java b/src/main/java/custom/beans/PropertyChangeListener.java new file mode 100644 index 000000000..42fa22b17 --- /dev/null +++ b/src/main/java/custom/beans/PropertyChangeListener.java @@ -0,0 +1,25 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.util.EventListener; + +public interface PropertyChangeListener extends EventListener { + + public void propertyChange(PropertyChangeEvent event); +} diff --git a/src/main/java/custom/beans/PropertyDescriptor.java b/src/main/java/custom/beans/PropertyDescriptor.java new file mode 100644 index 000000000..b009045f0 --- /dev/null +++ b/src/main/java/custom/beans/PropertyDescriptor.java @@ -0,0 +1,300 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.lang.reflect.Constructor; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; + +import org.apache.harmony.beans.BeansUtils; +import org.apache.harmony.beans.internal.nls.Messages; + +public class PropertyDescriptor extends FeatureDescriptor { + private Method getter; + + private Method setter; + + private Class propertyEditorClass; + + boolean constrained; + + boolean bound; + + public PropertyDescriptor(String propertyName, Class beanClass, + String getterName, String setterName) throws IntrospectionException { + super(); + if (beanClass == null) { + throw new IntrospectionException(Messages.getString("custom.beans.03")); //$NON-NLS-1$ + } + if (propertyName == null || propertyName.length() == 0) { + throw new IntrospectionException(Messages.getString("custom.beans.04")); //$NON-NLS-1$ + } + this.setName(propertyName); + if (getterName != null) { + if (getterName.length() == 0) { + throw new IntrospectionException( + "read or write method cannot be empty."); //$NON-NLS-1$ + } + try { + setReadMethod(beanClass, getterName); + } catch (IntrospectionException e) { + setReadMethod(beanClass, createDefaultMethodName(propertyName, + "get")); //$NON-NLS-1$ + } + } + if (setterName != null) { + if (setterName.length() == 0) { + throw new IntrospectionException( + "read or write method cannot be empty."); //$NON-NLS-1$ + } + setWriteMethod(beanClass, setterName); + } + } + + public PropertyDescriptor(String propertyName, Method getter, Method setter) + throws IntrospectionException { + super(); + if (propertyName == null || propertyName.length() == 0) { + throw new IntrospectionException(Messages.getString("custom.beans.04")); //$NON-NLS-1$ + } + this.setName(propertyName); + setReadMethod(getter); + setWriteMethod(setter); + } + + public PropertyDescriptor(String propertyName, Class beanClass) + throws IntrospectionException { + if (beanClass == null) { + throw new IntrospectionException(Messages.getString("custom.beans.03")); //$NON-NLS-1$ + } + if (propertyName == null || propertyName.length() == 0) { + throw new IntrospectionException(Messages.getString("custom.beans.04")); //$NON-NLS-1$ + } + this.setName(propertyName); + try { + setReadMethod(beanClass, + createDefaultMethodName(propertyName, "is")); //$NON-NLS-1$ + } catch (Exception e) { + setReadMethod(beanClass, createDefaultMethodName(propertyName, + "get")); //$NON-NLS-1$ + } + + setWriteMethod(beanClass, createDefaultMethodName(propertyName, "set")); //$NON-NLS-1$ + } + + public void setWriteMethod(Method setter) throws IntrospectionException { + if (setter != null) { + int modifiers = setter.getModifiers(); + if (!Modifier.isPublic(modifiers)) { + throw new IntrospectionException(Messages.getString("custom.beans.05")); //$NON-NLS-1$ + } + Class[] parameterTypes = setter.getParameterTypes(); + if (parameterTypes.length != 1) { + throw new IntrospectionException(Messages.getString("custom.beans.06")); //$NON-NLS-1$ + } + Class parameterType = parameterTypes[0]; + Class propertyType = getPropertyType(); + if (propertyType != null && !propertyType.equals(parameterType)) { + throw new IntrospectionException(Messages.getString("custom.beans.07")); //$NON-NLS-1$ + } + } + this.setter = setter; + } + + public void setReadMethod(Method getter) throws IntrospectionException { + if (getter != null) { + int modifiers = getter.getModifiers(); + if (!Modifier.isPublic(modifiers)) { + throw new IntrospectionException(Messages.getString("custom.beans.0A")); //$NON-NLS-1$ + } + Class[] parameterTypes = getter.getParameterTypes(); + if (parameterTypes.length != 0) { + throw new IntrospectionException(Messages.getString("custom.beans.08")); //$NON-NLS-1$ + } + Class returnType = getter.getReturnType(); + if (returnType.equals(Void.TYPE)) { + throw new IntrospectionException(Messages.getString("custom.beans.33")); //$NON-NLS-1$ + } + Class propertyType = getPropertyType(); + if ((propertyType != null) && !returnType.equals(propertyType)) { + throw new IntrospectionException(Messages.getString("custom.beans.09")); //$NON-NLS-1$ + } + } + this.getter = getter; + } + + public Method getWriteMethod() { + return setter; + } + + public Method getReadMethod() { + return getter; + } + + @Override + public boolean equals(Object object) { + boolean result = object instanceof PropertyDescriptor; + if (result) { + PropertyDescriptor pd = (PropertyDescriptor) object; + boolean gettersAreEqual = (this.getter == null) + && (pd.getReadMethod() == null) || (this.getter != null) + && (this.getter.equals(pd.getReadMethod())); + boolean settersAreEqual = (this.setter == null) + && (pd.getWriteMethod() == null) || (this.setter != null) + && (this.setter.equals(pd.getWriteMethod())); + boolean propertyTypesAreEqual = this.getPropertyType() == pd + .getPropertyType(); + boolean propertyEditorClassesAreEqual = this + .getPropertyEditorClass() == pd.getPropertyEditorClass(); + boolean boundPropertyAreEqual = this.isBound() == pd.isBound(); + boolean constrainedPropertyAreEqual = this.isConstrained() == pd + .isConstrained(); + result = gettersAreEqual && settersAreEqual + && propertyTypesAreEqual && propertyEditorClassesAreEqual + && boundPropertyAreEqual && constrainedPropertyAreEqual; + } + return result; + } + + @Override + public int hashCode() { + return BeansUtils.getHashCode(getter) + BeansUtils.getHashCode(setter) + + BeansUtils.getHashCode(getPropertyType()) + + BeansUtils.getHashCode(getPropertyEditorClass()) + + BeansUtils.getHashCode(isBound()) + + BeansUtils.getHashCode(isConstrained()); + } + + public void setPropertyEditorClass(Class propertyEditorClass) { + this.propertyEditorClass = propertyEditorClass; + } + + public Class getPropertyType() { + Class result = null; + if (getter != null) { + result = getter.getReturnType(); + } else if (setter != null) { + Class[] parameterTypes = setter.getParameterTypes(); + result = parameterTypes[0]; + } + return result; + } + + public Class getPropertyEditorClass() { + return propertyEditorClass; + } + + public void setConstrained(boolean constrained) { + this.constrained = constrained; + } + + public void setBound(boolean bound) { + this.bound = bound; + } + + public boolean isConstrained() { + return constrained; + } + + public boolean isBound() { + return bound; + } + + String createDefaultMethodName(String propertyName, String prefix) { + String result = null; + if (propertyName != null) { + String bos = BeansUtils.toASCIIUpperCase(propertyName.substring(0, 1)); + String eos = propertyName.substring(1, propertyName.length()); + result = prefix + bos + eos; + } + return result; + } + + void setReadMethod(Class beanClass, String getterName) + throws IntrospectionException { + try { + Method readMethod = beanClass.getMethod(getterName, new Class[] {}); + setReadMethod(readMethod); + } catch (Exception e) { + throw new IntrospectionException(e.getLocalizedMessage()); + } + } + + void setWriteMethod(Class beanClass, String setterName) + throws IntrospectionException { + Method writeMethod = null; + try { + if (getter != null) { + writeMethod = beanClass.getMethod(setterName, + new Class[] { getter.getReturnType() }); + } else { + Class clazz = beanClass; + Method[] methods = null; + while (clazz != null && writeMethod == null) { + methods = clazz.getDeclaredMethods(); + for (Method method : methods) { + if (setterName.equals(method.getName())) { + if (method.getParameterTypes().length == 1) { + writeMethod = method; + break; + } + } + } + clazz = clazz.getSuperclass(); + } + } + } catch (Exception e) { + throw new IntrospectionException(e.getLocalizedMessage()); + } + if (writeMethod == null) { + throw new IntrospectionException(Messages.getString( + "custom.beans.64", setterName)); //$NON-NLS-1$ + } + setWriteMethod(writeMethod); + } + + public PropertyEditor createPropertyEditor(Object bean) { + PropertyEditor editor; + if (propertyEditorClass == null) { + return null; + } + if (!PropertyEditor.class.isAssignableFrom(propertyEditorClass)) { + // custom.beans.48=Property editor is not assignable from the + // PropertyEditor interface + throw new ClassCastException(Messages.getString("custom.beans.48")); //$NON-NLS-1$ + } + try { + Constructor constr; + try { + // try to look for the constructor with single Object argument + constr = propertyEditorClass.getConstructor(Object.class); + editor = (PropertyEditor) constr.newInstance(bean); + } catch (NoSuchMethodException e) { + // try no-argument constructor + constr = propertyEditorClass.getConstructor(); + editor = (PropertyEditor) constr.newInstance(); + } + } catch (Exception e) { + // custom.beans.47=Unable to instantiate property editor + RuntimeException re = new RuntimeException(Messages + .getString("custom.beans.47"), e); //$NON-NLS-1$ + throw re; + } + return editor; + } +} diff --git a/src/main/java/custom/beans/PropertyEditor.java b/src/main/java/custom/beans/PropertyEditor.java new file mode 100644 index 000000000..4814f33f2 --- /dev/null +++ b/src/main/java/custom/beans/PropertyEditor.java @@ -0,0 +1,43 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import custom.beans.PropertyChangeListener; + +public interface PropertyEditor { + + public void setAsText(String text) throws IllegalArgumentException; + + public String[] getTags(); + + public String getJavaInitializationString(); + + public String getAsText(); + + public void setValue(Object value); + + public Object getValue(); + + public void removePropertyChangeListener(PropertyChangeListener listener); + + public void addPropertyChangeListener(PropertyChangeListener listener); + + public boolean supportsCustomEditor(); + + public boolean isPaintable(); +} diff --git a/src/main/java/custom/beans/PropertyVetoException.java b/src/main/java/custom/beans/PropertyVetoException.java new file mode 100644 index 000000000..8fb5162ca --- /dev/null +++ b/src/main/java/custom/beans/PropertyVetoException.java @@ -0,0 +1,55 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + + +/** + * Indicates that a proposed property change is unacceptable. + */ +public class PropertyVetoException extends Exception { + + private static final long serialVersionUID = 129596057694162164L; + + private final PropertyChangeEvent evt; + + /** + *

    + * Constructs an instance with a message and the change event. + *

    + * + * @param message + * A description of the veto. + * @param event + * The event that was vetoed. + */ + public PropertyVetoException(String message, PropertyChangeEvent event) { + super(message); + this.evt = event; + } + + /** + *

    + * Gets the property change event. + *

    + * + * @return An instance of {@link PropertyChangeEvent} + */ + public PropertyChangeEvent getPropertyChangeEvent() { + return evt; + } +} diff --git a/src/main/java/custom/beans/SimpleBeanInfo.java b/src/main/java/custom/beans/SimpleBeanInfo.java new file mode 100644 index 000000000..8c2e19ba9 --- /dev/null +++ b/src/main/java/custom/beans/SimpleBeanInfo.java @@ -0,0 +1,54 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + + +public class SimpleBeanInfo implements BeanInfo { + + public SimpleBeanInfo() { + // expected + } + + public PropertyDescriptor[] getPropertyDescriptors() { + return null; + } + + public MethodDescriptor[] getMethodDescriptors() { + return null; + } + + public EventSetDescriptor[] getEventSetDescriptors() { + return null; + } + + public BeanInfo[] getAdditionalBeanInfo() { + return null; + } + + public BeanDescriptor getBeanDescriptor() { + return null; + } + + public int getDefaultPropertyIndex() { + return -1; + } + + public int getDefaultEventIndex() { + return -1; + } +} diff --git a/src/main/java/custom/beans/StandardBeanInfo.java b/src/main/java/custom/beans/StandardBeanInfo.java new file mode 100644 index 000000000..192b59e8c --- /dev/null +++ b/src/main/java/custom/beans/StandardBeanInfo.java @@ -0,0 +1,1505 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import static custom.beans.Introspector.decapitalize; + +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Comparator; +import java.util.EventListener; +import java.util.EventObject; +import java.util.HashMap; +import java.util.Map; +import java.util.TooManyListenersException; + +class StandardBeanInfo extends SimpleBeanInfo { + + // Prefixes for methods that set or get a Property + private static final String PREFIX_IS = "is"; //$NON-NLS-1$ + + private static final String PREFIX_GET = "get"; //$NON-NLS-1$ + + private static final String PREFIX_SET = "set"; //$NON-NLS-1$ + + // Prefix and suffix for Event related methods + private static final String PREFIX_ADD = "add"; //$NON-NLS-1$ + + private static final String PREFIX_REMOVE = "remove"; //$NON-NLS-1$ + + private static final String SUFFIX_LISTEN = "Listener"; //$NON-NLS-1$ + + private static final String STR_NORMAL = "normal"; //$NON-NLS-1$ + + private static final String STR_INDEXED = "indexed"; //$NON-NLS-1$ + + private static final String STR_VALID = "valid"; //$NON-NLS-1$ + + private static final String STR_INVALID = "invalid"; //$NON-NLS-1$ + + private static final String STR_PROPERTY_TYPE = "PropertyType"; //$NON-NLS-1$ + + private static final String STR_IS_CONSTRAINED = "isConstrained"; //$NON-NLS-1$ + + private static final String STR_SETTERS = "setters"; //$NON-NLS-1$ + + private static final String STR_GETTERS = "getters"; //$NON-NLS-1$ + + private boolean explicitMethods = false; + + private boolean explicitProperties = false; + + private boolean explicitEvents = false; + + private BeanInfo explicitBeanInfo = null; + + private EventSetDescriptor[] events = null; + + private MethodDescriptor[] methods = null; + + private PropertyDescriptor[] properties = null; + + private BeanDescriptor beanDescriptor = null; + + BeanInfo[] additionalBeanInfo = null; + + private Class beanClass; + + private int defaultEventIndex = -1; + + private int defaultPropertyIndex = -1; + + private static PropertyComparator comparator = new PropertyComparator(); + + private boolean canAddPropertyChangeListener; + + private boolean canRemovePropertyChangeListener; + + StandardBeanInfo(Class beanClass, BeanInfo explicitBeanInfo, Class stopClass) + throws IntrospectionException { + this.beanClass = beanClass; + /*-------------------------------------------------------------------------------------- + * There are 3 aspects of BeanInfo that must be supplied: + * a) PropertyDescriptors + * b) MethodDescriptors + * c) EventSetDescriptors + * Each of these may be optionally provided in the explicitBeanInfo object relating to + * this bean. Where the explicitBeanInfo provides one of these aspects, it is used + * without question and no introspection of the beanClass is performed for that aspect. + * There are also 3 optional items of BeanInfo that may be provided by the + * explicitBeanInfo object: + * 1) BeanDescriptor + * 2) DefaultEventIndex + * 3) DefaultPropertyIndex + * These aspects of the beanClass cannot be derived through introspection of the class. + * If they are not provided by the explicitBeanInfo, then they must be left null in the + * returned BeanInfo, otherwise they will be copied from the explicitBeanInfo + --------------------------------------------------------------------------------------*/ + if (explicitBeanInfo != null) { + this.explicitBeanInfo = explicitBeanInfo; + events = explicitBeanInfo.getEventSetDescriptors(); + methods = explicitBeanInfo.getMethodDescriptors(); + properties = explicitBeanInfo.getPropertyDescriptors(); + defaultEventIndex = explicitBeanInfo.getDefaultEventIndex(); + if (defaultEventIndex < 0 || defaultEventIndex >= events.length) { + defaultEventIndex = -1; + } + defaultPropertyIndex = explicitBeanInfo.getDefaultPropertyIndex(); + if (defaultPropertyIndex < 0 + || defaultPropertyIndex >= properties.length) { + defaultPropertyIndex = -1; + } + additionalBeanInfo = explicitBeanInfo.getAdditionalBeanInfo(); + + if (events != null) + explicitEvents = true; + if (methods != null) + explicitMethods = true; + if (properties != null) + explicitProperties = true; + } + + if (methods == null) { + methods = introspectMethods(); + } + + if (properties == null) { + properties = introspectProperties(stopClass); + } + + if (events == null) { + events = introspectEvents(); + } + } + + @Override + public BeanInfo[] getAdditionalBeanInfo() { + return null; + } + + @Override + public EventSetDescriptor[] getEventSetDescriptors() { + return events; + } + + @Override + public MethodDescriptor[] getMethodDescriptors() { + return methods; + } + + @Override + public PropertyDescriptor[] getPropertyDescriptors() { + return properties; + } + + @Override + public BeanDescriptor getBeanDescriptor() { + if (beanDescriptor == null) { + if (explicitBeanInfo != null) { + beanDescriptor = explicitBeanInfo.getBeanDescriptor(); + } + if (beanDescriptor == null) { + beanDescriptor = new BeanDescriptor(beanClass); + } + } + return beanDescriptor; + } + + @Override + public int getDefaultEventIndex() { + return this.defaultEventIndex; + } + + @Override + public int getDefaultPropertyIndex() { + return this.defaultPropertyIndex; + } + + void mergeBeanInfo(BeanInfo beanInfo, boolean force) + throws IntrospectionException { + if (force || !explicitProperties) { + PropertyDescriptor[] superDescs = beanInfo.getPropertyDescriptors(); + if (superDescs != null) { + if (getPropertyDescriptors() != null) { + properties = mergeProps(superDescs, beanInfo + .getDefaultPropertyIndex()); + } else { + properties = superDescs; + defaultPropertyIndex = beanInfo.getDefaultPropertyIndex(); + } + } + } + + if (force || !explicitMethods) { + MethodDescriptor[] superMethods = beanInfo.getMethodDescriptors(); + if (superMethods != null) { + if (methods != null) { + methods = mergeMethods(superMethods); + } else { + methods = superMethods; + } + } + } + + if (force || !explicitEvents) { + EventSetDescriptor[] superEvents = beanInfo + .getEventSetDescriptors(); + if (superEvents != null) { + if (events != null) { + events = mergeEvents(superEvents, beanInfo + .getDefaultEventIndex()); + } else { + events = superEvents; + defaultEventIndex = beanInfo.getDefaultEventIndex(); + } + } + } + } + + /* MODIFIED FOR THE MSGPACK PROJECT + * merge the PropertyDescriptor with superclass + */ + private PropertyDescriptor[] mergeProps(PropertyDescriptor[] superDescs, + int superDefaultIndex) throws IntrospectionException { + // FIXME:change to OO way as EventSetD and MethodD + HashMap subMap = internalAsMap(properties); + String defaultPropertyName = null; + if (defaultPropertyIndex >= 0 + && defaultPropertyIndex < properties.length) { + defaultPropertyName = properties[defaultPropertyIndex].getName(); + } else if (superDefaultIndex >= 0 + && superDefaultIndex < superDescs.length) { + defaultPropertyName = superDescs[superDefaultIndex].getName(); + } + + for (int i = 0; i < superDescs.length; i++) { + PropertyDescriptor superDesc = superDescs[i]; + String propertyName = superDesc.getName(); + if (!subMap.containsKey(propertyName)) { + subMap.put(propertyName, superDesc); + continue; + } + + Object value = subMap.get(propertyName); + // if sub and super are both PropertyDescriptor + Method subGet = ((PropertyDescriptor) value).getReadMethod(); + Method subSet = ((PropertyDescriptor) value).getWriteMethod(); + Method superGet = superDesc.getReadMethod(); + Method superSet = superDesc.getWriteMethod(); + + Class superType = superDesc.getPropertyType(); + Class superIndexedType = null; + Class subType = ((PropertyDescriptor) value).getPropertyType(); + Class subIndexedType = null; + + if (value instanceof IndexedPropertyDescriptor) { + subIndexedType = ((IndexedPropertyDescriptor) value) + .getIndexedPropertyType(); + } + if (superDesc instanceof IndexedPropertyDescriptor) { + superIndexedType = ((IndexedPropertyDescriptor) superDesc) + .getIndexedPropertyType(); + } + + // if superDesc is PropertyDescriptor + if (superIndexedType == null) { + PropertyDescriptor subDesc = (PropertyDescriptor) value; + // Sub is PropertyDescriptor + if (subIndexedType == null) { + // Same property type + if (subType != null && superType != null + && subType.getName() != null + && subType.getName().equals(superType.getName())) { + if (superGet != null + && (subGet == null || superGet.equals(subGet))) { + subDesc.setReadMethod(superGet); + } + if (superSet != null + && (subSet == null || superSet.equals(subSet))) { + subDesc.setWriteMethod(superSet); + } + if (subType == boolean.class && subGet != null + && superGet != null) { + if (superGet.getName().startsWith(PREFIX_IS)) { + subDesc.setReadMethod(superGet); + } + } + } else { // Different type + if ((subGet == null || subSet == null) + && (superGet != null)) { + subDesc = new PropertyDescriptor(propertyName, + superGet, superSet); + if (subGet != null) { + String subGetName = subGet.getName(); + Method method = null; + MethodDescriptor[] introspectMethods = introspectMethods(); + for (MethodDescriptor methodDesc : introspectMethods) { + method = methodDesc.getMethod(); + if (method != subGet + && subGetName.equals(method + .getName()) + && method.getParameterTypes().length == 0 + && method.getReturnType() == superType) { + subDesc.setReadMethod(method); + break; + } + } + } + } + } + } else { // Sub is IndexedPropertyDescriptor and super is PropertyDescriptor + if (superType != null + && (superType.isArray()) + && (superType.getComponentType().getName() + .equals(subIndexedType.getName()))) { + if ((subGet == null) && (superGet != null)) { + subDesc.setReadMethod(superGet); + } + if ((subSet == null) && (superSet != null)) { + subDesc.setWriteMethod(superSet); + } + } // different type do nothing + // sub is indexed pd and super is normal pd + if (subIndexedType == boolean.class + && superType == boolean.class) { + Method subIndexedSet = ((IndexedPropertyDescriptor) subDesc) + .getIndexedWriteMethod(); + if (subGet == null && subSet == null + && subIndexedSet != null && superGet != null) { + try { + subSet = beanClass.getDeclaredMethod( + subIndexedSet.getName(), boolean.class); + } catch (Exception e) { + // ignored + } + if (subSet != null) { + // Cast sub into PropertyDescriptor + subDesc = new PropertyDescriptor(propertyName, + superGet, subSet); + } + } + } + } + subMap.put(propertyName, subDesc); + } else { // Super is IndexedPropertyDescriptor + if (subIndexedType == null) { // Sub is PropertyDescriptor + if (subType != null + && subType.isArray() + && (subType.getComponentType().getName() + .equals(superIndexedType.getName()))) { + // Same type + if (subGet != null) { + superDesc.setReadMethod(subGet); + } + if (subSet != null) { + superDesc.setWriteMethod(subSet); + } + subMap.put(propertyName, superDesc); + } else { + // subDesc is PropertyDescriptor + // superDesc is IndexedPropertyDescriptor + + // fill null subGet or subSet method with superClass's + if (subGet == null || subSet == null) { + Class beanSuperClass = beanClass.getSuperclass(); + String methodSuffix = capitalize(propertyName); + Method method = null; + if (subGet == null) { + // subGet is null + if (subType == boolean.class) { + try { + method = beanSuperClass + .getDeclaredMethod(PREFIX_IS + + methodSuffix); + } catch (Exception e) { + // ignored + } + } else { + try { + method = beanSuperClass + .getDeclaredMethod(PREFIX_GET + + methodSuffix); + } catch (Exception e) { + // ignored + } + } + if (method != null + && !Modifier.isStatic(method + .getModifiers()) + && method.getReturnType() == subType) { + ((PropertyDescriptor) value) + .setReadMethod(method); + } + } else { + // subSet is null + try { + method = beanSuperClass.getDeclaredMethod( + PREFIX_SET + methodSuffix, subType); + } catch (Exception e) { + // ignored + } + if (method != null + && !Modifier.isStatic(method + .getModifiers()) + && method.getReturnType() == void.class) { + ((PropertyDescriptor) value) + .setWriteMethod(method); + } + } + } + subMap.put(propertyName, (PropertyDescriptor) value); + } + } else if (subIndexedType.getName().equals( + superIndexedType.getName())) { + // Sub is IndexedPropertyDescriptor and Same type + IndexedPropertyDescriptor subDesc = (IndexedPropertyDescriptor) value; + if ((subGet == null) && (superGet != null)) { + subDesc.setReadMethod(superGet); + } + if ((subSet == null) && (superSet != null)) { + subDesc.setWriteMethod(superSet); + } + IndexedPropertyDescriptor superIndexedDesc = (IndexedPropertyDescriptor) superDesc; + + if ((subDesc.getIndexedReadMethod() == null) + && (superIndexedDesc.getIndexedReadMethod() != null)) { + subDesc.setIndexedReadMethod(superIndexedDesc + .getIndexedReadMethod()); + } + + if ((subDesc.getIndexedWriteMethod() == null) + && (superIndexedDesc.getIndexedWriteMethod() != null)) { + subDesc.setIndexedWriteMethod(superIndexedDesc + .getIndexedWriteMethod()); + } + + subMap.put(propertyName, subDesc); + } // Different indexed type, do nothing + } + mergeAttributes((PropertyDescriptor) value, superDesc); + } + + PropertyDescriptor[] theDescs = new PropertyDescriptor[subMap.size()]; + subMap.values().toArray(theDescs); + + if (defaultPropertyName != null && !explicitProperties) { + for (int i = 0; i < theDescs.length; i++) { + if (defaultPropertyName.equals(theDescs[i].getName())) { + defaultPropertyIndex = i; + break; + } + } + } + return theDescs; + } + + private String capitalize(String name) { + if (name == null) { + return null; + } + // The rule for decapitalize is that: + // If the first letter of the string is Upper Case, make it lower case + // UNLESS the second letter of the string is also Upper Case, in which case no + // changes are made. + if (name.length() == 0 || (name.length() > 1 && Character.isUpperCase(name.charAt(1)))) { + return name; + } + + char[] chars = name.toCharArray(); + chars[0] = Character.toUpperCase(chars[0]); + return new String(chars); + } + + private static void mergeAttributes(PropertyDescriptor subDesc, + PropertyDescriptor superDesc) { + // FIXME: this is just temp workaround, need more elegant solution to + // handle this + subDesc.hidden |= superDesc.hidden; + subDesc.expert |= superDesc.expert; + subDesc.preferred |= superDesc.preferred; + subDesc.bound |= superDesc.bound; + subDesc.constrained |= superDesc.constrained; + subDesc.name = superDesc.name; + if (subDesc.shortDescription == null + && superDesc.shortDescription != null) { + subDesc.shortDescription = superDesc.shortDescription; + } + if (subDesc.displayName == null && superDesc.displayName != null) { + subDesc.displayName = superDesc.displayName; + } + } + + /* MODIFIED FOR THE MSGPACK PROJECT + * merge the MethodDescriptor + */ + private MethodDescriptor[] mergeMethods(MethodDescriptor[] superDescs) { + HashMap subMap = internalAsMap(methods); + + for (MethodDescriptor superMethod : superDescs) { + String methodName = getQualifiedName(superMethod.getMethod()); + MethodDescriptor method = subMap.get(methodName); + if (method == null) { + subMap.put(methodName, superMethod); + } else { + method.merge(superMethod); + } + } + MethodDescriptor[] theMethods = new MethodDescriptor[subMap.size()]; + subMap.values().toArray(theMethods); + return theMethods; + } + + private EventSetDescriptor[] mergeEvents(EventSetDescriptor[] otherEvents, + int otherDefaultIndex) { + HashMap subMap = internalAsMap(events); + String defaultEventName = null; + if (defaultEventIndex >= 0 && defaultEventIndex < events.length) { + defaultEventName = events[defaultEventIndex].getName(); + } else if (otherDefaultIndex >= 0 + && otherDefaultIndex < otherEvents.length) { + defaultEventName = otherEvents[otherDefaultIndex].getName(); + } + + for (EventSetDescriptor event : otherEvents) { + String eventName = event.getName(); + EventSetDescriptor subEvent = subMap.get(eventName); + if (subEvent == null) { + subMap.put(eventName, event); + } else { + subEvent.merge(event); + } + } + + EventSetDescriptor[] theEvents = new EventSetDescriptor[subMap.size()]; + subMap.values().toArray(theEvents); + + if (defaultEventName != null && !explicitEvents) { + for (int i = 0; i < theEvents.length; i++) { + if (defaultEventName.equals(theEvents[i].getName())) { + defaultEventIndex = i; + break; + } + } + } + return theEvents; + } + + private static HashMap internalAsMap( + PropertyDescriptor[] propertyDescs) { + HashMap map = new HashMap(); + for (int i = 0; i < propertyDescs.length; i++) { + map.put(propertyDescs[i].getName(), propertyDescs[i]); + } + return map; + } + + private static HashMap internalAsMap( + MethodDescriptor[] theDescs) { + HashMap map = new HashMap(); + for (int i = 0; i < theDescs.length; i++) { + String qualifiedName = getQualifiedName(theDescs[i].getMethod()); + map.put(qualifiedName, theDescs[i]); + } + return map; + } + + private static HashMap internalAsMap( + EventSetDescriptor[] theDescs) { + HashMap map = new HashMap(); + for (int i = 0; i < theDescs.length; i++) { + map.put(theDescs[i].getName(), theDescs[i]); + } + return map; + } + + private static String getQualifiedName(Method method) { + String qualifiedName = method.getName(); + Class[] paramTypes = method.getParameterTypes(); + if (paramTypes != null) { + for (int i = 0; i < paramTypes.length; i++) { + qualifiedName += "_" + paramTypes[i].getName(); //$NON-NLS-1$ + } + } + return qualifiedName; + } + + /** + * Introspects the supplied class and returns a list of the public methods + * of the class + * + * @return An array of MethodDescriptors with the public methods. null if + * there are no public methods + */ + private MethodDescriptor[] introspectMethods() { + return introspectMethods(false, beanClass); + } + + private MethodDescriptor[] introspectMethods(boolean includeSuper) { + return introspectMethods(includeSuper, beanClass); + } + + private MethodDescriptor[] introspectMethods(boolean includeSuper, + Class introspectorClass) { + + // Get the list of methods belonging to this class + Method[] basicMethods = includeSuper ? introspectorClass.getMethods() + : introspectorClass.getDeclaredMethods(); + + if (basicMethods == null || basicMethods.length == 0) + return null; + + ArrayList methodList = new ArrayList( + basicMethods.length); + + // Loop over the methods found, looking for public non-static methods + for (int i = 0; i < basicMethods.length; i++) { + int modifiers = basicMethods[i].getModifiers(); + if (Modifier.isPublic(modifiers)) { + // Allocate a MethodDescriptor for this method + MethodDescriptor theDescriptor = new MethodDescriptor( + basicMethods[i]); + methodList.add(theDescriptor); + } + } + + // Get the list of public methods into the returned array + int methodCount = methodList.size(); + MethodDescriptor[] theMethods = null; + if (methodCount > 0) { + theMethods = new MethodDescriptor[methodCount]; + theMethods = methodList.toArray(theMethods); + } + + return theMethods; + } + + /** + * Introspects the supplied class and returns a list of the Properties of + * the class + * + * @param stopClass - + * the to introspecting at + * @return The list of Properties as an array of PropertyDescriptors + * @throws IntrospectionException + */ + @SuppressWarnings("rawtypes") + private PropertyDescriptor[] introspectProperties(Class stopClass) + throws IntrospectionException { + + // Get descriptors for the public methods + MethodDescriptor[] methodDescriptors = introspectMethods(); + + if (methodDescriptors == null) { + return null; + } + + ArrayList methodList = new ArrayList(); + // Loop over the methods found, looking for public non-static methods + for (int index = 0; index < methodDescriptors.length; index++) { + int modifiers = methodDescriptors[index].getMethod().getModifiers(); + if (!Modifier.isStatic(modifiers)) { + methodList.add(methodDescriptors[index]); + } + } + + // Get the list of public non-static methods into an array + int methodCount = methodList.size(); + MethodDescriptor[] theMethods = null; + if (methodCount > 0) { + theMethods = new MethodDescriptor[methodCount]; + theMethods = methodList.toArray(theMethods); + } + + if (theMethods == null) { + return null; + } + + HashMap propertyTable = new HashMap( + theMethods.length); + + // Search for methods that either get or set a Property + for (int i = 0; i < theMethods.length; i++) { + introspectGet(theMethods[i].getMethod(), propertyTable); + introspectSet(theMethods[i].getMethod(), propertyTable); + } + + // fix possible getter & setter collisions + fixGetSet(propertyTable); + + // If there are listener methods, should be bound. + MethodDescriptor[] allMethods = introspectMethods(true); + if (stopClass != null) { + MethodDescriptor[] excludeMethods = introspectMethods(true, + stopClass); + if (excludeMethods != null) { + ArrayList tempMethods = new ArrayList(); + for (MethodDescriptor method : allMethods) { + if (!isInSuper(method, excludeMethods)) { + tempMethods.add(method); + } + } + allMethods = tempMethods + .toArray(new MethodDescriptor[0]); + } + } + for (int i = 0; i < allMethods.length; i++) { + introspectPropertyListener(allMethods[i].getMethod()); + } + // Put the properties found into the PropertyDescriptor array + ArrayList propertyList = new ArrayList(); + + for (Map.Entry entry : propertyTable.entrySet()) { + String propertyName = entry.getKey(); + HashMap table = entry.getValue(); + if (table == null) { + continue; + } + String normalTag = (String) table.get(STR_NORMAL); + String indexedTag = (String) table.get(STR_INDEXED); + + if ((normalTag == null) && (indexedTag == null)) { + continue; + } + + Method get = (Method) table.get(STR_NORMAL + PREFIX_GET); + Method set = (Method) table.get(STR_NORMAL + PREFIX_SET); + Method indexedGet = (Method) table.get(STR_INDEXED + PREFIX_GET); + Method indexedSet = (Method) table.get(STR_INDEXED + PREFIX_SET); + + PropertyDescriptor propertyDesc = null; + if (indexedTag == null) { + propertyDesc = new PropertyDescriptor(propertyName, get, set); + } else { + try { + propertyDesc = new IndexedPropertyDescriptor(propertyName, + get, set, indexedGet, indexedSet); + } catch (IntrospectionException e) { + // If the getter and the indexGetter is not compatible, try + // getter/setter is null; + propertyDesc = new IndexedPropertyDescriptor(propertyName, + null, null, indexedGet, indexedSet); + } + } + // RI set propretyDescriptor as bound. FIXME + // propertyDesc.setBound(true); + if (canAddPropertyChangeListener && canRemovePropertyChangeListener) { + propertyDesc.setBound(true); + } else { + propertyDesc.setBound(false); + } + if (table.get(STR_IS_CONSTRAINED) == Boolean.TRUE) { //$NON-NLS-1$ + propertyDesc.setConstrained(true); + } + propertyList.add(propertyDesc); + } + + PropertyDescriptor[] theProperties = new PropertyDescriptor[propertyList + .size()]; + propertyList.toArray(theProperties); + return theProperties; + } + + private boolean isInSuper(MethodDescriptor method, + MethodDescriptor[] excludeMethods) { + for (MethodDescriptor m : excludeMethods) { + if (method.getMethod().equals(m.getMethod())) { + return true; + } + } + return false; + } + + @SuppressWarnings("nls") + private void introspectPropertyListener(Method theMethod) { + String methodName = theMethod.getName(); + Class[] param = theMethod.getParameterTypes(); + if (param.length != 1) { + return; + } + if (methodName.equals("addPropertyChangeListener") + && param[0].equals(PropertyChangeListener.class)) + canAddPropertyChangeListener = true; + if (methodName.equals("removePropertyChangeListener") + && param[0].equals(PropertyChangeListener.class)) + canRemovePropertyChangeListener = true; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + private static void introspectGet(Method theMethod, + HashMap propertyTable) { + + String methodName = theMethod.getName(); + int prefixLength = 0; + String propertyName; + Class propertyType; + Class[] paramTypes; + HashMap table; + ArrayList getters; + + if (methodName == null) { + return; + } + + if (methodName.startsWith(PREFIX_GET)) { + prefixLength = PREFIX_GET.length(); + } + + if (methodName.startsWith(PREFIX_IS)) { + prefixLength = PREFIX_IS.length(); + } + + if (prefixLength == 0) { + return; + } + + propertyName = decapitalize(methodName.substring(prefixLength)); + + // validate property name + if (!isValidProperty(propertyName)) { + return; + } + + // validate return type + propertyType = theMethod.getReturnType(); + + if (propertyType == null || propertyType == void.class) { + return; + } + + // isXXX return boolean + if (prefixLength == 2) { + if (!(propertyType == boolean.class)) { + return; + } + } + + // validate parameter types + paramTypes = theMethod.getParameterTypes(); + if (paramTypes.length > 1 + || (paramTypes.length == 1 && paramTypes[0] != int.class)) { + return; + } + + table = propertyTable.get(propertyName); + if (table == null) { + table = new HashMap(); + propertyTable.put(propertyName, table); + } + + getters = (ArrayList) table.get(STR_GETTERS); + if (getters == null) { + getters = new ArrayList(); + table.put(STR_GETTERS, getters); + } + + // add current method as a valid getter + getters.add(theMethod); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + private static void introspectSet(Method theMethod, + HashMap propertyTable) { + + String methodName = theMethod.getName(); + if (methodName == null) { + return; + } + String propertyName; + Class returnType; + Class[] paramTypes; + + // setter method should never return type other than void + returnType = theMethod.getReturnType(); + if (returnType != void.class) { + return; + } + + if (methodName == null || !methodName.startsWith(PREFIX_SET)) { + return; + } + + propertyName = decapitalize(methodName.substring(PREFIX_SET.length())); + + // validate property name + if (!isValidProperty(propertyName)) { + return; + } + + // It seems we do not need to validate return type + + // validate param types + paramTypes = theMethod.getParameterTypes(); + + if (paramTypes.length == 0 || paramTypes.length > 2 + || (paramTypes.length == 2 && paramTypes[0] != int.class)) { + return; + } + + HashMap table = propertyTable.get(propertyName); + if (table == null) { + table = new HashMap(); + propertyTable.put(propertyName, table); + } + + ArrayList setters = (ArrayList) table.get(STR_SETTERS); + if (setters == null) { + setters = new ArrayList(); + table.put(STR_SETTERS, setters); + } + + // handle constrained + Class[] exceptions = theMethod.getExceptionTypes(); + for (Class e : exceptions) { + if (e.equals(PropertyVetoException.class)) { + table.put(STR_IS_CONSTRAINED, Boolean.TRUE); //$NON-NLS-1$ + } + } + + // add new setter + setters.add(theMethod); + } + + /** + * Checks and fixs all cases when several incompatible checkers / getters + * were specified for single property. + * + * @param propertyTable + * @throws IntrospectionException + */ + @SuppressWarnings({ "unchecked", "rawtypes" }) + private void fixGetSet(HashMap propertyTable) + throws IntrospectionException { + + if (propertyTable == null) { + return; + } + + for (Map.Entry entry : propertyTable.entrySet()) { + HashMap table = entry.getValue(); + ArrayList getters = (ArrayList) table + .get(STR_GETTERS); + ArrayList setters = (ArrayList) table + .get(STR_SETTERS); + + Method normalGetter = null; + Method indexedGetter = null; + Method normalSetter = null; + Method indexedSetter = null; + + Class normalPropType = null; + Class indexedPropType = null; + + if (getters == null) { + getters = new ArrayList(); + } + + if (setters == null) { + setters = new ArrayList(); + } + + // retrieve getters + Class[] paramTypes = null; + String methodName = null; + for (Method getter : getters) { + paramTypes = getter.getParameterTypes(); + methodName = getter.getName(); + // checks if it's a normal getter + if (paramTypes == null || paramTypes.length == 0) { + // normal getter found + if (normalGetter == null + || methodName.startsWith(PREFIX_IS)) { + normalGetter = getter; + } + } + + // checks if it's an indexed getter + if (paramTypes != null && paramTypes.length == 1 + && paramTypes[0] == int.class) { + // indexed getter found + if (indexedGetter == null + || methodName.startsWith(PREFIX_GET) + || (methodName.startsWith(PREFIX_IS) && !indexedGetter + .getName().startsWith(PREFIX_GET))) { + indexedGetter = getter; + } + } + } + + // retrieve normal setter + if (normalGetter != null) { + // Now we will try to look for normal setter of the same type. + Class propertyType = normalGetter.getReturnType(); + + for (Method setter : setters) { + if (setter.getParameterTypes().length == 1 + && propertyType + .equals(setter.getParameterTypes()[0])) { + normalSetter = setter; + break; + } + } + } else { + // Normal getter wasn't defined. Let's look for the last + // defined setter + + for (Method setter : setters) { + if (setter.getParameterTypes().length == 1) { + normalSetter = setter; + } + } + } + + // retrieve indexed setter + if (indexedGetter != null) { + // Now we will try to look for indexed setter of the same type. + Class propertyType = indexedGetter.getReturnType(); + + for (Method setter : setters) { + if (setter.getParameterTypes().length == 2 + && setter.getParameterTypes()[0] == int.class + && propertyType + .equals(setter.getParameterTypes()[1])) { + indexedSetter = setter; + break; + } + } + } else { + // Indexed getter wasn't defined. Let's look for the last + // defined indexed setter + + for (Method setter : setters) { + if (setter.getParameterTypes().length == 2 + && setter.getParameterTypes()[0] == int.class) { + indexedSetter = setter; + } + } + } + + // determine property type + if (normalGetter != null) { + normalPropType = normalGetter.getReturnType(); + } else if (normalSetter != null) { + normalPropType = normalSetter.getParameterTypes()[0]; + } + + // determine indexed getter/setter type + if (indexedGetter != null) { + indexedPropType = indexedGetter.getReturnType(); + } else if (indexedSetter != null) { + indexedPropType = indexedSetter.getParameterTypes()[1]; + } + + // convert array-typed normal getters to indexed getters + if (normalGetter != null && normalGetter.getReturnType().isArray()) { + + } + + // RULES + // These rules were created after performing extensive black-box + // testing of RI + + // RULE1 + // Both normal getter and setter of the same type were defined; + // no indexed getter/setter *PAIR* of the other type defined + if (normalGetter != null && normalSetter != null + && (indexedGetter == null || indexedSetter == null)) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, normalPropType); + continue; + } + + // RULE2 + // normal getter and/or setter was defined; no indexed + // getters & setters defined + if ((normalGetter != null || normalSetter != null) + && indexedGetter == null && indexedSetter == null) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, normalPropType); + continue; + } + + // RULE3 + // mix of normal / indexed getters and setters are defined. Types + // are compatible + if ((normalGetter != null || normalSetter != null) + && (indexedGetter != null || indexedSetter != null)) { + // (1)!A!B!C!D + if (normalGetter != null && normalSetter != null + && indexedGetter != null && indexedSetter != null) { + if (indexedGetter.getName().startsWith(PREFIX_GET)) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, + indexedPropType); + } else { + if (normalPropType != boolean.class + && normalGetter.getName().startsWith(PREFIX_IS)) { + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, + indexedPropType); + } else { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + } + } + continue; + } + + // (2)!AB!C!D + if (normalGetter != null && normalSetter == null + && indexedGetter != null && indexedSetter != null) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, normalPropType); + + table.put(STR_INDEXED, STR_VALID); + if (indexedGetter.getName().startsWith(PREFIX_GET)) { + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + } + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + + // (3)A!B!C!D + if (normalGetter == null && normalSetter != null + && indexedGetter != null && indexedSetter != null) { + table.put(STR_INDEXED, STR_VALID); + if (indexedGetter.getName().startsWith(PREFIX_GET)) { + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + } + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + + // (4)!AB!CD + if (normalGetter != null && normalSetter == null + && indexedGetter != null && indexedSetter == null) { + if (indexedGetter.getName().startsWith(PREFIX_GET)) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, + indexedPropType); + } else { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + } + continue; + } + + // (5)A!B!CD + if (normalGetter == null && normalSetter != null + && indexedGetter != null && indexedSetter == null) { + if (indexedGetter.getName().startsWith(PREFIX_GET)) { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, + indexedPropType); + } else { + table.put(STR_NORMAL, STR_VALID); + table.put(STR_NORMAL + PREFIX_GET, normalGetter); + table.put(STR_NORMAL + PREFIX_SET, normalSetter); + table.put(STR_NORMAL + STR_PROPERTY_TYPE, + normalPropType); + } + continue; + } + + // (6)!ABC!D + if (normalGetter != null && normalSetter == null + && indexedGetter == null && indexedSetter != null) { + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + + // (7)A!BC!D + if (normalGetter == null && normalSetter != null + && indexedGetter == null && indexedSetter != null) { + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + } + + // RULE4 + // no normal normal getter / setter. + // Only indexed getter and/or setter is given + // no normal setters / getters defined + if (normalSetter == null && normalGetter == null + && (indexedGetter != null || indexedSetter != null)) { + if (indexedGetter != null + && indexedGetter.getName().startsWith(PREFIX_IS)) { + if (indexedSetter != null) { + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, + indexedPropType); + } + continue; + } + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + + // RULE5 + // Both indexed getter and setter methods are defined + // no normal getter/setter *PAIR* of the other type defined + if ((normalSetter != null || normalGetter != null) + && indexedGetter != null && indexedSetter != null) { + table.put(STR_INDEXED, STR_VALID); + table.put(STR_INDEXED + PREFIX_GET, indexedGetter); + table.put(STR_INDEXED + PREFIX_SET, indexedSetter); + table.put(STR_INDEXED + STR_PROPERTY_TYPE, indexedPropType); + continue; + } + + // default rule - invalid property + table.put(STR_NORMAL, STR_INVALID); + table.put(STR_INDEXED, STR_INVALID); + } + + } + + /** + * Introspects the supplied Bean class and returns a list of the Events of + * the class + * + * @return the events + * @throws IntrospectionException + */ + @SuppressWarnings({ "rawtypes" }) + private EventSetDescriptor[] introspectEvents() throws IntrospectionException { + // Get descriptors for the public methods + // FIXME: performance + MethodDescriptor[] theMethods = introspectMethods(); + + if (theMethods == null) + return null; + + HashMap eventTable = new HashMap( + theMethods.length); + + // Search for methods that add an Event Listener + for (int i = 0; i < theMethods.length; i++) { + introspectListenerMethods(PREFIX_ADD, theMethods[i].getMethod(), + eventTable); + introspectListenerMethods(PREFIX_REMOVE, theMethods[i].getMethod(), + eventTable); + introspectGetListenerMethods(theMethods[i].getMethod(), eventTable); + } + + ArrayList eventList = new ArrayList(); + for (Map.Entry entry : eventTable.entrySet()) { + HashMap table = entry.getValue(); + Method add = (Method) table.get(PREFIX_ADD); + Method remove = (Method) table.get(PREFIX_REMOVE); + + if ((add == null) || (remove == null)) { + continue; + } + + Method get = (Method) table.get(PREFIX_GET); + Class listenerType = (Class) table.get("listenerType"); //$NON-NLS-1$ + Method[] listenerMethods = (Method[]) table.get("listenerMethods"); //$NON-NLS-1$ + EventSetDescriptor eventSetDescriptor = new EventSetDescriptor( + decapitalize(entry.getKey()), listenerType, listenerMethods, add, + remove, get); + + eventSetDescriptor.setUnicast(table.get("isUnicast") != null); //$NON-NLS-1$ + eventList.add(eventSetDescriptor); + } + + EventSetDescriptor[] theEvents = new EventSetDescriptor[eventList + .size()]; + eventList.toArray(theEvents); + + return theEvents; + } + + /* MODIFIED FOR THE MSGPACK PROJECT + * find the add, remove listener method + */ + @SuppressWarnings({ "unchecked", "rawtypes" }) + private static void introspectListenerMethods(String type, + Method theMethod, HashMap methodsTable) { + String methodName = theMethod.getName(); + if (methodName == null) { + return; + } + + if (!((methodName.startsWith(type)) && (methodName + .endsWith(SUFFIX_LISTEN)))) { + return; + } + + String listenerName = methodName.substring(type.length()); + String eventName = listenerName.substring(0, listenerName + .lastIndexOf(SUFFIX_LISTEN)); + if ((eventName == null) || (eventName.length() == 0)) { + return; + } + + Class[] paramTypes = theMethod.getParameterTypes(); + if ((paramTypes == null) || (paramTypes.length != 1)) { + return; + } + + Class listenerType = paramTypes[0]; + + if (!EventListener.class.isAssignableFrom(listenerType)) { + return; + } + + if (!listenerType.getName().endsWith(listenerName)) { + return; + } + + HashMap table = methodsTable.get(eventName); + if (table == null) { + table = new HashMap(); + } + // put listener type + if (table.get("listenerType") == null) { //$NON-NLS-1$ + table.put("listenerType", listenerType); //$NON-NLS-1$ + table.put("listenerMethods", //$NON-NLS-1$ + introspectListenerMethods(listenerType)); + } + // put add / remove + table.put(type, theMethod); + + // determine isUnicast() + if (type.equals(PREFIX_ADD)) { + Class[] exceptionTypes = theMethod.getExceptionTypes(); + if (exceptionTypes != null) { + for (int i = 0; i < exceptionTypes.length; i++) { + if (exceptionTypes[i].getName().equals( + TooManyListenersException.class.getName())) { + table.put("isUnicast", "true"); //$NON-NLS-1$//$NON-NLS-2$ + break; + } + } + } + } + + methodsTable.put(eventName, table); + } + + private static Method[] introspectListenerMethods(Class listenerType) { + Method[] methods = listenerType.getDeclaredMethods(); + ArrayList list = new ArrayList(); + for (int i = 0; i < methods.length; i++) { + Class[] paramTypes = methods[i].getParameterTypes(); + if (paramTypes.length != 1) { + continue; + } + + if (EventObject.class.isAssignableFrom(paramTypes[0])) { + list.add(methods[i]); + } + } + Method[] matchedMethods = new Method[list.size()]; + list.toArray(matchedMethods); + return matchedMethods; + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + private static void introspectGetListenerMethods(Method theMethod, + HashMap methodsTable) { + String type = PREFIX_GET; + + String methodName = theMethod.getName(); + if (methodName == null) { + return; + } + + if (!((methodName.startsWith(type)) && (methodName + .endsWith(SUFFIX_LISTEN + "s")))) { //$NON-NLS-1$ + return; + } + + String listenerName = methodName.substring(type.length(), methodName + .length() - 1); + String eventName = listenerName.substring(0, listenerName + .lastIndexOf(SUFFIX_LISTEN)); + if ((eventName == null) || (eventName.length() == 0)) { + return; + } + + Class[] paramTypes = theMethod.getParameterTypes(); + if ((paramTypes == null) || (paramTypes.length != 0)) { + return; + } + + Class returnType = theMethod.getReturnType(); + if ((returnType.getComponentType() == null) + || (!returnType.getComponentType().getName().endsWith( + listenerName))) { + return; + } + + HashMap table = methodsTable.get(eventName); + if (table == null) { + table = new HashMap(); + } + // put add / remove + table.put(type, theMethod); + methodsTable.put(eventName, table); + } + + private static boolean isValidProperty(String propertyName) { + return (propertyName != null) && (propertyName.length() != 0); + } + + private static class PropertyComparator implements + Comparator { + public int compare(PropertyDescriptor object1, + PropertyDescriptor object2) { + return object1.getName().compareTo(object2.getName()); + } + + } + + // TODO + void init() { + if (this.events == null) { + events = new EventSetDescriptor[0]; + } + if (this.properties == null) { + this.properties = new PropertyDescriptor[0]; + } + + if (properties != null) { + String defaultPropertyName = (defaultPropertyIndex != -1 ? properties[defaultPropertyIndex] + .getName() + : null); + Arrays.sort(properties, comparator); + if (null != defaultPropertyName) { + for (int i = 0; i < properties.length; i++) { + if (defaultPropertyName.equals(properties[i].getName())) { + defaultPropertyIndex = i; + break; + } + } + } + } + } +} diff --git a/src/main/java/custom/beans/Statement.java b/src/main/java/custom/beans/Statement.java new file mode 100644 index 000000000..5a8d5be33 --- /dev/null +++ b/src/main/java/custom/beans/Statement.java @@ -0,0 +1,610 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.lang.reflect.Array; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.lang.reflect.Modifier; +import java.security.PrivilegedAction; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Comparator; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.WeakHashMap; + +import org.apache.harmony.beans.BeansUtils; +import org.apache.harmony.beans.internal.nls.Messages; + +public class Statement { + + private Object target; + + private String methodName; + + private Object[] arguments; + + // cache used methods of specified target class to accelerate method search + private static WeakHashMap, Method[]> classMethodsCache = new WeakHashMap, Method[]>(); + + public Statement(Object target, String methodName, Object[] arguments) { + this.target = target; + this.methodName = methodName; + this.arguments = arguments == null ? BeansUtils.EMPTY_OBJECT_ARRAY + : arguments; + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + if (target == null) { + sb.append(BeansUtils.NULL); + } else { + Class clazz = target.getClass(); + sb.append(clazz == String.class ? BeansUtils.QUOTE : BeansUtils + .idOfClass(clazz)); + } + sb.append('.' + methodName + '('); + if (arguments != null) { + Class clazz; + for (int index = 0; index < arguments.length; index++) { + if (index > 0) { + sb.append(", "); //$NON-NLS-1$ + } + if (arguments[index] == null) { + sb.append(BeansUtils.NULL); + } else { + clazz = arguments[index].getClass(); + sb.append(clazz == String.class ? '"' + (String) arguments[index] + '"' + : BeansUtils.idOfClass(clazz)); + } + } + } + sb.append(')'); + sb.append(';'); + return sb.toString(); + } + + public String getMethodName() { + return methodName; + } + + public Object[] getArguments() { + return arguments; + } + + public Object getTarget() { + return target; + } + + public void execute() throws Exception { + invokeMethod(); + } + + Object invokeMethod() throws Exception { + Object result = null; + try { + Object target = getTarget(); + String methodName = getMethodName(); + Object[] arguments = getArguments(); + Class targetClass = target.getClass(); + if (targetClass.isArray()) { + Method method = findArrayMethod(methodName, arguments); + Object[] copy = new Object[arguments.length + 1]; + copy[0] = target; + System.arraycopy(arguments, 0, copy, 1, arguments.length); + result = method.invoke(null, copy); + } else if (BeansUtils.NEWINSTANCE.equals(methodName) + && target == Array.class) { + result = Array.newInstance((Class) arguments[0], + ((Integer) arguments[1]).intValue()); + } else if (BeansUtils.NEW.equals(methodName) + || BeansUtils.NEWINSTANCE.equals(methodName)) { + if (target instanceof Class) { + Constructor constructor = findConstructor( + (Class) target, arguments); + result = constructor.newInstance(arguments); + } else { + if (BeansUtils.NEW.equals(methodName)) { + throw new NoSuchMethodException(this.toString()); + } + // target class declares a public named "newInstance" method + Method method = findMethod(targetClass, methodName, + arguments, false); + result = method.invoke(target, arguments); + } + } else if (methodName.equals(BeansUtils.NEWARRAY)) { + // create a new array instance without length attribute + Class clazz = (Class) target, argClass; + + // check the element types of array + for (int index = 0; index < arguments.length; index++) { + argClass = arguments[index] == null ? null + : arguments[index].getClass(); + if (argClass != null && !clazz.isAssignableFrom(argClass) + && !BeansUtils.isPrimitiveWrapper(argClass, clazz)) { + throw new IllegalArgumentException( + Messages.getString("custom.beans.63")); //$NON-NLS-1$ + } + } + result = Array.newInstance(clazz, arguments.length); + if (clazz.isPrimitive()) { + // Copy element according to primitive types + arrayCopy(clazz, arguments, result, arguments.length); + } else { + // Copy element of Objects + System.arraycopy(arguments, 0, result, 0, arguments.length); + } + return result; + } else if (target instanceof Class) { + Method method = null; + try { + /* MODIFIED FOR THE MSGPACK PROJECT + * Try to look for a static method of class described by the + * given Class object at first process only if the class + * differs from Class itself + */ + if (target != Class.class) { + method = findMethod((Class) target, methodName, + arguments, true); + result = method.invoke(null, arguments); + } + } catch (NoSuchMethodException e) { + // expected + } + if (method == null) { + // static method was not found + // try to invoke method of Class object + if (BeansUtils.FORNAME.equals(methodName) + && arguments.length == 1 + && arguments[0] instanceof String) { + // special handling of Class.forName(String) + try { + result = Class.forName((String) arguments[0]); + } catch (ClassNotFoundException e2) { + result = Class.forName((String) arguments[0], true, + Thread.currentThread() + .getContextClassLoader()); + } + } else { + method = findMethod(targetClass, methodName, arguments, + false); + result = method.invoke(target, arguments); + } + } + } else if (target instanceof Iterator) { + final Iterator iterator = (Iterator) target; + final Method method = findMethod(targetClass, methodName, + arguments, false); + if (iterator.hasNext()) { + result = new PrivilegedAction() { + public Object run() { + try { + method.setAccessible(true); + return (method.invoke(iterator, new Object[0])); + } catch (Exception e) { + // ignore + } + return null; + } + + }.run(); + } + } else { + Method method = findMethod(targetClass, methodName, arguments, + false); + method.setAccessible(true); + result = method.invoke(target, arguments); + } + } catch (InvocationTargetException ite) { + Throwable t = ite.getCause(); + throw (t != null) && (t instanceof Exception) ? (Exception) t : ite; + } + return result; + } + + private void arrayCopy(Class type, Object[] src, Object dest, int length) { + if (type == boolean.class) { + boolean[] destination = (boolean[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Boolean) src[index]).booleanValue(); + } + } else if (type == short.class) { + short[] destination = (short[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Short) src[index]).shortValue(); + } + } else if (type == byte.class) { + byte[] destination = (byte[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Byte) src[index]).byteValue(); + } + } else if (type == char.class) { + char[] destination = (char[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Character) src[index]).charValue(); + } + } else if (type == int.class) { + int[] destination = (int[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Integer) src[index]).intValue(); + } + } else if (type == long.class) { + long[] destination = (long[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Long) src[index]).longValue(); + } + } else if (type == float.class) { + float[] destination = (float[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Float) src[index]).floatValue(); + } + } else if (type == double.class) { + double[] destination = (double[]) dest; + for (int index = 0; index < length; index++) { + destination[index] = ((Double) src[index]).doubleValue(); + } + } + } + + private Method findArrayMethod(String methodName, Object[] args) + throws NoSuchMethodException { + // the code below reproduces exact RI exception throwing behavior + boolean isGet = BeansUtils.GET.equals(methodName); //$NON-NLS-1$ + boolean isSet = BeansUtils.SET.equals(methodName); //$NON-NLS-1$ + if (!isGet && !isSet) { + throw new NoSuchMethodException(Messages.getString("custom.beans.3C")); //$NON-NLS-1$ + } else if (args.length > 0 && args[0].getClass() != Integer.class) { + throw new ClassCastException(Messages.getString("custom.beans.3D")); //$NON-NLS-1$ + } else if (isGet && args.length != 1) { + throw new ArrayIndexOutOfBoundsException( + Messages.getString("custom.beans.3E")); //$NON-NLS-1$ + } else if (isSet && args.length != 2) { + throw new ArrayIndexOutOfBoundsException( + Messages.getString("custom.beans.3F")); //$NON-NLS-1$ + } + + Class[] paraTypes = isGet ? new Class[] { Object.class, int.class } + : new Class[] { Object.class, int.class, Object.class }; + return Array.class.getMethod(methodName, paraTypes); + } + + private Constructor findConstructor(Class clazz, Object[] args) + throws NoSuchMethodException { + Class[] argTypes = getTypes(args), paraTypes, resultParaTypes; + Constructor result = null; + boolean isAssignable; + for (Constructor constructor : clazz.getConstructors()) { + paraTypes = constructor.getParameterTypes(); + if (match(argTypes, paraTypes)) { + if (result == null) { + // first time, set constructor + result = constructor; + continue; + } + // find out more suitable constructor + resultParaTypes = result.getParameterTypes(); + isAssignable = true; + for (int index = 0; index < paraTypes.length; index++) { + if (argTypes[index] != null + && !(isAssignable &= resultParaTypes[index] + .isAssignableFrom(paraTypes[index]))) { + break; + } + if (argTypes[index] == null + && !(isAssignable &= paraTypes[index] + .isAssignableFrom(resultParaTypes[index]))) { + break; + } + } + if (isAssignable) { + result = constructor; + } + } + } + if (result == null) { + throw new NoSuchMethodException(Messages.getString( + "custom.beans.40", clazz.getName())); //$NON-NLS-1$ + } + return result; + } + + /** + * Searches for best matching method for given name and argument types. + */ + static Method findMethod(Class clazz, String methodName, Object[] args, + boolean isStatic) throws NoSuchMethodException { + Class[] argTypes = getTypes(args); + + Method[] methods = null; + if (classMethodsCache.containsKey(clazz)) { + methods = classMethodsCache.get(clazz); + } else { + methods = clazz.getMethods(); + classMethodsCache.put(clazz, methods); + } + + ArrayList fitMethods = new ArrayList(); + for (Method method : methods) { + if (methodName.equals(method.getName())) { + if (!isStatic || Modifier.isStatic(method.getModifiers())) { + if (match(argTypes, method.getParameterTypes())) { + fitMethods.add(method); + } + } + } + } + int fitSize = fitMethods.size(); + if (fitSize == 0) { + throw new NoSuchMethodException(Messages.getString( + "custom.beans.41", methodName)); //$NON-NLS-1$ + } + if (fitSize == 1) { + return fitMethods.get(0); + } + // find the most relevant one + MethodComparator comparator = new MethodComparator(methodName, argTypes); + Method[] fitMethodArray = fitMethods.toArray(new Method[fitSize]); + Method onlyMethod = fitMethodArray[0]; + Class onlyReturnType, fitReturnType; + int difference; + for (int i = 1; i < fitMethodArray.length; i++) { + // if 2 methods have same relevance, check their return type + if ((difference = comparator.compare(onlyMethod, fitMethodArray[i])) == 0) { + // if 2 methods have the same signature, check their return type + onlyReturnType = onlyMethod.getReturnType(); + fitReturnType = fitMethodArray[i].getReturnType(); + if (onlyReturnType == fitReturnType) { + // if 2 methods have the same relevance and return type + throw new NoSuchMethodException(Messages.getString( + "custom.beans.62", methodName)); //$NON-NLS-1$ + } + + if (onlyReturnType.isAssignableFrom(fitReturnType)) { + // if onlyReturnType is super class or interface of + // fitReturnType, set onlyMethod to fitMethodArray[i] + onlyMethod = fitMethodArray[i]; + } + } + if (difference > 0) { + onlyMethod = fitMethodArray[i]; + } + } + return onlyMethod; + } + + private static boolean match(Class[] argTypes, Class[] paraTypes) { + if (paraTypes.length != argTypes.length) { + return false; + } + for (int index = 0; index < paraTypes.length; index++) { + if (argTypes[index] != null + && !paraTypes[index].isAssignableFrom(argTypes[index]) + && !BeansUtils.isPrimitiveWrapper(argTypes[index], + paraTypes[index])) { + return false; + } + } + return true; + } + + static boolean isStaticMethodCall(Statement stmt) { + Object target = stmt.getTarget(); + String methodName = stmt.getMethodName(); + if (!(target instanceof Class)) { + return false; + } + try { + Statement.findMethod((Class) target, methodName, + stmt.getArguments(), true); + return true; + } catch (NoSuchMethodException e) { + return false; + } + } + + /* MODIFIED FOR THE MSGPACK PROJECT + * The list of "method signatures" used by persistence delegates to create + * objects. Not necessary reflects to real methods. + */ + private static final String[][] pdConstructorSignatures = { + { "java.lang.Class", "new", "java.lang.Boolean", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Byte", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Character", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Double", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Float", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Integer", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Long", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.Short", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "new", "java.lang.String", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "forName", "java.lang.String", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "newInstance", "java.lang.Class", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + "java.lang.Integer", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + { "java.lang.reflect.Field", "get", "null", "", "", "" }, //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + { "java.lang.Class", "forName", "java.lang.String", "", "", "" } //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$ + }; + + static boolean isPDConstructor(Statement stmt) { + Object target = stmt.getTarget(); + String methodName = stmt.getMethodName(); + Object[] args = stmt.getArguments(); + String[] sig = new String[pdConstructorSignatures[0].length]; + if (target == null || methodName == null || args == null + || args.length == 0) { + // not a constructor for sure + return false; + } + sig[0] = target.getClass().getName(); + sig[1] = methodName; + for (int i = 2; i < sig.length; i++) { + if (args.length > i - 2) { + sig[i] = args[i - 2] != null ? args[i - 2].getClass().getName() + : "null"; //$NON-NLS-1$ + } else { + sig[i] = ""; //$NON-NLS-1$ + } + } + for (String[] element : pdConstructorSignatures) { + if (Arrays.equals(sig, element)) { + return true; + } + } + return false; + } + + private static Class getPrimitiveWrapper(Class base) { + Class res = null; + if (base == boolean.class) { + res = Boolean.class; + } else if (base == byte.class) { + res = Byte.class; + } else if (base == char.class) { + res = Character.class; + } else if (base == short.class) { + res = Short.class; + } else if (base == int.class) { + res = Integer.class; + } else if (base == long.class) { + res = Long.class; + } else if (base == float.class) { + res = Float.class; + } else if (base == double.class) { + res = Double.class; + } + return res; + } + + private static Class[] getTypes(Object[] arguments) { + Class[] types = new Class[arguments.length]; + for (int index = 0; index < arguments.length; ++index) { + types[index] = (arguments[index] == null) ? null : arguments[index] + .getClass(); + } + return types; + } + + /** + * Comparator to determine which of two methods is "closer" to the reference + * method. + */ + static class MethodComparator implements Comparator { + static int INFINITY = Integer.MAX_VALUE; + + private String referenceMethodName; + + private Class[] referenceMethodArgumentTypes; + + private final Map cache; + + public MethodComparator(String refMethodName, + Class[] refArgumentTypes) { + this.referenceMethodName = refMethodName; + this.referenceMethodArgumentTypes = refArgumentTypes; + cache = new HashMap(); + } + + public int compare(Method m1, Method m2) { + Integer norm1 = cache.get(m1); + Integer norm2 = cache.get(m2); + if (norm1 == null) { + norm1 = Integer.valueOf(getNorm(m1)); + cache.put(m1, norm1); + } + if (norm2 == null) { + norm2 = Integer.valueOf(getNorm(m2)); + cache.put(m2, norm2); + } + return (norm1.intValue() - norm2.intValue()); + } + + /** + * Returns the norm for given method. The norm is the "distance" from + * the reference method to the given method. + * + * @param m + * the method to calculate the norm for + * @return norm of given method + */ + private int getNorm(Method m) { + String methodName = m.getName(); + Class[] argumentTypes = m.getParameterTypes(); + int totalNorm = 0; + if (!referenceMethodName.equals(methodName) + || referenceMethodArgumentTypes.length != argumentTypes.length) { + return INFINITY; + } + for (int i = 0; i < referenceMethodArgumentTypes.length; i++) { + if (referenceMethodArgumentTypes[i] == null) { + // doesn't affect the norm calculation if null + continue; + } + if (referenceMethodArgumentTypes[i].isPrimitive()) { + referenceMethodArgumentTypes[i] = getPrimitiveWrapper(referenceMethodArgumentTypes[i]); + } + if (argumentTypes[i].isPrimitive()) { + argumentTypes[i] = getPrimitiveWrapper(argumentTypes[i]); + } + totalNorm += getDistance(referenceMethodArgumentTypes[i], + argumentTypes[i]); + } + return totalNorm; + } + + /** + * Returns a "hierarchy distance" between two classes. + * + * @param clz1 + * @param clz2 + * should be superclass or superinterface of clz1 + * @return hierarchy distance from clz1 to clz2, Integer.MAX_VALUE if + * clz2 is not assignable from clz1. + */ + private static int getDistance(Class clz1, Class clz2) { + Class superClz; + int superDist = INFINITY; + if (!clz2.isAssignableFrom(clz1)) { + return INFINITY; + } + if (clz1.getName().equals(clz2.getName())) { + return 0; + } + superClz = clz1.getSuperclass(); + if (superClz != null) { + superDist = getDistance(superClz, clz2); + } + if (clz2.isInterface()) { + Class[] interfaces = clz1.getInterfaces(); + int bestDist = INFINITY; + for (Class element : interfaces) { + int curDist = getDistance(element, clz2); + if (curDist < bestDist) { + bestDist = curDist; + } + } + if (superDist < bestDist) { + bestDist = superDist; + } + return (bestDist != INFINITY ? bestDist + 1 : INFINITY); + } + return (superDist != INFINITY ? superDist + 2 : INFINITY); + } + } +} \ No newline at end of file diff --git a/src/main/java/custom/beans/XMLDecoder.java b/src/main/java/custom/beans/XMLDecoder.java new file mode 100644 index 000000000..e08b1ccd1 --- /dev/null +++ b/src/main/java/custom/beans/XMLDecoder.java @@ -0,0 +1,705 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package custom.beans; + +import java.io.InputStream; +import java.lang.reflect.Array; +import java.lang.reflect.Field; +import java.lang.reflect.Method; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Stack; + +import javax.xml.parsers.SAXParserFactory; + +import org.apache.harmony.beans.internal.nls.Messages; +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; +import org.xml.sax.SAXParseException; +import org.xml.sax.helpers.DefaultHandler; + +import custom.beans.Statement.MethodComparator; + +/** + * XMLDecoder reads objects from xml created by + * XMLEncoder. + *

    + * The API is similar to ObjectInputStream. + *

    + */ +public class XMLDecoder { + + private ClassLoader defaultClassLoader = null; + + private static class DefaultExceptionListener implements ExceptionListener { + + public void exceptionThrown(Exception e) { + System.err.println(e.getMessage()); + System.err.println("Continue..."); //$NON-NLS-1$ + } + } + + private class SAXHandler extends DefaultHandler { + + boolean inJavaElem = false; + + HashMap idObjMap = new HashMap(); + + @Override + public void characters(char[] ch, int start, int length) + throws SAXException { + if (!inJavaElem) { + return; + } + if (readObjs.size() > 0) { + Elem elem = readObjs.peek(); + if (elem.isBasicType) { + String str = new String(ch, start, length); + elem.methodName = elem.methodName == null ? str + : elem.methodName + str; + } + } + } + + @SuppressWarnings("nls") + @Override + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + if (!inJavaElem) { + if ("java".equals(qName)) { + inJavaElem = true; + } else { + listener.exceptionThrown(new Exception( + Messages.getString("custom.beans.72", qName))); + } + return; + } + + if ("object".equals(qName)) { + startObjectElem(attributes); + } else if ("array".equals(qName)) { + startArrayElem(attributes); + } else if ("void".equals(qName)) { + startVoidElem(attributes); + } else if ("boolean".equals(qName) || "byte".equals(qName) + || "char".equals(qName) || "class".equals(qName) + || "double".equals(qName) || "float".equals(qName) + || "int".equals(qName) || "long".equals(qName) + || "short".equals(qName) || "string".equals(qName) + || "null".equals(qName)) { + startBasicElem(qName, attributes); + } + } + + @SuppressWarnings("nls") + private void startObjectElem(Attributes attributes) { + Elem elem = new Elem(); + elem.isExpression = true; + elem.id = attributes.getValue("id"); + elem.idref = attributes.getValue("idref"); + elem.attributes = attributes; + if (elem.idref == null) { + obtainTarget(elem, attributes); + obtainMethod(elem, attributes); + } + + readObjs.push(elem); + } + + private void obtainTarget(Elem elem, Attributes attributes) { + String className = attributes.getValue("class"); //$NON-NLS-1$ + if (className != null) { + try { + elem.target = classForName(className); + } catch (ClassNotFoundException e) { + listener.exceptionThrown(e); + } + } else { + Elem parent = latestUnclosedElem(); + if (parent == null) { + elem.target = owner; + return; + } + elem.target = execute(parent); + } + } + + @SuppressWarnings("nls") + private void obtainMethod(Elem elem, Attributes attributes) { + elem.methodName = attributes.getValue("method"); + if (elem.methodName != null) { + return; + } + + elem.methodName = attributes.getValue("property"); + if (elem.methodName != null) { + elem.fromProperty = true; + return; + } + + elem.methodName = attributes.getValue("index"); + if (elem.methodName != null) { + elem.fromIndex = true; + return; + } + + elem.methodName = attributes.getValue("field"); + if (elem.methodName != null) { + elem.fromField = true; + return; + } + + elem.methodName = attributes.getValue("owner"); + if (elem.methodName != null) { + elem.fromOwner = true; + return; + } + + elem.methodName = "new"; // default method name + } + + @SuppressWarnings("nls") + private Class classForName(String className) + throws ClassNotFoundException { + if ("boolean".equals(className)) { + return Boolean.TYPE; + } else if ("byte".equals(className)) { + return Byte.TYPE; + } else if ("char".equals(className)) { + return Character.TYPE; + } else if ("double".equals(className)) { + return Double.TYPE; + } else if ("float".equals(className)) { + return Float.TYPE; + } else if ("int".equals(className)) { + return Integer.TYPE; + } else if ("long".equals(className)) { + return Long.TYPE; + } else if ("short".equals(className)) { + return Short.TYPE; + } else { + return Class.forName(className, true, + defaultClassLoader == null ? Thread.currentThread() + .getContextClassLoader() : defaultClassLoader); + } + } + + private void startArrayElem(Attributes attributes) { + Elem elem = new Elem(); + elem.isExpression = true; + elem.id = attributes.getValue("id"); //$NON-NLS-1$ + elem.attributes = attributes; + try { + // find component class + Class compClass = classForName(attributes.getValue("class")); //$NON-NLS-1$ + String lengthValue = attributes.getValue("length"); //$NON-NLS-1$ + if (lengthValue != null) { + // find length + int length = Integer + .parseInt(attributes.getValue("length")); //$NON-NLS-1$ + // execute, new array instance + elem.result = Array.newInstance(compClass, length); + elem.isExecuted = true; + } else { + // create array without length attribute, + // delay the excution to the end, + // get array length from sub element + elem.target = compClass; + elem.methodName = "newArray"; //$NON-NLS-1$ + elem.isExecuted = false; + } + } catch (Exception e) { + listener.exceptionThrown(e); + } + readObjs.push(elem); + } + + @SuppressWarnings("nls") + private void startVoidElem(Attributes attributes) { + Elem elem = new Elem(); + elem.id = attributes.getValue("id"); + elem.attributes = attributes; + obtainTarget(elem, attributes); + obtainMethod(elem, attributes); + readObjs.push(elem); + } + + @SuppressWarnings("nls") + private void startBasicElem(String tagName, Attributes attributes) { + Elem elem = new Elem(); + elem.isBasicType = true; + elem.isExpression = true; + elem.id = attributes.getValue("id"); + elem.idref = attributes.getValue("idref"); + elem.attributes = attributes; + elem.target = tagName; + readObjs.push(elem); + } + + @Override + public void endElement(String uri, String localName, String qName) + throws SAXException { + if (!inJavaElem) { + return; + } + if ("java".equals(qName)) { //$NON-NLS-1$ + inJavaElem = false; + return; + } + // find the elem to close + Elem toClose = latestUnclosedElem(); + if ("string".equals(toClose.target)) { + StringBuilder sb = new StringBuilder(); + for (int index = readObjs.size() - 1; index >= 0; index--) { + Elem elem = (Elem) readObjs.get(index); + if (toClose == elem) { + break; + } + if ("char".equals(elem.target)) { + sb.insert(0, elem.methodName); + } + } + toClose.methodName = toClose.methodName != null ? toClose.methodName + + sb.toString() + : sb.toString(); + } + // make sure it is executed + execute(toClose); + // set to closed + toClose.isClosed = true; + // pop it and its children + while (readObjs.pop() != toClose) { + // + } + + if (toClose.isExpression) { + // push back expression + readObjs.push(toClose); + } + } + + private Elem latestUnclosedElem() { + for (int i = readObjs.size() - 1; i >= 0; i--) { + Elem elem = readObjs.get(i); + if (!elem.isClosed) { + return elem; + } + } + return null; + } + + private Object execute(Elem elem) { + if (elem.isExecuted) { + return elem.result; + } + + // execute to obtain result + try { + if (elem.idref != null) { + elem.result = idObjMap.get(elem.idref); + } else if (elem.isBasicType) { + elem.result = executeBasic(elem); + } else { + elem.result = executeCommon(elem); + } + } catch (Exception e) { + listener.exceptionThrown(e); + } + + // track id + if (elem.id != null) { + idObjMap.put(elem.id, elem.result); + } + + elem.isExecuted = true; + return elem.result; + } + + @SuppressWarnings("nls") + private Object executeCommon(Elem elem) throws Exception { + // pop args + ArrayList args = new ArrayList(5); + while (readObjs.peek() != elem) { + Elem argElem = readObjs.pop(); + args.add(0, argElem.result); + } + // decide method name + String method = elem.methodName; + if (elem.fromProperty) { + method = (args.size() == 0 ? "get" : "set") + + capitalize(method); + } + if (elem.fromIndex) { + Integer index = Integer.valueOf(method); + args.add(0, index); + method = args.size() == 1 ? "get" : "set"; + } + if (elem.fromField) { + Field f = ((Class) elem.target).getField(method); + return (new Expression(f, "get", new Object[] { null })) + .getValue(); + } + if (elem.fromOwner) { + return owner; + } + + if (elem.target == owner) { + if ("getOwner".equals(method)) { + return owner; + } + Class[] c = new Class[args.size()]; + for (int i = 0; i < args.size(); i++) { + Object arg = args.get(i); + c[i] = (arg == null ? null: arg.getClass()); + } + + // Try actual match method + try { + Method m = owner.getClass().getMethod(method, c); + return m.invoke(owner, args.toArray()); + } catch (NoSuchMethodException e) { + // Do nothing + } + + // Find the specific method matching the parameter + Method mostSpecificMethod = findMethod( + owner instanceof Class ? (Class) owner : owner + .getClass(), method, c); + + return mostSpecificMethod.invoke(owner, args.toArray()); + } + + // execute + Expression exp = new Expression(elem.target, method, args.toArray()); + return exp.getValue(); + } + + private Method findMethod(Class clazz, String methodName, + Class[] clazzes) throws Exception { + Method[] methods = clazz.getMethods(); + ArrayList matchMethods = new ArrayList(); + + // Add all matching methods into a ArrayList + for (Method method : methods) { + if (!methodName.equals(method.getName())) { + continue; + } + Class[] parameterTypes = method.getParameterTypes(); + if (parameterTypes.length != clazzes.length) { + continue; + } + boolean match = true; + for (int i = 0; i < parameterTypes.length; i++) { + boolean isNull = (clazzes[i] == null); + boolean isPrimitive = isPrimitiveWrapper(clazzes[i], parameterTypes[i]); + boolean isAssignable = isNull? false : parameterTypes[i].isAssignableFrom(clazzes[i]); + if ( isNull || isPrimitive || isAssignable ) { + continue; + } + match = false; + } + if (match) { + matchMethods.add(method); + } + } + + int size = matchMethods.size(); + if (size == 1) { + // Only one method matches, just invoke it + return matchMethods.get(0); + } else if (size == 0) { + // Does not find any matching one, throw exception + throw new NoSuchMethodException(Messages.getString( + "custom.beans.41", methodName)); //$NON-NLS-1$ + } + + // There are more than one method matching the signature + // Find the most specific one to invoke + MethodComparator comparator = new MethodComparator(methodName, + clazzes); + Method chosenOne = matchMethods.get(0); + matchMethods.remove(0); + int methodCounter = 1; + for (Method method : matchMethods) { + int difference = comparator.compare(chosenOne, method); + if (difference > 0) { + chosenOne = method; + methodCounter = 1; + } else if (difference == 0) { + methodCounter++; + } + } + if (methodCounter > 1) { + // if 2 methods have same relevance, throw exception + throw new NoSuchMethodException(Messages.getString( + "custom.beans.62", methodName)); //$NON-NLS-1$ + } + return chosenOne; + } + + private boolean isPrimitiveWrapper(Class wrapper, Class base) { + return (base == boolean.class) && (wrapper == Boolean.class) + || (base == byte.class) && (wrapper == Byte.class) + || (base == char.class) && (wrapper == Character.class) + || (base == short.class) && (wrapper == Short.class) + || (base == int.class) && (wrapper == Integer.class) + || (base == long.class) && (wrapper == Long.class) + || (base == float.class) && (wrapper == Float.class) + || (base == double.class) && (wrapper == Double.class); + } + + private String capitalize(String str) { + StringBuilder buf = new StringBuilder(str); + buf.setCharAt(0, Character.toUpperCase(buf.charAt(0))); + return buf.toString(); + } + + @SuppressWarnings("nls") + private Object executeBasic(Elem elem) throws Exception { + String tag = (String) elem.target; + String value = elem.methodName; + + if ("null".equals(tag)) { + return null; + } else if ("string".equals(tag)) { + return value == null ? "" : value; + } else if ("class".equals(tag)) { + return classForName(value); + } else if ("boolean".equals(tag)) { + return Boolean.valueOf(value); + } else if ("byte".equals(tag)) { + return Byte.valueOf(value); + } else if ("char".equals(tag)) { + if (value == null && elem.attributes != null) { + String codeAttr = elem.attributes.getValue("code"); + if (codeAttr != null) { + Character character = new Character((char) Integer + .valueOf(codeAttr.substring(1), 16).intValue()); + elem.methodName = character.toString(); + return character; + } + } + return Character.valueOf(value.charAt(0)); + } else if ("double".equals(tag)) { + return Double.valueOf(value); + } else if ("float".equals(tag)) { + return Float.valueOf(value); + } else if ("int".equals(tag)) { + return Integer.valueOf(value); + } else if ("long".equals(tag)) { + return Long.valueOf(value); + } else if ("short".equals(tag)) { + return Short.valueOf(value); + } else { + throw new Exception(Messages.getString("custom.beans.71", tag)); + } + } + + @Override + public void error(SAXParseException e) throws SAXException { + listener.exceptionThrown(e); + } + + @Override + public void fatalError(SAXParseException e) throws SAXException { + listener.exceptionThrown(e); + } + + @Override + public void warning(SAXParseException e) throws SAXException { + listener.exceptionThrown(e); + } + } + + private static class Elem { + String id; + + String idref; + + boolean isExecuted; + + boolean isExpression; + + boolean isBasicType; + + boolean isClosed; + + Object target; + + String methodName; + + boolean fromProperty; + + boolean fromIndex; + + boolean fromField; + + boolean fromOwner; + + Attributes attributes; + + Object result; + + } + + private InputStream inputStream; + + private ExceptionListener listener; + + private Object owner; + + private Stack readObjs = new Stack(); + + private int readObjIndex = 0; + + private SAXHandler saxHandler = null; + + /** + * Create a decoder to read from specified input stream. + * + * @param inputStream + * an input stream of xml + */ + public XMLDecoder(InputStream inputStream) { + this(inputStream, null, null, null); + } + + /** + * Create a decoder to read from specified input stream. + * + * @param inputStream + * an input stream of xml + * @param owner + * the owner of this decoder + */ + public XMLDecoder(InputStream inputStream, Object owner) { + this(inputStream, owner, null, null); + } + + /** + * Create a decoder to read from specified input stream. + * + * @param inputStream + * an input stream of xml + * @param owner + * the owner of this decoder + * @param listener + * listen to the exceptions thrown by the decoder + */ + public XMLDecoder(InputStream inputStream, Object owner, + ExceptionListener listener) { + this(inputStream, owner, listener, null); + } + + public XMLDecoder(InputStream inputStream, Object owner, + ExceptionListener listener, ClassLoader cl) { + this.inputStream = inputStream; + this.owner = owner; + this.listener = (listener == null) ? new DefaultExceptionListener() + : listener; + defaultClassLoader = cl; + } + + /** + * Close the input stream of xml data. + */ + public void close() { + if (inputStream == null) { + return; + } + try { + inputStream.close(); + } catch (Exception e) { + listener.exceptionThrown(e); + } + } + + /** + * Returns the exception listener. + * + * @return the exception listener + */ + public ExceptionListener getExceptionListener() { + return listener; + } + + /** + * Returns the owner of this decoder. + * + * @return the owner of this decoder + */ + public Object getOwner() { + return owner; + } + + /** + * Reads the next object. + * + * @return the next object + * @exception ArrayIndexOutOfBoundsException + * if no more objects to read + */ + @SuppressWarnings("nls") + public Object readObject() { + if (inputStream == null) { + return null; + } + if (saxHandler == null) { + saxHandler = new SAXHandler(); + try { + SAXParserFactory.newInstance().newSAXParser().parse( + inputStream, saxHandler); + } catch (Exception e) { + this.listener.exceptionThrown(e); + } + } + + if (readObjIndex >= readObjs.size()) { + throw new ArrayIndexOutOfBoundsException(Messages.getString("custom.beans.70")); + } + Elem elem = readObjs.get(readObjIndex); + if (!elem.isClosed) { + // bad element, error occurred while parsing + throw new ArrayIndexOutOfBoundsException(Messages.getString("custom.beans.70")); + } + readObjIndex++; + return elem.result; + } + + /** + * Sets the exception listener. + * + * @param listener + * an exception listener + */ + public void setExceptionListener(ExceptionListener listener) { + if (listener != null) { + this.listener = listener; + } + } + + /** + * Sets the owner of this decoder. + * + * @param owner + * the owner of this decoder + */ + public void setOwner(Object owner) { + this.owner = owner; + } +} diff --git a/src/main/java/org/apache/harmony/beans/Argument.java b/src/main/java/org/apache/harmony/beans/Argument.java new file mode 100644 index 000000000..3f151c2f4 --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/Argument.java @@ -0,0 +1,62 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.harmony.beans; + +public class Argument { + + private Class type; + + private Object value; + + private Class[] interfaces; + + public Argument(Object value) { + this.value = value; + if (this.value != null) { + this.type = value.getClass(); + this.interfaces = this.type.getInterfaces(); + } + } + + public Argument(Class type, Object value) { + this.type = type; + this.value = value; + this.interfaces = type.getInterfaces(); + } + + public Class getType() { + return type; + } + + public Object getValue() { + return value; + } + + public Class[] getInterfaces() { + return interfaces; + } + + public void setType(Class type) { + this.type = type; + this.interfaces = type.getInterfaces(); + } + + public void setInterfaces(Class[] interfaces) { + this.interfaces = interfaces; + } +} diff --git a/src/main/java/org/apache/harmony/beans/BeansUtils.java b/src/main/java/org/apache/harmony/beans/BeansUtils.java new file mode 100644 index 000000000..3342fc85b --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/BeansUtils.java @@ -0,0 +1,122 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.harmony.beans; + +import java.lang.reflect.Method; +import java.util.Arrays; + +public class BeansUtils { + + public static final Object[] EMPTY_OBJECT_ARRAY = new Object[0]; + + public static final String NEW = "new"; //$NON-NLS-1$ + + public static final String NEWINSTANCE = "newInstance"; //$NON-NLS-1$ + + public static final String NEWARRAY = "newArray"; //$NON-NLS-1$ + + public static final String FORNAME = "forName"; //$NON-NLS-1$ + + public static final String GET = "get"; //$NON-NLS-1$ + + public static final String IS = "is"; //$NON-NLS-1$ + + public static final String SET = "set"; //$NON-NLS-1$ + + public static final String ADD = "add"; //$NON-NLS-1$ + + public static final String PUT = "put"; //$NON-NLS-1$ + + public static final String NULL = "null"; //$NON-NLS-1$ + + public static final String QUOTE = "\"\""; //$NON-NLS-1$ + + public static final int getHashCode(Object obj) { + return obj != null ? obj.hashCode() : 0; + } + + public static final int getHashCode(boolean bool) { + return bool ? 1 : 0; + } + + public static String toASCIILowerCase(String string) { + char[] charArray = string.toCharArray(); + StringBuilder sb = new StringBuilder(charArray.length); + for (int index = 0; index < charArray.length; index++) { + if ('A' <= charArray[index] && charArray[index] <= 'Z') { + sb.append((char) (charArray[index] + ('a' - 'A'))); + } else { + sb.append(charArray[index]); + } + } + return sb.toString(); + } + + public static String toASCIIUpperCase(String string) { + char[] charArray = string.toCharArray(); + StringBuilder sb = new StringBuilder(charArray.length); + for (int index = 0; index < charArray.length; index++) { + if ('a' <= charArray[index] && charArray[index] <= 'z') { + sb.append((char) (charArray[index] - ('a' - 'A'))); + } else { + sb.append(charArray[index]); + } + } + return sb.toString(); + } + + public static boolean isPrimitiveWrapper(Class wrapper, Class base) { + return (base == boolean.class) && (wrapper == Boolean.class) + || (base == byte.class) && (wrapper == Byte.class) + || (base == char.class) && (wrapper == Character.class) + || (base == short.class) && (wrapper == Short.class) + || (base == int.class) && (wrapper == Integer.class) + || (base == long.class) && (wrapper == Long.class) + || (base == float.class) && (wrapper == Float.class) + || (base == double.class) && (wrapper == Double.class); + } + + private static final String EQUALS_METHOD = "equals"; + + private static final Class[] EQUALS_PARAMETERS = new Class[] { Object.class }; + + public static boolean declaredEquals(Class clazz) { + for (Method declaredMethod : clazz.getDeclaredMethods()) { + if (EQUALS_METHOD.equals(declaredMethod.getName()) + && Arrays.equals(declaredMethod.getParameterTypes(), + EQUALS_PARAMETERS)) { + return true; + } + } + return false; + } + + public static String idOfClass(Class clazz) { + Class theClass = clazz; + StringBuilder sb = new StringBuilder(); + if (theClass.isArray()) { + do { + sb.append("Array"); //$NON-NLS-1$ + theClass = theClass.getComponentType(); + } while (theClass.isArray()); + } + String clazzName = theClass.getName(); + clazzName = clazzName.substring(clazzName.lastIndexOf('.') + 1); + return clazzName + sb.toString(); + } +} diff --git a/src/main/java/org/apache/harmony/beans/Command.java b/src/main/java/org/apache/harmony/beans/Command.java new file mode 100644 index 000000000..160fb0677 --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/Command.java @@ -0,0 +1,865 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.harmony.beans; + +import custom.beans.BeanInfo; +import custom.beans.Expression; +import custom.beans.IndexedPropertyDescriptor; +import custom.beans.IntrospectionException; +import custom.beans.Introspector; +import custom.beans.PropertyDescriptor; +import custom.beans.Statement; +import custom.beans.XMLDecoder; +import java.lang.reflect.Array; +import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Vector; + +import org.apache.harmony.beans.internal.nls.Messages; +import org.xml.sax.Attributes; + +public class Command { + + private static final int INITIALIZED = 0; + + private static final int CHILDREN_FILTERED = 1; + + private static final int COMMAND_EXECUTED = 2; + + private static final int CHILDREN_PROCESSED = 3; + + private String tagName; // tag name + + private Map attrs; // set of attrs + + private String data; // string data + + // inner commands + private Vector commands = new Vector(); + + // arguments + private Vector arguments = new Vector(); + + // operations + private Vector operations = new Vector(); + + // additional arguments placed before others + private Vector auxArguments = new Vector(); + + private Argument result; // result argument + + private Object target; // target to execute a command on + + private String methodName; // method name + + private Command ctx; // context for command + + private int status; // commands + + private XMLDecoder decoder; + + // private int tabCount = 0; + + public Command(String tagName, Map attrs) { + this.tagName = tagName; + this.attrs = attrs; + this.status = initializeStatus(tagName); + } + + public Command(XMLDecoder decoder, String tagName, Map attrs) { + this.decoder = decoder; + this.tagName = tagName; + this.attrs = attrs; + this.status = initializeStatus(tagName); + } + + // set data for command + public void setData(String data) { + this.data = data; + } + + // set tab count to display log messages + // public void setTabCount(int tabCount) { + // this.tabCount = tabCount; + // } + + // set context - upper level command + public void setContext(Command ctx) { + this.ctx = ctx; + } + + // add child command + public void addChild(Command cmd) { + if (cmd != null) { + cmd.setContext(this); + commands.add(cmd); + } + } + + // remove child command + public void removeChild(Command cmd) { + if ((cmd != null) && commands.remove(cmd)) { + cmd.setContext(null); + } + } + + // command status + public int getStatus() { + return status; + } + + // check if one of arguments or operations is unresolved + private boolean isResolved() { + if (getStatus() < Command.CHILDREN_PROCESSED) { + return false; + } + for (int i = 0; i < arguments.size(); ++i) { + Command arg = arguments.elementAt(i); + + if (!arg.isResolved()) { + return false; + } + } + for (int j = 0; j < operations.size(); ++j) { + Command opr = operations.elementAt(j); + + if (!opr.isResolved()) { + return false; + } + } + return true; + } + + // execute command and return execution flags + public int exec(Map references) throws Exception { + // System.out.println("in exec() status = " + translateStatus(status) + + // "..."); + if (status < Command.CHILDREN_PROCESSED) { + if (status < Command.COMMAND_EXECUTED) { + if (status < Command.CHILDREN_FILTERED) { + status = doBeforeRun(references); + // System.out.println("after doBeforeRun() status = " + + // translateStatus(status)); + } + if (status == Command.CHILDREN_FILTERED) { + status = doRun(references); + // System.out.println("after doRun() status = " + + // translateStatus(status)); + } + } + if (status == Command.COMMAND_EXECUTED) { + status = doAfterRun(references); + // System.out.println("after doAfterRun() status = " + + // translateStatus(status)); + } + } + // System.out.println("...out of exec() status = " + + // translateStatus(status)); + return status; + } + + // execute commands in backtrack order + public boolean backtrack(Map references) throws Exception { + for (int i = 0; i < arguments.size(); ++i) { + Command arg = arguments.elementAt(i); + arg.backtrack(references); + } + for (int i = 0; i < operations.size(); ++i) { + Command opr = operations.elementAt(i); + opr.backtrack(references); + } + if (status == Command.CHILDREN_FILTERED) { + status = doRun(references); + } + if (status == Command.COMMAND_EXECUTED) { + status = doAfterRun(references); + return (getStatus() == Command.CHILDREN_PROCESSED); + } + return false; + } + + // put command in one of two collections - arguments or operations + private int doBeforeRun(Map references) throws Exception { + if (status == Command.INITIALIZED) { + for (int i = 0; i < commands.size(); ++i) { + Command cmd = commands.elementAt(i); + + // XXX is this correct? + if (cmd.isExecutable()) { + arguments.add(cmd); + } else { + operations.add(cmd); + } + } + return Command.CHILDREN_FILTERED; + } + return status; + } + + // run command + private int doRun(Map references) throws Exception { + if (status == Command.CHILDREN_FILTERED) { + if (isRoot()) { + result = new Argument(decoder); + // System.out.println("doRun(): result is decoder..."); + return Command.COMMAND_EXECUTED; + } + + if (isNull()) { + result = new Argument(null); + // System.out.println("doRun(): result is null..."); + return Command.COMMAND_EXECUTED; + } + + if (ctx != null && ctx.isArray() && (ctx.getResultValue() == null) + && !isExecutable()) { + // System.out.println("doRun(): context is array..."); + return status; + } + + Object target = getTarget(references); + if (target == null) { + // System.out.println("doRun(): target is null..."); + return status; + } + // if (target instanceof Class) { + // System.out.println("doRun(): target = " + + // ((Class)target).getName()); + // } else { + // System.out.println("doRun(): target = " + + // target.getClass().getName()); + // } + if (isReference()) { + result = getReferencedArgument(references); + // System.out.println("doRun(): reference - result is " + + // result.getType()); + } else { + String methodName = getMethodName(references); + // System.out.println("doRun(): methodName = " + + // methodName); + Argument[] arguments = getArguments(); + if (arguments == null) { + return status; + } + // for (Argument element : arguments) { + // if (element != null) { + // System.out.println("doRun(): arg [" + i + "] = " + // + arguments[i].getType()); + // } else { + // System.out.println("doRun(): arg [" + i + "] = + // null"); + // } + // } + + Expression expr = new Expression(target, methodName, + getArgumentsValues()); + result = new Argument(expr.getValue()); + + if (isPrimitiveClassName(getTagName())) { + result.setType(getPrimitiveClass(tagName)); + } + + // System.out.println("doRun(): method call - result is " + + // result.getType()); + } + return Command.COMMAND_EXECUTED; + } + return status; + } + + // run child commands + private int doAfterRun(Map references) throws Exception { + if (status == Command.COMMAND_EXECUTED) { + // System.out.println("doAfterRun(): command " + getResultType() + " + // processed..."); + Vector toBeRemoved = new Vector(); + try { + Statement[] statements = null; + + for (int i = 0; i < operations.size(); ++i) { + Command cmd = operations.elementAt(i); + + if (cmd.isArrayElement()) { + + if (cmd.isResolved()) { + if (statements == null) { + statements = new Statement[operations.size()]; + } + statements[i] = new Statement(getResultValue(), + "set", new Object[] { Integer.valueOf(i), //$NON-NLS-1$ + cmd.getResultValue() }); + if ((i + 1) == operations.size()) { + for (int j = 0; j < operations.size(); ++j) { + statements[j].execute(); + } + toBeRemoved.addAll(operations); + } + } else { + break; + } + + } else { + // since the call is Array.set() + if (!isArray()) { + cmd.setTarget(getResultValue()); + } + cmd.exec(references); + + if (cmd.isResolved()) { + // System.out.println("doAfterRun(): cmd = " + + // cmd.methodName + " is resolved"); + toBeRemoved.add(cmd); + } else { + // System.out.println("doAfterRun(): cmd = " + + // cmd.methodName + " is unresolved"); + break; + } + + } + + } + } catch (Exception e) { + throw new Exception(e); + } finally { + operations.removeAll(toBeRemoved); + } + + // if (operations.size() == 0) { + // System.out.println("doAfterRun(): command " + getResultType() + // + " completely processed."); + // } else { + // System.out.println("doAfterRun(): command " + getResultType() + // + " contains incomplete " + + // operations.size() + " commands."); + // } + return (operations.size() == 0) ? Command.CHILDREN_PROCESSED + : status; + } + return status; + } + + // Result accessors + + // Return result - Argument class + public Argument getResult() { + return result; + } + + // Returns result value + public Object getResultValue() { + return (result != null) ? result.getValue() : null; + } + + // Returns result type + public Class getResultType() throws ClassNotFoundException { + return (result != null) ? result.getType() : null; + } + + // accessors to XML tags and attrs + public boolean hasAttr(String name) { + return attrs.get(name) != null; + } + + public String getAttr(String name) { + return attrs.get(name); + } + + public boolean isTag(String name) { + return tagName.equals(name); + } + + public boolean hasAttr(String name, String value) { + return value.equals(attrs.get(name)); + } + + public String getTagName() { + return tagName; + } + + // Checks if the object is primitive - int, float, etc... + private boolean isPrimitive() { + return isPrimitiveClassName(tagName); + } + + // Checks if the object is constructor + private boolean isConstructor() { + return isPrimitive() || !isStaticMethod() && !isMethod() + && !isProperty() && !isField() && !isArray() && !isReference(); + } + + // Checks if the command is static method + private boolean isStaticMethod() { + return isTag("object") && hasAttr("method") || isTag("class"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + } + + // Checks if the command is public method + private boolean isMethod() { + return isTag("void") && (hasAttr("method") || hasAttr("index")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + } + + // Check if the command relates to property - getter ot setter depends on + // number of args + private boolean isProperty() { + return isTag("void") && hasAttr("property"); //$NON-NLS-1$ //$NON-NLS-2$ + } + + // Check if the command is field accessor + private boolean isField() { + return isTag("object") && hasAttr("field"); //$NON-NLS-1$ //$NON-NLS-2$ + } + + // Check if the command is array + private boolean isArray() { + return isTag("array"); //$NON-NLS-1$ + } + + // Check if the command is array element + private boolean isArrayElement() { + return (ctx != null) && (ctx.isArray()) && isExecutable(); + } + + private boolean isReference() { + return hasAttr("idref"); //$NON-NLS-1$ + } + + // Check if the command is root object + private boolean isRoot() { + return isTag("java"); //$NON-NLS-1$ + } + + // Check if the command is null + private boolean isNull() { + return isTag("null"); //$NON-NLS-1$ + } + + // Checks if the command could generate object + public boolean isExecutable() { + boolean result = isTag("object") || isTag("void") && hasAttr("class") //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + && hasAttr("method") || isTag("array") || isPrimitive() //$NON-NLS-1$ //$NON-NLS-2$ + || isTag("class") || isTag("null"); //$NON-NLS-1$ //$NON-NLS-2$ + return result; + } + + private Argument getReferencedArgument(Map references) { + return references.get(getAttr("idref")).getResult(); //$NON-NLS-1$ + } + + // get a target through tag and attrs analysis + private Object getTarget(Map references) throws Exception { + if (target == null) { + if (isReference()) { + Command cmd = references.get(getAttr("idref")); //$NON-NLS-1$ + target = (cmd != null) ? cmd.getResultValue() : null; + } else if (isExecutable()) { + String className = null; + + if (isPrimitive()) { + className = getPrimitiveClassName(tagName); + } else if (isTag("class")) { //$NON-NLS-1$ + className = getPrimitiveClassName(tagName); + } else if (isConstructor() || isStaticMethod() || isField()) { + className = getAttr("class"); //$NON-NLS-1$ + } else if (isArray()) { + className = getAttr("class"); //$NON-NLS-1$ + Class componentType = isPrimitiveClassName(className) ? getPrimitiveClass(className) + : Class.forName(className, true, Thread + .currentThread().getContextClassLoader()); + className = Array.newInstance(componentType, 0).getClass() + .getName(); + } + + if (className != null) { + try { + target = Class.forName(className, true, Thread + .currentThread().getContextClassLoader()); + } catch (ClassNotFoundException e) { + target = Class.forName(className); + } + + if (isField()) { + String fieldName = getAttr("field"); //$NON-NLS-1$ + target = ((Class) target).getField(fieldName); + } + } else { + throw new Exception(Messages.getString( + "beans.42", className)); //$NON-NLS-1$ + } + } else if (ctx.isArray()) { + // target = ctx.getTarget(references); + target = Class.forName("java.lang.reflect.Array"); //$NON-NLS-1$ + } + } + return target; + } + + // set target to execute command on + private void setTarget(Object target) { + this.target = target; + } + + // Return a method name of command + private String getMethodName(Map references) + throws NoSuchMethodException, IntrospectionException, Exception { + if (methodName == null) { + String methodValue = null; + if (isTag("class")) { //$NON-NLS-1$ + addArgument(new Argument(String.class, data), 0); + methodValue = "forName"; //$NON-NLS-1$ + } else if (isPrimitive()) { + if (isTag("char")) { //$NON-NLS-1$ + if (data.length() != 1) { + throw new IntrospectionException(Messages.getString( + "beans.43", //$NON-NLS-1$ + data)); + } + addArgument(new Argument(char.class, Character.valueOf(data + .charAt(0))), 0); + } else { + addArgument(new Argument(String.class, data), 0); + } + methodValue = "new"; //$NON-NLS-1$ + } else if (isConstructor() || hasAttr("method", "new")) { //$NON-NLS-1$ //$NON-NLS-2$ + methodValue = "new"; //$NON-NLS-1$ + } else if (isArray()) { + methodValue = "new"; //$NON-NLS-1$ + int length = hasAttr("length") ? Integer //$NON-NLS-1$ + .parseInt(getAttr("length")) : getArgumentsNumber(); //$NON-NLS-1$ + copyArgumentsToCommands(); + addArgument(new Argument(int.class, Integer.valueOf(length)), 0); + } else if (hasAttr("property")) { //$NON-NLS-1$ + String propertyValue = getAttr("property"); //$NON-NLS-1$ + if (hasAttr("index")) { //$NON-NLS-1$ + addArgument(new Argument(int.class, new Integer( + getAttr("index"))), 0); //$NON-NLS-1$ + } + + BeanInfo beanInfo = Introspector.getBeanInfo(getTarget( + references).getClass()); + PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors(); + + boolean methodFound = false; + Method method = null; + for (PropertyDescriptor pd : pds) { + if (propertyValue.equals(pd.getName())) { + int argsNum = getArgumentsNumber(); + if (hasAttr("index")) { //$NON-NLS-1$ + IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; + if (argsNum == 1) { + method = ipd.getIndexedReadMethod(); + } else if (argsNum == 0) { + method = ipd.getReadMethod(); + } + } else { + method = pd.getReadMethod(); + } + + if (method != null) { + methodFound = matchMethodParams(method, references); + } + + if (methodFound == false) { + if (hasAttr("index")) { //$NON-NLS-1$ + IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; + if (argsNum == 2) { + method = ipd.getIndexedWriteMethod(); + } else if (argsNum == 1) { + method = ipd.getWriteMethod(); + } + } else { + method = pd.getWriteMethod(); + } + } + + if (method != null) { + methodFound = matchMethodParams(method, references); + } + } + } + + if (method == null) { + throw new NoSuchMethodException(Messages.getString( + "beans.44", //$NON-NLS-1$ + propertyValue)); + } + methodValue = method.getName(); + } else if (hasAttr("method")) { //$NON-NLS-1$ + if (hasAttr("index")) { //$NON-NLS-1$ + addArgument(new Argument(int.class, Integer + .valueOf(getAttr("index"))), 0); //$NON-NLS-1$ + } + methodValue = getAttr("method"); //$NON-NLS-1$ + } else if (hasAttr("index")) { //$NON-NLS-1$ + addArgument(new Argument(int.class, Integer + .valueOf(getAttr("index"))), 0); //$NON-NLS-1$ + methodValue = getArgumentsNumber() > 1 ? "set" : "get"; //$NON-NLS-1$ //$NON-NLS-2$ + if (ctx.isArray()) { + addArgument(ctx.getResult(), 0); + } + } else if (hasAttr("field")) { //$NON-NLS-1$ + addArgument(new Argument(Class.forName(getAttr("class"), true, //$NON-NLS-1$ + Thread.currentThread().getContextClassLoader())), 0); + + methodValue = "get"; //$NON-NLS-1$ + } else { + throw new Exception(Messages.getString("beans.45")); //$NON-NLS-1$ + } + methodName = methodValue; + } + return methodName; + } + + // return a list of arguments as of Argument type + private Argument[] getArguments() { + Argument[] args = new Argument[auxArguments.size() + arguments.size()]; + + for (int i = 0; i < auxArguments.size(); ++i) { + args[i] = auxArguments.elementAt(i); + } + for (int j = 0; j < arguments.size(); ++j) { + Command cmd = arguments.elementAt(j); + + if (cmd.getStatus() >= Command.COMMAND_EXECUTED) { + args[auxArguments.size() + j] = cmd.getResult(); + } else { + // System.out.println("arg: " + cmd.getResultValue()); + args = null; + break; + } + } + return args; + } + + // return argument values + private Object[] getArgumentsValues() { + Argument[] args = getArguments(); + Object[] result = new Object[args.length]; + for (int i = 0; i < args.length; ++i) { + result[i] = args[i].getValue(); + } + return result; + } + + // copy arguments to treat as commands + private void copyArgumentsToCommands() { + Iterator i = arguments.iterator(); + while (i.hasNext()) { + Command cmd = i.next(); + cmd.status = Command.CHILDREN_FILTERED; + operations.add(cmd); + } + arguments.clear(); + } + + // return number of arguments + private int getArgumentsNumber() { + return auxArguments.size() + arguments.size(); + } + + // return number of commands + // private int getOperationsNumber() { + // return operations.size(); + // } + + // add argument to the beginning of arguments + private void addArgument(Argument argument, int idx) { + auxArguments.insertElementAt(argument, idx); + } + + // Check if the name of class is primitive + public static boolean isPrimitiveClassName(String className) { + return className.equalsIgnoreCase("boolean") //$NON-NLS-1$ + || className.equalsIgnoreCase("byte") //$NON-NLS-1$ + || className.equalsIgnoreCase("char") //$NON-NLS-1$ + || className.equalsIgnoreCase("short") //$NON-NLS-1$ + || className.equalsIgnoreCase("int") //$NON-NLS-1$ + || className.equalsIgnoreCase("long") //$NON-NLS-1$ + || className.equalsIgnoreCase("float") //$NON-NLS-1$ + || className.equalsIgnoreCase("double") //$NON-NLS-1$ + || className.equalsIgnoreCase("string"); //$NON-NLS-1$ + } + + // Transforms a primitive class name + private String getPrimitiveClassName(String data) { + String shortClassName = null; + if (data.equals("int")) { //$NON-NLS-1$ + shortClassName = "Integer"; //$NON-NLS-1$ + } else if (data.equals("char")) { //$NON-NLS-1$ + shortClassName = "Character"; //$NON-NLS-1$ + } else { + shortClassName = data.substring(0, 1).toUpperCase() + + data.substring(1, data.length()); + } + return "java.lang." + shortClassName; //$NON-NLS-1$ + } + + public static Class getPrimitiveClass(String className) { + Class result = null; + if (className.equals("boolean")) { //$NON-NLS-1$ + result = boolean.class; + } else if (className.equals("byte")) { //$NON-NLS-1$ + result = byte.class; + } else if (className.equals("char")) { //$NON-NLS-1$ + result = char.class; + } else if (className.equals("short")) { //$NON-NLS-1$ + result = short.class; + } else if (className.equals("int")) { //$NON-NLS-1$ + result = int.class; + } else if (className.equals("long")) { //$NON-NLS-1$ + result = long.class; + } else if (className.equals("float")) { //$NON-NLS-1$ + result = float.class; + } else if (className.equals("double")) { //$NON-NLS-1$ + result = double.class; + } else if (className.equals("string")) { //$NON-NLS-1$ + result = String.class; + } + return result; + } + + private boolean matchMethodParams(Method method, Map references) { + Class[] paramTypes = method.getParameterTypes(); + Argument[] args = getArguments(); + if (args == null) { + return false; + } + boolean result = true; + if (paramTypes.length == args.length) { + for (int j = 0; j < paramTypes.length; ++j) { + // System.out.println("paramTypes[j] = " + paramTypes[j]); + // System.out.println("args[j] = " + args[j].getType()); + + boolean isAssignable = (args[j].getType() == null) ? !paramTypes[j] + .isPrimitive() + : paramTypes[j].isAssignableFrom(args[j].getType()); + + // System.out.println("args[j] = " + args[j].getType()); + + if (!isAssignable) { + result = false; + break; + } + } + } else { + result = false; + } + return result; + } + + public static Map parseAttrs(String tagName, Attributes attrs) { + Map result = new HashMap(); + if (tagName.equals("object")) { //$NON-NLS-1$ + for (String name : objectAttrNames) { + String value = attrs.getValue(name); + if (value != null) { + result.put(name, value); + } + } + } else if (tagName.equals("void")) { //$NON-NLS-1$ + for (String name : voidAttrNames) { + String value = attrs.getValue(name); + if (value != null) { + result.put(name, value); + } + } + } else if (tagName.equals("array")) { //$NON-NLS-1$ + for (String name : arrayAttrNames) { + String value = attrs.getValue(name); + if (value != null) { + result.put(name, value); + } + } + } else if (tagName.equals("java")) { //$NON-NLS-1$ + for (String name : javaAttrNames) { + String value = attrs.getValue(name); + if (value != null) { + result.put(name, value); + } + } + } + return result; + } + + // Auxiliary logging with tabs functions + public static void pr(String msg) { + // System.out.print(msg); + } + + public static void pr(int tabCount, String msg) { + String result = ""; //$NON-NLS-1$ + for (int i = 0; i < tabCount; ++i) { + result += '\t'; + } + result += msg; + // System.out.print(result); + } + + public static void prn(String msg) { + // System.out.println(msg); + } + + public static void prn(int tabCount, String msg) { + String result = ""; //$NON-NLS-1$ + for (int i = 0; i < tabCount; ++i) { + result += '\t'; + } + result += msg; + // System.out.println(result); + } + + public static void printAttrs(int tabCount, String tagName, Attributes attrs) { + pr(tabCount, tabCount + ">in <" + tagName); //$NON-NLS-1$ + for (int i = 0; i < attrs.getLength(); ++i) { + String attrName = attrs.getQName(i); + String attrValue = attrs.getValue(i); + pr(" " + attrName + "=" + attrValue); //$NON-NLS-1$ //$NON-NLS-2$ + } + prn(">"); //$NON-NLS-1$ + } + + private static int initializeStatus(String tagName) { + // return tagName.equals("java") ? Command.COMMAND_EXECUTED : + // Command.INITIALIZED; + return Command.INITIALIZED; + } + + // private static String translateStatus(int status) { + // String result = "unknown"; + // if(status == Command.INITIALIZED) { + // result = "initialized"; + // } else if(status == Command.CHILDREN_FILTERED) { + // result = "children filtered"; + // } else if(status == Command.COMMAND_EXECUTED) { + // result = "executed"; + // } else if(status == Command.CHILDREN_PROCESSED) { + // result = "children processed"; + // } + // return result; + // } + + private static final String[] objectAttrNames = { "id", "idref", "class", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + "field", "method", "property", "index" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ + + private static final String[] voidAttrNames = { "id", "class", "method", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + "property", "index" }; //$NON-NLS-1$ //$NON-NLS-2$ + + private static final String[] arrayAttrNames = { "id", "class", "length" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ + + private static final String[] javaAttrNames = { "version", "class" }; //$NON-NLS-1$ //$NON-NLS-2$ +} diff --git a/src/main/java/org/apache/harmony/beans/Handler.java b/src/main/java/org/apache/harmony/beans/Handler.java new file mode 100644 index 000000000..342638d19 --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/Handler.java @@ -0,0 +1,146 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.harmony.beans; + +import custom.beans.XMLDecoder; +import java.util.HashMap; +import java.util.Map; +import java.util.Stack; +import java.util.Vector; +import org.apache.harmony.beans.internal.nls.Messages; +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; +import org.xml.sax.helpers.DefaultHandler; + +public class Handler extends DefaultHandler { + + private Vector result; + + private Vector commands; + + private XMLDecoder decoder; + + private Map references; + + private Stack stack; + + private int tabCount; + + public Handler(XMLDecoder decoder, Vector result) { + this.decoder = decoder; + this.result = result; + this.commands = new Vector(); + this.references = new HashMap(); + this.stack = new Stack(); + } + + // clear collections to prepare parsing document + @Override + public void startDocument() { + references.clear(); + tabCount = 0; + } + + // create new command and put it on stack + @Override + public void startElement(String namespaceURI, String localeName, + String tagName, Attributes attrs) throws SAXException { + Command.printAttrs(tabCount, tagName, attrs); + Command cmd = tagName.equals("java") ? new Command(decoder, tagName, //$NON-NLS-1$ + Command.parseAttrs(tagName, attrs)) : new Command(tagName, + Command.parseAttrs(tagName, attrs)); + stack.push(cmd); + ++tabCount; + } + + // add data to command + @Override + public void characters(char[] text, int start, int length) + throws SAXException { + if (length > 0) { + String data = String.valueOf(text, start, length) + .replace('\n', ' ').replace('\t', ' ').trim(); + if (data.length() > 0) { + Command.prn(tabCount, tabCount + ">setting data=" + data //$NON-NLS-1$ + + ""); //$NON-NLS-1$ + Command cmd = stack.peek(); + cmd.setData(data); + } + } + } + + // pop command from stack and put it to one of collections + @Override + public void endElement(String namespaceURI, String localeName, + String tagName) throws SAXException { + Command cmd = stack.pop(); + // cmd.setTabCount(tabCount); + + // find if command works in context + if (!stack.isEmpty()) { + Command ctx = stack.peek(); + ctx.addChild(cmd); + } + + // upper level commands + if (stack.size() == 1 && cmd.isExecutable()) { + commands.add(cmd); + } + + // store reference to command + if (cmd.hasAttr("id")) { //$NON-NLS-1$ + references.put(cmd.getAttr("id"), cmd); //$NON-NLS-1$ + } + + try { + cmd.exec(references); + } catch (Exception e) { + SAXException e2 = new SAXException(e.getMessage()); + + e2.initCause(e); + throw e2; + } + + if (--tabCount < 0) { + tabCount = 0; + } + + Command.prn(tabCount, tabCount + ">...<" + tagName + "> end"); //$NON-NLS-1$ //$NON-NLS-2$ + } + + // iterate over deferred commands and execute them again + @Override + public void endDocument() throws SAXException { + for (int i = 0; i < commands.size(); ++i) { + Command cmd = commands.elementAt(i); + try { + cmd.backtrack(references); + } catch (Exception e) { + throw new SAXException(Messages.getString("beans.0B")); //$NON-NLS-1$ + } + // if(!backtracked) + // throw new SAXException("Command " + cmd.getTagName() + + // " is unresolved on second run() call."); + } + + for (int i = 0; i < commands.size(); ++i) { + Command cmd = commands.elementAt(i); + result.add(cmd.getResultValue()); + } + } +} diff --git a/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java b/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java new file mode 100644 index 000000000..80f3eb4d3 --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java @@ -0,0 +1,240 @@ +/* MODIFIED FOR THE MSGPACK PROJECT + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* MODIFIED FOR THE MSGPACK PROJECT + * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL. + * All changes made to this file manually will be overwritten + * if this tool runs again. Better make changes in the template file. + */ + +package org.apache.harmony.beans.internal.nls; + + +import java.util.MissingResourceException; +import java.util.ResourceBundle; + +//import org.apache.harmony.kernel.vm.VM; + +/** + * This class retrieves strings from a resource bundle and returns them, + * formatting them with MessageFormat when required. + *

    + * It is used by the system classes to provide national language support, by + * looking up messages in the + * org.apache.harmony.beans.internal.nls.messages + * + * resource bundle. Note that if this file is not available, or an invalid key + * is looked up, or resource bundle support is not available, the key itself + * will be returned as the associated message. This means that the KEY + * should a reasonable human-readable (english) string. + * + */ +public class Messages { + + // ResourceBundle holding the system messages. + static private ResourceBundle bundle = null; + + /** + * Retrieves a message which has no arguments. + * + * @param msg + * String the key to look up. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg) { + if (bundle == null) + return msg; + try { + return bundle.getString(msg); + } catch (MissingResourceException e) { + return "Missing message: " + msg; //$NON-NLS-1$ + } + } + + /** + * Retrieves a message which takes 1 argument. + * + * @param msg + * String the key to look up. + * @param arg + * Object the object to insert in the formatted output. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg, Object arg) { + return getString(msg, new Object[] { arg }); + } + + /** + * Retrieves a message which takes 1 integer argument. + * + * @param msg + * String the key to look up. + * @param arg + * int the integer to insert in the formatted output. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg, int arg) { + return getString(msg, new Object[] { Integer.toString(arg) }); + } + + /** + * Retrieves a message which takes 1 character argument. + * + * @param msg + * String the key to look up. + * @param arg + * char the character to insert in the formatted output. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg, char arg) { + return getString(msg, new Object[] { String.valueOf(arg) }); + } + + /** + * Retrieves a message which takes 2 arguments. + * + * @param msg + * String the key to look up. + * @param arg1 + * Object an object to insert in the formatted output. + * @param arg2 + * Object another object to insert in the formatted output. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg, Object arg1, Object arg2) { + return getString(msg, new Object[] { arg1, arg2 }); + } + + /** + * Retrieves a message which takes several arguments. + * + * @param msg + * String the key to look up. + * @param args + * Object[] the objects to insert in the formatted output. + * @return String the message for that key in the system message bundle. + */ + static public String getString(String msg, Object[] args) { + String format = msg; + + if (bundle != null) { + try { + format = bundle.getString(msg); + } catch (MissingResourceException e) { + } + } + + return format(format, args); + } + + /** + * Generates a formatted text string given a source string containing + * "argument markers" of the form "{argNum}" where each argNum must be in + * the range 0..9. The result is generated by inserting the toString of each + * argument into the position indicated in the string. + *

    + * To insert the "{" character into the output, use a single backslash + * character to escape it (i.e. "\{"). The "}" character does not need to be + * escaped. + * + * @param format + * String the format to use when printing. + * @param args + * Object[] the arguments to use. + * @return String the formatted message. + */ + public static String format(String format, Object[] args) { + StringBuilder answer = new StringBuilder(format.length() + + (args.length * 20)); + String[] argStrings = new String[args.length]; + for (int i = 0; i < args.length; ++i) { + if (args[i] == null) + argStrings[i] = ""; //$NON-NLS-1$ + else + argStrings[i] = args[i].toString(); + } + int lastI = 0; + for (int i = format.indexOf('{', 0); i >= 0; i = format.indexOf('{', + lastI)) { + if (i != 0 && format.charAt(i - 1) == '\\') { + // It's escaped, just print and loop. + if (i != 1) + answer.append(format.substring(lastI, i - 1)); + answer.append('{'); + lastI = i + 1; + } else { + // It's a format character. + if (i > format.length() - 3) { + // Bad format, just print and loop. + answer.append(format.substring(lastI, format.length())); + lastI = format.length(); + } else { + int argnum = (byte) Character.digit(format.charAt(i + 1), + 10); + if (argnum < 0 || format.charAt(i + 2) != '}') { + // Bad format, just print and loop. + answer.append(format.substring(lastI, i + 1)); + lastI = i + 1; + } else { + // Got a good one! + answer.append(format.substring(lastI, i)); + if (argnum >= argStrings.length) + answer.append(""); //$NON-NLS-1$ + else + answer.append(argStrings[argnum]); + lastI = i + 3; + } + } + } + } + if (lastI < format.length()) + answer.append(format.substring(lastI, format.length())); + return answer.toString(); + } +// +// /** +// * Changes the locale of the messages. +// * +// * @param locale +// * Locale the locale to change to. +// */ +// static public ResourceBundle setLocale(final Locale locale, +// final String resource) { +// try { +// final ClassLoader loader = VM.bootCallerClassLoader(); +// return (ResourceBundle) AccessController +// .doPrivileged(new PrivilegedAction() { +// public Object run() { +// return ResourceBundle.getBundle(resource, locale, +// loader != null ? loader : ClassLoader.getSystemClassLoader()); +// } +// }); +// } catch (MissingResourceException e) { +// } +// return null; +// } +// +// static { +// // Attempt to load the messages. +// try { +// bundle = setLocale(Locale.getDefault(), +// "org.apache.harmony.beans.internal.nls.messages"); //$NON-NLS-1$ +// } catch (Throwable e) { +// e.printStackTrace(); +// } +// } +} diff --git a/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties b/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties new file mode 100644 index 000000000..cef8dcaa7 --- /dev/null +++ b/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties @@ -0,0 +1,133 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +# messages for EN locale +beans.00=no getter for {0} property +beans.01=no property for name {0} is found +beans.02=in DefaultPersistenceDelegate.mutatesTo() {0} : {1} +beans.03=Target Bean class is null +beans.04=bad property name +beans.05=Modifier for setter method should be public. +beans.06=Number of parameters in setter method is not equal to 1. +beans.07=Parameter type in setter method does not corresponds to predefined. +beans.08=Number of parameters in getter method is not equal to 0. +beans.09=Parameter type in getter method does not corresponds to predefined. +beans.0A=Modifier for getter method should be public. +beans.0B=Exception in command execution +beans.0C=source is null +beans.0D=Error in expression: {0} +beans.0E=Changes are null +beans.0F=The new BeanContext can not be set +beans.10=no node is found for statement with target = {0} +beans.11=no getter for property {0} found +beans.12=cannot access property {0} getter +beans.13=no setter for property {0} found +beans.14=Exception while finding property descriptor +beans.15=The listener is null +beans.16=The provider is null +beans.17=The child is null +beans.18=The requestor is null +beans.19=The service class is null +beans.1A=The service selector is null +beans.1B=The service is null +beans.1C=The event is null +beans.1D=bean is null +beans.1E=Illegal class name: {0} +beans.1F=Method not found: get{0} +beans.20=Method not found: set{0} +beans.21=Modifier for indexed getter method should be public. +beans.22=Number of parameters in getter method is not equal to 1. +beans.23=Parameter in indexed getter method is not of integer type. +beans.24=Parameter type in indexed getter method does not correspond to predefined. +beans.25=Modifier for indexed setter method should be public. +beans.26=Number of parameters in indexed setter method is not equal to 2. +beans.27=First parameter type in indexed setter method should be int. +beans.28=Second parameter type in indexed setter method does not corresponds to predefined. +beans.29=Membership listener is null +beans.2A=Target child can not be null +beans.2B=Resource name can not be null +beans.2C=The child can not be null +beans.2D=Invalid resource +beans.2E=PropertyVetoException was thrown while removing a child: {0}; Original error message:{1} +beans.2F=Target child is null +beans.30=PropertyVetoException was thrown while adding a child: {0}; Original error message:{1} +beans.31=No valid method {0} for {1} found. +beans.32=Cannot acquire event type from {0} listener. +beans.33={0} does not return +beans.34={0} should have a single input parameter +beans.35=Single parameter does not match to {0} class +beans.36=No input params are allowed for getListenerMethod +beans.37=Return type of getListenerMethod is not an array of listeners +beans.38=Add and remove methods are not available +beans.39=Cannot generate event set descriptor for name {0}. +beans.3A=Event type with name {0} is not found. +beans.3B=skipping expression {0}... +beans.3C=Unknown method name for array +beans.3D=First parameter in array getter(setter) is not of Integer type +beans.3E=Illegal number of arguments in array getter +beans.3F=Illegal number of arguments in array setter +beans.40=No constructor for class {0} found +beans.41=No method with name {0} is found +beans.42=target is not generated: classname {0} is not found +beans.43=Cannot convert {0} to char +beans.44=for property {0} no getter(setter) is found +beans.45=method name is not generated: error in getMethodName() +beans.46=Not a valid child +beans.47=Unable to instantiate property editor +beans.48=Property editor is not assignable from the PropertyEditor interface +beans.49=Child cannot implement both BeanContextChild and BeanContextProxy +beans.4A=newInstance is null +beans.4B=type is null +beans.4C=encoder is null +beans.4D=Invalid method call +beans.4E=stopClass is not ancestor of beanClass +beans.4F=search path is null +beans.50=not an indexed property +beans.51=Listener method {0} should have parameter of type {1} +beans.52=listenerMethodName(s) is null +beans.53=eventSetName is null +beans.54=listenerType is null +beans.55=Method is null +beans.56=Provider does not match +beans.57=Property type is incompatible with the indexed property type +beans.58=No such indexed read method +beans.59=Security violation accessing indexed read method +beans.5A=Indexed read method is not compatible with indexed write method +beans.5B=Indexed read method must take a single int argument +beans.5C=Security violation accessing indexed write method +beans.5D=No such indexed write method +beans.5E=Indexed method is not compatible with non indexed method +beans.5F=Indexed write method must take a two arguments +beans.60=Indexed write method must take an int as its first argument +beans.61=Indexed write method is not compatible with indexed read method +beans.62=Cannot decide which method to call to match {0} +beans.63=The type of element is mismatch with the type of array +beans.64=Method not found: {0} +beans.65=not a child of this context +beans.66=not the service provider registered with this context +beans.67=null child +beans.68=cannot update children during serialization +beans.69=Validation failed to add the child +beans.6A=null BeanContextChild proxy +beans.6B=failed to update child's beanContext property +beans.6C=Illegal to impl both BeanContextChild and BeanContextProxy +beans.6D=Not a child of this context +beans.6E=Validation failed to remove the child +beans.6F=children changed during serialization! +beans.70=no more objects to read +beans.71=Unknown tag of basic type: {0} +beans.72=Unknown root element: {0} +beans.73=Unknown basic object: {0} diff --git a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java index 06a243aac..37f6ef122 100644 --- a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java @@ -1,6 +1,6 @@ package org.msgpack.template.builder; -import java.beans.PropertyDescriptor; +import custom.beans.PropertyDescriptor; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Type; diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index e94b4283b..754e7d704 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -17,10 +17,10 @@ // package org.msgpack.template.builder; -import java.beans.BeanInfo; -import java.beans.IntrospectionException; -import java.beans.Introspector; -import java.beans.PropertyDescriptor; +import custom.beans.BeanInfo; +import custom.beans.IntrospectionException; +import custom.beans.Introspector; +import custom.beans.PropertyDescriptor; import java.io.IOException; import java.lang.reflect.Method; import java.lang.reflect.Modifier; From 1c90e16bc53d5df752d4d67a5310ef1564ebf271 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miko=C5=82aj=20Koziarkiewicz?= <> Date: Sun, 1 Jul 2012 16:09:38 +0200 Subject: [PATCH 324/409] -Changed Harmony code's license comments to inline comments, for conformance with msgpack style -Removed two unnecessary classes --- .../java/custom/beans/BeanDescriptor.java | 32 +- src/main/java/custom/beans/BeanInfo.java | 32 +- .../java/custom/beans/EventSetDescriptor.java | 32 +- .../java/custom/beans/ExceptionListener.java | 32 +- src/main/java/custom/beans/Expression.java | 32 +- .../java/custom/beans/FeatureDescriptor.java | 32 +- .../beans/IndexedPropertyDescriptor.java | 32 +- .../custom/beans/IntrospectionException.java | 32 +- src/main/java/custom/beans/Introspector.java | 32 +- .../java/custom/beans/MethodDescriptor.java | 32 +- .../custom/beans/ParameterDescriptor.java | 32 +- .../custom/beans/PropertyChangeEvent.java | 32 +- .../custom/beans/PropertyChangeListener.java | 32 +- .../java/custom/beans/PropertyDescriptor.java | 32 +- .../java/custom/beans/PropertyEditor.java | 32 +- .../custom/beans/PropertyVetoException.java | 32 +- .../java/custom/beans/SimpleBeanInfo.java | 32 +- .../java/custom/beans/StandardBeanInfo.java | 32 +- src/main/java/custom/beans/Statement.java | 32 +- src/main/java/custom/beans/XMLDecoder.java | 32 +- .../org/apache/harmony/beans/Argument.java | 32 +- .../org/apache/harmony/beans/BeansUtils.java | 32 +- .../org/apache/harmony/beans/Command.java | 865 ------------------ .../org/apache/harmony/beans/Handler.java | 146 --- .../harmony/beans/internal/nls/Messages.java | 42 +- .../beans/internal/nls/messages.properties | 1 + 26 files changed, 374 insertions(+), 1384 deletions(-) delete mode 100644 src/main/java/org/apache/harmony/beans/Command.java delete mode 100644 src/main/java/org/apache/harmony/beans/Handler.java diff --git a/src/main/java/custom/beans/BeanDescriptor.java b/src/main/java/custom/beans/BeanDescriptor.java index f0b963833..754fce3a6 100644 --- a/src/main/java/custom/beans/BeanDescriptor.java +++ b/src/main/java/custom/beans/BeanDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/BeanInfo.java b/src/main/java/custom/beans/BeanInfo.java index 2c4a24ab4..6c00a4315 100644 --- a/src/main/java/custom/beans/BeanInfo.java +++ b/src/main/java/custom/beans/BeanInfo.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/EventSetDescriptor.java b/src/main/java/custom/beans/EventSetDescriptor.java index db5063914..4c89734ac 100644 --- a/src/main/java/custom/beans/EventSetDescriptor.java +++ b/src/main/java/custom/beans/EventSetDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/ExceptionListener.java b/src/main/java/custom/beans/ExceptionListener.java index 390ba4326..d9cb6f8c3 100644 --- a/src/main/java/custom/beans/ExceptionListener.java +++ b/src/main/java/custom/beans/ExceptionListener.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/Expression.java b/src/main/java/custom/beans/Expression.java index aaddf09b4..1e4380d8f 100644 --- a/src/main/java/custom/beans/Expression.java +++ b/src/main/java/custom/beans/Expression.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/FeatureDescriptor.java b/src/main/java/custom/beans/FeatureDescriptor.java index 4a4612939..c8882b5c6 100644 --- a/src/main/java/custom/beans/FeatureDescriptor.java +++ b/src/main/java/custom/beans/FeatureDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/IndexedPropertyDescriptor.java b/src/main/java/custom/beans/IndexedPropertyDescriptor.java index 57946b6db..b916dd862 100644 --- a/src/main/java/custom/beans/IndexedPropertyDescriptor.java +++ b/src/main/java/custom/beans/IndexedPropertyDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/IntrospectionException.java b/src/main/java/custom/beans/IntrospectionException.java index e75429ac8..fd48b9b59 100644 --- a/src/main/java/custom/beans/IntrospectionException.java +++ b/src/main/java/custom/beans/IntrospectionException.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/Introspector.java b/src/main/java/custom/beans/Introspector.java index 616bb44cb..a4d1b2a44 100644 --- a/src/main/java/custom/beans/Introspector.java +++ b/src/main/java/custom/beans/Introspector.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/MethodDescriptor.java b/src/main/java/custom/beans/MethodDescriptor.java index 1cb0aa40c..61ab9cbfd 100644 --- a/src/main/java/custom/beans/MethodDescriptor.java +++ b/src/main/java/custom/beans/MethodDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the - * License for the specific language governing permissions and limitations under - * the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/ParameterDescriptor.java b/src/main/java/custom/beans/ParameterDescriptor.java index acd9a112c..839bd82b4 100644 --- a/src/main/java/custom/beans/ParameterDescriptor.java +++ b/src/main/java/custom/beans/ParameterDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/PropertyChangeEvent.java b/src/main/java/custom/beans/PropertyChangeEvent.java index d0edc4a47..33de526a4 100644 --- a/src/main/java/custom/beans/PropertyChangeEvent.java +++ b/src/main/java/custom/beans/PropertyChangeEvent.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/PropertyChangeListener.java b/src/main/java/custom/beans/PropertyChangeListener.java index 42fa22b17..6dc109f0a 100644 --- a/src/main/java/custom/beans/PropertyChangeListener.java +++ b/src/main/java/custom/beans/PropertyChangeListener.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/PropertyDescriptor.java b/src/main/java/custom/beans/PropertyDescriptor.java index b009045f0..129e73dd6 100644 --- a/src/main/java/custom/beans/PropertyDescriptor.java +++ b/src/main/java/custom/beans/PropertyDescriptor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/PropertyEditor.java b/src/main/java/custom/beans/PropertyEditor.java index 4814f33f2..01a4dd358 100644 --- a/src/main/java/custom/beans/PropertyEditor.java +++ b/src/main/java/custom/beans/PropertyEditor.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/PropertyVetoException.java b/src/main/java/custom/beans/PropertyVetoException.java index 8fb5162ca..d63075a05 100644 --- a/src/main/java/custom/beans/PropertyVetoException.java +++ b/src/main/java/custom/beans/PropertyVetoException.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/SimpleBeanInfo.java b/src/main/java/custom/beans/SimpleBeanInfo.java index 8c2e19ba9..527cb067e 100644 --- a/src/main/java/custom/beans/SimpleBeanInfo.java +++ b/src/main/java/custom/beans/SimpleBeanInfo.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/StandardBeanInfo.java b/src/main/java/custom/beans/StandardBeanInfo.java index 192b59e8c..66374e06f 100644 --- a/src/main/java/custom/beans/StandardBeanInfo.java +++ b/src/main/java/custom/beans/StandardBeanInfo.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/Statement.java b/src/main/java/custom/beans/Statement.java index 5a8d5be33..16e6eb1c8 100644 --- a/src/main/java/custom/beans/Statement.java +++ b/src/main/java/custom/beans/Statement.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/custom/beans/XMLDecoder.java b/src/main/java/custom/beans/XMLDecoder.java index e08b1ccd1..194041be0 100644 --- a/src/main/java/custom/beans/XMLDecoder.java +++ b/src/main/java/custom/beans/XMLDecoder.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package custom.beans; diff --git a/src/main/java/org/apache/harmony/beans/Argument.java b/src/main/java/org/apache/harmony/beans/Argument.java index 3f151c2f4..235ec7ca7 100644 --- a/src/main/java/org/apache/harmony/beans/Argument.java +++ b/src/main/java/org/apache/harmony/beans/Argument.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package org.apache.harmony.beans; diff --git a/src/main/java/org/apache/harmony/beans/BeansUtils.java b/src/main/java/org/apache/harmony/beans/BeansUtils.java index 3342fc85b..5af4c783f 100644 --- a/src/main/java/org/apache/harmony/beans/BeansUtils.java +++ b/src/main/java/org/apache/harmony/beans/BeansUtils.java @@ -1,19 +1,19 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// package org.apache.harmony.beans; diff --git a/src/main/java/org/apache/harmony/beans/Command.java b/src/main/java/org/apache/harmony/beans/Command.java deleted file mode 100644 index 160fb0677..000000000 --- a/src/main/java/org/apache/harmony/beans/Command.java +++ /dev/null @@ -1,865 +0,0 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.harmony.beans; - -import custom.beans.BeanInfo; -import custom.beans.Expression; -import custom.beans.IndexedPropertyDescriptor; -import custom.beans.IntrospectionException; -import custom.beans.Introspector; -import custom.beans.PropertyDescriptor; -import custom.beans.Statement; -import custom.beans.XMLDecoder; -import java.lang.reflect.Array; -import java.lang.reflect.Method; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Vector; - -import org.apache.harmony.beans.internal.nls.Messages; -import org.xml.sax.Attributes; - -public class Command { - - private static final int INITIALIZED = 0; - - private static final int CHILDREN_FILTERED = 1; - - private static final int COMMAND_EXECUTED = 2; - - private static final int CHILDREN_PROCESSED = 3; - - private String tagName; // tag name - - private Map attrs; // set of attrs - - private String data; // string data - - // inner commands - private Vector commands = new Vector(); - - // arguments - private Vector arguments = new Vector(); - - // operations - private Vector operations = new Vector(); - - // additional arguments placed before others - private Vector auxArguments = new Vector(); - - private Argument result; // result argument - - private Object target; // target to execute a command on - - private String methodName; // method name - - private Command ctx; // context for command - - private int status; // commands - - private XMLDecoder decoder; - - // private int tabCount = 0; - - public Command(String tagName, Map attrs) { - this.tagName = tagName; - this.attrs = attrs; - this.status = initializeStatus(tagName); - } - - public Command(XMLDecoder decoder, String tagName, Map attrs) { - this.decoder = decoder; - this.tagName = tagName; - this.attrs = attrs; - this.status = initializeStatus(tagName); - } - - // set data for command - public void setData(String data) { - this.data = data; - } - - // set tab count to display log messages - // public void setTabCount(int tabCount) { - // this.tabCount = tabCount; - // } - - // set context - upper level command - public void setContext(Command ctx) { - this.ctx = ctx; - } - - // add child command - public void addChild(Command cmd) { - if (cmd != null) { - cmd.setContext(this); - commands.add(cmd); - } - } - - // remove child command - public void removeChild(Command cmd) { - if ((cmd != null) && commands.remove(cmd)) { - cmd.setContext(null); - } - } - - // command status - public int getStatus() { - return status; - } - - // check if one of arguments or operations is unresolved - private boolean isResolved() { - if (getStatus() < Command.CHILDREN_PROCESSED) { - return false; - } - for (int i = 0; i < arguments.size(); ++i) { - Command arg = arguments.elementAt(i); - - if (!arg.isResolved()) { - return false; - } - } - for (int j = 0; j < operations.size(); ++j) { - Command opr = operations.elementAt(j); - - if (!opr.isResolved()) { - return false; - } - } - return true; - } - - // execute command and return execution flags - public int exec(Map references) throws Exception { - // System.out.println("in exec() status = " + translateStatus(status) + - // "..."); - if (status < Command.CHILDREN_PROCESSED) { - if (status < Command.COMMAND_EXECUTED) { - if (status < Command.CHILDREN_FILTERED) { - status = doBeforeRun(references); - // System.out.println("after doBeforeRun() status = " + - // translateStatus(status)); - } - if (status == Command.CHILDREN_FILTERED) { - status = doRun(references); - // System.out.println("after doRun() status = " + - // translateStatus(status)); - } - } - if (status == Command.COMMAND_EXECUTED) { - status = doAfterRun(references); - // System.out.println("after doAfterRun() status = " + - // translateStatus(status)); - } - } - // System.out.println("...out of exec() status = " + - // translateStatus(status)); - return status; - } - - // execute commands in backtrack order - public boolean backtrack(Map references) throws Exception { - for (int i = 0; i < arguments.size(); ++i) { - Command arg = arguments.elementAt(i); - arg.backtrack(references); - } - for (int i = 0; i < operations.size(); ++i) { - Command opr = operations.elementAt(i); - opr.backtrack(references); - } - if (status == Command.CHILDREN_FILTERED) { - status = doRun(references); - } - if (status == Command.COMMAND_EXECUTED) { - status = doAfterRun(references); - return (getStatus() == Command.CHILDREN_PROCESSED); - } - return false; - } - - // put command in one of two collections - arguments or operations - private int doBeforeRun(Map references) throws Exception { - if (status == Command.INITIALIZED) { - for (int i = 0; i < commands.size(); ++i) { - Command cmd = commands.elementAt(i); - - // XXX is this correct? - if (cmd.isExecutable()) { - arguments.add(cmd); - } else { - operations.add(cmd); - } - } - return Command.CHILDREN_FILTERED; - } - return status; - } - - // run command - private int doRun(Map references) throws Exception { - if (status == Command.CHILDREN_FILTERED) { - if (isRoot()) { - result = new Argument(decoder); - // System.out.println("doRun(): result is decoder..."); - return Command.COMMAND_EXECUTED; - } - - if (isNull()) { - result = new Argument(null); - // System.out.println("doRun(): result is null..."); - return Command.COMMAND_EXECUTED; - } - - if (ctx != null && ctx.isArray() && (ctx.getResultValue() == null) - && !isExecutable()) { - // System.out.println("doRun(): context is array..."); - return status; - } - - Object target = getTarget(references); - if (target == null) { - // System.out.println("doRun(): target is null..."); - return status; - } - // if (target instanceof Class) { - // System.out.println("doRun(): target = " + - // ((Class)target).getName()); - // } else { - // System.out.println("doRun(): target = " + - // target.getClass().getName()); - // } - if (isReference()) { - result = getReferencedArgument(references); - // System.out.println("doRun(): reference - result is " + - // result.getType()); - } else { - String methodName = getMethodName(references); - // System.out.println("doRun(): methodName = " + - // methodName); - Argument[] arguments = getArguments(); - if (arguments == null) { - return status; - } - // for (Argument element : arguments) { - // if (element != null) { - // System.out.println("doRun(): arg [" + i + "] = " - // + arguments[i].getType()); - // } else { - // System.out.println("doRun(): arg [" + i + "] = - // null"); - // } - // } - - Expression expr = new Expression(target, methodName, - getArgumentsValues()); - result = new Argument(expr.getValue()); - - if (isPrimitiveClassName(getTagName())) { - result.setType(getPrimitiveClass(tagName)); - } - - // System.out.println("doRun(): method call - result is " + - // result.getType()); - } - return Command.COMMAND_EXECUTED; - } - return status; - } - - // run child commands - private int doAfterRun(Map references) throws Exception { - if (status == Command.COMMAND_EXECUTED) { - // System.out.println("doAfterRun(): command " + getResultType() + " - // processed..."); - Vector toBeRemoved = new Vector(); - try { - Statement[] statements = null; - - for (int i = 0; i < operations.size(); ++i) { - Command cmd = operations.elementAt(i); - - if (cmd.isArrayElement()) { - - if (cmd.isResolved()) { - if (statements == null) { - statements = new Statement[operations.size()]; - } - statements[i] = new Statement(getResultValue(), - "set", new Object[] { Integer.valueOf(i), //$NON-NLS-1$ - cmd.getResultValue() }); - if ((i + 1) == operations.size()) { - for (int j = 0; j < operations.size(); ++j) { - statements[j].execute(); - } - toBeRemoved.addAll(operations); - } - } else { - break; - } - - } else { - // since the call is Array.set() - if (!isArray()) { - cmd.setTarget(getResultValue()); - } - cmd.exec(references); - - if (cmd.isResolved()) { - // System.out.println("doAfterRun(): cmd = " + - // cmd.methodName + " is resolved"); - toBeRemoved.add(cmd); - } else { - // System.out.println("doAfterRun(): cmd = " + - // cmd.methodName + " is unresolved"); - break; - } - - } - - } - } catch (Exception e) { - throw new Exception(e); - } finally { - operations.removeAll(toBeRemoved); - } - - // if (operations.size() == 0) { - // System.out.println("doAfterRun(): command " + getResultType() - // + " completely processed."); - // } else { - // System.out.println("doAfterRun(): command " + getResultType() - // + " contains incomplete " + - // operations.size() + " commands."); - // } - return (operations.size() == 0) ? Command.CHILDREN_PROCESSED - : status; - } - return status; - } - - // Result accessors - - // Return result - Argument class - public Argument getResult() { - return result; - } - - // Returns result value - public Object getResultValue() { - return (result != null) ? result.getValue() : null; - } - - // Returns result type - public Class getResultType() throws ClassNotFoundException { - return (result != null) ? result.getType() : null; - } - - // accessors to XML tags and attrs - public boolean hasAttr(String name) { - return attrs.get(name) != null; - } - - public String getAttr(String name) { - return attrs.get(name); - } - - public boolean isTag(String name) { - return tagName.equals(name); - } - - public boolean hasAttr(String name, String value) { - return value.equals(attrs.get(name)); - } - - public String getTagName() { - return tagName; - } - - // Checks if the object is primitive - int, float, etc... - private boolean isPrimitive() { - return isPrimitiveClassName(tagName); - } - - // Checks if the object is constructor - private boolean isConstructor() { - return isPrimitive() || !isStaticMethod() && !isMethod() - && !isProperty() && !isField() && !isArray() && !isReference(); - } - - // Checks if the command is static method - private boolean isStaticMethod() { - return isTag("object") && hasAttr("method") || isTag("class"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - } - - // Checks if the command is public method - private boolean isMethod() { - return isTag("void") && (hasAttr("method") || hasAttr("index")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - } - - // Check if the command relates to property - getter ot setter depends on - // number of args - private boolean isProperty() { - return isTag("void") && hasAttr("property"); //$NON-NLS-1$ //$NON-NLS-2$ - } - - // Check if the command is field accessor - private boolean isField() { - return isTag("object") && hasAttr("field"); //$NON-NLS-1$ //$NON-NLS-2$ - } - - // Check if the command is array - private boolean isArray() { - return isTag("array"); //$NON-NLS-1$ - } - - // Check if the command is array element - private boolean isArrayElement() { - return (ctx != null) && (ctx.isArray()) && isExecutable(); - } - - private boolean isReference() { - return hasAttr("idref"); //$NON-NLS-1$ - } - - // Check if the command is root object - private boolean isRoot() { - return isTag("java"); //$NON-NLS-1$ - } - - // Check if the command is null - private boolean isNull() { - return isTag("null"); //$NON-NLS-1$ - } - - // Checks if the command could generate object - public boolean isExecutable() { - boolean result = isTag("object") || isTag("void") && hasAttr("class") //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - && hasAttr("method") || isTag("array") || isPrimitive() //$NON-NLS-1$ //$NON-NLS-2$ - || isTag("class") || isTag("null"); //$NON-NLS-1$ //$NON-NLS-2$ - return result; - } - - private Argument getReferencedArgument(Map references) { - return references.get(getAttr("idref")).getResult(); //$NON-NLS-1$ - } - - // get a target through tag and attrs analysis - private Object getTarget(Map references) throws Exception { - if (target == null) { - if (isReference()) { - Command cmd = references.get(getAttr("idref")); //$NON-NLS-1$ - target = (cmd != null) ? cmd.getResultValue() : null; - } else if (isExecutable()) { - String className = null; - - if (isPrimitive()) { - className = getPrimitiveClassName(tagName); - } else if (isTag("class")) { //$NON-NLS-1$ - className = getPrimitiveClassName(tagName); - } else if (isConstructor() || isStaticMethod() || isField()) { - className = getAttr("class"); //$NON-NLS-1$ - } else if (isArray()) { - className = getAttr("class"); //$NON-NLS-1$ - Class componentType = isPrimitiveClassName(className) ? getPrimitiveClass(className) - : Class.forName(className, true, Thread - .currentThread().getContextClassLoader()); - className = Array.newInstance(componentType, 0).getClass() - .getName(); - } - - if (className != null) { - try { - target = Class.forName(className, true, Thread - .currentThread().getContextClassLoader()); - } catch (ClassNotFoundException e) { - target = Class.forName(className); - } - - if (isField()) { - String fieldName = getAttr("field"); //$NON-NLS-1$ - target = ((Class) target).getField(fieldName); - } - } else { - throw new Exception(Messages.getString( - "beans.42", className)); //$NON-NLS-1$ - } - } else if (ctx.isArray()) { - // target = ctx.getTarget(references); - target = Class.forName("java.lang.reflect.Array"); //$NON-NLS-1$ - } - } - return target; - } - - // set target to execute command on - private void setTarget(Object target) { - this.target = target; - } - - // Return a method name of command - private String getMethodName(Map references) - throws NoSuchMethodException, IntrospectionException, Exception { - if (methodName == null) { - String methodValue = null; - if (isTag("class")) { //$NON-NLS-1$ - addArgument(new Argument(String.class, data), 0); - methodValue = "forName"; //$NON-NLS-1$ - } else if (isPrimitive()) { - if (isTag("char")) { //$NON-NLS-1$ - if (data.length() != 1) { - throw new IntrospectionException(Messages.getString( - "beans.43", //$NON-NLS-1$ - data)); - } - addArgument(new Argument(char.class, Character.valueOf(data - .charAt(0))), 0); - } else { - addArgument(new Argument(String.class, data), 0); - } - methodValue = "new"; //$NON-NLS-1$ - } else if (isConstructor() || hasAttr("method", "new")) { //$NON-NLS-1$ //$NON-NLS-2$ - methodValue = "new"; //$NON-NLS-1$ - } else if (isArray()) { - methodValue = "new"; //$NON-NLS-1$ - int length = hasAttr("length") ? Integer //$NON-NLS-1$ - .parseInt(getAttr("length")) : getArgumentsNumber(); //$NON-NLS-1$ - copyArgumentsToCommands(); - addArgument(new Argument(int.class, Integer.valueOf(length)), 0); - } else if (hasAttr("property")) { //$NON-NLS-1$ - String propertyValue = getAttr("property"); //$NON-NLS-1$ - if (hasAttr("index")) { //$NON-NLS-1$ - addArgument(new Argument(int.class, new Integer( - getAttr("index"))), 0); //$NON-NLS-1$ - } - - BeanInfo beanInfo = Introspector.getBeanInfo(getTarget( - references).getClass()); - PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors(); - - boolean methodFound = false; - Method method = null; - for (PropertyDescriptor pd : pds) { - if (propertyValue.equals(pd.getName())) { - int argsNum = getArgumentsNumber(); - if (hasAttr("index")) { //$NON-NLS-1$ - IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; - if (argsNum == 1) { - method = ipd.getIndexedReadMethod(); - } else if (argsNum == 0) { - method = ipd.getReadMethod(); - } - } else { - method = pd.getReadMethod(); - } - - if (method != null) { - methodFound = matchMethodParams(method, references); - } - - if (methodFound == false) { - if (hasAttr("index")) { //$NON-NLS-1$ - IndexedPropertyDescriptor ipd = (IndexedPropertyDescriptor) pd; - if (argsNum == 2) { - method = ipd.getIndexedWriteMethod(); - } else if (argsNum == 1) { - method = ipd.getWriteMethod(); - } - } else { - method = pd.getWriteMethod(); - } - } - - if (method != null) { - methodFound = matchMethodParams(method, references); - } - } - } - - if (method == null) { - throw new NoSuchMethodException(Messages.getString( - "beans.44", //$NON-NLS-1$ - propertyValue)); - } - methodValue = method.getName(); - } else if (hasAttr("method")) { //$NON-NLS-1$ - if (hasAttr("index")) { //$NON-NLS-1$ - addArgument(new Argument(int.class, Integer - .valueOf(getAttr("index"))), 0); //$NON-NLS-1$ - } - methodValue = getAttr("method"); //$NON-NLS-1$ - } else if (hasAttr("index")) { //$NON-NLS-1$ - addArgument(new Argument(int.class, Integer - .valueOf(getAttr("index"))), 0); //$NON-NLS-1$ - methodValue = getArgumentsNumber() > 1 ? "set" : "get"; //$NON-NLS-1$ //$NON-NLS-2$ - if (ctx.isArray()) { - addArgument(ctx.getResult(), 0); - } - } else if (hasAttr("field")) { //$NON-NLS-1$ - addArgument(new Argument(Class.forName(getAttr("class"), true, //$NON-NLS-1$ - Thread.currentThread().getContextClassLoader())), 0); - - methodValue = "get"; //$NON-NLS-1$ - } else { - throw new Exception(Messages.getString("beans.45")); //$NON-NLS-1$ - } - methodName = methodValue; - } - return methodName; - } - - // return a list of arguments as of Argument type - private Argument[] getArguments() { - Argument[] args = new Argument[auxArguments.size() + arguments.size()]; - - for (int i = 0; i < auxArguments.size(); ++i) { - args[i] = auxArguments.elementAt(i); - } - for (int j = 0; j < arguments.size(); ++j) { - Command cmd = arguments.elementAt(j); - - if (cmd.getStatus() >= Command.COMMAND_EXECUTED) { - args[auxArguments.size() + j] = cmd.getResult(); - } else { - // System.out.println("arg: " + cmd.getResultValue()); - args = null; - break; - } - } - return args; - } - - // return argument values - private Object[] getArgumentsValues() { - Argument[] args = getArguments(); - Object[] result = new Object[args.length]; - for (int i = 0; i < args.length; ++i) { - result[i] = args[i].getValue(); - } - return result; - } - - // copy arguments to treat as commands - private void copyArgumentsToCommands() { - Iterator i = arguments.iterator(); - while (i.hasNext()) { - Command cmd = i.next(); - cmd.status = Command.CHILDREN_FILTERED; - operations.add(cmd); - } - arguments.clear(); - } - - // return number of arguments - private int getArgumentsNumber() { - return auxArguments.size() + arguments.size(); - } - - // return number of commands - // private int getOperationsNumber() { - // return operations.size(); - // } - - // add argument to the beginning of arguments - private void addArgument(Argument argument, int idx) { - auxArguments.insertElementAt(argument, idx); - } - - // Check if the name of class is primitive - public static boolean isPrimitiveClassName(String className) { - return className.equalsIgnoreCase("boolean") //$NON-NLS-1$ - || className.equalsIgnoreCase("byte") //$NON-NLS-1$ - || className.equalsIgnoreCase("char") //$NON-NLS-1$ - || className.equalsIgnoreCase("short") //$NON-NLS-1$ - || className.equalsIgnoreCase("int") //$NON-NLS-1$ - || className.equalsIgnoreCase("long") //$NON-NLS-1$ - || className.equalsIgnoreCase("float") //$NON-NLS-1$ - || className.equalsIgnoreCase("double") //$NON-NLS-1$ - || className.equalsIgnoreCase("string"); //$NON-NLS-1$ - } - - // Transforms a primitive class name - private String getPrimitiveClassName(String data) { - String shortClassName = null; - if (data.equals("int")) { //$NON-NLS-1$ - shortClassName = "Integer"; //$NON-NLS-1$ - } else if (data.equals("char")) { //$NON-NLS-1$ - shortClassName = "Character"; //$NON-NLS-1$ - } else { - shortClassName = data.substring(0, 1).toUpperCase() - + data.substring(1, data.length()); - } - return "java.lang." + shortClassName; //$NON-NLS-1$ - } - - public static Class getPrimitiveClass(String className) { - Class result = null; - if (className.equals("boolean")) { //$NON-NLS-1$ - result = boolean.class; - } else if (className.equals("byte")) { //$NON-NLS-1$ - result = byte.class; - } else if (className.equals("char")) { //$NON-NLS-1$ - result = char.class; - } else if (className.equals("short")) { //$NON-NLS-1$ - result = short.class; - } else if (className.equals("int")) { //$NON-NLS-1$ - result = int.class; - } else if (className.equals("long")) { //$NON-NLS-1$ - result = long.class; - } else if (className.equals("float")) { //$NON-NLS-1$ - result = float.class; - } else if (className.equals("double")) { //$NON-NLS-1$ - result = double.class; - } else if (className.equals("string")) { //$NON-NLS-1$ - result = String.class; - } - return result; - } - - private boolean matchMethodParams(Method method, Map references) { - Class[] paramTypes = method.getParameterTypes(); - Argument[] args = getArguments(); - if (args == null) { - return false; - } - boolean result = true; - if (paramTypes.length == args.length) { - for (int j = 0; j < paramTypes.length; ++j) { - // System.out.println("paramTypes[j] = " + paramTypes[j]); - // System.out.println("args[j] = " + args[j].getType()); - - boolean isAssignable = (args[j].getType() == null) ? !paramTypes[j] - .isPrimitive() - : paramTypes[j].isAssignableFrom(args[j].getType()); - - // System.out.println("args[j] = " + args[j].getType()); - - if (!isAssignable) { - result = false; - break; - } - } - } else { - result = false; - } - return result; - } - - public static Map parseAttrs(String tagName, Attributes attrs) { - Map result = new HashMap(); - if (tagName.equals("object")) { //$NON-NLS-1$ - for (String name : objectAttrNames) { - String value = attrs.getValue(name); - if (value != null) { - result.put(name, value); - } - } - } else if (tagName.equals("void")) { //$NON-NLS-1$ - for (String name : voidAttrNames) { - String value = attrs.getValue(name); - if (value != null) { - result.put(name, value); - } - } - } else if (tagName.equals("array")) { //$NON-NLS-1$ - for (String name : arrayAttrNames) { - String value = attrs.getValue(name); - if (value != null) { - result.put(name, value); - } - } - } else if (tagName.equals("java")) { //$NON-NLS-1$ - for (String name : javaAttrNames) { - String value = attrs.getValue(name); - if (value != null) { - result.put(name, value); - } - } - } - return result; - } - - // Auxiliary logging with tabs functions - public static void pr(String msg) { - // System.out.print(msg); - } - - public static void pr(int tabCount, String msg) { - String result = ""; //$NON-NLS-1$ - for (int i = 0; i < tabCount; ++i) { - result += '\t'; - } - result += msg; - // System.out.print(result); - } - - public static void prn(String msg) { - // System.out.println(msg); - } - - public static void prn(int tabCount, String msg) { - String result = ""; //$NON-NLS-1$ - for (int i = 0; i < tabCount; ++i) { - result += '\t'; - } - result += msg; - // System.out.println(result); - } - - public static void printAttrs(int tabCount, String tagName, Attributes attrs) { - pr(tabCount, tabCount + ">in <" + tagName); //$NON-NLS-1$ - for (int i = 0; i < attrs.getLength(); ++i) { - String attrName = attrs.getQName(i); - String attrValue = attrs.getValue(i); - pr(" " + attrName + "=" + attrValue); //$NON-NLS-1$ //$NON-NLS-2$ - } - prn(">"); //$NON-NLS-1$ - } - - private static int initializeStatus(String tagName) { - // return tagName.equals("java") ? Command.COMMAND_EXECUTED : - // Command.INITIALIZED; - return Command.INITIALIZED; - } - - // private static String translateStatus(int status) { - // String result = "unknown"; - // if(status == Command.INITIALIZED) { - // result = "initialized"; - // } else if(status == Command.CHILDREN_FILTERED) { - // result = "children filtered"; - // } else if(status == Command.COMMAND_EXECUTED) { - // result = "executed"; - // } else if(status == Command.CHILDREN_PROCESSED) { - // result = "children processed"; - // } - // return result; - // } - - private static final String[] objectAttrNames = { "id", "idref", "class", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - "field", "method", "property", "index" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ - - private static final String[] voidAttrNames = { "id", "class", "method", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - "property", "index" }; //$NON-NLS-1$ //$NON-NLS-2$ - - private static final String[] arrayAttrNames = { "id", "class", "length" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ - - private static final String[] javaAttrNames = { "version", "class" }; //$NON-NLS-1$ //$NON-NLS-2$ -} diff --git a/src/main/java/org/apache/harmony/beans/Handler.java b/src/main/java/org/apache/harmony/beans/Handler.java deleted file mode 100644 index 342638d19..000000000 --- a/src/main/java/org/apache/harmony/beans/Handler.java +++ /dev/null @@ -1,146 +0,0 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.apache.harmony.beans; - -import custom.beans.XMLDecoder; -import java.util.HashMap; -import java.util.Map; -import java.util.Stack; -import java.util.Vector; -import org.apache.harmony.beans.internal.nls.Messages; -import org.xml.sax.Attributes; -import org.xml.sax.SAXException; -import org.xml.sax.helpers.DefaultHandler; - -public class Handler extends DefaultHandler { - - private Vector result; - - private Vector commands; - - private XMLDecoder decoder; - - private Map references; - - private Stack stack; - - private int tabCount; - - public Handler(XMLDecoder decoder, Vector result) { - this.decoder = decoder; - this.result = result; - this.commands = new Vector(); - this.references = new HashMap(); - this.stack = new Stack(); - } - - // clear collections to prepare parsing document - @Override - public void startDocument() { - references.clear(); - tabCount = 0; - } - - // create new command and put it on stack - @Override - public void startElement(String namespaceURI, String localeName, - String tagName, Attributes attrs) throws SAXException { - Command.printAttrs(tabCount, tagName, attrs); - Command cmd = tagName.equals("java") ? new Command(decoder, tagName, //$NON-NLS-1$ - Command.parseAttrs(tagName, attrs)) : new Command(tagName, - Command.parseAttrs(tagName, attrs)); - stack.push(cmd); - ++tabCount; - } - - // add data to command - @Override - public void characters(char[] text, int start, int length) - throws SAXException { - if (length > 0) { - String data = String.valueOf(text, start, length) - .replace('\n', ' ').replace('\t', ' ').trim(); - if (data.length() > 0) { - Command.prn(tabCount, tabCount + ">setting data=" + data //$NON-NLS-1$ - + ""); //$NON-NLS-1$ - Command cmd = stack.peek(); - cmd.setData(data); - } - } - } - - // pop command from stack and put it to one of collections - @Override - public void endElement(String namespaceURI, String localeName, - String tagName) throws SAXException { - Command cmd = stack.pop(); - // cmd.setTabCount(tabCount); - - // find if command works in context - if (!stack.isEmpty()) { - Command ctx = stack.peek(); - ctx.addChild(cmd); - } - - // upper level commands - if (stack.size() == 1 && cmd.isExecutable()) { - commands.add(cmd); - } - - // store reference to command - if (cmd.hasAttr("id")) { //$NON-NLS-1$ - references.put(cmd.getAttr("id"), cmd); //$NON-NLS-1$ - } - - try { - cmd.exec(references); - } catch (Exception e) { - SAXException e2 = new SAXException(e.getMessage()); - - e2.initCause(e); - throw e2; - } - - if (--tabCount < 0) { - tabCount = 0; - } - - Command.prn(tabCount, tabCount + ">...<" + tagName + "> end"); //$NON-NLS-1$ //$NON-NLS-2$ - } - - // iterate over deferred commands and execute them again - @Override - public void endDocument() throws SAXException { - for (int i = 0; i < commands.size(); ++i) { - Command cmd = commands.elementAt(i); - try { - cmd.backtrack(references); - } catch (Exception e) { - throw new SAXException(Messages.getString("beans.0B")); //$NON-NLS-1$ - } - // if(!backtracked) - // throw new SAXException("Command " + cmd.getTagName() + - // " is unresolved on second run() call."); - } - - for (int i = 0; i < commands.size(); ++i) { - Command cmd = commands.elementAt(i); - result.add(cmd.getResultValue()); - } - } -} diff --git a/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java b/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java index 80f3eb4d3..3ef13d258 100644 --- a/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java +++ b/src/main/java/org/apache/harmony/beans/internal/nls/Messages.java @@ -1,25 +1,25 @@ -/* MODIFIED FOR THE MSGPACK PROJECT - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ +// MODIFIED FOR THE MSGPACK PROJECT +// Licensed to the Apache Software Foundation (ASF) under one or more +// contributor license agreements. See the NOTICE file distributed with +// this work for additional information regarding copyright ownership. +// The ASF licenses this file to You under the Apache License, Version 2.0 +// (the "License"); you may not use this file except in compliance with +// the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +// License for the specific language governing permissions and limitations under +// the License. +// -/* MODIFIED FOR THE MSGPACK PROJECT - * THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL. - * All changes made to this file manually will be overwritten - * if this tool runs again. Better make changes in the template file. - */ +// +// THE FILE HAS BEEN AUTOGENERATED BY MSGTOOL TOOL. +// All changes made to this file manually will be overwritten +// if this tool runs again. Better make changes in the template file. +// package org.apache.harmony.beans.internal.nls; diff --git a/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties b/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties index cef8dcaa7..2f903af96 100644 --- a/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties +++ b/src/main/java/org/apache/harmony/beans/internal/nls/messages.properties @@ -1,3 +1,4 @@ +# MODIFIED FOR THE MSGPACK PROJECT # Licensed to the Apache Software Foundation (ASF) under one or more # contributor license agreements. See the NOTICE file distributed with # this work for additional information regarding copyright ownership. From 76a80c3edaefaf0fd20b85ea56136029f0f98ab2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 19 Jul 2012 16:47:35 +0900 Subject: [PATCH 325/409] edited pom.xml for using maven 3.x --- pom.xml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pom.xml b/pom.xml index d9bb67aeb..565cbaaa3 100644 --- a/pom.xml +++ b/pom.xml @@ -82,6 +82,7 @@ maven-compiler-plugin + 2.3.2 1.6 1.6 @@ -101,6 +102,7 @@ org.apache.maven.plugins maven-source-plugin + 2.1.2 attach-sources @@ -113,6 +115,7 @@ org.apache.maven.plugins maven-scm-plugin + 1.6 false @@ -120,6 +123,7 @@ org.apache.maven.plugins maven-javadoc-plugin + 2.8.1 ${project.name} ${project.version} API true @@ -130,6 +134,7 @@ org.apache.maven.plugins maven-surefire-plugin + 2.8.1 -Xmx512M @@ -142,10 +147,12 @@ org.apache.maven.plugins maven-jxr-plugin + 2.2 org.apache.maven.plugins maven-surefire-report-plugin + 2.11 From 023c8a613152c451cee2a5ef9f074b612e1f39f8 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 23 Jul 2012 10:46:54 +0900 Subject: [PATCH 326/409] fixed typo of test class name: TestUnpackerInterator to TestUnpackerIterator --- .../{TestUnpackerInterator.java => TestUnpackerIterator.java} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename src/test/java/org/msgpack/unpacker/{TestUnpackerInterator.java => TestUnpackerIterator.java} (96%) diff --git a/src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java b/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java similarity index 96% rename from src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java rename to src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java index 97ea39c2f..a402ed6e4 100644 --- a/src/test/java/org/msgpack/unpacker/TestUnpackerInterator.java +++ b/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java @@ -9,7 +9,7 @@ import org.msgpack.MessagePack; import org.msgpack.packer.Packer; -public class TestUnpackerInterator { +public class TestUnpackerIterator { @Test public void testSample() throws Exception { From f6ec04887d5a322084b9728c39fb900320fb1434 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 23 Jul 2012 13:48:34 +0900 Subject: [PATCH 327/409] changed changed formatter of org.msgpack.unpacker.Test*.java in src/test --- .../msgpack/unpacker/TestBufferUnpacker.java | 43 +++---- .../unpacker/TestMalformedEncoding.java | 24 ++-- .../msgpack/unpacker/TestReadTemplate.java | 43 ++++--- .../org/msgpack/unpacker/TestSizeLimit.java | 107 ++++++++++++------ .../unpacker/TestUnpackerIterator.java | 3 +- .../msgpack/unpacker/TestUnpackerSkip.java | 59 +++++----- 6 files changed, 157 insertions(+), 122 deletions(-) diff --git a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java index 6aca78f5c..cc67f5c08 100644 --- a/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java +++ b/src/test/java/org/msgpack/unpacker/TestBufferUnpacker.java @@ -16,14 +16,13 @@ import org.junit.Test; - public class TestBufferUnpacker { @Test public void testEachByte() throws Exception { List vs = new ArrayList(); BufferPacker pk = new MessagePack().createBufferPacker(); - for(int i=0; i < 50; i++) { + for (int i = 0; i < 50; i++) { Value v = createComplexType(); vs.add(v); pk.write(v); @@ -34,9 +33,9 @@ public void testEachByte() throws Exception { BufferUnpacker u = new MessagePack().createBufferUnpacker(); UnpackerIterator it = u.iterator(); - for(int i=0; i < raw.length; i++) { + for (int i = 0; i < raw.length; i++) { u.feed(raw, i, 1); - while(it.hasNext()) { + while (it.hasNext()) { Value v = it.next(); assertEquals(vs.get(n), v); n++; @@ -50,7 +49,7 @@ public void testElevenBytes() throws Exception { List vs = new ArrayList(); BufferPacker pk = new MessagePack().createBufferPacker(); - for(int i=0; i < 55; i++) { + for (int i = 0; i < 55; i++) { Value v = createComplexType(); vs.add(v); pk.write(v); @@ -61,9 +60,9 @@ public void testElevenBytes() throws Exception { BufferUnpacker u = new MessagePack().createBufferUnpacker(); UnpackerIterator it = u.iterator(); - for(int i=0; i < raw.length; i+=11) { + for (int i = 0; i < raw.length; i += 11) { u.feed(raw, i, 11); - while(it.hasNext()) { + while (it.hasNext()) { Value v = it.next(); assertEquals(vs.get(n), v); n++; @@ -77,19 +76,19 @@ public void testEachObject() throws Exception { BufferUnpacker u = new MessagePack().createBufferUnpacker(); UnpackerIterator it = u.iterator(); - for(int i=0; i < 50; i++) { + for (int i = 0; i < 50; i++) { Value v = createComplexType(); BufferPacker pk = new MessagePack().createBufferPacker(); pk.write(v); byte[] raw = pk.toByteArray(); - //pk.reset(); + // pk.reset(); u.feed(raw, 0, raw.length); assertTrue(it.hasNext()); Value ov = it.next(); assertEquals(v, ov); - //assertFalse(it.hasNext()); + // assertFalse(it.hasNext()); } } @@ -104,27 +103,29 @@ public Value createComplexType() throws Exception { Value list = ValueFactory.createArrayValue(new Value[] { ValueFactory.createRawValue(b0), ValueFactory.createRawValue(b1), - ValueFactory.createRawValue(b2), - }); + ValueFactory.createRawValue(b2), }); Value map = ValueFactory.createMapValue(new Value[] { - ValueFactory.createIntegerValue(0), ValueFactory.createIntegerValue(Integer.MIN_VALUE), - ValueFactory.createIntegerValue(rand.nextInt()), ValueFactory.createIntegerValue(Integer.MAX_VALUE), - ValueFactory.createFloatValue(rand.nextFloat()), ValueFactory.createBooleanValue(true), - ValueFactory.createFloatValue(rand.nextDouble()), ValueFactory.createNilValue(), - }); + ValueFactory.createIntegerValue(0), + ValueFactory.createIntegerValue(Integer.MIN_VALUE), + ValueFactory.createIntegerValue(rand.nextInt()), + ValueFactory.createIntegerValue(Integer.MAX_VALUE), + ValueFactory.createFloatValue(rand.nextFloat()), + ValueFactory.createBooleanValue(true), + ValueFactory.createFloatValue(rand.nextDouble()), + ValueFactory.createNilValue(), }); List values = new ArrayList(); - for(int i=0; i < 2; i++) { + for (int i = 0; i < 2; i++) { values.add(list); - for(int j=0; j < 100; j++) { + for (int j = 0; j < 100; j++) { values.add(map); } } - Value complex = ValueFactory.createArrayValue(values.toArray(new Value[values.size()])); + Value complex = ValueFactory.createArrayValue(values + .toArray(new Value[values.size()])); return complex; } } - diff --git a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java index 1a107620a..14c3cb151 100644 --- a/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java +++ b/src/test/java/org/msgpack/unpacker/TestMalformedEncoding.java @@ -19,16 +19,17 @@ import org.msgpack.type.ValueFactory; import org.msgpack.util.json.JSON; - public class TestMalformedEncoding { - private byte[][] malforms = new byte[][] { - { (byte)0xc0, (byte)0xaf }, // '/' in 2 bytes - { (byte)0xe0, (byte)0x80, (byte)0xaf } // '/' in 3 bytes + private byte[][] malforms = new byte[][] { { (byte) 0xc0, (byte) 0xaf }, // '/' + // in + // 2 + // bytes + { (byte) 0xe0, (byte) 0x80, (byte) 0xaf } // '/' in 3 bytes }; @Test public void testRawValueGetString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { RawValue r = ValueFactory.createRawValue(malform); try { r.getString(); @@ -42,7 +43,7 @@ public void testRawValueGetString() throws Exception { @Test public void testBufferUnpackerUnpackString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); BufferPacker pk = msgpack.createBufferPacker(); pk.write(malform); @@ -60,7 +61,7 @@ public void testBufferUnpackerUnpackString() throws Exception { @Test public void testUnpackerUnpackString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); BufferPacker pk = msgpack.createBufferPacker(); pk.write(malform); @@ -78,7 +79,7 @@ public void testUnpackerUnpackString() throws Exception { @Test public void testConverterUnpackString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { MessagePack msgpack = new MessagePack(); RawValue r = ValueFactory.createRawValue(malform); Converter u = new Converter(msgpack, r); @@ -94,7 +95,7 @@ public void testConverterUnpackString() throws Exception { @Test public void testJSONPackerWriteString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { JSON json = new JSON(); Packer pk = json.createPacker(new ByteArrayOutputStream()); try { @@ -107,7 +108,7 @@ public void testJSONPackerWriteString() throws Exception { @Test public void testJSONBufferPackerWriteString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { JSON json = new JSON(); Packer pk = json.createBufferPacker(); try { @@ -120,7 +121,7 @@ public void testJSONBufferPackerWriteString() throws Exception { @Test public void testValueToString() throws Exception { - for(byte[] malform : malforms) { + for (byte[] malform : malforms) { RawValue r = ValueFactory.createRawValue(malform); String str = r.toString(); // malformed bytes will be ignored @@ -128,4 +129,3 @@ public void testValueToString() throws Exception { } } } - diff --git a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java index 45c259687..6fd16e929 100644 --- a/src/test/java/org/msgpack/unpacker/TestReadTemplate.java +++ b/src/test/java/org/msgpack/unpacker/TestReadTemplate.java @@ -13,13 +13,11 @@ import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; +import org.msgpack.template.Templates; import org.msgpack.unpacker.Unpacker; -import static org.msgpack.template.Templates.*; - import org.junit.Test; - public class TestReadTemplate { public static enum MyEnum { A, B, C; @@ -27,58 +25,60 @@ public static enum MyEnum { @Test public void testReadTemplateNull() throws IOException { - Byte tbyte = u().read(TByte); + Byte tbyte = u().read(Templates.TByte); assertNull(tbyte); - Short tshort = u().read(TShort); + Short tshort = u().read(Templates.TShort); assertNull(tshort); - Integer tinteger = u().read(TInteger); + Integer tinteger = u().read(Templates.TInteger); assertNull(tinteger); - Long tlong = u().read(TLong); + Long tlong = u().read(Templates.TLong); assertNull(tlong); - Character tcharacter = u().read(TCharacter); + Character tcharacter = u().read(Templates.TCharacter); assertNull(tcharacter); - BigInteger tbiginteger = u().read(TBigInteger); + BigInteger tbiginteger = u().read(Templates.TBigInteger); assertNull(tbiginteger); - BigDecimal tbigdecimail = u().read(TBigDecimal); + BigDecimal tbigdecimail = u().read(Templates.TBigDecimal); assertNull(tbigdecimail); - Float tfloat = u().read(TFloat); + Float tfloat = u().read(Templates.TFloat); assertNull(tfloat); - Double tdouble = u().read(TDouble); + Double tdouble = u().read(Templates.TDouble); assertNull(tdouble); - Boolean tboolean = u().read(TBoolean); + Boolean tboolean = u().read(Templates.TBoolean); assertNull(tboolean); - String tstring = u().read(TString); + String tstring = u().read(Templates.TString); assertNull(tstring); - byte[] tbytearray = u().read(TByteArray); + byte[] tbytearray = u().read(Templates.TByteArray); assertNull(tbytearray); - ByteBuffer tbytebuffer = u().read(TByteBuffer); + ByteBuffer tbytebuffer = u().read(Templates.TByteBuffer); assertNull(tbytebuffer); - Date tdate = u().read(TDate); + Date tdate = u().read(Templates.TDate); assertNull(tdate); - List tlist = u().read(tList(TString)); + List tlist = u().read(Templates.tList(Templates.TString)); assertNull(tlist); - Map tmap = u().read(tMap(TString, TInteger)); + Map tmap = u().read( + Templates.tMap(Templates.TString, Templates.TInteger)); assertNull(tmap); - Collection tcollection = u().read(tCollection(TLong)); + Collection tcollection = u().read( + Templates.tCollection(Templates.TLong)); assertNull(tcollection); - MyEnum tordinalenum = u().read(tOrdinalEnum(MyEnum.class)); + MyEnum tordinalenum = u().read(Templates.tOrdinalEnum(MyEnum.class)); assertNull(tordinalenum); } @@ -91,4 +91,3 @@ private Unpacker u() throws IOException { return u; } } - diff --git a/src/test/java/org/msgpack/unpacker/TestSizeLimit.java b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java index 08762bc19..d317dd05f 100644 --- a/src/test/java/org/msgpack/unpacker/TestSizeLimit.java +++ b/src/test/java/org/msgpack/unpacker/TestSizeLimit.java @@ -21,7 +21,6 @@ import org.msgpack.unpacker.SizeLimitException; import org.msgpack.unpacker.Unpacker; - public class TestSizeLimit { @Test @@ -40,7 +39,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(10); byte[] dst = unpacker.read(tmpl); assertEquals(src.length, dst.length); @@ -57,7 +57,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(10); byte[] dst = unpacker.read(tmpl); assertEquals(src.length, dst.length); @@ -74,7 +75,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(10); byte[] dst = unpacker.read(tmpl); assertEquals(src.length, dst.length); @@ -91,7 +93,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(10); try { unpacker.read(tmpl); @@ -112,7 +115,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(10); try { unpacker.read(tmpl); @@ -133,7 +137,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(33); byte[] dst = unpacker.read(tmpl); assertEquals(src.length, dst.length); @@ -150,7 +155,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(33); try { unpacker.read(tmpl); @@ -171,7 +177,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(33); try { unpacker.read(tmpl); @@ -192,7 +199,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(65536); byte[] dst = unpacker.read(tmpl); assertEquals(src.length, dst.length); @@ -209,7 +217,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(65536); try { unpacker.read(tmpl); @@ -230,7 +239,8 @@ public void testRawSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setRawSizeLimit(65536); try { unpacker.read(tmpl); @@ -244,7 +254,8 @@ public void testRawSizeLimit() throws Exception { @Test public void testArraySizeLimit() throws Exception { MessagePack msgpack = new MessagePack(); - Template> tmpl = new ListTemplate(Templates.TInteger); + Template> tmpl = new ListTemplate( + Templates.TInteger); { // set limit == 10, size < 10 int len = 9; List src = new ArrayList(len); @@ -257,7 +268,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(10); List dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -274,7 +286,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(10); List dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -291,7 +304,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(10); List dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -308,7 +322,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(10); try { unpacker.read(tmpl); @@ -329,7 +344,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(10); try { unpacker.read(tmpl); @@ -350,7 +366,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(20); List dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -367,7 +384,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(20); try { unpacker.read(tmpl); @@ -388,7 +406,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(20); try { unpacker.read(tmpl); @@ -409,7 +428,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(65536); List dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -426,7 +446,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(65536); try { unpacker.read(tmpl); @@ -447,7 +468,8 @@ public void testArraySizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setArraySizeLimit(65536); try { unpacker.read(tmpl); @@ -461,8 +483,8 @@ public void testArraySizeLimit() throws Exception { @Test public void testMapSizeLimit() throws Exception { MessagePack msgpack = new MessagePack(); - Template> tmpl = - new MapTemplate(Templates.TInteger, Templates.TInteger); + Template> tmpl = new MapTemplate( + Templates.TInteger, Templates.TInteger); { // set limit == 10, size < 10 int len = 9; Map src = new HashMap(len); @@ -475,7 +497,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(10); Map dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -492,7 +515,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(10); Map dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -509,7 +533,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(10); Map dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -526,7 +551,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(10); try { unpacker.read(tmpl); @@ -547,7 +573,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(10); try { unpacker.read(tmpl); @@ -568,7 +595,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(20); Map dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -585,7 +613,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(20); try { unpacker.read(tmpl); @@ -606,7 +635,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(20); try { unpacker.read(tmpl); @@ -627,7 +657,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(65536); Map dst = unpacker.read(tmpl); assertEquals(src.size(), dst.size()); @@ -644,7 +675,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(65536); try { unpacker.read(tmpl); @@ -665,7 +697,8 @@ public void testMapSizeLimit() throws Exception { packer.write(src); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack + .createUnpacker(new ByteArrayInputStream(bytes)); unpacker.setMapSizeLimit(65536); try { unpacker.read(tmpl); diff --git a/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java b/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java index a402ed6e4..c10e490ab 100644 --- a/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java +++ b/src/test/java/org/msgpack/unpacker/TestUnpackerIterator.java @@ -22,7 +22,8 @@ public void testSample() throws Exception { packer.write(3); byte[] bytes = out.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); UnpackerIterator iter = unpacker.iterator(); unpacker.resetReadByteCount(); iter.hasNext(); diff --git a/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java b/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java index aa2bb6fb7..1ff20172f 100644 --- a/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java +++ b/src/test/java/org/msgpack/unpacker/TestUnpackerSkip.java @@ -2,9 +2,6 @@ import static org.junit.Assert.assertEquals; -import java.io.ByteArrayInputStream; -import java.io.ByteArrayOutputStream; - import org.junit.Test; import org.msgpack.MessagePack; import org.msgpack.packer.BufferPacker; @@ -19,7 +16,7 @@ public void testPrimitive() throws Exception { BufferPacker packer = msgpack.createBufferPacker(); - for(int i=0; i < 10; i++) { + for (int i = 0; i < 10; i++) { packer.write(1); packer.write(i); } @@ -27,7 +24,7 @@ public void testPrimitive() throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - for(int i=0; i < 10; i++) { + for (int i = 0; i < 10; i++) { unpacker.skip(); int n = unpacker.readInt(); assertEquals(i, n); @@ -41,30 +38,35 @@ public void testNested() throws Exception { BufferPacker packer = msgpack.createBufferPacker(); Value v1 = ValueFactory.createArrayValue(new Value[] { - ValueFactory.createRawValue("a"), - ValueFactory.createMapValue(new Value[] { - ValueFactory.createRawValue("k1"), - ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }) - }) - }); + ValueFactory.createRawValue("a"), + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory + .createArrayValue(new Value[] { ValueFactory + .createIntegerValue(1) }) }) }); Value v2 = ValueFactory.createArrayValue(new Value[] { - ValueFactory.createMapValue(new Value[] { - ValueFactory.createRawValue("k1"), - ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }), - ValueFactory.createRawValue("k2"), - ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(2) }) - }), - ValueFactory.createMapValue(new Value[] { - ValueFactory.createRawValue("k1"), - ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(1) }), - ValueFactory.createRawValue("k2"), - ValueFactory.createArrayValue(new Value[] { ValueFactory.createIntegerValue(2) }) - }), - ValueFactory.createRawValue("a") - }); - - for(int i=0; i < 10; i++) { + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory + .createArrayValue(new Value[] { ValueFactory + .createIntegerValue(1) }), + ValueFactory.createRawValue("k2"), + ValueFactory + .createArrayValue(new Value[] { ValueFactory + .createIntegerValue(2) }) }), + ValueFactory.createMapValue(new Value[] { + ValueFactory.createRawValue("k1"), + ValueFactory + .createArrayValue(new Value[] { ValueFactory + .createIntegerValue(1) }), + ValueFactory.createRawValue("k2"), + ValueFactory + .createArrayValue(new Value[] { ValueFactory + .createIntegerValue(2) }) }), + ValueFactory.createRawValue("a") }); + + for (int i = 0; i < 10; i++) { packer.write(v1); packer.write(v2); } @@ -72,11 +74,10 @@ public void testNested() throws Exception { byte[] bytes = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(bytes); - for(int i=0; i < 10; i++) { + for (int i = 0; i < 10; i++) { unpacker.skip(); Value v2a = unpacker.readValue(); assertEquals(v2, v2a); } } } - From 712ee09b21cd54389f3556661c9977b3191b765f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 23 Jul 2012 13:49:22 +0900 Subject: [PATCH 328/409] changed changed formatter of org.msgpack.type.*.java in src/test --- .../java/org/msgpack/type/ProxyValue.java | 4 +- .../java/org/msgpack/type/TestEquals.java | 178 +++++++++++------- .../java/org/msgpack/type/TestHashCode.java | 2 - 3 files changed, 113 insertions(+), 71 deletions(-) diff --git a/src/test/java/org/msgpack/type/ProxyValue.java b/src/test/java/org/msgpack/type/ProxyValue.java index 1b4e18a39..8d2a8b234 100644 --- a/src/test/java/org/msgpack/type/ProxyValue.java +++ b/src/test/java/org/msgpack/type/ProxyValue.java @@ -5,7 +5,8 @@ import org.msgpack.packer.Packer; public abstract class ProxyValue implements Value { - public ProxyValue() { } + public ProxyValue() { + } protected abstract Value getValue(); @@ -108,4 +109,3 @@ public boolean equals(Object o) { return getValue().equals(o); } } - diff --git a/src/test/java/org/msgpack/type/TestEquals.java b/src/test/java/org/msgpack/type/TestEquals.java index b4733f154..a85ba6cd7 100644 --- a/src/test/java/org/msgpack/type/TestEquals.java +++ b/src/test/java/org/msgpack/type/TestEquals.java @@ -9,7 +9,6 @@ import org.msgpack.type.Value; import org.msgpack.type.ValueFactory; - public class TestEquals extends TestSet { @Override public void testBoolean(boolean v) throws Exception { @@ -22,7 +21,7 @@ public void testBoolean(boolean v) throws Exception { public void testBooleanArray(boolean[] v) throws Exception { Value[] vs1 = new Value[v.length]; Value[] vs2 = new Value[v.length]; - for(int i=0; i < v.length; i++) { + for (int i = 0; i < v.length; i++) { vs1[i] = ValueFactory.createBooleanValue(v[i]); vs2[i] = ValueFactory.createBooleanValue(v[i]); } @@ -62,65 +61,103 @@ public void testDouble(double v) throws Exception { @Test public void testMapOrder() throws Exception { Value v1 = ValueFactory.createMapValue(new Value[] { - ValueFactory.createRawValue("k0"), ValueFactory.createNilValue(), - ValueFactory.createRawValue("k1"), ValueFactory.createRawValue("v1"), - ValueFactory.createRawValue("k2"), ValueFactory.createRawValue("v2"), - ValueFactory.createRawValue("k3"), ValueFactory.createRawValue("v3"), - ValueFactory.createRawValue("k4"), ValueFactory.createRawValue("v4"), - ValueFactory.createRawValue("k5"), ValueFactory.createRawValue("v5"), - ValueFactory.createRawValue("k6"), ValueFactory.createRawValue("v6"), - ValueFactory.createRawValue("k7"), ValueFactory.createRawValue("v7"), - ValueFactory.createRawValue("k8"), ValueFactory.createRawValue("v8"), - ValueFactory.createRawValue("k9"), ValueFactory.createRawValue("v9"), - ValueFactory.createRawValue("k10"), ValueFactory.createRawValue("v10"), - ValueFactory.createRawValue("k11"), ValueFactory.createRawValue("v11"), - ValueFactory.createRawValue("k12"), ValueFactory.createRawValue("v12"), - ValueFactory.createRawValue("k13"), ValueFactory.createRawValue("v13"), - ValueFactory.createRawValue("k14"), ValueFactory.createRawValue("v14"), - ValueFactory.createRawValue("k15"), ValueFactory.createRawValue("v15"), - ValueFactory.createRawValue("k16"), ValueFactory.createRawValue("v16"), - ValueFactory.createRawValue("k17"), ValueFactory.createRawValue("v17"), - ValueFactory.createRawValue("k18"), ValueFactory.createRawValue("v18"), - ValueFactory.createRawValue("k19"), ValueFactory.createRawValue("v19"), - }); + ValueFactory.createRawValue("k0"), + ValueFactory.createNilValue(), + ValueFactory.createRawValue("k1"), + ValueFactory.createRawValue("v1"), + ValueFactory.createRawValue("k2"), + ValueFactory.createRawValue("v2"), + ValueFactory.createRawValue("k3"), + ValueFactory.createRawValue("v3"), + ValueFactory.createRawValue("k4"), + ValueFactory.createRawValue("v4"), + ValueFactory.createRawValue("k5"), + ValueFactory.createRawValue("v5"), + ValueFactory.createRawValue("k6"), + ValueFactory.createRawValue("v6"), + ValueFactory.createRawValue("k7"), + ValueFactory.createRawValue("v7"), + ValueFactory.createRawValue("k8"), + ValueFactory.createRawValue("v8"), + ValueFactory.createRawValue("k9"), + ValueFactory.createRawValue("v9"), + ValueFactory.createRawValue("k10"), + ValueFactory.createRawValue("v10"), + ValueFactory.createRawValue("k11"), + ValueFactory.createRawValue("v11"), + ValueFactory.createRawValue("k12"), + ValueFactory.createRawValue("v12"), + ValueFactory.createRawValue("k13"), + ValueFactory.createRawValue("v13"), + ValueFactory.createRawValue("k14"), + ValueFactory.createRawValue("v14"), + ValueFactory.createRawValue("k15"), + ValueFactory.createRawValue("v15"), + ValueFactory.createRawValue("k16"), + ValueFactory.createRawValue("v16"), + ValueFactory.createRawValue("k17"), + ValueFactory.createRawValue("v17"), + ValueFactory.createRawValue("k18"), + ValueFactory.createRawValue("v18"), + ValueFactory.createRawValue("k19"), + ValueFactory.createRawValue("v19"), }); Value v2 = ValueFactory.createMapValue(new Value[] { - ValueFactory.createRawValue("k3"), ValueFactory.createRawValue("v3"), - ValueFactory.createRawValue("k11"), ValueFactory.createRawValue("v11"), - ValueFactory.createRawValue("k4"), ValueFactory.createRawValue("v4"), - ValueFactory.createRawValue("k10"), ValueFactory.createRawValue("v10"), - ValueFactory.createRawValue("k5"), ValueFactory.createRawValue("v5"), - ValueFactory.createRawValue("k6"), ValueFactory.createRawValue("v6"), - ValueFactory.createRawValue("k15"), ValueFactory.createRawValue("v15"), - ValueFactory.createRawValue("k7"), ValueFactory.createRawValue("v7"), - ValueFactory.createRawValue("k14"), ValueFactory.createRawValue("v14"), - ValueFactory.createRawValue("k8"), ValueFactory.createRawValue("v8"), - ValueFactory.createRawValue("k13"), ValueFactory.createRawValue("v13"), - ValueFactory.createRawValue("k9"), ValueFactory.createRawValue("v9"), - ValueFactory.createRawValue("k12"), ValueFactory.createRawValue("v12"), - ValueFactory.createRawValue("k0"), ValueFactory.createNilValue(), - ValueFactory.createRawValue("k1"), ValueFactory.createRawValue("v1"), - ValueFactory.createRawValue("k2"), ValueFactory.createRawValue("v2"), - ValueFactory.createRawValue("k18"), ValueFactory.createRawValue("v18"), - ValueFactory.createRawValue("k19"), ValueFactory.createRawValue("v19"), - ValueFactory.createRawValue("k16"), ValueFactory.createRawValue("v16"), - ValueFactory.createRawValue("k17"), ValueFactory.createRawValue("v17"), - }); + ValueFactory.createRawValue("k3"), + ValueFactory.createRawValue("v3"), + ValueFactory.createRawValue("k11"), + ValueFactory.createRawValue("v11"), + ValueFactory.createRawValue("k4"), + ValueFactory.createRawValue("v4"), + ValueFactory.createRawValue("k10"), + ValueFactory.createRawValue("v10"), + ValueFactory.createRawValue("k5"), + ValueFactory.createRawValue("v5"), + ValueFactory.createRawValue("k6"), + ValueFactory.createRawValue("v6"), + ValueFactory.createRawValue("k15"), + ValueFactory.createRawValue("v15"), + ValueFactory.createRawValue("k7"), + ValueFactory.createRawValue("v7"), + ValueFactory.createRawValue("k14"), + ValueFactory.createRawValue("v14"), + ValueFactory.createRawValue("k8"), + ValueFactory.createRawValue("v8"), + ValueFactory.createRawValue("k13"), + ValueFactory.createRawValue("v13"), + ValueFactory.createRawValue("k9"), + ValueFactory.createRawValue("v9"), + ValueFactory.createRawValue("k12"), + ValueFactory.createRawValue("v12"), + ValueFactory.createRawValue("k0"), + ValueFactory.createNilValue(), + ValueFactory.createRawValue("k1"), + ValueFactory.createRawValue("v1"), + ValueFactory.createRawValue("k2"), + ValueFactory.createRawValue("v2"), + ValueFactory.createRawValue("k18"), + ValueFactory.createRawValue("v18"), + ValueFactory.createRawValue("k19"), + ValueFactory.createRawValue("v19"), + ValueFactory.createRawValue("k16"), + ValueFactory.createRawValue("v16"), + ValueFactory.createRawValue("k17"), + ValueFactory.createRawValue("v17"), }); testEquals(v1, v2); } @Override public void testByte(byte v) throws Exception { - testLong((long)v); + testLong((long) v); } @Override public void testShort(short v) throws Exception { - testLong((long)v); + testLong((long) v); } @Override public void testInteger(int v) throws Exception { - testLong((long)v); + testLong((long) v); } @Override @@ -130,7 +167,7 @@ public void testLong(long v) throws Exception { @Override public void testBigInteger(BigInteger v) throws Exception { - if(compatibleWithByte(v)) { + if (compatibleWithByte(v)) { Value vt = ValueFactory.createIntegerValue(v); Value vByte = ValueFactory.createIntegerValue(v.byteValue()); Value vShort = ValueFactory.createIntegerValue(v.shortValue()); @@ -143,7 +180,7 @@ public void testBigInteger(BigInteger v) throws Exception { testEquals(vt, vLong); testEquals(vt, vBigInteger); } - if(compatibleWithShort(v)) { + if (compatibleWithShort(v)) { Value vt = ValueFactory.createIntegerValue(v); Value vShort = ValueFactory.createIntegerValue(v.shortValue()); Value vInt = ValueFactory.createIntegerValue(v.intValue()); @@ -154,7 +191,7 @@ public void testBigInteger(BigInteger v) throws Exception { testEquals(vt, vLong); testEquals(vt, vBigInteger); } - if(compatibleWithInt(v)) { + if (compatibleWithInt(v)) { Value vt = ValueFactory.createIntegerValue(v); Value vInt = ValueFactory.createIntegerValue(v.intValue()); Value vLong = ValueFactory.createIntegerValue(v.longValue()); @@ -163,7 +200,7 @@ public void testBigInteger(BigInteger v) throws Exception { testEquals(vt, vLong); testEquals(vt, vBigInteger); } - if(compatibleWithLong(v)) { + if (compatibleWithLong(v)) { Value vt = ValueFactory.createIntegerValue(v); Value vLong = ValueFactory.createIntegerValue(v.longValue()); Value vBigInteger = ValueFactory.createIntegerValue(v); @@ -188,52 +225,60 @@ public void testNull() { @SuppressWarnings("unused") private boolean compatibleWithByte(long v) { - return (long)Byte.MIN_VALUE <= v && v <= (long)Byte.MAX_VALUE; + return (long) Byte.MIN_VALUE <= v && v <= (long) Byte.MAX_VALUE; } @SuppressWarnings("unused") private boolean compatibleWithShort(long v) { - return (long)Short.MIN_VALUE <= v && v <= (long)Short.MAX_VALUE; + return (long) Short.MIN_VALUE <= v && v <= (long) Short.MAX_VALUE; } @SuppressWarnings("unused") private boolean compatibleWithInt(long v) { - return (long)Integer.MIN_VALUE <= v && v <= (long)Integer.MAX_VALUE; + return (long) Integer.MIN_VALUE <= v && v <= (long) Integer.MAX_VALUE; } - private static BigInteger BYTE_MAX = BigInteger.valueOf((long)Byte.MAX_VALUE); - private static BigInteger SHORT_MAX = BigInteger.valueOf((long)Short.MAX_VALUE); - private static BigInteger INT_MAX = BigInteger.valueOf((long)Integer.MAX_VALUE); - private static BigInteger LONG_MAX = BigInteger.valueOf((long)Long.MAX_VALUE); + private static BigInteger BYTE_MAX = BigInteger + .valueOf((long) Byte.MAX_VALUE); + private static BigInteger SHORT_MAX = BigInteger + .valueOf((long) Short.MAX_VALUE); + private static BigInteger INT_MAX = BigInteger + .valueOf((long) Integer.MAX_VALUE); + private static BigInteger LONG_MAX = BigInteger + .valueOf((long) Long.MAX_VALUE); - private static BigInteger BYTE_MIN = BigInteger.valueOf((long)Byte.MIN_VALUE); - private static BigInteger SHORT_MIN = BigInteger.valueOf((long)Short.MIN_VALUE); - private static BigInteger INT_MIN = BigInteger.valueOf((long)Integer.MIN_VALUE); - private static BigInteger LONG_MIN = BigInteger.valueOf((long)Long.MIN_VALUE); + private static BigInteger BYTE_MIN = BigInteger + .valueOf((long) Byte.MIN_VALUE); + private static BigInteger SHORT_MIN = BigInteger + .valueOf((long) Short.MIN_VALUE); + private static BigInteger INT_MIN = BigInteger + .valueOf((long) Integer.MIN_VALUE); + private static BigInteger LONG_MIN = BigInteger + .valueOf((long) Long.MIN_VALUE); protected boolean compatibleWithByte(BigInteger v) { - if(v.compareTo(BYTE_MAX) > 0 || v.compareTo(BYTE_MIN) < 0) { + if (v.compareTo(BYTE_MAX) > 0 || v.compareTo(BYTE_MIN) < 0) { return false; } return true; } protected boolean compatibleWithShort(BigInteger v) { - if(v.compareTo(SHORT_MAX) > 0 || v.compareTo(SHORT_MIN) < 0) { + if (v.compareTo(SHORT_MAX) > 0 || v.compareTo(SHORT_MIN) < 0) { return false; } return true; } protected boolean compatibleWithInt(BigInteger v) { - if(v.compareTo(INT_MAX) > 0 || v.compareTo(INT_MIN) < 0) { + if (v.compareTo(INT_MAX) > 0 || v.compareTo(INT_MIN) < 0) { return false; } return true; } protected boolean compatibleWithLong(BigInteger v) { - if(v.compareTo(LONG_MAX) > 0 || v.compareTo(LONG_MIN) < 0) { + if (v.compareTo(LONG_MAX) > 0 || v.compareTo(LONG_MIN) < 0) { return false; } return true; @@ -253,4 +298,3 @@ protected Value getValue() { })); } } - diff --git a/src/test/java/org/msgpack/type/TestHashCode.java b/src/test/java/org/msgpack/type/TestHashCode.java index 01d3ca3d9..ed1c3c0ad 100644 --- a/src/test/java/org/msgpack/type/TestHashCode.java +++ b/src/test/java/org/msgpack/type/TestHashCode.java @@ -2,11 +2,9 @@ import static org.junit.Assert.assertEquals; - public class TestHashCode extends TestEquals { @Override protected void testEquals(Value v1, Value v2) { assertEquals(v1.hashCode(), v2.hashCode()); } } - From 7401974ffed794a7e20bc77f5e23caf71f7ace77 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 23 Jul 2012 13:51:52 +0900 Subject: [PATCH 329/409] changed changed formatter of org.msgpack.util.**.java in src/test --- ...latePreCompilerBufferPackBufferUnpack.java | 995 ++++++++++-------- .../json/TestJSONBufferPackBufferUnpack.java | 308 +++--- .../util/json/TestJSONBufferPackUnpack.java | 373 ++++--- 3 files changed, 920 insertions(+), 756 deletions(-) diff --git a/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java index 55214f276..b811c95d5 100644 --- a/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/TestTemplatePreCompilerBufferPackBufferUnpack.java @@ -29,482 +29,597 @@ import org.msgpack.testclasses.UserDefinedTypeFieldsClassNotNullable; import org.msgpack.unpacker.BufferUnpacker; - public class TestTemplatePreCompilerBufferPackBufferUnpack extends TestSet { - @Test @Override + @Test + @Override public void testPrimitiveTypeFieldsClass() throws Exception { - super.testPrimitiveTypeFieldsClass(); - } - - @Override - public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), PrimitiveTypeFieldsClass.class); - Template tmpl = msgpack.lookup(PrimitiveTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(PrimitiveTypeFieldsClass.class); - msgpack.unregister(PrimitiveTypeFieldsClass.class); - } - } - - @Test @Override + super.testPrimitiveTypeFieldsClass(); + } + + @Override + public void testPrimitiveTypeFieldsClass(PrimitiveTypeFieldsClass v) + throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + PrimitiveTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(PrimitiveTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(PrimitiveTypeFieldsClass.class); + msgpack.unregister(PrimitiveTypeFieldsClass.class); + } + } + + @Test + @Override public void testPrimitiveTypeFieldsClassNotNullable() throws Exception { - super.testPrimitiveTypeFieldsClassNotNullable(); - } - - @Override - public void testPrimitiveTypeFieldsClassNotNullable(PrimitiveTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), PrimitiveTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(PrimitiveTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(PrimitiveTypeFieldsClassNotNullable.class); - msgpack.unregister(PrimitiveTypeFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testPrimitiveTypeFieldsClassNotNullable(); + } + + @Override + public void testPrimitiveTypeFieldsClassNotNullable( + PrimitiveTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + PrimitiveTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(PrimitiveTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + PrimitiveTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(PrimitiveTypeFieldsClassNotNullable.class); + msgpack.unregister(PrimitiveTypeFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testReferenceTypeFieldsClass() throws Exception { - super.testReferenceTypeFieldsClass(); - } - - @Override - public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceTypeFieldsClass.class); - Template tmpl = msgpack.lookup(ReferenceTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ReferenceTypeFieldsClass.class); - msgpack.unregister(ReferenceTypeFieldsClass.class); - } - } - - @Test @Override + super.testReferenceTypeFieldsClass(); + } + + @Override + public void testReferenceTypeFieldsClass(ReferenceTypeFieldsClass v) + throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ReferenceTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(ReferenceTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ReferenceTypeFieldsClass.class); + msgpack.unregister(ReferenceTypeFieldsClass.class); + } + } + + @Test + @Override public void testReferenceTypeFieldsClassNotNullable() throws Exception { - super.testReferenceTypeFieldsClassNotNullable(); - } - - @Override - public void testReferenceTypeFieldsClassNotNullable(ReferenceTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(ReferenceTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ReferenceTypeFieldsClassNotNullable.class); - msgpack.unregister(ReferenceTypeFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testReferenceTypeFieldsClassNotNullable(); + } + + @Override + public void testReferenceTypeFieldsClassNotNullable( + ReferenceTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ReferenceTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(ReferenceTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ReferenceTypeFieldsClassNotNullable.class); + msgpack.unregister(ReferenceTypeFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testListTypeFieldsClass() throws Exception { - super.testListTypeFieldsClass(); + super.testListTypeFieldsClass(); } @Override public void testListTypeFieldsClass(ListTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ListTypeFieldsClass.class); - Template tmpl = msgpack.lookup(ListTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ListTypeFieldsClass.class); - msgpack.unregister(ListTypeFieldsClass.class); - } - } - - @Test @Override + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ListTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(ListTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ListTypeFieldsClass.class); + msgpack.unregister(ListTypeFieldsClass.class); + } + } + + @Test + @Override public void testListTypeFieldsClassNotNullable() throws Exception { - super.testListTypeFieldsClassNotNullable(); - } - - @Override - public void testListTypeFieldsClassNotNullable(ListTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ListTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(ListTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ListTypeFieldsClassNotNullable.class); - msgpack.unregister(ListTypeFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testListTypeFieldsClassNotNullable(); + } + + @Override + public void testListTypeFieldsClassNotNullable( + ListTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ListTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(ListTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ListTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ListTypeFieldsClassNotNullable.class); + msgpack.unregister(ListTypeFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testMapTypeFieldsClass() throws Exception { - super.testMapTypeFieldsClass(); + super.testMapTypeFieldsClass(); } @Override public void testMapTypeFieldsClass(MapTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MapTypeFieldsClass.class); - Template tmpl = msgpack.lookup(MapTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(MapTypeFieldsClass.class); - msgpack.unregister(MapTypeFieldsClass.class); - } - } - - @Test @Override + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + MapTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(MapTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(MapTypeFieldsClass.class); + msgpack.unregister(MapTypeFieldsClass.class); + } + } + + @Test + @Override public void testMapTypeFieldsClassNotNullable() throws Exception { - super.testMapTypeFieldsClassNotNullable(); - } - - @Override - public void testMapTypeFieldsClassNotNullable(MapTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MapTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(MapTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(MapTypeFieldsClassNotNullable.class); - msgpack.unregister(MapTypeFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testMapTypeFieldsClassNotNullable(); + } + + @Override + public void testMapTypeFieldsClassNotNullable( + MapTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + MapTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(MapTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MapTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(MapTypeFieldsClassNotNullable.class); + msgpack.unregister(MapTypeFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testFinalClass() throws Exception { - super.testFinalClass(); + super.testFinalClass(); } @Override public void testFinalClass(FinalClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), FinalClass.class); - Template tmpl = msgpack.lookup(FinalClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - FinalClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(FinalClass.class); - msgpack.unregister(FinalClass.class); - } - } - - @Test @Override + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + FinalClass.class); + Template tmpl = msgpack.lookup(FinalClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + FinalClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(FinalClass.class); + msgpack.unregister(FinalClass.class); + } + } + + @Test + @Override public void testModifiersFieldsClass() throws Exception { - super.testModifiersFieldsClass(); - } - - @Override - public void testModifiersFieldsClass(ModifiersFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ModifiersFieldsClass.class); - Template tmpl = msgpack.lookup(ModifiersFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ModifiersFieldsClass.class); - msgpack.unregister(ModifiersFieldsClass.class); - } - } - - @Test @Override + super.testModifiersFieldsClass(); + } + + @Override + public void testModifiersFieldsClass(ModifiersFieldsClass v) + throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ModifiersFieldsClass.class); + Template tmpl = msgpack + .lookup(ModifiersFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(ModifiersFieldsClass.class); + msgpack.unregister(ModifiersFieldsClass.class); + } + } + + @Test + @Override public void testModifiersFieldsClassNotNullable() throws Exception { - super.testModifiersFieldsClassNotNullable(); - } - - @Override - public void testModifiersFieldsClassNotNullable(ModifiersFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ModifiersFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(ModifiersFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ModifiersFieldsClassNotNullable.class); - msgpack.unregister(ModifiersFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testModifiersFieldsClassNotNullable(); + } + + @Override + public void testModifiersFieldsClassNotNullable( + ModifiersFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ModifiersFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(ModifiersFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ModifiersFieldsClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ModifiersFieldsClassNotNullable.class); + msgpack.unregister(ModifiersFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testUserDefinedTypeFieldsClass() throws Exception { - super.testUserDefinedTypeFieldsClass(); - } - - @Override - public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), UserDefinedTypeFieldsClass.class); - Template tmpl = msgpack.lookup(UserDefinedTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(UserDefinedTypeFieldsClass.class); - msgpack.unregister(UserDefinedTypeFieldsClass.class); - } - } - - @Test @Override + super.testUserDefinedTypeFieldsClass(); + } + + @Override + public void testUserDefinedTypeFieldsClass(UserDefinedTypeFieldsClass v) + throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + UserDefinedTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(UserDefinedTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(UserDefinedTypeFieldsClass.class); + msgpack.unregister(UserDefinedTypeFieldsClass.class); + } + } + + @Test + @Override public void testUserDefinedTypeFieldsClassNotNullable() throws Exception { - super.testUserDefinedTypeFieldsClassNotNullable(); - } - - @Override - public void testUserDefinedTypeFieldsClassNotNullable(UserDefinedTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), UserDefinedTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(UserDefinedTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(UserDefinedTypeFieldsClassNotNullable.class); - msgpack.unregister(UserDefinedTypeFieldsClassNotNullable.class); - } - } - - @org.junit.Ignore @Test @Override // FIXME #MN next version + super.testUserDefinedTypeFieldsClassNotNullable(); + } + + @Override + public void testUserDefinedTypeFieldsClassNotNullable( + UserDefinedTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + UserDefinedTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(UserDefinedTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + UserDefinedTypeFieldsClassNotNullable ret = tmpl.read(unpacker, + null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(UserDefinedTypeFieldsClassNotNullable.class); + msgpack.unregister(UserDefinedTypeFieldsClassNotNullable.class); + } + } + + @org.junit.Ignore + @Test + @Override + // FIXME #MN next version public void testReferenceCycleTypeFieldsClass() throws Exception { - super.testReferenceCycleTypeFieldsClass(); - } - - @org.junit.Ignore @Override // FIXME #MN next version - public void testReferenceCycleTypeFieldsClass(ReferenceCycleTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceCycleTypeFieldsClass.class); - Template tmpl = msgpack.lookup(ReferenceCycleTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ReferenceCycleTypeFieldsClass.class); - msgpack.unregister(ReferenceCycleTypeFieldsClass.class); - } - } - - @org.junit.Ignore @Test @Override // FIXME #MN next version + super.testReferenceCycleTypeFieldsClass(); + } + + @org.junit.Ignore + @Override + // FIXME #MN next version + public void testReferenceCycleTypeFieldsClass( + ReferenceCycleTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ReferenceCycleTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(ReferenceCycleTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ReferenceCycleTypeFieldsClass.class); + msgpack.unregister(ReferenceCycleTypeFieldsClass.class); + } + } + + @org.junit.Ignore + @Test + @Override + // FIXME #MN next version public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { - super.testReferenceCycleTypeFieldsClassNotNullable(); - } - - @org.junit.Ignore @Override // FIXME #MN next version - public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), ReferenceCycleTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(ReferenceCycleTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(ReferenceCycleTypeFieldsClassNotNullable.class); - msgpack.unregister(ReferenceCycleTypeFieldsClassNotNullable.class); - } - } - - @Test @Override + super.testReferenceCycleTypeFieldsClassNotNullable(); + } + + @org.junit.Ignore + @Override + // FIXME #MN next version + public void testReferenceCycleTypeFieldsClassNotNullable( + ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + ReferenceCycleTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(ReferenceCycleTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + ReferenceCycleTypeFieldsClassNotNullable ret = tmpl.read(unpacker, + null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(ReferenceCycleTypeFieldsClassNotNullable.class); + msgpack.unregister(ReferenceCycleTypeFieldsClassNotNullable.class); + } + } + + @Test + @Override public void testInheritanceClass() throws Exception { - super.testInheritanceClass(); + super.testInheritanceClass(); } @Override public void testInheritanceClass(InheritanceClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), InheritanceClass.class); - Template tmpl = msgpack.lookup(InheritanceClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(InheritanceClass.class); - msgpack.unregister(InheritanceClass.class); - } - } - - @Test @Override + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + InheritanceClass.class); + Template tmpl = msgpack + .lookup(InheritanceClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler.deleteTemplateClass(InheritanceClass.class); + msgpack.unregister(InheritanceClass.class); + } + } + + @Test + @Override public void testInheritanceClassNotNullable() throws Exception { - super.testInheritanceClassNotNullable(); - } - - @Override - public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), InheritanceClassNotNullable.class); - Template tmpl = msgpack.lookup(InheritanceClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - InheritanceClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(InheritanceClassNotNullable.class); - msgpack.unregister(InheritanceClassNotNullable.class); - } - } - - @Test @Override + super.testInheritanceClassNotNullable(); + } + + @Override + public void testInheritanceClassNotNullable(InheritanceClassNotNullable v) + throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + InheritanceClassNotNullable.class); + Template tmpl = msgpack + .lookup(InheritanceClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + InheritanceClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(InheritanceClassNotNullable.class); + msgpack.unregister(InheritanceClassNotNullable.class); + } + } + + @Test + @Override public void testMessagePackableTypeFieldsClass() throws Exception { - super.testMessagePackableTypeFieldsClass(); - } - - @Override - public void testMessagePackableTypeFieldsClass(MessagePackableTypeFieldsClass v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MessagePackableTypeFieldsClass.class); - Template tmpl = msgpack.lookup(MessagePackableTypeFieldsClass.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(MessagePackableTypeFieldsClass.class); - msgpack.unregister(MessagePackableTypeFieldsClass.class); - } - } - - @Test @Override - public void testMessagePackableTypeFieldsClassNotNullable() throws Exception { - super.testMessagePackableTypeFieldsClassNotNullable(); - } - - @Override - public void testMessagePackableTypeFieldsClassNotNullable(MessagePackableTypeFieldsClassNotNullable v) throws Exception { - System.getProperties().setProperty(TemplatePrecompiler.DEST, "./target/test-classes"); - MessagePack msgpack = new MessagePack(); - try { - TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), MessagePackableTypeFieldsClassNotNullable.class); - Template tmpl = msgpack.lookup(MessagePackableTypeFieldsClassNotNullable.class); - BufferPacker packer = msgpack.createBufferPacker(); - tmpl.write(packer, v); - byte[] bytes = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(); - unpacker.wrap(bytes); - MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, null); - assertEquals(v, ret); - } finally { - TemplatePrecompiler.deleteTemplateClass(MessagePackableTypeFieldsClassNotNullable.class); - msgpack.unregister(MessagePackableTypeFieldsClassNotNullable.class); - } + super.testMessagePackableTypeFieldsClass(); + } + + @Override + public void testMessagePackableTypeFieldsClass( + MessagePackableTypeFieldsClass v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + MessagePackableTypeFieldsClass.class); + Template tmpl = msgpack + .lookup(MessagePackableTypeFieldsClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(MessagePackableTypeFieldsClass.class); + msgpack.unregister(MessagePackableTypeFieldsClass.class); + } + } + + @Test + @Override + public void testMessagePackableTypeFieldsClassNotNullable() + throws Exception { + super.testMessagePackableTypeFieldsClassNotNullable(); + } + + @Override + public void testMessagePackableTypeFieldsClassNotNullable( + MessagePackableTypeFieldsClassNotNullable v) throws Exception { + System.getProperties().setProperty(TemplatePrecompiler.DEST, + "./target/test-classes"); + MessagePack msgpack = new MessagePack(); + try { + TemplatePrecompiler.saveTemplateClass(new TemplateRegistry(null), + MessagePackableTypeFieldsClassNotNullable.class); + Template tmpl = msgpack + .lookup(MessagePackableTypeFieldsClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.wrap(bytes); + MessagePackableTypeFieldsClassNotNullable ret = tmpl.read(unpacker, + null); + assertEquals(v, ret); + } finally { + TemplatePrecompiler + .deleteTemplateClass(MessagePackableTypeFieldsClassNotNullable.class); + msgpack.unregister(MessagePackableTypeFieldsClassNotNullable.class); + } } } diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java index 2914c1bbd..b75e7da8d 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackBufferUnpack.java @@ -20,99 +20,104 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; - public class TestJSONBufferPackBufferUnpack extends TestSet { - @Test @Override + @Test + @Override public void testBoolean() throws Exception { - super.testBoolean(); + super.testBoolean(); } @Override public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - boolean ret = unpacker.readBoolean(); - assertEquals(v, ret); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testByte() throws Exception { - super.testByte(); + super.testByte(); } @Override public void testByte(byte v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - byte ret = unpacker.readByte(); - assertEquals(v, ret); + byte ret = unpacker.readByte(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testShort() throws Exception { - super.testShort(); + super.testShort(); } @Override public void testShort(short v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - short ret = unpacker.readShort(); - assertEquals(v, ret); + short ret = unpacker.readShort(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testInteger() throws Exception { - super.testInteger(); + super.testInteger(); } @Override public void testInteger(int v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - int ret = unpacker.readInt(); - assertEquals(v, ret); + int ret = unpacker.readInt(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testLong() throws Exception { - super.testLong(); + super.testLong(); } @Override public void testLong(long v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - long ret = unpacker.readLong(); - assertEquals(v, ret); + long ret = unpacker.readLong(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testFloat() throws Exception { - super.testFloat(); + super.testFloat(); } @Override public void testFloat(float v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (((Float) v).isInfinite() || ((Float) v).isNaN()) { try { packer.write(v); fail("JSONPacker should reject infinite and NaN value"); @@ -121,23 +126,24 @@ public void testFloat(float v) throws Exception { } return; } - packer.write(v); - byte[] bytes = packer.toByteArray(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - float ret = unpacker.readFloat(); - assertEquals(v, ret, 10e-10); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); } - @Test @Override + @Test + @Override public void testDouble() throws Exception { - super.testDouble(); + super.testDouble(); } @Override public void testDouble(double v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (((Double) v).isInfinite() || ((Double) v).isNaN()) { try { packer.write(v); fail("JSONPacker should reject infinite and NaN value"); @@ -146,159 +152,171 @@ public void testDouble(double v) throws Exception { } return; } - packer.write(v); - byte[] bytes = packer.toByteArray(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - double ret = unpacker.readDouble(); - assertEquals(v, ret, 10e-10); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); } - @Test @Override + @Test + @Override public void testNil() throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeNil(); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeNil(); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - unpacker.readNil(); + unpacker.readNil(); } - @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) + @Ignore + @Test + @Override + // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) public void testBigInteger() throws Exception { - super.testBigInteger(); + super.testBigInteger(); } @Override public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - BigInteger ret = unpacker.read(BigInteger.class); - assertEquals(v, ret); + BigInteger ret = unpacker.read(BigInteger.class); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testString() throws Exception { - super.testString(); + super.testString(); } @Override public void testString(String v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); String ret = unpacker.read(String.class); - assertEquals(v, ret); + assertEquals(v, ret); } - @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes + @Ignore + @Test + @Override + // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { - super.testByteArray(); + super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - //packer.write(v); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + // packer.write(v); String str = new String(v); - packer.write(str); - byte[] bytes = packer.toByteArray(); + packer.write(str); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); - String ret = unpacker.read(String.class); - assertEquals(str, ret); + String ret = unpacker.read(String.class); + assertEquals(str, ret); } - @Test @Override + @Test + @Override public void testList() throws Exception { - super.testList(); + super.testList(); } @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); if (v == null) { packer.writeNil(); } else { packer.writeArrayBegin(v.size()); for (Object o : v) { - packer.write(o); + packer.write(o); } packer.writeArrayEnd(); } - byte[] bytes = packer.toByteArray(); + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); if (unpacker.trySkipNil()) { assertEquals(null, v); return; } - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } } - @Test @Override + @Test + @Override public void testMap() throws Exception { - super.testMap(); + super.testMap(); } @SuppressWarnings({ "unchecked", "rawtypes" }) @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if (v == null) { - packer.writeNil(); - } else { - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if (!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (IOException ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - } - byte[] bytes = packer.toByteArray(); + public void testMap(Map v, Class keyElementClass, + Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v) + .entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (IOException ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + } + byte[] bytes = packer.toByteArray(); Unpacker unpacker = msgpack.createBufferUnpacker(bytes); if (unpacker.trySkipNil()) { assertEquals(null, v); return; } - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } } } diff --git a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java index c4f212bd4..ec44aeae2 100644 --- a/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java +++ b/src/test/java/org/msgpack/util/json/TestJSONBufferPackUnpack.java @@ -21,99 +21,109 @@ import org.msgpack.unpacker.Unpacker; import org.msgpack.util.json.JSON; - public class TestJSONBufferPackUnpack extends TestSet { - @Test @Override + @Test + @Override public void testBoolean() throws Exception { - super.testBoolean(); + super.testBoolean(); } @Override public void testBoolean(boolean v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - boolean ret = unpacker.readBoolean(); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + boolean ret = unpacker.readBoolean(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testByte() throws Exception { - super.testByte(); + super.testByte(); } @Override public void testByte(byte v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - byte ret = unpacker.readByte(); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + byte ret = unpacker.readByte(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testShort() throws Exception { - super.testShort(); + super.testShort(); } @Override public void testShort(short v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - short ret = unpacker.readShort(); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + short ret = unpacker.readShort(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testInteger() throws Exception { - super.testInteger(); + super.testInteger(); } @Override public void testInteger(int v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - int ret = unpacker.readInt(); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + int ret = unpacker.readInt(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testLong() throws Exception { - super.testLong(); + super.testLong(); } @Override public void testLong(long v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - long ret = unpacker.readLong(); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + long ret = unpacker.readLong(); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testFloat() throws Exception { - super.testFloat(); + super.testFloat(); } @Override public void testFloat(float v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if(((Float)v).isInfinite() || ((Float)v).isNaN()) { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (((Float) v).isInfinite() || ((Float) v).isNaN()) { try { packer.write(v); fail("JSONPacker should reject infinite and NaN value"); @@ -122,23 +132,25 @@ public void testFloat(float v) throws Exception { } return; } - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - float ret = unpacker.readFloat(); - assertEquals(v, ret, 10e-10); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + float ret = unpacker.readFloat(); + assertEquals(v, ret, 10e-10); } - @Test @Override + @Test + @Override public void testDouble() throws Exception { - super.testDouble(); + super.testDouble(); } @Override public void testDouble(double v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if(((Double)v).isInfinite() || ((Double)v).isNaN()) { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (((Double) v).isInfinite() || ((Double) v).isNaN()) { try { packer.write(v); fail("JSONPacker should reject infinite and NaN value"); @@ -147,159 +159,178 @@ public void testDouble(double v) throws Exception { } return; } - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - double ret = unpacker.readDouble(); - assertEquals(v, ret, 10e-10); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + double ret = unpacker.readDouble(); + assertEquals(v, ret, 10e-10); } - @Test @Override + @Test + @Override public void testNil() throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.writeNil(); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - unpacker.readNil(); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.writeNil(); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + unpacker.readNil(); } - @Ignore @Test @Override // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) + @Ignore + @Test + @Override + // FIXME #SF JSON Unpacker doesn't support BigInteger (bug) public void testBigInteger() throws Exception { - super.testBigInteger(); + super.testBigInteger(); } @Override public void testBigInteger(BigInteger v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - BigInteger ret = unpacker.read(BigInteger.class); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + BigInteger ret = unpacker.read(BigInteger.class); + assertEquals(v, ret); } - @Test @Override + @Test + @Override public void testString() throws Exception { - super.testString(); + super.testString(); } @Override public void testString(String v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(v); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = unpacker.read(String.class); - assertEquals(v, ret); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + String ret = unpacker.read(String.class); + assertEquals(v, ret); } - @Ignore @Test @Override // FIXME #SF JSONPacker doesn't support bytes + @Ignore + @Test + @Override + // FIXME #SF JSONPacker doesn't support bytes public void testByteArray() throws Exception { - super.testByteArray(); + super.testByteArray(); } @Override public void testByteArray(byte[] v) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - //packer.write(v); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + // packer.write(v); String str = new String(v); - packer.write(str); - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - String ret = unpacker.read(String.class); - assertEquals(str, ret); + packer.write(str); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + String ret = unpacker.read(String.class); + assertEquals(str, ret); } - @Test @Override + @Test + @Override public void testList() throws Exception { - super.testList(); + super.testList(); } @SuppressWarnings({ "rawtypes", "unchecked" }) @Override public void testList(List v, Class elementClass) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if (v == null) { - packer.writeNil(); - } else { - packer.writeArrayBegin(v.size()); - for (Object o : v) { - packer.write(o); - } - packer.writeArrayEnd(); - } - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeArrayBegin(v.size()); + for (Object o : v) { + packer.write(o); + } + packer.writeArrayEnd(); + } + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); if (unpacker.trySkipNil()) { assertEquals(null, v); return; } - int size = unpacker.readArrayBegin(); - List ret = new ArrayList(size); - for (int i = 0; i < size; ++i) { - ret.add(unpacker.read(elementClass)); - } - unpacker.readArrayEnd(); - assertEquals(v.size(), ret.size()); - Iterator v_iter = v.iterator(); - Iterator ret_iter = ret.iterator(); - while (v_iter.hasNext()) { - assertEquals(v_iter.next(), ret_iter.next()); - } + int size = unpacker.readArrayBegin(); + List ret = new ArrayList(size); + for (int i = 0; i < size; ++i) { + ret.add(unpacker.read(elementClass)); + } + unpacker.readArrayEnd(); + assertEquals(v.size(), ret.size()); + Iterator v_iter = v.iterator(); + Iterator ret_iter = ret.iterator(); + while (v_iter.hasNext()) { + assertEquals(v_iter.next(), ret_iter.next()); + } } - @Test @Override + @Test + @Override public void testMap() throws Exception { - super.testMap(); + super.testMap(); } @SuppressWarnings({ "rawtypes", "unchecked" }) @Override - public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { - MessagePack msgpack = new JSON(); - BufferPacker packer = msgpack.createBufferPacker(); - if (v == null) { - packer.writeNil(); - } else { - packer.writeMapBegin(v.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - if (!(e.getKey() instanceof String)) { - try { - packer.write(e.getKey()); - fail("JSONPacker should reject non-String value for the map key"); - } catch (Exception ex) { - assertTrue(ex instanceof IOException); - } - return; - } - packer.write(e.getKey()); - packer.write(e.getValue()); - } - packer.writeMapEnd(); - } - byte[] bytes = packer.toByteArray(); - Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); - if (unpacker.trySkipNil()) { - assertEquals(null, v); - return; - } - int size = unpacker.readMapBegin(); - Map ret = new HashMap(size); - for (int i = 0; i < size; ++i) { - Object key = unpacker.read(keyElementClass); - Object value = unpacker.read(valueElementClass); - ret.put(key, value); - } - unpacker.readMapEnd(); - assertEquals(v.size(), ret.size()); - for (Map.Entry e : ((Map) v).entrySet()) { - Object value = ret.get(e.getKey()); - assertEquals(e.getValue(), value); - } + public void testMap(Map v, Class keyElementClass, + Class valueElementClass) throws Exception { + MessagePack msgpack = new JSON(); + BufferPacker packer = msgpack.createBufferPacker(); + if (v == null) { + packer.writeNil(); + } else { + packer.writeMapBegin(v.size()); + for (Map.Entry e : ((Map) v) + .entrySet()) { + if (!(e.getKey() instanceof String)) { + try { + packer.write(e.getKey()); + fail("JSONPacker should reject non-String value for the map key"); + } catch (Exception ex) { + assertTrue(ex instanceof IOException); + } + return; + } + packer.write(e.getKey()); + packer.write(e.getValue()); + } + packer.writeMapEnd(); + } + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker( + new ByteArrayInputStream(bytes)); + if (unpacker.trySkipNil()) { + assertEquals(null, v); + return; + } + int size = unpacker.readMapBegin(); + Map ret = new HashMap(size); + for (int i = 0; i < size; ++i) { + Object key = unpacker.read(keyElementClass); + Object value = unpacker.read(valueElementClass); + ret.put(key, value); + } + unpacker.readMapEnd(); + assertEquals(v.size(), ret.size()); + for (Map.Entry e : ((Map) v).entrySet()) { + Object value = ret.get(e.getKey()); + assertEquals(e.getValue(), value); + } } } From 83cbf329465fd0f60179d471ef1cd0fcf54b9863 Mon Sep 17 00:00:00 2001 From: nagoya0 Date: Thu, 9 Aug 2012 18:48:18 +0900 Subject: [PATCH 330/409] sidestep Android compatibility issues. --- .../org/msgpack/io/LinkedBufferInput.java | 34 ++++++++++++++----- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index a8a3cc247..df78feb93 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -21,6 +21,7 @@ import java.io.EOFException; import java.util.LinkedList; import java.util.Iterator; +import java.util.NoSuchElementException; import java.nio.ByteBuffer; public class LinkedBufferInput extends AbstractInput { @@ -50,7 +51,7 @@ public int read(byte[] b, int off, int len) throws EOFException { } int olen = len; while (true) { - ByteBuffer bb = link.peekFirst(); + ByteBuffer bb = link.getFirst(); if (len < bb.remaining()) { bb.get(b, off, len); incrReadByteCount(len); @@ -69,7 +70,10 @@ public int read(byte[] b, int off, int len) throws EOFException { } public boolean tryRefer(BufferReferer ref, int len) throws IOException { - ByteBuffer bb = link.peekFirst(); + ByteBuffer bb = null; + try { + bb = link.getFirst(); + } catch(NoSuchElementException e) {} if (bb == null) { throw new EndOfBufferException(); } else if (bb.remaining() < len) { @@ -98,7 +102,10 @@ public boolean tryRefer(BufferReferer ref, int len) throws IOException { } public byte readByte() throws EOFException { - ByteBuffer bb = link.peekFirst(); + ByteBuffer bb = null; + try { + bb = link.getFirst(); + } catch(NoSuchElementException e) {} if (bb == null || bb.remaining() == 0) { throw new EndOfBufferException(); } @@ -117,7 +124,7 @@ public void advance() { int len = nextAdvance; ByteBuffer bb; while (true) { - bb = link.peekFirst(); + bb = link.getFirst(); if (len < bb.remaining()) { bb.position(bb.position() + len); break; @@ -169,7 +176,10 @@ private void requireMore(int n) throws EOFException { } private ByteBuffer require(int n) throws EOFException { - ByteBuffer bb = link.peekFirst(); + ByteBuffer bb = null; + try { + bb = link.getFirst(); + } catch(NoSuchElementException e) {} if (bb == null) { throw new EndOfBufferException(); } @@ -227,7 +237,7 @@ public void feed(byte[] b, int off, int len) { public void feed(byte[] b, int off, int len, boolean reference) { if (reference) { - if (writable > 0 && link.peekLast().remaining() == 0) { + if (writable > 0 && link.getLast().remaining() == 0) { link.add(link.size()-1, ByteBuffer.wrap(b, off, len)); return; } @@ -236,7 +246,10 @@ public void feed(byte[] b, int off, int len, boolean reference) { return; } - ByteBuffer bb = link.peekLast(); + ByteBuffer bb = null; + try { + bb = link.getLast(); + } catch(NoSuchElementException e) {} if (len <= writable) { int pos = bb.position(); bb.position(bb.limit()); @@ -273,7 +286,7 @@ public void feed(ByteBuffer b) { public void feed(ByteBuffer buf, boolean reference) { if (reference) { - if (writable > 0 && link.peekLast().remaining() == 0) { + if (writable > 0 && link.getLast().remaining() == 0) { link.add(link.size()-1, buf); return; } @@ -284,7 +297,10 @@ public void feed(ByteBuffer buf, boolean reference) { int rem = buf.remaining(); - ByteBuffer bb = link.peekLast(); + ByteBuffer bb = null; + try { + bb = link.getLast(); + } catch(NoSuchElementException e) {} if (rem <= writable) { int pos = bb.position(); bb.position(bb.limit()); From b62bf2d61188899a4914665d9e7f434b8366e5d6 Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Thu, 30 Aug 2012 12:16:14 +0100 Subject: [PATCH 331/409] Test for byte[][] --- src/test/java/org/msgpack/TestSimpleArrays.java | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java index 684abfa5c..21c41729a 100644 --- a/src/test/java/org/msgpack/TestSimpleArrays.java +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -262,6 +262,7 @@ public void testGenerics() throws Exception { @Message public static class Dim2Test { public int[][] i; + public byte[][] b; public String[][] str; public List[][] slist; @@ -277,6 +278,9 @@ public void testDim2() throws Exception { t.i = new int[2][]; t.i[0] = new int[] { 0, 1 }; t.i[1] = new int[] { 2, 3, 4 }; + t.b = new byte[2][]; + t.b[0] = new byte[] { 5, 6 }; + t.b[1] = new byte[] { 7, 8, 9 }; t.str = new String[2][]; t.str[0] = new String[] { "aa", "bb" }; t.str[1] = new String[] { "cc", "dd", "ee" }; @@ -298,21 +302,28 @@ public void testDim2() throws Exception { byte[] raw = packer.toByteArray(); BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); Dim2Test u = unpacker.read(Dim2Test.class); - assertEquals(t.i.length, t.i.length); + assertEquals(t.i.length, u.i.length); for (int i = 0; i < t.i.length; i++) { assertEquals(t.i[i].length, u.i[i].length); for (int j = 0; j < t.i[i].length; j++) { assertEquals(t.i[i][j], u.i[i][j]); } } - assertEquals(t.str.length, t.str.length); + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i].length, u.b[i].length); + for (int j = 0; j < t.i[i].length; j++) { + assertEquals(t.b[i][j], u.b[i][j]); + } + } + assertEquals(t.str.length, u.str.length); for (int i = 0; i < t.str.length; i++) { assertEquals(t.str[i].length, u.str[i].length); for (int j = 0; j < t.str[i].length; j++) { assertEquals(t.str[i][j], u.str[i][j]); } } - assertEquals(t.slist.length, t.slist.length); + assertEquals(t.slist.length, u.slist.length); for (int i = 0; i < t.slist.length; i++) { assertEquals(t.slist[i].length, u.slist[i].length); for (int j = 0; j < t.slist[i].length; j++) { From 9ebbaac9867cd9a297e9aa8b2859671b73be8ed1 Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Thu, 30 Aug 2012 12:17:05 +0100 Subject: [PATCH 332/409] Make encoding byte[][] work correctly --- .../org/msgpack/template/builder/ArrayTemplateBuilder.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index c1e76130b..ffcd690f6 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -29,6 +29,7 @@ import org.msgpack.packer.Packer; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.BooleanArrayTemplate; +import org.msgpack.template.ByteArrayTemplate; import org.msgpack.template.DoubleArrayTemplate; import org.msgpack.template.FieldList; import org.msgpack.template.FloatArrayTemplate; @@ -156,6 +157,8 @@ private Template toTemplate(Type arrayType, Type genericBaseType, Class baseClas return FloatArrayTemplate.getInstance(); } else if (baseClass == double.class) { return DoubleArrayTemplate.getInstance(); + } else if (baseClass == byte.class) { + return ByteArrayTemplate.getInstance(); } else { Template baseTemplate = registry.lookup(genericBaseType); return new ObjectArrayTemplate(baseClass, baseTemplate); From 8b3aa63d0ce3de961c894c62734c553340afbc73 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Dec 2012 14:27:24 +0900 Subject: [PATCH 333/409] renamed package: custom.beans to org.msgpack.template.builder.beans --- .../org/msgpack/template/builder/BeansFieldEntry.java | 2 +- .../template/builder/ReflectionBeansTemplateBuilder.java | 8 ++++---- .../msgpack/template/builder}/beans/BeanDescriptor.java | 2 +- .../msgpack/template/builder}/beans/BeanInfo.java | 2 +- .../template/builder}/beans/EventSetDescriptor.java | 2 +- .../template/builder}/beans/ExceptionListener.java | 2 +- .../msgpack/template/builder}/beans/Expression.java | 2 +- .../template/builder}/beans/FeatureDescriptor.java | 2 +- .../builder}/beans/IndexedPropertyDescriptor.java | 2 +- .../template/builder}/beans/IntrospectionException.java | 2 +- .../msgpack/template/builder}/beans/Introspector.java | 2 +- .../msgpack/template/builder}/beans/MethodDescriptor.java | 2 +- .../template/builder}/beans/ParameterDescriptor.java | 2 +- .../template/builder}/beans/PropertyChangeEvent.java | 2 +- .../template/builder}/beans/PropertyChangeListener.java | 2 +- .../template/builder}/beans/PropertyDescriptor.java | 2 +- .../msgpack/template/builder}/beans/PropertyEditor.java | 4 ++-- .../template/builder}/beans/PropertyVetoException.java | 2 +- .../msgpack/template/builder}/beans/SimpleBeanInfo.java | 2 +- .../msgpack/template/builder}/beans/StandardBeanInfo.java | 4 ++-- .../msgpack/template/builder}/beans/Statement.java | 2 +- .../msgpack/template/builder}/beans/XMLDecoder.java | 4 ++-- 22 files changed, 28 insertions(+), 28 deletions(-) rename src/main/java/{custom => org/msgpack/template/builder}/beans/BeanDescriptor.java (98%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/BeanInfo.java (96%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/EventSetDescriptor.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/ExceptionListener.java (95%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/Expression.java (98%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/FeatureDescriptor.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/IndexedPropertyDescriptor.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/IntrospectionException.java (95%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/Introspector.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/MethodDescriptor.java (98%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/ParameterDescriptor.java (95%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/PropertyChangeEvent.java (97%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/PropertyChangeListener.java (95%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/PropertyDescriptor.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/PropertyEditor.java (92%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/PropertyVetoException.java (97%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/SimpleBeanInfo.java (97%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/StandardBeanInfo.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/Statement.java (99%) rename src/main/java/{custom => org/msgpack/template/builder}/beans/XMLDecoder.java (99%) diff --git a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java index 37f6ef122..4ab3ff5df 100644 --- a/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/BeansFieldEntry.java @@ -1,11 +1,11 @@ package org.msgpack.template.builder; -import custom.beans.PropertyDescriptor; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Type; import org.msgpack.MessageTypeException; import org.msgpack.template.FieldOption; +import org.msgpack.template.builder.beans.PropertyDescriptor; public class BeansFieldEntry extends FieldEntry { diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 754e7d704..beb57a82f 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -17,10 +17,6 @@ // package org.msgpack.template.builder; -import custom.beans.BeanInfo; -import custom.beans.IntrospectionException; -import custom.beans.Introspector; -import custom.beans.PropertyDescriptor; import java.io.IOException; import java.lang.reflect.Method; import java.lang.reflect.Modifier; @@ -37,6 +33,10 @@ import org.msgpack.template.FieldOption; import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; +import org.msgpack.template.builder.beans.BeanInfo; +import org.msgpack.template.builder.beans.IntrospectionException; +import org.msgpack.template.builder.beans.Introspector; +import org.msgpack.template.builder.beans.PropertyDescriptor; import org.msgpack.unpacker.Unpacker; /** diff --git a/src/main/java/custom/beans/BeanDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/BeanDescriptor.java similarity index 98% rename from src/main/java/custom/beans/BeanDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/BeanDescriptor.java index 754fce3a6..a29992a11 100644 --- a/src/main/java/custom/beans/BeanDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/BeanDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; /** diff --git a/src/main/java/custom/beans/BeanInfo.java b/src/main/java/org/msgpack/template/builder/beans/BeanInfo.java similarity index 96% rename from src/main/java/custom/beans/BeanInfo.java rename to src/main/java/org/msgpack/template/builder/beans/BeanInfo.java index 6c00a4315..e0397976d 100644 --- a/src/main/java/custom/beans/BeanInfo.java +++ b/src/main/java/org/msgpack/template/builder/beans/BeanInfo.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; public interface BeanInfo { diff --git a/src/main/java/custom/beans/EventSetDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/EventSetDescriptor.java similarity index 99% rename from src/main/java/custom/beans/EventSetDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/EventSetDescriptor.java index 4c89734ac..c845fed68 100644 --- a/src/main/java/custom/beans/EventSetDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/EventSetDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.lang.reflect.Method; import java.util.ArrayList; diff --git a/src/main/java/custom/beans/ExceptionListener.java b/src/main/java/org/msgpack/template/builder/beans/ExceptionListener.java similarity index 95% rename from src/main/java/custom/beans/ExceptionListener.java rename to src/main/java/org/msgpack/template/builder/beans/ExceptionListener.java index d9cb6f8c3..74412eaa7 100644 --- a/src/main/java/custom/beans/ExceptionListener.java +++ b/src/main/java/org/msgpack/template/builder/beans/ExceptionListener.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; public interface ExceptionListener { diff --git a/src/main/java/custom/beans/Expression.java b/src/main/java/org/msgpack/template/builder/beans/Expression.java similarity index 98% rename from src/main/java/custom/beans/Expression.java rename to src/main/java/org/msgpack/template/builder/beans/Expression.java index 1e4380d8f..2af3329b1 100644 --- a/src/main/java/custom/beans/Expression.java +++ b/src/main/java/org/msgpack/template/builder/beans/Expression.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import org.apache.harmony.beans.BeansUtils; diff --git a/src/main/java/custom/beans/FeatureDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/FeatureDescriptor.java similarity index 99% rename from src/main/java/custom/beans/FeatureDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/FeatureDescriptor.java index c8882b5c6..c7e70bc49 100644 --- a/src/main/java/custom/beans/FeatureDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/FeatureDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.util.Collections; import java.util.Enumeration; diff --git a/src/main/java/custom/beans/IndexedPropertyDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/IndexedPropertyDescriptor.java similarity index 99% rename from src/main/java/custom/beans/IndexedPropertyDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/IndexedPropertyDescriptor.java index b916dd862..11f702691 100644 --- a/src/main/java/custom/beans/IndexedPropertyDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/IndexedPropertyDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.lang.reflect.Method; diff --git a/src/main/java/custom/beans/IntrospectionException.java b/src/main/java/org/msgpack/template/builder/beans/IntrospectionException.java similarity index 95% rename from src/main/java/custom/beans/IntrospectionException.java rename to src/main/java/org/msgpack/template/builder/beans/IntrospectionException.java index fd48b9b59..439b3d9e9 100644 --- a/src/main/java/custom/beans/IntrospectionException.java +++ b/src/main/java/org/msgpack/template/builder/beans/IntrospectionException.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; public class IntrospectionException extends Exception { diff --git a/src/main/java/custom/beans/Introspector.java b/src/main/java/org/msgpack/template/builder/beans/Introspector.java similarity index 99% rename from src/main/java/custom/beans/Introspector.java rename to src/main/java/org/msgpack/template/builder/beans/Introspector.java index a4d1b2a44..094989d16 100644 --- a/src/main/java/custom/beans/Introspector.java +++ b/src/main/java/org/msgpack/template/builder/beans/Introspector.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.util.Collections; import java.util.Map; diff --git a/src/main/java/custom/beans/MethodDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/MethodDescriptor.java similarity index 98% rename from src/main/java/custom/beans/MethodDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/MethodDescriptor.java index 61ab9cbfd..0a4820297 100644 --- a/src/main/java/custom/beans/MethodDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/MethodDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.lang.reflect.Method; diff --git a/src/main/java/custom/beans/ParameterDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/ParameterDescriptor.java similarity index 95% rename from src/main/java/custom/beans/ParameterDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/ParameterDescriptor.java index 839bd82b4..da4e08259 100644 --- a/src/main/java/custom/beans/ParameterDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/ParameterDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; public class ParameterDescriptor extends FeatureDescriptor { diff --git a/src/main/java/custom/beans/PropertyChangeEvent.java b/src/main/java/org/msgpack/template/builder/beans/PropertyChangeEvent.java similarity index 97% rename from src/main/java/custom/beans/PropertyChangeEvent.java rename to src/main/java/org/msgpack/template/builder/beans/PropertyChangeEvent.java index 33de526a4..42e9cbbcd 100644 --- a/src/main/java/custom/beans/PropertyChangeEvent.java +++ b/src/main/java/org/msgpack/template/builder/beans/PropertyChangeEvent.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.util.EventObject; diff --git a/src/main/java/custom/beans/PropertyChangeListener.java b/src/main/java/org/msgpack/template/builder/beans/PropertyChangeListener.java similarity index 95% rename from src/main/java/custom/beans/PropertyChangeListener.java rename to src/main/java/org/msgpack/template/builder/beans/PropertyChangeListener.java index 6dc109f0a..87dd35070 100644 --- a/src/main/java/custom/beans/PropertyChangeListener.java +++ b/src/main/java/org/msgpack/template/builder/beans/PropertyChangeListener.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.util.EventListener; diff --git a/src/main/java/custom/beans/PropertyDescriptor.java b/src/main/java/org/msgpack/template/builder/beans/PropertyDescriptor.java similarity index 99% rename from src/main/java/custom/beans/PropertyDescriptor.java rename to src/main/java/org/msgpack/template/builder/beans/PropertyDescriptor.java index 129e73dd6..7c9c2126a 100644 --- a/src/main/java/custom/beans/PropertyDescriptor.java +++ b/src/main/java/org/msgpack/template/builder/beans/PropertyDescriptor.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.lang.reflect.Constructor; import java.lang.reflect.Method; diff --git a/src/main/java/custom/beans/PropertyEditor.java b/src/main/java/org/msgpack/template/builder/beans/PropertyEditor.java similarity index 92% rename from src/main/java/custom/beans/PropertyEditor.java rename to src/main/java/org/msgpack/template/builder/beans/PropertyEditor.java index 01a4dd358..e9c940fe9 100644 --- a/src/main/java/custom/beans/PropertyEditor.java +++ b/src/main/java/org/msgpack/template/builder/beans/PropertyEditor.java @@ -15,9 +15,9 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; -import custom.beans.PropertyChangeListener; +import org.msgpack.template.builder.beans.PropertyChangeListener; public interface PropertyEditor { diff --git a/src/main/java/custom/beans/PropertyVetoException.java b/src/main/java/org/msgpack/template/builder/beans/PropertyVetoException.java similarity index 97% rename from src/main/java/custom/beans/PropertyVetoException.java rename to src/main/java/org/msgpack/template/builder/beans/PropertyVetoException.java index d63075a05..1757705c9 100644 --- a/src/main/java/custom/beans/PropertyVetoException.java +++ b/src/main/java/org/msgpack/template/builder/beans/PropertyVetoException.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; /** diff --git a/src/main/java/custom/beans/SimpleBeanInfo.java b/src/main/java/org/msgpack/template/builder/beans/SimpleBeanInfo.java similarity index 97% rename from src/main/java/custom/beans/SimpleBeanInfo.java rename to src/main/java/org/msgpack/template/builder/beans/SimpleBeanInfo.java index 527cb067e..d8f38b6ad 100644 --- a/src/main/java/custom/beans/SimpleBeanInfo.java +++ b/src/main/java/org/msgpack/template/builder/beans/SimpleBeanInfo.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; public class SimpleBeanInfo implements BeanInfo { diff --git a/src/main/java/custom/beans/StandardBeanInfo.java b/src/main/java/org/msgpack/template/builder/beans/StandardBeanInfo.java similarity index 99% rename from src/main/java/custom/beans/StandardBeanInfo.java rename to src/main/java/org/msgpack/template/builder/beans/StandardBeanInfo.java index 66374e06f..dc6937d68 100644 --- a/src/main/java/custom/beans/StandardBeanInfo.java +++ b/src/main/java/org/msgpack/template/builder/beans/StandardBeanInfo.java @@ -15,9 +15,9 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; -import static custom.beans.Introspector.decapitalize; +import static org.msgpack.template.builder.beans.Introspector.decapitalize; import java.lang.reflect.Method; import java.lang.reflect.Modifier; diff --git a/src/main/java/custom/beans/Statement.java b/src/main/java/org/msgpack/template/builder/beans/Statement.java similarity index 99% rename from src/main/java/custom/beans/Statement.java rename to src/main/java/org/msgpack/template/builder/beans/Statement.java index 16e6eb1c8..566934261 100644 --- a/src/main/java/custom/beans/Statement.java +++ b/src/main/java/org/msgpack/template/builder/beans/Statement.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.lang.reflect.Array; import java.lang.reflect.Constructor; diff --git a/src/main/java/custom/beans/XMLDecoder.java b/src/main/java/org/msgpack/template/builder/beans/XMLDecoder.java similarity index 99% rename from src/main/java/custom/beans/XMLDecoder.java rename to src/main/java/org/msgpack/template/builder/beans/XMLDecoder.java index 194041be0..71544fb22 100644 --- a/src/main/java/custom/beans/XMLDecoder.java +++ b/src/main/java/org/msgpack/template/builder/beans/XMLDecoder.java @@ -15,7 +15,7 @@ // the License. // -package custom.beans; +package org.msgpack.template.builder.beans; import java.io.InputStream; import java.lang.reflect.Array; @@ -28,12 +28,12 @@ import javax.xml.parsers.SAXParserFactory; import org.apache.harmony.beans.internal.nls.Messages; +import org.msgpack.template.builder.beans.Statement.MethodComparator; import org.xml.sax.Attributes; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; import org.xml.sax.helpers.DefaultHandler; -import custom.beans.Statement.MethodComparator; /** * XMLDecoder reads objects from xml created by From 307d877bd6a287547b064561e9ef317f0903add7 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Dec 2012 14:27:48 +0900 Subject: [PATCH 334/409] modified CHANGES.txt --- CHANGES.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index b22a8d0f1..99d153913 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,7 @@ Release 0.6.7 - 20XX/XX/XX + NEW FEATURES + Adds MessagePack for Android + BUG FIXES MSGPACK-78 Generated template causes SecurityException when used from Java web start applications MSGPACK-76 Tries to generate a template of an abstract class From 42b6653d4408b9544568953166b6a4952f7fee8a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Dec 2012 14:58:18 +0900 Subject: [PATCH 335/409] [maven-release-plugin] prepare release msgpack-0.6.7 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 565cbaaa3..246425e40 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.7-SNAPSHOT + 0.6.7 bundle http://msgpack.org/ From d90de2b133a8e05810fb4dcaa4278bda57b1b31f Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Dec 2012 14:58:28 +0900 Subject: [PATCH 336/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 246425e40..d8d8ca91e 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.7 + 0.6.8-SNAPSHOT bundle http://msgpack.org/ From 47d8a250c1a7c78515bae21b4f979e45b53a5b92 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Dec 2012 15:45:18 +0900 Subject: [PATCH 337/409] modified CHANGES.txt for next development iteration --- CHANGES.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 99d153913..51d371acf 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,6 @@ -Release 0.6.7 - 20XX/XX/XX +Release 0.6.8 - 20XX/XX/XX + +Release 0.6.7 - 2012/12/09 NEW FEATURES Adds MessagePack for Android From ad8cefb7e9da2f8d7b3a6587583bb3497b7295fc Mon Sep 17 00:00:00 2001 From: OZAWA Date: Sat, 5 Jan 2013 02:04:06 +0900 Subject: [PATCH 338/409] fixed README as Markdown format. Signed-off-by: OZAWA --- README | 28 ---------------------------- README.md | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 28 deletions(-) delete mode 100644 README create mode 100644 README.md diff --git a/README b/README deleted file mode 100644 index 33e6376f9..000000000 --- a/README +++ /dev/null @@ -1,28 +0,0 @@ - -To build the JAR file of Message Pack, you need to install Maven (http://maven.apache.org), then type the following command: - -$ mvn package - -To locally install the project, type -$ mvn install - -To generate project files (.project, .classpath) for Eclipse, do - -$ mvn eclipse:eclipse - -then import the folder from your Eclipse. - -Next, open the preference page in Eclipse and add the CLASSPATH variable: - -M2_REPO = $HOME/.m2/repository - -where $HOME is your home directory. In Windows XP, $HOME is: -C:/Documents and Settings/(user name)/.m2/repository - - -# How to release the project (compile, test, tagging, deploy) - -$ mvn release:prepare -$ mvn release:perform - - diff --git a/README.md b/README.md new file mode 100644 index 000000000..85893db09 --- /dev/null +++ b/README.md @@ -0,0 +1,37 @@ +# MessagePack for Java + +An implementation of [MessagePack](http://msgpack.org/) for Java. + +## Installation + +To build the JAR file of MessagePack, you need to install Maven (http://maven.apache.org), then type the following command: + + $ mvn package + +To locally install the project, type + + $ mvn install + +To generate project files (.project, .classpath) for Eclipse, do + + $ mvn eclipse:eclipse + +then import the folder from your Eclipse. + +Next, open the preference page in Eclipse and add the CLASSPATH variable: + + M2_REPO = $HOME/.m2/repository + +where $HOME is your home directory. In Windows XP, $HOME is: + + C:/Documents and Settings/(user name)/.m2/repository + + +## How to release + +To relese the project (compile, test, tagging, deploy), please use the commands as follows: + + $ mvn release:prepare + $ mvn release:perform + + From e771b9a271916431b5754e019b4cf0f0f6963037 Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Fri, 18 Jan 2013 10:58:28 +0000 Subject: [PATCH 339/409] Ignore Mac detritus --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index cf7b3246e..f0c49a66f 100755 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,7 @@ target .settings .iml *~ +._* +.DS_Store +build +lib From 02bd129a4d050166436c6220103ff2fdbee822e4 Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Fri, 18 Jan 2013 12:28:19 +0000 Subject: [PATCH 340/409] Add read(byte[] bytes, int off, int len, Class c) method --- src/main/java/org/msgpack/MessagePack.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 77ef57b66..b417ad718 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -340,6 +340,23 @@ public T read(byte[] bytes, T v) throws IOException { return read(bytes, v, tmpl); } + /** + * Deserializes byte array to object. + * + * @since 0.6.0 + * @param bytes + * input byte array + * @param v + * @return + * @throws IOException + */ + public T read(byte[] bytes, int off, int len, Class c) throws IOException { + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + BufferUnpacker u = createBufferUnpacker(bytes, off, len); + return (T) tmpl.read(u, null); + } + /** * Deserializes byte array to object according to template. * From e8f0662fdf40a92a990d7df693f5f145a17e4064 Mon Sep 17 00:00:00 2001 From: Takanori Takase Date: Sat, 19 Jan 2013 16:12:46 +0900 Subject: [PATCH 341/409] [MSGPACK-83] Gracefully handling new enum value with OrdinalEnum. --- .../org/msgpack/annotation/OrdinalEnum.java | 17 +++++++++++++++ .../msgpack/template/OrdinalEnumTemplate.java | 21 ++++++++++++++----- 2 files changed, 33 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/msgpack/annotation/OrdinalEnum.java b/src/main/java/org/msgpack/annotation/OrdinalEnum.java index 25d756316..029c0eff1 100644 --- a/src/main/java/org/msgpack/annotation/OrdinalEnum.java +++ b/src/main/java/org/msgpack/annotation/OrdinalEnum.java @@ -22,7 +22,24 @@ import java.lang.annotation.RetentionPolicy; import java.lang.annotation.Target; +import org.msgpack.MessageTypeException; +import org.msgpack.template.OrdinalEnumTemplate; + @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface OrdinalEnum { + + /** + * Specify whether the ordinal index lookup should be handled strictly or + * not when mapping ordinal value to an enum value. By specifying true, + * {@link MessageTypeException} will be thrown if the enum specified by the + * ordinal value does not exist in this implementation. If false, then the + * missing ordinal value treated as null, gracefully handling the lookup. + * Default is true. + * + * @since 0.6.8 + * @see OrdinalEnumTemplate + */ + boolean strict() default true; + } diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index b810ac85a..73a86a3a7 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -21,12 +21,14 @@ import java.util.HashMap; import org.msgpack.MessageTypeException; +import org.msgpack.annotation.OrdinalEnum; import org.msgpack.packer.Packer; import org.msgpack.unpacker.Unpacker; public class OrdinalEnumTemplate extends AbstractTemplate { protected T[] entries; protected HashMap reverse; + protected boolean strict; public OrdinalEnumTemplate(Class targetClass) { entries = targetClass.getEnumConstants(); @@ -34,6 +36,8 @@ public OrdinalEnumTemplate(Class targetClass) { for (int i = 0; i < entries.length; i++) { reverse.put(entries[i], i); } + strict = !targetClass.isAnnotationPresent(OrdinalEnum.class) + || targetClass.getAnnotation(OrdinalEnum.class).strict(); } @Override @@ -61,10 +65,17 @@ public T read(Unpacker pac, T to, boolean required) throws IOException, } int ordinal = pac.readInt(); - if (entries.length <= ordinal) { - throw new MessageTypeException( - new IllegalArgumentException("ordinal: " + ordinal)); - } - return entries[ordinal]; + + if (ordinal < entries.length) { + return entries[ordinal]; + } + + if (!strict) { + return null; + } + + throw new MessageTypeException(new IllegalArgumentException("ordinal: " + + ordinal)); + } } From 6722bb9de00bc2e06838a9080ea4cb9b4dc1dee9 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 16:13:16 +0900 Subject: [PATCH 342/409] minor change within TestSimpleArrays class --- .../java/org/msgpack/TestSimpleArrays.java | 805 +++++++++--------- 1 file changed, 405 insertions(+), 400 deletions(-) diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java index 21c41729a..107c28ad1 100644 --- a/src/test/java/org/msgpack/TestSimpleArrays.java +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -21,448 +21,453 @@ public class TestSimpleArrays { @Message public static class PrimitiveTest { - public boolean[] b = new boolean[0]; - public short[] s = new short[0]; - public int[] i = new int[0]; - //public long[] l = new long[0]; // FIXME javassist? - public float[] f = new float[0]; - //public double[] d = new double[0]; // FIXME javassist? - - public PrimitiveTest() { } + public boolean[] b = new boolean[0]; + public short[] s = new short[0]; + public int[] i = new int[0]; + // public long[] l = new long[0]; // FIXME javassist? + public float[] f = new float[0]; + + // public double[] d = new double[0]; // FIXME javassist? + + public PrimitiveTest() { + } } @Test public void testPrimitive() throws Exception { - MessagePack msgpack = new MessagePack(); - - PrimitiveTest t = new PrimitiveTest(); - t.b = new boolean[] { true, false }; - t.s = new short[] { 0, 1 }; - t.i = new int[] { 2, 3 }; - // t.l = new long[] {4, 5}; - t.f = new float[] { 2.0f, 4.0f }; - // t.d = new double[] {8.0, 16.0}; - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(t); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - PrimitiveTest u = unpacker.read(PrimitiveTest.class); - assertEquals(t.b.length, u.b.length); - for (int i = 0; i < t.b.length; i++) { - assertEquals(t.b[i], u.b[i]); - } - assertEquals(t.s.length, u.s.length); - for (int i = 0; i < t.s.length; i++) { - assertEquals(t.s[i], u.s[i]); - } - assertEquals(t.i.length, u.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i], u.i[i]); - } - // assertEquals(t.l.length, u.l.length); - // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], u.l[i]); } - assertEquals(t.f.length, u.f.length); - for (int i = 0; i < t.f.length; i++) { - assertEquals(t.f[i], u.f[i], 10e-10); - } - // assertEquals(t.d.length, u.d.length); - // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], u.d[i]); } - - Unconverter unconverter = new Unconverter(msgpack); - unconverter.write(t); - Value value = unconverter.getResult(); - Converter converter = new Converter(msgpack, value); - PrimitiveTest c = converter.read(PrimitiveTest.class); - assertEquals(t.b.length, c.b.length); - for (int i = 0; i < t.b.length; i++) { - assertEquals(t.b[i], c.b[i]); - } - assertEquals(t.s.length, c.s.length); - for (int i = 0; i < t.s.length; i++) { - assertEquals(t.s[i], c.s[i]); - } - assertEquals(t.i.length, c.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i], c.i[i]); - } - // assertEquals(t.l.length, c.l.length); - // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], c.l[i]); } - assertEquals(t.f.length, c.f.length); - for (int i = 0; i < t.f.length; i++) { - assertEquals(t.f[i], c.f[i], 10e-10); - } - // assertEquals(t.d.length, c.d.length); - // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], c.d[i]); } + MessagePack msgpack = new MessagePack(); + + PrimitiveTest t = new PrimitiveTest(); + t.b = new boolean[] { true, false }; + t.s = new short[] { 0, 1 }; + t.i = new int[] { 2, 3 }; + // t.l = new long[] {4, 5}; + t.f = new float[] { 2.0f, 4.0f }; + // t.d = new double[] {8.0, 16.0}; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + PrimitiveTest u = unpacker.read(PrimitiveTest.class); + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], u.b[i]); + } + assertEquals(t.s.length, u.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], u.s[i]); + } + assertEquals(t.i.length, u.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], u.i[i]); + } + // assertEquals(t.l.length, u.l.length); + // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], u.l[i]); } + assertEquals(t.f.length, u.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], u.f[i], 10e-10); + } + // assertEquals(t.d.length, u.d.length); + // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], u.d[i]); } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + PrimitiveTest c = converter.read(PrimitiveTest.class); + assertEquals(t.b.length, c.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], c.b[i]); + } + assertEquals(t.s.length, c.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], c.s[i]); + } + assertEquals(t.i.length, c.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], c.i[i]); + } + // assertEquals(t.l.length, c.l.length); + // for(int i=0; i < t.l.length; i++) { assertEquals(t.l[i], c.l[i]); } + assertEquals(t.f.length, c.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], c.f[i], 10e-10); + } + // assertEquals(t.d.length, c.d.length); + // for(int i=0; i < t.d.length; i++) { assertEquals(t.d[i], c.d[i]); } } @Message public static class ReferenceTest { - public ReferenceTest() { - } - - public Boolean[] b; - public Short[] s; - public Integer[] i; - public Long[] l; - public Float[] f; - public Double[] d; - public String[] str; + public ReferenceTest() { + } + + public Boolean[] b; + public Short[] s; + public Integer[] i; + public Long[] l; + public Float[] f; + public Double[] d; + public String[] str; } @Test public void testReference() throws Exception { - MessagePack msgpack = new MessagePack(); - - ReferenceTest t = new ReferenceTest(); - t.b = new Boolean[] { true, false }; - t.s = new Short[] { 0, 1 }; - t.i = new Integer[] { 2, 3 }; - t.l = new Long[] { 4l, 5l }; - t.f = new Float[] { 2.0f, 4.0f }; - t.d = new Double[] { 8.0, 16.0 }; - t.str = new String[] { "furuhashi", "java" }; - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(t); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - ReferenceTest u = unpacker.read(ReferenceTest.class); - assertEquals(t.b.length, u.b.length); - for (int i = 0; i < t.b.length; i++) { - assertEquals(t.b[i], u.b[i]); - } - assertEquals(t.s.length, u.s.length); - for (int i = 0; i < t.s.length; i++) { - assertEquals(t.s[i], u.s[i]); - } - assertEquals(t.i.length, u.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i], u.i[i]); - } - assertEquals(t.l.length, u.l.length); - for (int i = 0; i < t.l.length; i++) { - assertEquals(t.l[i], u.l[i]); - } - assertEquals(t.f.length, u.f.length); - for (int i = 0; i < t.f.length; i++) { - assertEquals(t.f[i], u.f[i]); - } - assertEquals(t.d.length, u.d.length); - for (int i = 0; i < t.d.length; i++) { - assertEquals(t.d[i], u.d[i]); - } - assertEquals(t.str.length, u.str.length); - for (int i = 0; i < t.str.length; i++) { - assertEquals(t.str[i], u.str[i]); - } - - Unconverter unconverter = new Unconverter(msgpack); - unconverter.write(t); - Value value = unconverter.getResult(); - Converter converter = new Converter(msgpack, value); - ReferenceTest c = converter.read(ReferenceTest.class); - assertEquals(t.b.length, c.b.length); - for (int i = 0; i < t.b.length; i++) { - assertEquals(t.b[i], c.b[i]); - } - assertEquals(t.s.length, c.s.length); - for (int i = 0; i < t.s.length; i++) { - assertEquals(t.s[i], c.s[i]); - } - assertEquals(t.i.length, c.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i], c.i[i]); - } - assertEquals(t.l.length, c.l.length); - for (int i = 0; i < t.l.length; i++) { - assertEquals(t.l[i], c.l[i]); - } - assertEquals(t.f.length, c.f.length); - for (int i = 0; i < t.f.length; i++) { - assertEquals(t.f[i], c.f[i]); - } - assertEquals(t.d.length, c.d.length); - for (int i = 0; i < t.d.length; i++) { - assertEquals(t.d[i], c.d[i]); - } - assertEquals(t.str.length, c.str.length); - for (int i = 0; i < t.str.length; i++) { - assertEquals(t.str[i], c.str[i]); - } + MessagePack msgpack = new MessagePack(); + + ReferenceTest t = new ReferenceTest(); + t.b = new Boolean[] { true, false }; + t.s = new Short[] { 0, 1 }; + t.i = new Integer[] { 2, 3 }; + t.l = new Long[] { 4l, 5l }; + t.f = new Float[] { 2.0f, 4.0f }; + t.d = new Double[] { 8.0, 16.0 }; + t.str = new String[] { "furuhashi", "java" }; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + ReferenceTest u = unpacker.read(ReferenceTest.class); + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], u.b[i]); + } + assertEquals(t.s.length, u.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], u.s[i]); + } + assertEquals(t.i.length, u.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], u.i[i]); + } + assertEquals(t.l.length, u.l.length); + for (int i = 0; i < t.l.length; i++) { + assertEquals(t.l[i], u.l[i]); + } + assertEquals(t.f.length, u.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], u.f[i]); + } + assertEquals(t.d.length, u.d.length); + for (int i = 0; i < t.d.length; i++) { + assertEquals(t.d[i], u.d[i]); + } + assertEquals(t.str.length, u.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i], u.str[i]); + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + ReferenceTest c = converter.read(ReferenceTest.class); + assertEquals(t.b.length, c.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i], c.b[i]); + } + assertEquals(t.s.length, c.s.length); + for (int i = 0; i < t.s.length; i++) { + assertEquals(t.s[i], c.s[i]); + } + assertEquals(t.i.length, c.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i], c.i[i]); + } + assertEquals(t.l.length, c.l.length); + for (int i = 0; i < t.l.length; i++) { + assertEquals(t.l[i], c.l[i]); + } + assertEquals(t.f.length, c.f.length); + for (int i = 0; i < t.f.length; i++) { + assertEquals(t.f[i], c.f[i]); + } + assertEquals(t.d.length, c.d.length); + for (int i = 0; i < t.d.length; i++) { + assertEquals(t.d[i], c.d[i]); + } + assertEquals(t.str.length, c.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i], c.str[i]); + } } @Message public static class GenericsTest { - public List[] slist; - public Map[] imap; + public List[] slist; + public Map[] imap; - public GenericsTest() { - } + public GenericsTest() { + } } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Ignore @Test + @Ignore + @Test public void testGenerics() throws Exception { - MessagePack msgpack = new MessagePack(); - - GenericsTest t = new GenericsTest(); - t.slist = new List[2]; - t.slist[0] = new ArrayList(); - t.slist[0].add("aa"); - t.slist[0].add("bb"); - t.slist[1] = new ArrayList(); - t.slist[1].add("cc"); - t.imap = new Map[2]; - t.imap[0] = new HashMap(); - t.imap[0].put("aa", 1); - t.imap[0].put("bb", 2); - t.imap[1] = new HashMap(); - t.imap[1].put("cc", 3); - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(t); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - GenericsTest u = unpacker.read(GenericsTest.class); - assertEquals(t.slist.length, u.slist.length); - for (int i = 0; i < t.slist.length; i++) { - assertEquals(t.slist[i].size(), u.slist[i].size()); - for (int j = 0; j < t.slist[i].size(); j++) { - assertEquals(t.slist[i].get(j), u.slist[i].get(j)); - } - } - for (int i = 0; i < t.imap.length; i++) { - assertEquals(t.imap[i].size(), u.imap[i].size()); - for (String j : t.imap[i].keySet()) { - assertEquals(t.imap[i].get(j), u.imap[i].get(j)); - } - } - - Unconverter unconverter = new Unconverter(msgpack); - unconverter.write(t); - Value value = unconverter.getResult(); - Converter converter = new Converter(msgpack, value); - GenericsTest c = converter.read(GenericsTest.class); - assertEquals(t.slist.length, c.slist.length); - for (int i = 0; i < t.slist.length; i++) { - assertEquals(t.slist[i].size(), c.slist[i].size()); - for (int j = 0; j < t.slist[i].size(); j++) { - assertEquals(t.slist[i].get(j), c.slist[i].get(j)); - } - } - for (int i = 0; i < t.imap.length; i++) { - assertEquals(t.imap[i].size(), c.imap[i].size()); - for (String j : t.imap[i].keySet()) { - assertEquals(t.imap[i].get(j), c.imap[i].get(j)); - } - } + MessagePack msgpack = new MessagePack(); + + GenericsTest t = new GenericsTest(); + t.slist = new List[2]; + t.slist[0] = new ArrayList(); + t.slist[0].add("aa"); + t.slist[0].add("bb"); + t.slist[1] = new ArrayList(); + t.slist[1].add("cc"); + t.imap = new Map[2]; + t.imap[0] = new HashMap(); + t.imap[0].put("aa", 1); + t.imap[0].put("bb", 2); + t.imap[1] = new HashMap(); + t.imap[1].put("cc", 3); + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + GenericsTest u = unpacker.read(GenericsTest.class); + assertEquals(t.slist.length, u.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].size(), u.slist[i].size()); + for (int j = 0; j < t.slist[i].size(); j++) { + assertEquals(t.slist[i].get(j), u.slist[i].get(j)); + } + } + for (int i = 0; i < t.imap.length; i++) { + assertEquals(t.imap[i].size(), u.imap[i].size()); + for (String j : t.imap[i].keySet()) { + assertEquals(t.imap[i].get(j), u.imap[i].get(j)); + } + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(t); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + GenericsTest c = converter.read(GenericsTest.class); + assertEquals(t.slist.length, c.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].size(), c.slist[i].size()); + for (int j = 0; j < t.slist[i].size(); j++) { + assertEquals(t.slist[i].get(j), c.slist[i].get(j)); + } + } + for (int i = 0; i < t.imap.length; i++) { + assertEquals(t.imap[i].size(), c.imap[i].size()); + for (String j : t.imap[i].keySet()) { + assertEquals(t.imap[i].get(j), c.imap[i].get(j)); + } + } } @Message public static class Dim2Test { - public int[][] i; - public byte[][] b; - public String[][] str; - public List[][] slist; + public int[][] i; + public byte[][] b; + public String[][] str; + public List[][] slist; - public Dim2Test() { - } + public Dim2Test() { + } } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Ignore @Test + @Ignore + @Test public void testDim2() throws Exception { - MessagePack msgpack = new MessagePack(); - Dim2Test t = new Dim2Test(); - t.i = new int[2][]; - t.i[0] = new int[] { 0, 1 }; - t.i[1] = new int[] { 2, 3, 4 }; - t.b = new byte[2][]; - t.b[0] = new byte[] { 5, 6 }; - t.b[1] = new byte[] { 7, 8, 9 }; - t.str = new String[2][]; - t.str[0] = new String[] { "aa", "bb" }; - t.str[1] = new String[] { "cc", "dd", "ee" }; - t.slist = new List[2][]; - t.slist[0] = new List[1]; - t.slist[0][0] = new ArrayList(); - t.slist[0][0].add("ff"); - t.slist[0][0].add("gg"); - t.slist[1] = new List[2]; - t.slist[1][0] = new ArrayList(); - t.slist[1][0].add("hh"); - t.slist[1][0].add("ii"); - t.slist[1][1] = new ArrayList(); - t.slist[1][1].add("jj"); - t.slist[1][1].add("kk"); - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(t); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - Dim2Test u = unpacker.read(Dim2Test.class); - assertEquals(t.i.length, u.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i].length, u.i[i].length); - for (int j = 0; j < t.i[i].length; j++) { - assertEquals(t.i[i][j], u.i[i][j]); - } - } - assertEquals(t.b.length, u.b.length); - for (int i = 0; i < t.b.length; i++) { - assertEquals(t.b[i].length, u.b[i].length); - for (int j = 0; j < t.i[i].length; j++) { - assertEquals(t.b[i][j], u.b[i][j]); - } - } - assertEquals(t.str.length, u.str.length); - for (int i = 0; i < t.str.length; i++) { - assertEquals(t.str[i].length, u.str[i].length); - for (int j = 0; j < t.str[i].length; j++) { - assertEquals(t.str[i][j], u.str[i][j]); - } - } - assertEquals(t.slist.length, u.slist.length); - for (int i = 0; i < t.slist.length; i++) { - assertEquals(t.slist[i].length, u.slist[i].length); - for (int j = 0; j < t.slist[i].length; j++) { - assertEquals(t.slist[i][j].size(), u.slist[i][j].size()); - for (int k = 0; k < t.slist[i][j].size(); k++) { - assertEquals(t.slist[i][j].get(k), u.slist[i][j].get(k)); - } - } - } + MessagePack msgpack = new MessagePack(); + Dim2Test t = new Dim2Test(); + t.i = new int[2][]; + t.i[0] = new int[] { 0, 1 }; + t.i[1] = new int[] { 2, 3, 4 }; + t.b = new byte[2][]; + t.b[0] = new byte[] { 5, 6 }; + t.b[1] = new byte[] { 7, 8, 9 }; + t.str = new String[2][]; + t.str[0] = new String[] { "aa", "bb" }; + t.str[1] = new String[] { "cc", "dd", "ee" }; + t.slist = new List[2][]; + t.slist[0] = new List[1]; + t.slist[0][0] = new ArrayList(); + t.slist[0][0].add("ff"); + t.slist[0][0].add("gg"); + t.slist[1] = new List[2]; + t.slist[1][0] = new ArrayList(); + t.slist[1][0].add("hh"); + t.slist[1][0].add("ii"); + t.slist[1][1] = new ArrayList(); + t.slist[1][1].add("jj"); + t.slist[1][1].add("kk"); + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + Dim2Test u = unpacker.read(Dim2Test.class); + assertEquals(t.i.length, u.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i].length, u.i[i].length); + for (int j = 0; j < t.i[i].length; j++) { + assertEquals(t.i[i][j], u.i[i][j]); + } + } + assertEquals(t.b.length, u.b.length); + for (int i = 0; i < t.b.length; i++) { + assertEquals(t.b[i].length, u.b[i].length); + for (int j = 0; j < t.i[i].length; j++) { + assertEquals(t.b[i][j], u.b[i][j]); + } + } + assertEquals(t.str.length, u.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i].length, u.str[i].length); + for (int j = 0; j < t.str[i].length; j++) { + assertEquals(t.str[i][j], u.str[i][j]); + } + } + assertEquals(t.slist.length, u.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].length, u.slist[i].length); + for (int j = 0; j < t.slist[i].length; j++) { + assertEquals(t.slist[i][j].size(), u.slist[i][j].size()); + for (int k = 0; k < t.slist[i][j].size(); k++) { + assertEquals(t.slist[i][j].get(k), u.slist[i][j].get(k)); + } + } + } } @Message public static class Dim3Test { - public int[][][] i; - public String[][][] str; - public List[][][] slist; + public int[][][] i; + public String[][][] str; + public List[][][] slist; - public Dim3Test() { - } + public Dim3Test() { + } } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Ignore @Test + @Ignore + @Test public void testDim3() throws Exception { - MessagePack msgpack = new MessagePack(); - - Dim3Test t = new Dim3Test(); - t.i = new int[2][][]; - t.i[0] = new int[2][]; - t.i[0][0] = new int[] { 0, 1 }; - t.i[0][1] = new int[] { 2, 3, 4 }; - t.i[1] = new int[1][]; - t.i[1][0] = new int[] { 5 }; - t.str = new String[2][][]; - t.str[0] = new String[1][]; - t.str[0][0] = new String[] { "aa", "bb" }; - t.str[1] = new String[2][]; - t.str[1][0] = new String[] { "cc", "dd", "ee" }; - t.str[1][1] = new String[] { "ff" }; - t.slist = new List[2][][]; - t.slist[0] = new List[2][]; - t.slist[0][0] = new List[1]; - t.slist[0][0][0] = new ArrayList(); - t.slist[0][0][0].add("ff"); - t.slist[0][0][0].add("gg"); - t.slist[0][1] = new List[2]; - t.slist[0][1][0] = new ArrayList(); - t.slist[0][1][0].add("hh"); - t.slist[0][1][0].add("ii"); - t.slist[0][1][1] = new ArrayList(); - t.slist[0][1][1].add("jj"); - t.slist[0][1][1].add("kk"); - t.slist[1] = new List[1][]; - t.slist[1][0] = new List[0]; - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(t); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - Dim3Test u = unpacker.read(Dim3Test.class); - assertEquals(t.i.length, t.i.length); - for (int i = 0; i < t.i.length; i++) { - assertEquals(t.i[i].length, u.i[i].length); - for (int j = 0; j < t.i[i].length; j++) { - for (int k = 0; k < t.i[i].length; k++) { - assertEquals(t.i[i][j][k], u.i[i][j][k]); - } - } - } - assertEquals(t.str.length, t.str.length); - for (int i = 0; i < t.str.length; i++) { - assertEquals(t.str[i].length, u.str[i].length); - for (int j = 0; j < t.str[i].length; j++) { - assertEquals(t.str[i][j].length, u.str[i][j].length); - for (int k = 0; k < t.str[i][j].length; k++) { - assertEquals(t.str[i][j][k], u.str[i][j][k]); - } - } - } - assertEquals(t.slist.length, t.slist.length); - for (int i = 0; i < t.slist.length; i++) { - assertEquals(t.slist[i].length, u.slist[i].length); - for (int j = 0; j < t.slist[i].length; j++) { - assertEquals(t.slist[i][j].length, u.slist[i][j].length); - for (int k = 0; k < t.slist[i][j].length; k++) { - assertEquals(t.slist[i][j][k].size(), - u.slist[i][j][k].size()); - for (int l = 0; l < t.slist[i][j][k].size(); l++) { - assertEquals(t.slist[i][j][k].get(l), - u.slist[i][j][k].get(l)); - } - } - } - } + MessagePack msgpack = new MessagePack(); + + Dim3Test t = new Dim3Test(); + t.i = new int[2][][]; + t.i[0] = new int[2][]; + t.i[0][0] = new int[] { 0, 1 }; + t.i[0][1] = new int[] { 2, 3, 4 }; + t.i[1] = new int[1][]; + t.i[1][0] = new int[] { 5 }; + t.str = new String[2][][]; + t.str[0] = new String[1][]; + t.str[0][0] = new String[] { "aa", "bb" }; + t.str[1] = new String[2][]; + t.str[1][0] = new String[] { "cc", "dd", "ee" }; + t.str[1][1] = new String[] { "ff" }; + t.slist = new List[2][][]; + t.slist[0] = new List[2][]; + t.slist[0][0] = new List[1]; + t.slist[0][0][0] = new ArrayList(); + t.slist[0][0][0].add("ff"); + t.slist[0][0][0].add("gg"); + t.slist[0][1] = new List[2]; + t.slist[0][1][0] = new ArrayList(); + t.slist[0][1][0].add("hh"); + t.slist[0][1][0].add("ii"); + t.slist[0][1][1] = new ArrayList(); + t.slist[0][1][1].add("jj"); + t.slist[0][1][1].add("kk"); + t.slist[1] = new List[1][]; + t.slist[1][0] = new List[0]; + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(t); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + Dim3Test u = unpacker.read(Dim3Test.class); + assertEquals(t.i.length, t.i.length); + for (int i = 0; i < t.i.length; i++) { + assertEquals(t.i[i].length, u.i[i].length); + for (int j = 0; j < t.i[i].length; j++) { + for (int k = 0; k < t.i[i].length; k++) { + assertEquals(t.i[i][j][k], u.i[i][j][k]); + } + } + } + assertEquals(t.str.length, t.str.length); + for (int i = 0; i < t.str.length; i++) { + assertEquals(t.str[i].length, u.str[i].length); + for (int j = 0; j < t.str[i].length; j++) { + assertEquals(t.str[i][j].length, u.str[i][j].length); + for (int k = 0; k < t.str[i][j].length; k++) { + assertEquals(t.str[i][j][k], u.str[i][j][k]); + } + } + } + assertEquals(t.slist.length, t.slist.length); + for (int i = 0; i < t.slist.length; i++) { + assertEquals(t.slist[i].length, u.slist[i].length); + for (int j = 0; j < t.slist[i].length; j++) { + assertEquals(t.slist[i][j].length, u.slist[i][j].length); + for (int k = 0; k < t.slist[i][j].length; k++) { + assertEquals(t.slist[i][j][k].size(), + u.slist[i][j][k].size()); + for (int l = 0; l < t.slist[i][j][k].size(); l++) { + assertEquals(t.slist[i][j][k].get(l), + u.slist[i][j][k].get(l)); + } + } + } + } } @Test public void testLocal() throws IOException { - MessagePack msgpack = new MessagePack(); - - int[][][] src = new int[10][20][30]; - for (int i = 0; i < 10; ++i) { - for (int j = 0; j < 20; ++j) { - for (int k = 0; k < 30; ++k) { - src[i][j][k] = (int) (Math.random() * 100); - } - } - } - - BufferPacker packer = msgpack.createBufferPacker(); - packer.write(src); - byte[] raw = packer.toByteArray(); - BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); - int[][][] u = unpacker.read(int[][][].class); - assertEquals(src.length, u.length); - for (int i = 0; i < src.length; ++i) { - assertEquals(src[i].length, u[i].length); - for (int j = 0; j < src[i].length; ++j) { - assertEquals(src[i][j].length, u[i][j].length); - for (int k = 0; k < src[i][j].length; ++k) { - assertEquals(src[i][j][k], u[i][j][k]); - } - } - } - - Unconverter unconverter = new Unconverter(msgpack); - unconverter.write(src); - Value value = unconverter.getResult(); - Converter converter = new Converter(msgpack, value); - int[][][] c = converter.read(int[][][].class); - assertEquals(src.length, c.length); - for (int i = 0; i < src.length; ++i) { - assertEquals(src[i].length, c[i].length); - for (int j = 0; j < src[i].length; ++j) { - assertEquals(src[i][j].length, c[i][j].length); - for (int k = 0; k < src[i][j].length; ++k) { - assertEquals(src[i][j][k], c[i][j][k]); - } - } - } + MessagePack msgpack = new MessagePack(); + + int[][][] src = new int[10][20][30]; + for (int i = 0; i < 10; ++i) { + for (int j = 0; j < 20; ++j) { + for (int k = 0; k < 30; ++k) { + src[i][j][k] = (int) (Math.random() * 100); + } + } + } + + BufferPacker packer = msgpack.createBufferPacker(); + packer.write(src); + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + int[][][] u = unpacker.read(int[][][].class); + assertEquals(src.length, u.length); + for (int i = 0; i < src.length; ++i) { + assertEquals(src[i].length, u[i].length); + for (int j = 0; j < src[i].length; ++j) { + assertEquals(src[i][j].length, u[i][j].length); + for (int k = 0; k < src[i][j].length; ++k) { + assertEquals(src[i][j][k], u[i][j][k]); + } + } + } + + Unconverter unconverter = new Unconverter(msgpack); + unconverter.write(src); + Value value = unconverter.getResult(); + Converter converter = new Converter(msgpack, value); + int[][][] c = converter.read(int[][][].class); + assertEquals(src.length, c.length); + for (int i = 0; i < src.length; ++i) { + assertEquals(src[i].length, c[i].length); + for (int j = 0; j < src[i].length; ++j) { + assertEquals(src[i][j].length, c[i][j].length); + for (int k = 0; k < src[i][j].length; ++k) { + assertEquals(src[i][j][k], c[i][j][k]); + } + } + } } } From 499a9f4548ca24e3a93795da985305724faa5e26 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 16:16:37 +0900 Subject: [PATCH 343/409] modified TestSimpleArrays class --- src/test/java/org/msgpack/TestSimpleArrays.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/test/java/org/msgpack/TestSimpleArrays.java b/src/test/java/org/msgpack/TestSimpleArrays.java index 107c28ad1..b4e08d61d 100644 --- a/src/test/java/org/msgpack/TestSimpleArrays.java +++ b/src/test/java/org/msgpack/TestSimpleArrays.java @@ -267,14 +267,13 @@ public static class Dim2Test { public int[][] i; public byte[][] b; public String[][] str; - public List[][] slist; + //public List[][] slist; public Dim2Test() { } } @SuppressWarnings({ "unchecked", "rawtypes" }) - @Ignore @Test public void testDim2() throws Exception { MessagePack msgpack = new MessagePack(); @@ -288,6 +287,7 @@ public void testDim2() throws Exception { t.str = new String[2][]; t.str[0] = new String[] { "aa", "bb" }; t.str[1] = new String[] { "cc", "dd", "ee" }; + /** t.slist = new List[2][]; t.slist[0] = new List[1]; t.slist[0][0] = new ArrayList(); @@ -300,6 +300,7 @@ public void testDim2() throws Exception { t.slist[1][1] = new ArrayList(); t.slist[1][1].add("jj"); t.slist[1][1].add("kk"); + */ BufferPacker packer = msgpack.createBufferPacker(); packer.write(t); @@ -327,6 +328,7 @@ public void testDim2() throws Exception { assertEquals(t.str[i][j], u.str[i][j]); } } + /** assertEquals(t.slist.length, u.slist.length); for (int i = 0; i < t.slist.length; i++) { assertEquals(t.slist[i].length, u.slist[i].length); @@ -337,6 +339,7 @@ public void testDim2() throws Exception { } } } + */ } @Message From f58ac3e315b46388d63727dbd2f765b599de2c9c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 16:21:08 +0900 Subject: [PATCH 344/409] changed @since annotation within MessagePack#read(byte[], int, int, Class): 0.6.0 to 0.6.8 --- src/main/java/org/msgpack/MessagePack.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index b417ad718..f67daa172 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -343,7 +343,7 @@ public T read(byte[] bytes, T v) throws IOException { /** * Deserializes byte array to object. * - * @since 0.6.0 + * @since 0.6.8 * @param bytes * input byte array * @param v From 1f9ee2be8eb2c4e693df74cdc2a0ca1515b4d5da Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 17:06:21 +0900 Subject: [PATCH 345/409] modified CHANGES.txt --- CHANGES.txt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGES.txt b/CHANGES.txt index 51d371acf..27167a0b6 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,7 @@ Release 0.6.8 - 20XX/XX/XX + BUG FIXES + Replaces method calls of LinkedList#peek{First,Last}() into get{First,Last}() within LinkedBufferInput class (pull request #18) + Make encoding byte[][] work correctly (pull request 24) Release 0.6.7 - 2012/12/09 NEW FEATURES From 2e108aa601b661ff1337c31097576e3fdd5e2c2e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 17:12:07 +0900 Subject: [PATCH 346/409] modified CHANGES.txt --- CHANGES.txt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index 27167a0b6..3414a57f6 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,7 +1,10 @@ Release 0.6.8 - 20XX/XX/XX BUG FIXES Replaces method calls of LinkedList#peek{First,Last}() into get{First,Last}() within LinkedBufferInput class (pull request #18) - Make encoding byte[][] work correctly (pull request 24) + Make encoding byte[][] work correctly (pull request #24) + + IMPROVEMENTS + MSGPACK-83 Gracefully handling new enum value with OrdinalEnum (pull request #26) Release 0.6.7 - 2012/12/09 NEW FEATURES From 88a27a82bb67b4ce3a96a5db6958d76aa2580a47 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sat, 19 Jan 2013 18:38:33 +0900 Subject: [PATCH 347/409] added comment to TemplateBuilderChain class --- .../org/msgpack/template/builder/TemplateBuilderChain.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 45c4ad9ac..3e0b7d5f9 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -51,6 +51,9 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { throw new NullPointerException("registry is null"); } + // FIXME + // Javassist{,Beans}TemplateBuilder should be created with reflection for android. + // forceBuilder forceBuilder = new JavassistTemplateBuilder(registry); if (cl != null) { From 8c507e69ba536fab2b9c1af085f3cc5c0c3d9dfc Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 20 Jan 2013 10:02:01 +0900 Subject: [PATCH 348/409] changed copyright notations --- src/main/java/org/msgpack/MessagePack.java | 2 +- src/main/java/org/msgpack/MessagePackable.java | 2 +- src/main/java/org/msgpack/MessageTypeException.java | 2 +- src/main/java/org/msgpack/annotation/Beans.java | 2 +- src/main/java/org/msgpack/annotation/Delegate.java | 2 +- src/main/java/org/msgpack/annotation/Ignore.java | 2 +- src/main/java/org/msgpack/annotation/Index.java | 2 +- src/main/java/org/msgpack/annotation/Message.java | 2 +- src/main/java/org/msgpack/annotation/MessagePackBeans.java | 2 +- src/main/java/org/msgpack/annotation/MessagePackDelegate.java | 2 +- src/main/java/org/msgpack/annotation/MessagePackMessage.java | 2 +- .../java/org/msgpack/annotation/MessagePackOrdinalEnum.java | 2 +- src/main/java/org/msgpack/annotation/NotNullable.java | 2 +- src/main/java/org/msgpack/annotation/Optional.java | 2 +- src/main/java/org/msgpack/annotation/OrdinalEnum.java | 2 +- src/main/java/org/msgpack/io/BufferReferer.java | 2 +- src/main/java/org/msgpack/io/BufferedOutput.java | 2 +- src/main/java/org/msgpack/io/ByteBufferOutput.java | 2 +- src/main/java/org/msgpack/io/EndOfBufferException.java | 2 +- src/main/java/org/msgpack/io/Input.java | 2 +- src/main/java/org/msgpack/io/LinkedBufferInput.java | 2 +- src/main/java/org/msgpack/io/LinkedBufferOutput.java | 2 +- src/main/java/org/msgpack/io/Output.java | 2 +- src/main/java/org/msgpack/io/StreamInput.java | 2 +- src/main/java/org/msgpack/io/StreamOutput.java | 2 +- src/main/java/org/msgpack/packer/AbstractPacker.java | 2 +- src/main/java/org/msgpack/packer/BufferPacker.java | 2 +- src/main/java/org/msgpack/packer/MessagePackBufferPacker.java | 2 +- src/main/java/org/msgpack/packer/MessagePackPacker.java | 2 +- src/main/java/org/msgpack/packer/Packer.java | 2 +- src/main/java/org/msgpack/packer/PackerStack.java | 2 +- src/main/java/org/msgpack/packer/Unconverter.java | 2 +- src/main/java/org/msgpack/template/AbstractTemplate.java | 2 +- src/main/java/org/msgpack/template/AnyTemplate.java | 2 +- src/main/java/org/msgpack/template/BigDecimalTemplate.java | 2 +- src/main/java/org/msgpack/template/BigIntegerTemplate.java | 2 +- src/main/java/org/msgpack/template/BooleanArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/BooleanTemplate.java | 2 +- src/main/java/org/msgpack/template/ByteArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/ByteBufferTemplate.java | 2 +- src/main/java/org/msgpack/template/ByteTemplate.java | 2 +- src/main/java/org/msgpack/template/CharacterTemplate.java | 2 +- src/main/java/org/msgpack/template/CollectionTemplate.java | 2 +- src/main/java/org/msgpack/template/DateTemplate.java | 2 +- src/main/java/org/msgpack/template/DoubleArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/DoubleTemplate.java | 2 +- src/main/java/org/msgpack/template/FieldList.java | 2 +- src/main/java/org/msgpack/template/FieldOption.java | 2 +- src/main/java/org/msgpack/template/FloatArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/FloatTemplate.java | 2 +- .../java/org/msgpack/template/GenericCollectionTemplate.java | 2 +- src/main/java/org/msgpack/template/GenericMapTemplate.java | 2 +- src/main/java/org/msgpack/template/GenericTemplate.java | 2 +- src/main/java/org/msgpack/template/IntegerArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/IntegerTemplate.java | 2 +- src/main/java/org/msgpack/template/ListTemplate.java | 2 +- src/main/java/org/msgpack/template/LongArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/LongTemplate.java | 2 +- src/main/java/org/msgpack/template/MapTemplate.java | 2 +- src/main/java/org/msgpack/template/MessagePackableTemplate.java | 2 +- src/main/java/org/msgpack/template/OrdinalEnumTemplate.java | 2 +- src/main/java/org/msgpack/template/SetTemplate.java | 2 +- src/main/java/org/msgpack/template/ShortArrayTemplate.java | 2 +- src/main/java/org/msgpack/template/ShortTemplate.java | 2 +- src/main/java/org/msgpack/template/StringTemplate.java | 2 +- src/main/java/org/msgpack/template/Template.java | 2 +- src/main/java/org/msgpack/template/TemplateReference.java | 2 +- src/main/java/org/msgpack/template/TemplateRegistry.java | 2 +- src/main/java/org/msgpack/template/Templates.java | 2 +- src/main/java/org/msgpack/template/ValueTemplate.java | 2 +- .../org/msgpack/template/builder/AbstractTemplateBuilder.java | 2 +- .../java/org/msgpack/template/builder/ArrayTemplateBuilder.java | 2 +- .../java/org/msgpack/template/builder/BeansBuildContext.java | 2 +- src/main/java/org/msgpack/template/builder/BuildContext.java | 2 +- .../java/org/msgpack/template/builder/DefaultBuildContext.java | 2 +- .../java/org/msgpack/template/builder/DefaultFieldEntry.java | 2 +- src/main/java/org/msgpack/template/builder/FieldEntry.java | 2 +- .../org/msgpack/template/builder/JavassistTemplateBuilder.java | 2 +- .../msgpack/template/builder/OrdinalEnumTemplateBuilder.java | 2 +- .../template/builder/ReflectionBeansTemplateBuilder.java | 2 +- .../org/msgpack/template/builder/ReflectionTemplateBuilder.java | 2 +- .../org/msgpack/template/builder/TemplateBuildException.java | 2 +- src/main/java/org/msgpack/template/builder/TemplateBuilder.java | 2 +- .../java/org/msgpack/template/builder/TemplateBuilderChain.java | 2 +- src/main/java/org/msgpack/type/AbstractArrayValue.java | 2 +- src/main/java/org/msgpack/type/AbstractBooleanValue.java | 2 +- src/main/java/org/msgpack/type/AbstractMapValue.java | 2 +- src/main/java/org/msgpack/type/AbstractRawValue.java | 2 +- src/main/java/org/msgpack/type/AbstractValue.java | 2 +- src/main/java/org/msgpack/type/ArrayValue.java | 2 +- src/main/java/org/msgpack/type/ArrayValueImpl.java | 2 +- src/main/java/org/msgpack/type/BigIntegerValueImpl.java | 2 +- src/main/java/org/msgpack/type/BooleanValue.java | 2 +- src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java | 2 +- src/main/java/org/msgpack/type/DoubleValueImpl.java | 2 +- src/main/java/org/msgpack/type/FalseValueImpl.java | 2 +- src/main/java/org/msgpack/type/FloatValue.java | 2 +- src/main/java/org/msgpack/type/FloatValueImpl.java | 2 +- src/main/java/org/msgpack/type/IntValueImpl.java | 2 +- src/main/java/org/msgpack/type/IntegerValue.java | 2 +- src/main/java/org/msgpack/type/LongValueImpl.java | 2 +- src/main/java/org/msgpack/type/MapValue.java | 2 +- src/main/java/org/msgpack/type/NilValue.java | 2 +- src/main/java/org/msgpack/type/NumberValue.java | 2 +- src/main/java/org/msgpack/type/RawValue.java | 2 +- src/main/java/org/msgpack/type/SequentialMapValueImpl.java | 2 +- src/main/java/org/msgpack/type/StringRawValueImpl.java | 2 +- src/main/java/org/msgpack/type/TrueValueImpl.java | 2 +- src/main/java/org/msgpack/type/Value.java | 2 +- src/main/java/org/msgpack/type/ValueFactory.java | 2 +- src/main/java/org/msgpack/type/ValueType.java | 2 +- src/main/java/org/msgpack/unpacker/AbstractUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/Accept.java | 2 +- src/main/java/org/msgpack/unpacker/ArrayAccept.java | 2 +- src/main/java/org/msgpack/unpacker/BigIntegerAccept.java | 2 +- src/main/java/org/msgpack/unpacker/BufferUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/ByteArrayAccept.java | 2 +- src/main/java/org/msgpack/unpacker/Converter.java | 2 +- src/main/java/org/msgpack/unpacker/DoubleAccept.java | 2 +- src/main/java/org/msgpack/unpacker/IntAccept.java | 2 +- src/main/java/org/msgpack/unpacker/LongAccept.java | 2 +- src/main/java/org/msgpack/unpacker/MapAccept.java | 2 +- .../java/org/msgpack/unpacker/MessagePackBufferUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java | 2 +- src/main/java/org/msgpack/unpacker/SizeLimitException.java | 2 +- src/main/java/org/msgpack/unpacker/SkipAccept.java | 2 +- src/main/java/org/msgpack/unpacker/StringAccept.java | 2 +- src/main/java/org/msgpack/unpacker/Unpacker.java | 2 +- src/main/java/org/msgpack/unpacker/UnpackerIterator.java | 2 +- src/main/java/org/msgpack/unpacker/UnpackerStack.java | 2 +- src/main/java/org/msgpack/unpacker/ValueAccept.java | 2 +- src/main/java/org/msgpack/util/TemplatePrecompiler.java | 2 +- src/main/java/org/msgpack/util/json/JSON.java | 2 +- src/main/java/org/msgpack/util/json/JSONBufferPacker.java | 2 +- src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java | 2 +- src/main/java/org/msgpack/util/json/JSONPacker.java | 2 +- src/main/java/org/msgpack/util/json/JSONUnpacker.java | 2 +- 137 files changed, 137 insertions(+), 137 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index f67daa172..45ff5fc92 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/MessagePackable.java b/src/main/java/org/msgpack/MessagePackable.java index 6d26e5294..8dae7d6f3 100644 --- a/src/main/java/org/msgpack/MessagePackable.java +++ b/src/main/java/org/msgpack/MessagePackable.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/MessageTypeException.java b/src/main/java/org/msgpack/MessageTypeException.java index 3f9cb4695..926838f51 100644 --- a/src/main/java/org/msgpack/MessageTypeException.java +++ b/src/main/java/org/msgpack/MessageTypeException.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Beans.java b/src/main/java/org/msgpack/annotation/Beans.java index 587a46653..8150150c4 100644 --- a/src/main/java/org/msgpack/annotation/Beans.java +++ b/src/main/java/org/msgpack/annotation/Beans.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Delegate.java b/src/main/java/org/msgpack/annotation/Delegate.java index 1d1ea177d..5db8a186e 100644 --- a/src/main/java/org/msgpack/annotation/Delegate.java +++ b/src/main/java/org/msgpack/annotation/Delegate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Ignore.java b/src/main/java/org/msgpack/annotation/Ignore.java index 2205afe8d..c50ec3577 100644 --- a/src/main/java/org/msgpack/annotation/Ignore.java +++ b/src/main/java/org/msgpack/annotation/Ignore.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Index.java b/src/main/java/org/msgpack/annotation/Index.java index 0a31499af..769836899 100644 --- a/src/main/java/org/msgpack/annotation/Index.java +++ b/src/main/java/org/msgpack/annotation/Index.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Message.java b/src/main/java/org/msgpack/annotation/Message.java index 759e95126..fe299db64 100644 --- a/src/main/java/org/msgpack/annotation/Message.java +++ b/src/main/java/org/msgpack/annotation/Message.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/MessagePackBeans.java b/src/main/java/org/msgpack/annotation/MessagePackBeans.java index 5d0b0a794..9cfb150aa 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackBeans.java +++ b/src/main/java/org/msgpack/annotation/MessagePackBeans.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/MessagePackDelegate.java b/src/main/java/org/msgpack/annotation/MessagePackDelegate.java index 84875684c..c227c48d8 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackDelegate.java +++ b/src/main/java/org/msgpack/annotation/MessagePackDelegate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/MessagePackMessage.java b/src/main/java/org/msgpack/annotation/MessagePackMessage.java index cccbc493e..b1d3ba459 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackMessage.java +++ b/src/main/java/org/msgpack/annotation/MessagePackMessage.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java b/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java index 6b9c62a49..2ea6b93ba 100644 --- a/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java +++ b/src/main/java/org/msgpack/annotation/MessagePackOrdinalEnum.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/NotNullable.java b/src/main/java/org/msgpack/annotation/NotNullable.java index 98fe99281..c3889eeb9 100644 --- a/src/main/java/org/msgpack/annotation/NotNullable.java +++ b/src/main/java/org/msgpack/annotation/NotNullable.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/Optional.java b/src/main/java/org/msgpack/annotation/Optional.java index e019d8dab..889883507 100644 --- a/src/main/java/org/msgpack/annotation/Optional.java +++ b/src/main/java/org/msgpack/annotation/Optional.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/annotation/OrdinalEnum.java b/src/main/java/org/msgpack/annotation/OrdinalEnum.java index 029c0eff1..8633a8088 100644 --- a/src/main/java/org/msgpack/annotation/OrdinalEnum.java +++ b/src/main/java/org/msgpack/annotation/OrdinalEnum.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/BufferReferer.java b/src/main/java/org/msgpack/io/BufferReferer.java index 4e45740b1..1b24f5013 100644 --- a/src/main/java/org/msgpack/io/BufferReferer.java +++ b/src/main/java/org/msgpack/io/BufferReferer.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/BufferedOutput.java b/src/main/java/org/msgpack/io/BufferedOutput.java index 152764ddb..3f013a060 100644 --- a/src/main/java/org/msgpack/io/BufferedOutput.java +++ b/src/main/java/org/msgpack/io/BufferedOutput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/ByteBufferOutput.java b/src/main/java/org/msgpack/io/ByteBufferOutput.java index 277640d03..aa836e931 100644 --- a/src/main/java/org/msgpack/io/ByteBufferOutput.java +++ b/src/main/java/org/msgpack/io/ByteBufferOutput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/EndOfBufferException.java b/src/main/java/org/msgpack/io/EndOfBufferException.java index 96217767c..c97aa6f39 100644 --- a/src/main/java/org/msgpack/io/EndOfBufferException.java +++ b/src/main/java/org/msgpack/io/EndOfBufferException.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/Input.java b/src/main/java/org/msgpack/io/Input.java index 4058e461c..64b8822e1 100644 --- a/src/main/java/org/msgpack/io/Input.java +++ b/src/main/java/org/msgpack/io/Input.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/LinkedBufferInput.java b/src/main/java/org/msgpack/io/LinkedBufferInput.java index df78feb93..888a768dc 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferInput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferInput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/LinkedBufferOutput.java b/src/main/java/org/msgpack/io/LinkedBufferOutput.java index a40bfc938..9ce999646 100644 --- a/src/main/java/org/msgpack/io/LinkedBufferOutput.java +++ b/src/main/java/org/msgpack/io/LinkedBufferOutput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/Output.java b/src/main/java/org/msgpack/io/Output.java index 71b7c2fd0..3810580a0 100644 --- a/src/main/java/org/msgpack/io/Output.java +++ b/src/main/java/org/msgpack/io/Output.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/StreamInput.java b/src/main/java/org/msgpack/io/StreamInput.java index b499eece9..24193c851 100644 --- a/src/main/java/org/msgpack/io/StreamInput.java +++ b/src/main/java/org/msgpack/io/StreamInput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/io/StreamOutput.java b/src/main/java/org/msgpack/io/StreamOutput.java index 61783fb88..911d3b4bc 100644 --- a/src/main/java/org/msgpack/io/StreamOutput.java +++ b/src/main/java/org/msgpack/io/StreamOutput.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/AbstractPacker.java b/src/main/java/org/msgpack/packer/AbstractPacker.java index 97a14de13..7df40e5f0 100644 --- a/src/main/java/org/msgpack/packer/AbstractPacker.java +++ b/src/main/java/org/msgpack/packer/AbstractPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/BufferPacker.java b/src/main/java/org/msgpack/packer/BufferPacker.java index 98d388ab2..048388694 100644 --- a/src/main/java/org/msgpack/packer/BufferPacker.java +++ b/src/main/java/org/msgpack/packer/BufferPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java index 45e0b4fac..4ff43aaad 100644 --- a/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackBufferPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/MessagePackPacker.java b/src/main/java/org/msgpack/packer/MessagePackPacker.java index 73a4ce377..c2507380b 100644 --- a/src/main/java/org/msgpack/packer/MessagePackPacker.java +++ b/src/main/java/org/msgpack/packer/MessagePackPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/Packer.java b/src/main/java/org/msgpack/packer/Packer.java index 80ce64fb1..a9bbb3ef4 100644 --- a/src/main/java/org/msgpack/packer/Packer.java +++ b/src/main/java/org/msgpack/packer/Packer.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/PackerStack.java b/src/main/java/org/msgpack/packer/PackerStack.java index 4e56118b6..9114ebac2 100644 --- a/src/main/java/org/msgpack/packer/PackerStack.java +++ b/src/main/java/org/msgpack/packer/PackerStack.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/packer/Unconverter.java b/src/main/java/org/msgpack/packer/Unconverter.java index c32162341..931851f7e 100644 --- a/src/main/java/org/msgpack/packer/Unconverter.java +++ b/src/main/java/org/msgpack/packer/Unconverter.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/AbstractTemplate.java b/src/main/java/org/msgpack/template/AbstractTemplate.java index 6fadccadb..1c13106d0 100644 --- a/src/main/java/org/msgpack/template/AbstractTemplate.java +++ b/src/main/java/org/msgpack/template/AbstractTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/AnyTemplate.java b/src/main/java/org/msgpack/template/AnyTemplate.java index 03c06e216..98fe71205 100644 --- a/src/main/java/org/msgpack/template/AnyTemplate.java +++ b/src/main/java/org/msgpack/template/AnyTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/BigDecimalTemplate.java b/src/main/java/org/msgpack/template/BigDecimalTemplate.java index 00b7c09e4..bc44b638b 100644 --- a/src/main/java/org/msgpack/template/BigDecimalTemplate.java +++ b/src/main/java/org/msgpack/template/BigDecimalTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/BigIntegerTemplate.java b/src/main/java/org/msgpack/template/BigIntegerTemplate.java index 7879e2cdd..e5a0b8774 100644 --- a/src/main/java/org/msgpack/template/BigIntegerTemplate.java +++ b/src/main/java/org/msgpack/template/BigIntegerTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java index 1c372a19f..25ba0b953 100644 --- a/src/main/java/org/msgpack/template/BooleanArrayTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/BooleanTemplate.java b/src/main/java/org/msgpack/template/BooleanTemplate.java index a3e632332..ed3d11b49 100644 --- a/src/main/java/org/msgpack/template/BooleanTemplate.java +++ b/src/main/java/org/msgpack/template/BooleanTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ByteArrayTemplate.java b/src/main/java/org/msgpack/template/ByteArrayTemplate.java index cf6f733cf..a89e6e85d 100644 --- a/src/main/java/org/msgpack/template/ByteArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ByteArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ByteBufferTemplate.java b/src/main/java/org/msgpack/template/ByteBufferTemplate.java index d81079b52..9fa7d7c35 100644 --- a/src/main/java/org/msgpack/template/ByteBufferTemplate.java +++ b/src/main/java/org/msgpack/template/ByteBufferTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ByteTemplate.java b/src/main/java/org/msgpack/template/ByteTemplate.java index 0202669b5..58a418867 100644 --- a/src/main/java/org/msgpack/template/ByteTemplate.java +++ b/src/main/java/org/msgpack/template/ByteTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/CharacterTemplate.java b/src/main/java/org/msgpack/template/CharacterTemplate.java index 0337c83a0..470f65e23 100644 --- a/src/main/java/org/msgpack/template/CharacterTemplate.java +++ b/src/main/java/org/msgpack/template/CharacterTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/CollectionTemplate.java b/src/main/java/org/msgpack/template/CollectionTemplate.java index 0828ff40a..9eeee0ffe 100644 --- a/src/main/java/org/msgpack/template/CollectionTemplate.java +++ b/src/main/java/org/msgpack/template/CollectionTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/DateTemplate.java b/src/main/java/org/msgpack/template/DateTemplate.java index 599205705..937be3585 100644 --- a/src/main/java/org/msgpack/template/DateTemplate.java +++ b/src/main/java/org/msgpack/template/DateTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java index ad1b895ad..8210a760e 100644 --- a/src/main/java/org/msgpack/template/DoubleArrayTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/DoubleTemplate.java b/src/main/java/org/msgpack/template/DoubleTemplate.java index 79937b76e..76e824502 100644 --- a/src/main/java/org/msgpack/template/DoubleTemplate.java +++ b/src/main/java/org/msgpack/template/DoubleTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/FieldList.java b/src/main/java/org/msgpack/template/FieldList.java index 75a787538..7ace75d31 100644 --- a/src/main/java/org/msgpack/template/FieldList.java +++ b/src/main/java/org/msgpack/template/FieldList.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/FieldOption.java b/src/main/java/org/msgpack/template/FieldOption.java index 01cbd3c44..cb926c8d0 100644 --- a/src/main/java/org/msgpack/template/FieldOption.java +++ b/src/main/java/org/msgpack/template/FieldOption.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/FloatArrayTemplate.java b/src/main/java/org/msgpack/template/FloatArrayTemplate.java index 1089113e7..d1a2b03d4 100644 --- a/src/main/java/org/msgpack/template/FloatArrayTemplate.java +++ b/src/main/java/org/msgpack/template/FloatArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/FloatTemplate.java b/src/main/java/org/msgpack/template/FloatTemplate.java index d8f283096..649e293b5 100644 --- a/src/main/java/org/msgpack/template/FloatTemplate.java +++ b/src/main/java/org/msgpack/template/FloatTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java index c6f9cd8e4..e7d0454a1 100644 --- a/src/main/java/org/msgpack/template/GenericCollectionTemplate.java +++ b/src/main/java/org/msgpack/template/GenericCollectionTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/GenericMapTemplate.java b/src/main/java/org/msgpack/template/GenericMapTemplate.java index 1d548abcf..3426d2acf 100644 --- a/src/main/java/org/msgpack/template/GenericMapTemplate.java +++ b/src/main/java/org/msgpack/template/GenericMapTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/GenericTemplate.java b/src/main/java/org/msgpack/template/GenericTemplate.java index ef27d1654..93d876063 100644 --- a/src/main/java/org/msgpack/template/GenericTemplate.java +++ b/src/main/java/org/msgpack/template/GenericTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java index e67bf44ee..6cd29deee 100644 --- a/src/main/java/org/msgpack/template/IntegerArrayTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/IntegerTemplate.java b/src/main/java/org/msgpack/template/IntegerTemplate.java index a7f035f64..ae221ba17 100644 --- a/src/main/java/org/msgpack/template/IntegerTemplate.java +++ b/src/main/java/org/msgpack/template/IntegerTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ListTemplate.java b/src/main/java/org/msgpack/template/ListTemplate.java index ee6bfa303..0b08dbf65 100644 --- a/src/main/java/org/msgpack/template/ListTemplate.java +++ b/src/main/java/org/msgpack/template/ListTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/LongArrayTemplate.java b/src/main/java/org/msgpack/template/LongArrayTemplate.java index 3d9b7974b..55b1eee18 100644 --- a/src/main/java/org/msgpack/template/LongArrayTemplate.java +++ b/src/main/java/org/msgpack/template/LongArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/LongTemplate.java b/src/main/java/org/msgpack/template/LongTemplate.java index 5de39cf48..e69d2c0a8 100644 --- a/src/main/java/org/msgpack/template/LongTemplate.java +++ b/src/main/java/org/msgpack/template/LongTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/MapTemplate.java b/src/main/java/org/msgpack/template/MapTemplate.java index 631045502..71af9dd04 100644 --- a/src/main/java/org/msgpack/template/MapTemplate.java +++ b/src/main/java/org/msgpack/template/MapTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/MessagePackableTemplate.java b/src/main/java/org/msgpack/template/MessagePackableTemplate.java index 2637c9740..4a5542112 100644 --- a/src/main/java/org/msgpack/template/MessagePackableTemplate.java +++ b/src/main/java/org/msgpack/template/MessagePackableTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java index 73a86a3a7..c07689cdb 100644 --- a/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java +++ b/src/main/java/org/msgpack/template/OrdinalEnumTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/SetTemplate.java b/src/main/java/org/msgpack/template/SetTemplate.java index 0e9e009c8..18a21cd0d 100644 --- a/src/main/java/org/msgpack/template/SetTemplate.java +++ b/src/main/java/org/msgpack/template/SetTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ShortArrayTemplate.java b/src/main/java/org/msgpack/template/ShortArrayTemplate.java index 45a52ccfa..85ae1e3d7 100644 --- a/src/main/java/org/msgpack/template/ShortArrayTemplate.java +++ b/src/main/java/org/msgpack/template/ShortArrayTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ShortTemplate.java b/src/main/java/org/msgpack/template/ShortTemplate.java index 173fc14cc..2f4810047 100644 --- a/src/main/java/org/msgpack/template/ShortTemplate.java +++ b/src/main/java/org/msgpack/template/ShortTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/StringTemplate.java b/src/main/java/org/msgpack/template/StringTemplate.java index 4094790dd..986cefc6b 100644 --- a/src/main/java/org/msgpack/template/StringTemplate.java +++ b/src/main/java/org/msgpack/template/StringTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/Template.java b/src/main/java/org/msgpack/template/Template.java index d47172f26..c9ff00e41 100644 --- a/src/main/java/org/msgpack/template/Template.java +++ b/src/main/java/org/msgpack/template/Template.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/TemplateReference.java b/src/main/java/org/msgpack/template/TemplateReference.java index 39447567d..f04cb4e9c 100644 --- a/src/main/java/org/msgpack/template/TemplateReference.java +++ b/src/main/java/org/msgpack/template/TemplateReference.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/TemplateRegistry.java b/src/main/java/org/msgpack/template/TemplateRegistry.java index c5d9369cb..4191c56c6 100644 --- a/src/main/java/org/msgpack/template/TemplateRegistry.java +++ b/src/main/java/org/msgpack/template/TemplateRegistry.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/Templates.java b/src/main/java/org/msgpack/template/Templates.java index f1721f9c8..0950b9b2f 100644 --- a/src/main/java/org/msgpack/template/Templates.java +++ b/src/main/java/org/msgpack/template/Templates.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/ValueTemplate.java b/src/main/java/org/msgpack/template/ValueTemplate.java index 41039c2f3..056808623 100644 --- a/src/main/java/org/msgpack/template/ValueTemplate.java +++ b/src/main/java/org/msgpack/template/ValueTemplate.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 96817f695..b9e5d8d9e 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java index ffcd690f6..e452e3c23 100644 --- a/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ArrayTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java index 3e260b47d..3474d64d7 100644 --- a/src/main/java/org/msgpack/template/builder/BeansBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BeansBuildContext.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 5a1311a05..19082e9f0 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java index 498584ab0..fa36c4f34 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java +++ b/src/main/java/org/msgpack/template/builder/DefaultBuildContext.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java index 47500d357..514503105 100644 --- a/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/DefaultFieldEntry.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/FieldEntry.java b/src/main/java/org/msgpack/template/builder/FieldEntry.java index 2f6c501ab..42d6d7deb 100644 --- a/src/main/java/org/msgpack/template/builder/FieldEntry.java +++ b/src/main/java/org/msgpack/template/builder/FieldEntry.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 5fa70e249..c344891a0 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java index bdb5bbcc6..af20b10b6 100644 --- a/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/OrdinalEnumTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index beb57a82f..d549c1f80 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 7fbdaee87..40360cbce 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuildException.java b/src/main/java/org/msgpack/template/builder/TemplateBuildException.java index 373513598..e6cd48645 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuildException.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuildException.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java index 62de093a2..a3ea996c4 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilder.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 3e0b7d5f9..03989b343 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/AbstractArrayValue.java b/src/main/java/org/msgpack/type/AbstractArrayValue.java index 040b50bda..4aa186528 100644 --- a/src/main/java/org/msgpack/type/AbstractArrayValue.java +++ b/src/main/java/org/msgpack/type/AbstractArrayValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/AbstractBooleanValue.java b/src/main/java/org/msgpack/type/AbstractBooleanValue.java index e7f712b3f..21a3b8617 100644 --- a/src/main/java/org/msgpack/type/AbstractBooleanValue.java +++ b/src/main/java/org/msgpack/type/AbstractBooleanValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/AbstractMapValue.java b/src/main/java/org/msgpack/type/AbstractMapValue.java index e2d578943..22c473410 100644 --- a/src/main/java/org/msgpack/type/AbstractMapValue.java +++ b/src/main/java/org/msgpack/type/AbstractMapValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 66731121b..41f087dad 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/AbstractValue.java b/src/main/java/org/msgpack/type/AbstractValue.java index 7f29b5984..9697ba709 100644 --- a/src/main/java/org/msgpack/type/AbstractValue.java +++ b/src/main/java/org/msgpack/type/AbstractValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/ArrayValue.java b/src/main/java/org/msgpack/type/ArrayValue.java index 682b3060b..b06156f1e 100644 --- a/src/main/java/org/msgpack/type/ArrayValue.java +++ b/src/main/java/org/msgpack/type/ArrayValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index e9b4dda49..2f87e5b85 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java index 88d2191e3..6aab33de0 100644 --- a/src/main/java/org/msgpack/type/BigIntegerValueImpl.java +++ b/src/main/java/org/msgpack/type/BigIntegerValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2010 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/BooleanValue.java b/src/main/java/org/msgpack/type/BooleanValue.java index 4aace11f5..357add162 100644 --- a/src/main/java/org/msgpack/type/BooleanValue.java +++ b/src/main/java/org/msgpack/type/BooleanValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 246f304b1..2eb88ba62 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/DoubleValueImpl.java b/src/main/java/org/msgpack/type/DoubleValueImpl.java index 17aabeea5..552a1f444 100644 --- a/src/main/java/org/msgpack/type/DoubleValueImpl.java +++ b/src/main/java/org/msgpack/type/DoubleValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/FalseValueImpl.java b/src/main/java/org/msgpack/type/FalseValueImpl.java index d8f93730e..50d7254c5 100644 --- a/src/main/java/org/msgpack/type/FalseValueImpl.java +++ b/src/main/java/org/msgpack/type/FalseValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/FloatValue.java b/src/main/java/org/msgpack/type/FloatValue.java index b93a7f024..60e8b2907 100644 --- a/src/main/java/org/msgpack/type/FloatValue.java +++ b/src/main/java/org/msgpack/type/FloatValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/FloatValueImpl.java b/src/main/java/org/msgpack/type/FloatValueImpl.java index d32a3115a..5956dfc1b 100644 --- a/src/main/java/org/msgpack/type/FloatValueImpl.java +++ b/src/main/java/org/msgpack/type/FloatValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/IntValueImpl.java b/src/main/java/org/msgpack/type/IntValueImpl.java index 2077620a2..4492b8ec8 100644 --- a/src/main/java/org/msgpack/type/IntValueImpl.java +++ b/src/main/java/org/msgpack/type/IntValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/IntegerValue.java b/src/main/java/org/msgpack/type/IntegerValue.java index d6e8000cf..0ee0e7207 100644 --- a/src/main/java/org/msgpack/type/IntegerValue.java +++ b/src/main/java/org/msgpack/type/IntegerValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/LongValueImpl.java b/src/main/java/org/msgpack/type/LongValueImpl.java index fd12d4b7d..957a47086 100644 --- a/src/main/java/org/msgpack/type/LongValueImpl.java +++ b/src/main/java/org/msgpack/type/LongValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2010 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/MapValue.java b/src/main/java/org/msgpack/type/MapValue.java index 17678dfe3..e0c91ed94 100644 --- a/src/main/java/org/msgpack/type/MapValue.java +++ b/src/main/java/org/msgpack/type/MapValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/NilValue.java b/src/main/java/org/msgpack/type/NilValue.java index 85f916def..5f48c3c53 100644 --- a/src/main/java/org/msgpack/type/NilValue.java +++ b/src/main/java/org/msgpack/type/NilValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/NumberValue.java b/src/main/java/org/msgpack/type/NumberValue.java index c916ab56c..fa8d131a1 100644 --- a/src/main/java/org/msgpack/type/NumberValue.java +++ b/src/main/java/org/msgpack/type/NumberValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/RawValue.java b/src/main/java/org/msgpack/type/RawValue.java index 19e0d7875..3fa2a42f4 100644 --- a/src/main/java/org/msgpack/type/RawValue.java +++ b/src/main/java/org/msgpack/type/RawValue.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index ba3099a04..e91bbb4fb 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index 4d6d4a052..635110c88 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/TrueValueImpl.java b/src/main/java/org/msgpack/type/TrueValueImpl.java index 0414f2e6a..1b6b89b36 100644 --- a/src/main/java/org/msgpack/type/TrueValueImpl.java +++ b/src/main/java/org/msgpack/type/TrueValueImpl.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/Value.java b/src/main/java/org/msgpack/type/Value.java index 1140a63ff..3ef68c513 100644 --- a/src/main/java/org/msgpack/type/Value.java +++ b/src/main/java/org/msgpack/type/Value.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/ValueFactory.java b/src/main/java/org/msgpack/type/ValueFactory.java index 2d55a118e..53af61003 100644 --- a/src/main/java/org/msgpack/type/ValueFactory.java +++ b/src/main/java/org/msgpack/type/ValueFactory.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/type/ValueType.java b/src/main/java/org/msgpack/type/ValueType.java index c20c61eb9..2651567e2 100644 --- a/src/main/java/org/msgpack/type/ValueType.java +++ b/src/main/java/org/msgpack/type/ValueType.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java index 4fd8322fb..dc1210ce0 100644 --- a/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/AbstractUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index 5c0ccd922..9d2f4ba34 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/ArrayAccept.java b/src/main/java/org/msgpack/unpacker/ArrayAccept.java index a9633d4e1..db2285d85 100644 --- a/src/main/java/org/msgpack/unpacker/ArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ArrayAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java index 12aa8d8e8..accc8367e 100644 --- a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java +++ b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java index 91466fe85..962bdc375 100644 --- a/src/main/java/org/msgpack/unpacker/BufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/BufferUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java index e1a4d3921..18d34d84f 100644 --- a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/Converter.java b/src/main/java/org/msgpack/unpacker/Converter.java index 733c4521e..be08343cb 100644 --- a/src/main/java/org/msgpack/unpacker/Converter.java +++ b/src/main/java/org/msgpack/unpacker/Converter.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/DoubleAccept.java b/src/main/java/org/msgpack/unpacker/DoubleAccept.java index 249a4871c..a0324654f 100644 --- a/src/main/java/org/msgpack/unpacker/DoubleAccept.java +++ b/src/main/java/org/msgpack/unpacker/DoubleAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/IntAccept.java b/src/main/java/org/msgpack/unpacker/IntAccept.java index 607903fcd..71bc6839b 100644 --- a/src/main/java/org/msgpack/unpacker/IntAccept.java +++ b/src/main/java/org/msgpack/unpacker/IntAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/LongAccept.java b/src/main/java/org/msgpack/unpacker/LongAccept.java index 96f77bafe..215dc67c1 100644 --- a/src/main/java/org/msgpack/unpacker/LongAccept.java +++ b/src/main/java/org/msgpack/unpacker/LongAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/MapAccept.java b/src/main/java/org/msgpack/unpacker/MapAccept.java index 59b53e224..a687b9678 100644 --- a/src/main/java/org/msgpack/unpacker/MapAccept.java +++ b/src/main/java/org/msgpack/unpacker/MapAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java index 573c84051..9ab87d805 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackBufferUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index e88c99c89..f704f1717 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/SizeLimitException.java b/src/main/java/org/msgpack/unpacker/SizeLimitException.java index e46fbf174..640861dff 100644 --- a/src/main/java/org/msgpack/unpacker/SizeLimitException.java +++ b/src/main/java/org/msgpack/unpacker/SizeLimitException.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2011 Muga Nishizawa +// Copyright (C) 2011 - 2013 Muga Nishizawa // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/SkipAccept.java b/src/main/java/org/msgpack/unpacker/SkipAccept.java index dbfd6956f..7e3a98c54 100644 --- a/src/main/java/org/msgpack/unpacker/SkipAccept.java +++ b/src/main/java/org/msgpack/unpacker/SkipAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index 5c5256089..a50053ceb 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/Unpacker.java b/src/main/java/org/msgpack/unpacker/Unpacker.java index 7bbff1c90..37bcdfe41 100644 --- a/src/main/java/org/msgpack/unpacker/Unpacker.java +++ b/src/main/java/org/msgpack/unpacker/Unpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java index 7d91dbc15..361d42376 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerIterator.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerIterator.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/UnpackerStack.java b/src/main/java/org/msgpack/unpacker/UnpackerStack.java index cfa5b6fa9..9ed67afff 100644 --- a/src/main/java/org/msgpack/unpacker/UnpackerStack.java +++ b/src/main/java/org/msgpack/unpacker/UnpackerStack.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 3f22af64c..9df93396c 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/TemplatePrecompiler.java b/src/main/java/org/msgpack/util/TemplatePrecompiler.java index bdc2b2d9a..f516d9272 100644 --- a/src/main/java/org/msgpack/util/TemplatePrecompiler.java +++ b/src/main/java/org/msgpack/util/TemplatePrecompiler.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/json/JSON.java b/src/main/java/org/msgpack/util/json/JSON.java index 0f38f7303..1f4bd09a5 100644 --- a/src/main/java/org/msgpack/util/json/JSON.java +++ b/src/main/java/org/msgpack/util/json/JSON.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java index f9e3f5c5e..069c37f89 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java index 52f65b36b..24bac3064 100644 --- a/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONBufferUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/json/JSONPacker.java b/src/main/java/org/msgpack/util/json/JSONPacker.java index 6e97a402b..a96c6b86d 100644 --- a/src/main/java/org/msgpack/util/json/JSONPacker.java +++ b/src/main/java/org/msgpack/util/json/JSONPacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 3871c7db0..177bf2230 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -1,7 +1,7 @@ // // MessagePack for Java // -// Copyright (C) 2009-2011 FURUHASHI Sadayuki +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. From 88b6823051c58057a8c38349ccf1d6545077e283 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 20 Jan 2013 21:28:52 +0900 Subject: [PATCH 349/409] port SimpleImmutableEntry for Android2.2 or below --- .../msgpack/type/SequentialMapValueImpl.java | 21 ++++- .../msgpack/util/PortedImmutableEntry.java | 87 +++++++++++++++++++ 2 files changed, 106 insertions(+), 2 deletions(-) create mode 100644 src/main/java/org/msgpack/util/PortedImmutableEntry.java diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index e91bbb4fb..270ceaef6 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -27,6 +27,7 @@ import java.util.NoSuchElementException; import java.io.IOException; import org.msgpack.packer.Packer; +import org.msgpack.util.PortedImmutableEntry; class SequentialMapValueImpl extends AbstractMapValue { private static SequentialMapValueImpl emptyInstance = new SequentialMapValueImpl(new Value[0], true); @@ -89,6 +90,17 @@ private static class EntrySetIterator implements Iterator> { private Value[] array; private int pos; + private static final boolean hasDefaultImmutableEntry; + static { + boolean hasIt = true; + try { + Class.forName("java.util.AbstractMap.SimpleImmutableEntry"); + } catch (ClassNotFoundException e) { + hasIt = false; + } finally { + hasDefaultImmutableEntry = hasIt; + } + } EntrySetIterator(Value[] array) { this.array = array; @@ -105,8 +117,13 @@ public Map.Entry next() { if (pos >= array.length) { throw new NoSuchElementException(); // TODO message } - Map.Entry pair = - new AbstractMap.SimpleImmutableEntry(array[pos], array[pos + 1]); + + Value key = array[pos]; + Value value = array[pos + 1]; + Map.Entry pair = hasDefaultImmutableEntry ? + new AbstractMap.SimpleImmutableEntry(key, value) : + new PortedImmutableEntry(key, value); + pos += 2; return pair; } diff --git a/src/main/java/org/msgpack/util/PortedImmutableEntry.java b/src/main/java/org/msgpack/util/PortedImmutableEntry.java new file mode 100644 index 000000000..fffa13ba7 --- /dev/null +++ b/src/main/java/org/msgpack/util/PortedImmutableEntry.java @@ -0,0 +1,87 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.msgpack.util; + +import java.io.Serializable; +import java.util.Map; + +/** + * An immutable key-value mapping. Despite the name, this class is non-final + * and its subclasses may be mutable. + * + * This class is ported from java.util.AbstractMap$SimpleImmutableEntry of + * https://github.com/OESF/OHA-Android-4.0.3_r1.0 (Apache License). + */ +public class PortedImmutableEntry implements Map.Entry, Serializable { + private static final long serialVersionUID = -4564047655287765373L; + + private final K key; + private final V value; + + public PortedImmutableEntry(K theKey, V theValue) { + key = theKey; + value = theValue; + } + + /** + * Constructs an instance with the key and value of {@code copyFrom}. + */ + public PortedImmutableEntry(Map.Entry copyFrom) { + key = copyFrom.getKey(); + value = copyFrom.getValue(); + } + + public K getKey() { + return key; + } + + public V getValue() { + return value; + } + + /** + * This base implementation throws {@code UnsupportedOperationException} + * always. + */ + public V setValue(V object) { + throw new UnsupportedOperationException(); + } + + @Override public boolean equals(Object object) { + if (this == object) { + return true; + } + if (object instanceof Map.Entry) { + Map.Entry entry = (Map.Entry) object; + return (key == null ? entry.getKey() == null : key.equals(entry + .getKey())) + && (value == null ? entry.getValue() == null : value + .equals(entry.getValue())); + } + return false; + } + + @Override public int hashCode() { + return (key == null ? 0 : key.hashCode()) + ^ (value == null ? 0 : value.hashCode()); + } + + @Override public String toString() { + return key + "=" + value; + } +} From ca9601ebe5048d79fcc2458e53e4640f80e4226c Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 20 Jan 2013 23:44:26 +0900 Subject: [PATCH 350/409] renamed package of PortedImmutableEntry class: org.msgpack.util to org.msgpack.util.android --- .../org/msgpack/type/SequentialMapValueImpl.java | 13 ++++++++++--- .../util/{ => android}/PortedImmutableEntry.java | 2 +- 2 files changed, 11 insertions(+), 4 deletions(-) rename src/main/java/org/msgpack/util/{ => android}/PortedImmutableEntry.java (98%) diff --git a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java index 270ceaef6..43398b640 100644 --- a/src/main/java/org/msgpack/type/SequentialMapValueImpl.java +++ b/src/main/java/org/msgpack/type/SequentialMapValueImpl.java @@ -27,7 +27,7 @@ import java.util.NoSuchElementException; import java.io.IOException; import org.msgpack.packer.Packer; -import org.msgpack.util.PortedImmutableEntry; +import org.msgpack.util.android.PortedImmutableEntry; class SequentialMapValueImpl extends AbstractMapValue { private static SequentialMapValueImpl emptyInstance = new SequentialMapValueImpl(new Value[0], true); @@ -117,13 +117,20 @@ public Map.Entry next() { if (pos >= array.length) { throw new NoSuchElementException(); // TODO message } - + Value key = array[pos]; Value value = array[pos + 1]; + /** + * @see https://github.com/msgpack/msgpack-java/pull/27 + * + * msgpack-java was crashed on Android 2.2 or below because + * the method calls java.util.AbstractMap$SimpleImmutableEntry + * that doesn't exist in Android 2.2 or below. + */ Map.Entry pair = hasDefaultImmutableEntry ? new AbstractMap.SimpleImmutableEntry(key, value) : new PortedImmutableEntry(key, value); - + pos += 2; return pair; } diff --git a/src/main/java/org/msgpack/util/PortedImmutableEntry.java b/src/main/java/org/msgpack/util/android/PortedImmutableEntry.java similarity index 98% rename from src/main/java/org/msgpack/util/PortedImmutableEntry.java rename to src/main/java/org/msgpack/util/android/PortedImmutableEntry.java index fffa13ba7..dbc27a022 100644 --- a/src/main/java/org/msgpack/util/PortedImmutableEntry.java +++ b/src/main/java/org/msgpack/util/android/PortedImmutableEntry.java @@ -15,7 +15,7 @@ * limitations under the License. */ -package org.msgpack.util; +package org.msgpack.util.android; import java.io.Serializable; import java.util.Map; From 7d0155dde9eea60239abe5d8cf92ac2f900f663b Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 20 Jan 2013 23:52:22 +0900 Subject: [PATCH 351/409] modified CHANGES.txt --- CHANGES.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.txt b/CHANGES.txt index 3414a57f6..369829e3d 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -2,6 +2,7 @@ Release 0.6.8 - 20XX/XX/XX BUG FIXES Replaces method calls of LinkedList#peek{First,Last}() into get{First,Last}() within LinkedBufferInput class (pull request #18) Make encoding byte[][] work correctly (pull request #24) + Ports SimpleImmutableEntry for Android2.2 or below (pull request #27) IMPROVEMENTS MSGPACK-83 Gracefully handling new enum value with OrdinalEnum (pull request #26) From 6a0c954f96add92cca1e4b46681aa49600d17bd0 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Mon, 21 Jan 2013 12:49:19 +0900 Subject: [PATCH 352/409] minor change within MessagePack class --- src/main/java/org/msgpack/MessagePack.java | 34 +++++++++++----------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 45ff5fc92..73a677adf 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -340,23 +340,6 @@ public T read(byte[] bytes, T v) throws IOException { return read(bytes, v, tmpl); } - /** - * Deserializes byte array to object. - * - * @since 0.6.8 - * @param bytes - * input byte array - * @param v - * @return - * @throws IOException - */ - public T read(byte[] bytes, int off, int len, Class c) throws IOException { - @SuppressWarnings("unchecked") - Template tmpl = registry.lookup(c); - BufferUnpacker u = createBufferUnpacker(bytes, off, len); - return (T) tmpl.read(u, null); - } - /** * Deserializes byte array to object according to template. * @@ -405,6 +388,23 @@ public T read(byte[] bytes, T v, Template tmpl) throws IOException { return (T) tmpl.read(u, v); } + /** + * Deserializes byte array to object. + * + * @since 0.6.8 + * @param bytes + * input byte array + * @param v + * @return + * @throws IOException + */ + public T read(byte[] bytes, int off, int len, Class c) throws IOException { + @SuppressWarnings("unchecked") + Template tmpl = registry.lookup(c); + BufferUnpacker u = createBufferUnpacker(bytes, off, len); + return (T) tmpl.read(u, null); + } + /** * Deserializes buffer to object. * From a6bcfcdf8c45f94382a86e689d30372096e55bcc Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Wed, 30 Jan 2013 02:02:40 +0900 Subject: [PATCH 353/409] added DalvikVmChecker --- .../template/builder/TemplateBuilderChain.java | 7 ++----- .../msgpack/util/android/DalvikVmChecker.java | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 5 deletions(-) create mode 100644 src/main/java/org/msgpack/util/android/DalvikVmChecker.java diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 03989b343..58e6dca1c 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -22,15 +22,12 @@ import java.util.List; import org.msgpack.template.TemplateRegistry; +import org.msgpack.util.android.DalvikVmChecker; public class TemplateBuilderChain { private static boolean enableDynamicCodeGeneration() { - try { - return !System.getProperty("java.vm.name").equals("Dalvik"); - } catch (Exception e) { - return true; - } + return !DalvikVmChecker.isDalvikVm(); } protected List templateBuilders; diff --git a/src/main/java/org/msgpack/util/android/DalvikVmChecker.java b/src/main/java/org/msgpack/util/android/DalvikVmChecker.java new file mode 100644 index 000000000..cfc6cdd30 --- /dev/null +++ b/src/main/java/org/msgpack/util/android/DalvikVmChecker.java @@ -0,0 +1,17 @@ +package org.msgpack.util.android; + +public final class DalvikVmChecker { + private static final boolean isDalvikVm; + static { + boolean isIt = false; + try { + isIt = System.getProperty("java.vm.name").equals("Dalvik"); + } finally { + isDalvikVm = isIt; + } + } + + public static boolean isDalvikVm() { + return isDalvikVm; + } +} From 5c3555d56234a24773809e33eb3766c9464d95a0 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 2 Feb 2013 17:35:14 +0900 Subject: [PATCH 354/409] stored decoder into thread local variable --- .../org/msgpack/type/ByteArrayRawValueImpl.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java index 2eb88ba62..2642a7f6f 100644 --- a/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java +++ b/src/main/java/org/msgpack/type/ByteArrayRawValueImpl.java @@ -29,10 +29,19 @@ class ByteArrayRawValueImpl extends AbstractRawValue { private static ByteArrayRawValueImpl emptyInstance = new ByteArrayRawValueImpl(new byte[0], true); - + public static RawValue getEmptyInstance() { return emptyInstance; } + + private static final ThreadLocal decoderStore = new ThreadLocal() { + @Override + protected CharsetDecoder initialValue() { + return Charset.forName("UTF-8").newDecoder() + .onMalformedInput(CodingErrorAction.REPORT) + .onUnmappableCharacter(CodingErrorAction.REPORT); + } + }; private byte[] bytes; @@ -58,9 +67,7 @@ public byte[] getByteArray() { @Override public String getString() { - CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder() - .onMalformedInput(CodingErrorAction.REPORT) - .onUnmappableCharacter(CodingErrorAction.REPORT); + CharsetDecoder decoder = decoderStore.get(); try { return decoder.decode(ByteBuffer.wrap(bytes)).toString(); } catch (CharacterCodingException ex) { From 5b80f41abcee15eeb330ebfc2664431d3d086678 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 2 Feb 2013 22:26:02 +0900 Subject: [PATCH 355/409] added Testthreadsafety.java --- .../java/org/msgpack/TestThreadSafety.java | 139 ++++++++++++++++++ 1 file changed, 139 insertions(+) create mode 100644 src/test/java/org/msgpack/TestThreadSafety.java diff --git a/src/test/java/org/msgpack/TestThreadSafety.java b/src/test/java/org/msgpack/TestThreadSafety.java new file mode 100644 index 000000000..28652cb3f --- /dev/null +++ b/src/test/java/org/msgpack/TestThreadSafety.java @@ -0,0 +1,139 @@ +package org.msgpack; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.concurrent.Callable; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; + +import org.junit.Before; +import org.junit.Test; +import org.msgpack.MessagePack; +import org.msgpack.packer.BufferPacker; +import org.msgpack.type.ArrayValue; +import org.msgpack.type.MapValue; +import org.msgpack.type.Value; +import org.msgpack.unpacker.BufferUnpacker; + +public class TestThreadSafety { + private List list = createList(1000); + private Map map = createMap(1000); + private static final String EXAMPLE_STRING; + static { + StringBuilder buf = new StringBuilder(); + for (int i = 0; i < 10; i++) { + buf.append("0000000000111111111122222222223333333333444444444455555555556666666666777777777788888888889999999999"); + } + EXAMPLE_STRING = buf.toString(); + } + + private List createList(int n) { + List src = new ArrayList(); + for (int i = 0; i < n; i++) { + src.add(EXAMPLE_STRING); + } + return src; + } + + private Map createMap(int n) { + Map src = new HashMap(); + for (int i = 0; i < n; i++) { + src.put(String.valueOf(i), EXAMPLE_STRING); + } + return src; + } + + private void testMsgpackDynamicString(int n) throws IOException { + MessagePack msgpack = new MessagePack(); + BufferPacker packer = msgpack.createBufferPacker(); + for (int i = 0; i < n; i++) { + packer.write(EXAMPLE_STRING); + } + + byte[] raw = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(raw); + + for (int i = 0; i < n; i++) { + String dst = unpacker.read(String.class); + if (!dst.equals(EXAMPLE_STRING)) { + throw new AssertionError(); + } + } + } + + private void testMsgpackDynamicArray() throws IOException { + List src = list; + + MessagePack msgpack = new MessagePack(); + byte[] raw; + raw = msgpack.write(src); + + List dst = new LinkedList(); + ArrayValue arrayValue = msgpack.read(raw).asArrayValue(); + for (Value v : arrayValue) { + dst.add(v.asRawValue().getString()); + + if (!v.asRawValue().getString().equals(EXAMPLE_STRING)) { + throw new AssertionError(); + } + } + } + + private void testMsgpackDynamicMap() throws IOException { + Map src = map; + + MessagePack msgpack = new MessagePack(); + byte[] raw; + raw = msgpack.write(src); + + MapValue mv = msgpack.read(raw).asMapValue(); + for (Entry kv : mv.entrySet()) { + if (!kv.getValue().asRawValue().getString().equals(EXAMPLE_STRING)) { + throw new AssertionError(); + } + } + } + + static class TestRunner implements Callable { + private final TestThreadSafety main; + + public TestRunner(TestThreadSafety main) { + this.main = main; + } + + @Override + public Void call() throws Exception { + try { + main.testMsgpackDynamicString(1000); + main.testMsgpackDynamicArray(); + main.testMsgpackDynamicMap(); + } catch (IOException e) { + throw new RuntimeException(e); + } + return null; + } + } + + @Test + public void testWithBulkData() throws InterruptedException, ExecutionException, TimeoutException { + final TestThreadSafety main = new TestThreadSafety(); + List> futures = new LinkedList>(); + ExecutorService executorService = Executors.newCachedThreadPool(); + for (int i = 0; i < 20; i++) { + futures.add(executorService.submit(new TestRunner(main))); + } + + for (Future future : futures) { + future.get(30, TimeUnit.SECONDS); + } + } +} From 364c4737699411ab6f530e7a7a485a81ada17a13 Mon Sep 17 00:00:00 2001 From: Tatsuhiko Inoue Date: Tue, 5 Feb 2013 14:37:11 +0900 Subject: [PATCH 356/409] fixed the issue that serialization fails with non-default class loader. --- .../template/builder/BuildContext.java | 2 +- .../builder/JavassistTemplateBuilder.java | 33 +++++++++---------- .../builder/TemplateBuilderChain.java | 5 +-- 3 files changed, 18 insertions(+), 22 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/BuildContext.java b/src/main/java/org/msgpack/template/builder/BuildContext.java index 19082e9f0..3e641bff6 100644 --- a/src/main/java/org/msgpack/template/builder/BuildContext.java +++ b/src/main/java/org/msgpack/template/builder/BuildContext.java @@ -151,7 +151,7 @@ protected void buildReadMethod() throws CannotCompileException, NotFoundExceptio protected abstract String buildReadMethodBody(); protected Class createClass() throws CannotCompileException { - return (Class) tmplCtClass.toClass(null, getClass().getProtectionDomain()); + return (Class) tmplCtClass.toClass(director.getClassLoader(), getClass().getProtectionDomain()); } protected void saveClass(final String directoryName) throws CannotCompileException, IOException { diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index c344891a0..a7fccdf4e 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -51,25 +51,24 @@ public JavassistTemplate(Class targetClass, Template[] templates) { protected int seqId = 0; + protected ClassLoader loader; + public JavassistTemplateBuilder(TemplateRegistry registry) { + this(registry, null); + } + + public JavassistTemplateBuilder(TemplateRegistry registry, ClassLoader cl) { super(registry); pool = new ClassPool(); boolean appended = false; - ClassLoader cl = null; - try { - cl = Thread.currentThread().getContextClassLoader(); - if (cl != null) { - pool.appendClassPath(new LoaderClassPath(cl)); - appended = true; - } - } catch (SecurityException e) { - LOG.fine("Cannot append a search path of context classloader"); - e.printStackTrace(); + loader = cl; + if (loader == null) { + loader = pool.getClassLoader(); } + try { - ClassLoader cl2 = getClass().getClassLoader(); - if (cl2 != null && cl2 != cl) { - pool.appendClassPath(new LoaderClassPath(cl2)); + if (loader != null) { + pool.appendClassPath(new LoaderClassPath(loader)); appended = true; } } catch (SecurityException e) { @@ -91,10 +90,6 @@ public boolean matchType(Type targetType, boolean hasAnnotation) { return matched; } - public void addClassLoader(ClassLoader cl) { - pool.appendClassPath(new LoaderClassPath(cl)); - } - protected CtClass makeCtClass(String className) { return pool.makeClass(className); } @@ -171,4 +166,8 @@ public Template loadTemplate(Type targetType) { BuildContext bc = createBuildContext(); return bc.loadTemplate(targetClass, entries, tmpls); } + + protected ClassLoader getClassLoader() { + return loader; + } } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 58e6dca1c..dcf3f7135 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -52,10 +52,7 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { // Javassist{,Beans}TemplateBuilder should be created with reflection for android. // forceBuilder - forceBuilder = new JavassistTemplateBuilder(registry); - if (cl != null) { - ((JavassistTemplateBuilder) forceBuilder).addClassLoader(cl); - } + forceBuilder = new JavassistTemplateBuilder(registry, cl); // builder TemplateBuilder builder; From 719f312468cc99eadf1f6d2af05ddd14687b3803 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Tue, 5 Feb 2013 20:29:05 +0900 Subject: [PATCH 357/409] renamed original JavassistTemplateBuilder class --- .../JavassistTemplateBuilder.java.orig | 174 ++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java.orig diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java.orig b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java.orig new file mode 100644 index 000000000..c344891a0 --- /dev/null +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java.orig @@ -0,0 +1,174 @@ +// +// MessagePack for Java +// +// Copyright (C) 2009 - 2013 FURUHASHI Sadayuki +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +package org.msgpack.template.builder; + +import java.lang.Thread; +import java.lang.reflect.Type; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javassist.ClassPool; +import javassist.CtClass; +import javassist.LoaderClassPath; +import javassist.NotFoundException; + +import org.msgpack.template.FieldOption; +import org.msgpack.template.Template; +import org.msgpack.template.AbstractTemplate; +import org.msgpack.template.TemplateRegistry; + +@SuppressWarnings({ "rawtypes", "unchecked" }) +public class JavassistTemplateBuilder extends AbstractTemplateBuilder { + + private static Logger LOG = Logger.getLogger(JavassistTemplateBuilder.class.getName()); + + public static abstract class JavassistTemplate extends AbstractTemplate { + public Class targetClass; + public Template[] templates; + + public JavassistTemplate(Class targetClass, Template[] templates) { + this.targetClass = targetClass; + this.templates = templates; + } + } + + protected ClassPool pool; + + protected int seqId = 0; + + public JavassistTemplateBuilder(TemplateRegistry registry) { + super(registry); + pool = new ClassPool(); + boolean appended = false; + ClassLoader cl = null; + try { + cl = Thread.currentThread().getContextClassLoader(); + if (cl != null) { + pool.appendClassPath(new LoaderClassPath(cl)); + appended = true; + } + } catch (SecurityException e) { + LOG.fine("Cannot append a search path of context classloader"); + e.printStackTrace(); + } + try { + ClassLoader cl2 = getClass().getClassLoader(); + if (cl2 != null && cl2 != cl) { + pool.appendClassPath(new LoaderClassPath(cl2)); + appended = true; + } + } catch (SecurityException e) { + LOG.fine("Cannot append a search path of classloader"); + e.printStackTrace(); + } + if (!appended) { + pool.appendSystemPath(); + } + } + + @Override + public boolean matchType(Type targetType, boolean hasAnnotation) { + Class targetClass = (Class) targetType; + boolean matched = matchAtClassTemplateBuilder(targetClass, hasAnnotation); + if (matched && LOG.isLoggable(Level.FINE)) { + LOG.fine("matched type: " + targetClass.getName()); + } + return matched; + } + + public void addClassLoader(ClassLoader cl) { + pool.appendClassPath(new LoaderClassPath(cl)); + } + + protected CtClass makeCtClass(String className) { + return pool.makeClass(className); + } + + protected CtClass getCtClass(String className) throws NotFoundException { + return pool.get(className); + } + + protected int nextSeqId() { + return seqId++; + } + + protected BuildContext createBuildContext() { + return new DefaultBuildContext(this); + } + + @Override + public Template buildTemplate(Class targetClass, FieldEntry[] entries) { + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + return bc.buildTemplate(targetClass, entries, tmpls); + } + + private Template[] toTemplate(FieldEntry[] from) { + Template[] tmpls = new Template[from.length]; + for (int i = 0; i < from.length; ++i) { + FieldEntry e = from[i]; + if (!e.isAvailable()) { + tmpls[i] = null; + } else { + Template tmpl = registry.lookup(e.getGenericType()); + tmpls[i] = tmpl; + } + } + return tmpls; + } + + @Override + public void writeTemplate(Type targetType, String directoryName) { + Class targetClass = (Class) targetType; + checkClassValidation(targetClass); + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); + writeTemplate(targetClass, entries, directoryName); + } + + private void writeTemplate(Class targetClass, FieldEntry[] entries, String directoryName) { + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + bc.writeTemplate(targetClass, entries, tmpls, directoryName); + } + + @Override + public Template loadTemplate(Type targetType) { + // FIXME #MN must consider how to load "reference cycle class" in next + // version + Class targetClass = (Class) targetType; + //checkClassValidation(targetClass); + try { + // check loadable + String tmplName = targetClass.getName() + "_$$_Template"; + ClassLoader cl = targetClass.getClassLoader(); + if (cl != null) { + cl.loadClass(tmplName); + } else { + return null; + } + } catch (ClassNotFoundException e) { + return null; + } + FieldOption implicitOption = getFieldOption(targetClass); + FieldEntry[] entries = toFieldEntries(targetClass, implicitOption); + Template[] tmpls = toTemplate(entries); + BuildContext bc = createBuildContext(); + return bc.loadTemplate(targetClass, entries, tmpls); + } +} From d0455bce92c794ed329b99aa108d7ea42a92dc71 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Wed, 6 Feb 2013 02:58:43 +0900 Subject: [PATCH 358/409] load javassist related classes via reflection --- .../builder/AbstractTemplateBuilder.java | 35 +++++++++++++-- .../builder/TemplateBuilderChain.java | 43 +++++++++++++++++-- 2 files changed, 71 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index b9e5d8d9e..1d013d07f 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -21,6 +21,8 @@ import java.lang.reflect.AccessibleObject; import java.lang.reflect.Field; import java.lang.reflect.GenericArrayType; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.lang.reflect.Type; import java.util.ArrayList; @@ -41,8 +43,26 @@ import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; +import org.msgpack.util.android.DalvikVmChecker; public abstract class AbstractTemplateBuilder implements TemplateBuilder { + + private static final Method javassistModifierIsAbstractMethod; + static { + Method method = null; + try { + if (!DalvikVmChecker.isDalvikVm()) { + Class clazz = Class.forName("javassist.Modifier"); + method = clazz.getMethod("isAbstract", int.class); + } + } catch (ClassNotFoundException e) { + // DalvikVM + } catch (NoSuchMethodException e) { + // TODO: should output any message ? + } finally { + javassistModifierIsAbstractMethod = method; + } + } protected TemplateRegistry registry; @@ -72,10 +92,19 @@ public Template buildTemplate(final Class targetClass, final FieldList protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); protected void checkClassValidation(final Class targetClass) { - if (javassist.Modifier.isAbstract(targetClass.getModifiers())) { - throw new TemplateBuildException( - "Cannot build template for abstract class: " + targetClass.getName()); + if (javassistModifierIsAbstractMethod != null) { + try { + if ((Boolean) javassistModifierIsAbstractMethod.invoke(null, targetClass.getModifiers())) { + throw new TemplateBuildException( + "Cannot build template for abstract class: " + targetClass.getName()); + } + } catch (IllegalAccessException e) { + new TemplateBuildException(e); + } catch (InvocationTargetException e) { + new TemplateBuildException(e); + } } + if (targetClass.isInterface()) { throw new TemplateBuildException( "Cannot build template for interface: " + targetClass.getName()); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index dcf3f7135..7356f13eb 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -17,6 +17,8 @@ // package org.msgpack.template.builder; +import java.lang.reflect.Constructor; +import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; @@ -29,6 +31,24 @@ public class TemplateBuilderChain { private static boolean enableDynamicCodeGeneration() { return !DalvikVmChecker.isDalvikVm(); } + + private static final Constructor javassistTemplateBuilderConstructor; + static { + Constructor constructor = null; + try { + if (!DalvikVmChecker.isDalvikVm()) { + Class clazz = Class.forName("org.msgpack.template.builder.JavassistTemplateBuilder"); + constructor = clazz.getConstructor(TemplateRegistry.class, ClassLoader.class); + } + } catch (ClassNotFoundException e) { + // DalvikVM + } catch (NoSuchMethodException e) { + // TODO: should output any message ? + } + finally { + javassistTemplateBuilderConstructor = constructor; + } + } protected List templateBuilders; @@ -51,14 +71,27 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { // FIXME // Javassist{,Beans}TemplateBuilder should be created with reflection for android. - // forceBuilder - forceBuilder = new JavassistTemplateBuilder(registry, cl); + TemplateBuilder javassistTemplateBuilder = null; + if (javassistTemplateBuilderConstructor != null) { + try { + javassistTemplateBuilder = (TemplateBuilder) javassistTemplateBuilderConstructor.newInstance(registry, cl); + } catch (InstantiationException e) { + new IllegalStateException(e); + } catch (IllegalAccessException e) { + new IllegalStateException(e); + } catch (InvocationTargetException e) { + new IllegalStateException(e); + } + } // builder TemplateBuilder builder; templateBuilders.add(new ArrayTemplateBuilder(registry)); templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); - if (enableDynamicCodeGeneration()) { // use dynamic code generation + if (enableDynamicCodeGeneration() && javassistTemplateBuilder != null) { // use dynamic code generation + // forceBuilder + forceBuilder = javassistTemplateBuilder; + builder = forceBuilder; templateBuilders.add(builder); // FIXME #MN next version @@ -66,7 +99,9 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { // JavassistBeansTemplateBuilder(registry)); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } else { // use reflection - builder = new ReflectionTemplateBuilder(registry); + // forceBuilder + forceBuilder = new ReflectionTemplateBuilder(registry); + builder = forceBuilder; templateBuilders.add(builder); templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } From f4da134b50f9a6a523173fab8254fdbe26488877 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 7 Feb 2013 00:32:20 +0900 Subject: [PATCH 359/409] refactored TemplateBuilderChain and AbstractTemplateBuilder classes --- .../builder/AbstractTemplateBuilder.java | 35 +------- .../ReflectionBeansTemplateBuilder.java | 2 +- .../builder/ReflectionTemplateBuilder.java | 4 + .../builder/TemplateBuilderChain.java | 87 +++++++++---------- 4 files changed, 47 insertions(+), 81 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 1d013d07f..6ad2a100d 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -21,8 +21,6 @@ import java.lang.reflect.AccessibleObject; import java.lang.reflect.Field; import java.lang.reflect.GenericArrayType; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.lang.reflect.Type; import java.util.ArrayList; @@ -43,26 +41,8 @@ import org.msgpack.template.Template; import org.msgpack.template.TemplateRegistry; import org.msgpack.template.builder.TemplateBuildException; -import org.msgpack.util.android.DalvikVmChecker; public abstract class AbstractTemplateBuilder implements TemplateBuilder { - - private static final Method javassistModifierIsAbstractMethod; - static { - Method method = null; - try { - if (!DalvikVmChecker.isDalvikVm()) { - Class clazz = Class.forName("javassist.Modifier"); - method = clazz.getMethod("isAbstract", int.class); - } - } catch (ClassNotFoundException e) { - // DalvikVM - } catch (NoSuchMethodException e) { - // TODO: should output any message ? - } finally { - javassistModifierIsAbstractMethod = method; - } - } protected TemplateRegistry registry; @@ -92,19 +72,10 @@ public Template buildTemplate(final Class targetClass, final FieldList protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); protected void checkClassValidation(final Class targetClass) { - if (javassistModifierIsAbstractMethod != null) { - try { - if ((Boolean) javassistModifierIsAbstractMethod.invoke(null, targetClass.getModifiers())) { - throw new TemplateBuildException( - "Cannot build template for abstract class: " + targetClass.getName()); - } - } catch (IllegalAccessException e) { - new TemplateBuildException(e); - } catch (InvocationTargetException e) { - new TemplateBuildException(e); - } + if (Modifier.isAbstract(targetClass.getModifiers())) { + throw new TemplateBuildException( + "Cannot build template for abstract class: " + targetClass.getName()); } - if (targetClass.isInterface()) { throw new TemplateBuildException( "Cannot build template for interface: " + targetClass.getName()); diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index d549c1f80..3274df708 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -69,7 +69,7 @@ public Object read(Unpacker unpacker, Object to, boolean required) throws IOExce } public ReflectionBeansTemplateBuilder(TemplateRegistry registry) { - super(registry); + super(registry, null); } @Override diff --git a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java index 40360cbce..1db975231 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionTemplateBuilder.java @@ -155,6 +155,10 @@ public T read(Unpacker unpacker, T to, boolean required) } public ReflectionTemplateBuilder(TemplateRegistry registry) { + this(registry, null); + } + + public ReflectionTemplateBuilder(TemplateRegistry registry, ClassLoader cl) { super(registry); } diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 7356f13eb..e653fe142 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -27,28 +27,14 @@ import org.msgpack.util.android.DalvikVmChecker; public class TemplateBuilderChain { + private static final String JAVASSIST_TEMPLATE_BUILDER_CLASS_NAME = + "org.msgpack.template.builder.JavassistTemplateBuilder"; + private static final String REFLECTION_TEMPLATE_BUILDER_CLASS_NAME = + "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { return !DalvikVmChecker.isDalvikVm(); } - - private static final Constructor javassistTemplateBuilderConstructor; - static { - Constructor constructor = null; - try { - if (!DalvikVmChecker.isDalvikVm()) { - Class clazz = Class.forName("org.msgpack.template.builder.JavassistTemplateBuilder"); - constructor = clazz.getConstructor(TemplateRegistry.class, ClassLoader.class); - } - } catch (ClassNotFoundException e) { - // DalvikVM - } catch (NoSuchMethodException e) { - // TODO: should output any message ? - } - finally { - javassistTemplateBuilderConstructor = constructor; - } - } protected List templateBuilders; @@ -71,40 +57,45 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { // FIXME // Javassist{,Beans}TemplateBuilder should be created with reflection for android. - TemplateBuilder javassistTemplateBuilder = null; - if (javassistTemplateBuilderConstructor != null) { - try { - javassistTemplateBuilder = (TemplateBuilder) javassistTemplateBuilderConstructor.newInstance(registry, cl); - } catch (InstantiationException e) { - new IllegalStateException(e); - } catch (IllegalAccessException e) { - new IllegalStateException(e); - } catch (InvocationTargetException e) { - new IllegalStateException(e); - } + String forceBuilderClassName = null; + if (enableDynamicCodeGeneration()) { // use dynamic code generation + forceBuilderClassName = JAVASSIST_TEMPLATE_BUILDER_CLASS_NAME; + } else { + forceBuilderClassName = REFLECTION_TEMPLATE_BUILDER_CLASS_NAME; } - // builder - TemplateBuilder builder; + // create builder chain + forceBuilder = createForceTemplateBuilder(forceBuilderClassName, registry, cl); + TemplateBuilder builder = forceBuilder; templateBuilders.add(new ArrayTemplateBuilder(registry)); templateBuilders.add(new OrdinalEnumTemplateBuilder(registry)); - if (enableDynamicCodeGeneration() && javassistTemplateBuilder != null) { // use dynamic code generation - // forceBuilder - forceBuilder = javassistTemplateBuilder; - - builder = forceBuilder; - templateBuilders.add(builder); - // FIXME #MN next version - // templateBuilders.add(new - // JavassistBeansTemplateBuilder(registry)); - templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); - } else { // use reflection - // forceBuilder - forceBuilder = new ReflectionTemplateBuilder(registry); - builder = forceBuilder; - templateBuilders.add(builder); - templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); - } + templateBuilders.add(builder); + templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); + } + + private static TemplateBuilder createForceTemplateBuilder(String className, + TemplateRegistry registry, ClassLoader cl) { + try { + Class c = (Class) Class.forName(className); // TODO + Constructor cons = c.getConstructor(TemplateRegistry.class, + ClassLoader.class); + return (TemplateBuilder) cons.newInstance(registry, cl); + } catch (ClassNotFoundException e) { + e.printStackTrace(); // TODO + } catch (SecurityException e) { + e.printStackTrace(); // TODO + } catch (NoSuchMethodException e) { + e.printStackTrace(); // TODO + } catch (IllegalArgumentException e) { + e.printStackTrace(); // TODO + } catch (InstantiationException e) { + e.printStackTrace(); // TODO + } catch (IllegalAccessException e) { + e.printStackTrace(); // TODO + } catch (InvocationTargetException e) { + e.printStackTrace(); // TODO + } + return null; // TODO } public TemplateBuilder getForceBuilder() { From dd3ed077c9ec5a3d61ee48136af5b2a73f60e9e2 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 9 Feb 2013 11:27:03 +0900 Subject: [PATCH 360/409] TemplateBuilderChain#createForceTemplateBuilder returns ReflectionTemplateBuilder when an exception occurs --- .../java/org/msgpack/template/builder/TemplateBuilderChain.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index e653fe142..253a6f914 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -95,7 +95,7 @@ private static TemplateBuilder createForceTemplateBuilder(String className, } catch (InvocationTargetException e) { e.printStackTrace(); // TODO } - return null; // TODO + return new ReflectionTemplateBuilder(registry, cl); } public TemplateBuilder getForceBuilder() { From fd0920e37592df489df0485ee36c28a0f3f4e98e Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Fri, 15 Feb 2013 16:33:08 +0900 Subject: [PATCH 361/409] changed pom.xml for executing unit tests in parallel --- pom.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/pom.xml b/pom.xml index d8d8ca91e..347988503 100644 --- a/pom.xml +++ b/pom.xml @@ -131,6 +131,24 @@ UTF-8 + org.apache.maven.plugins maven-surefire-plugin From bf1134b366356ee2ec4c3089e4c050bfaac7371f Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Fri, 22 Feb 2013 00:07:09 +0900 Subject: [PATCH 362/409] Support maven-findbugs-plugin FindBugs is a static analyser to look for bugs in Java code. This change enable mspgack-java to analyse potential bugs by using FindBugs. To use findbugs, please type $ mvn findbugs:findbugs Signed-off-by: Tsuyoshi Ozawa --- pom.xml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/pom.xml b/pom.xml index d8d8ca91e..2be4833c3 100644 --- a/pom.xml +++ b/pom.xml @@ -139,6 +139,15 @@ -Xmx512M + + org.codehaus.mojo + findbugs-maven-plugin + + true + true + Max + + From 50d77092c045298267ffb822b338a469aa3ea70e Mon Sep 17 00:00:00 2001 From: choplin Date: Tue, 26 Feb 2013 18:50:35 +0900 Subject: [PATCH 363/409] overload convert method with Template parameter convert method with Template is required when you convert Value to parametric type. e.g. `readAsValue(writeV((1,2,))).as[(Int,Int)]` doesn't work with msgpack-scala --- src/main/java/org/msgpack/MessagePack.java | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/main/java/org/msgpack/MessagePack.java b/src/main/java/org/msgpack/MessagePack.java index 73a677adf..a0cd4fd4c 100644 --- a/src/main/java/org/msgpack/MessagePack.java +++ b/src/main/java/org/msgpack/MessagePack.java @@ -556,6 +556,19 @@ public T convert(Value v, Class c) throws IOException { Template tmpl = registry.lookup(c); return tmpl.read(new Converter(this, v), null); } + + /** + * Converts {@link org.msgpack.type.Value} object to object according to template + * + * @since 0.6.8 + * @param v + * @param tmpl + * @return + * @throws IOException + */ + public T convert(Value v, Template tmpl) throws IOException { + return tmpl.read(new Converter(this, v), null); + } /** * Unconverts specified object to {@link org.msgpack.type.Value} object. From 4005e9b54267a6af746f81ae41e65ea1a50b43b6 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sat, 2 Mar 2013 00:37:56 +0900 Subject: [PATCH 364/409] Add addClassLoader method to JavassistTemplateBuilder The commit 364c4737699411ab6f530e7a7a485a81ada17a13 removed addClassLoader method. The method addClassLoader should come back again, because this method seems to be still useful and is used in some applications(e.g. msgpack-scala). Signed-off-by: Tsuyoshi Ozawa --- .../msgpack/template/builder/JavassistTemplateBuilder.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index a7fccdf4e..543cc7664 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -17,7 +17,6 @@ // package org.msgpack.template.builder; -import java.lang.Thread; import java.lang.reflect.Type; import java.util.logging.Level; import java.util.logging.Logger; @@ -89,6 +88,10 @@ public boolean matchType(Type targetType, boolean hasAnnotation) { } return matched; } + + public void addClassLoader(ClassLoader cl) { + pool.appendClassPath(new LoaderClassPath(cl)); + } protected CtClass makeCtClass(String className) { return pool.makeClass(className); From e88d5587b188059c435be130096253a87cfec048 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miko=C5=82aj=20Koziarkiewicz?= Date: Fri, 22 Mar 2013 22:51:58 +0100 Subject: [PATCH 365/409] json-simple pulls junit as a compile dep, which pulls hamcrest, which causes Android Maven builds to fail. Added exclusion for fix. --- pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pom.xml b/pom.xml index b24f2943e..252152c43 100644 --- a/pom.xml +++ b/pom.xml @@ -47,6 +47,12 @@ com.googlecode.json-simple json-simple 1.1.1 + + + junit + junit + + org.javassist From 10a2dcd171fc45f7e4b111e5d424b662c53c1356 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 10 Jul 2013 13:15:42 +0900 Subject: [PATCH 366/409] changed TemplateBuilderChain class -- refined exception handling within 'createForceTemplateBuilder' method --- .../builder/TemplateBuilderChain.java | 20 ++++--------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 253a6f914..b78fc9fa8 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -76,26 +76,14 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { private static TemplateBuilder createForceTemplateBuilder(String className, TemplateRegistry registry, ClassLoader cl) { try { - Class c = (Class) Class.forName(className); // TODO + Class c = (Class) Class.forName(className); Constructor cons = c.getConstructor(TemplateRegistry.class, ClassLoader.class); return (TemplateBuilder) cons.newInstance(registry, cl); - } catch (ClassNotFoundException e) { - e.printStackTrace(); // TODO - } catch (SecurityException e) { - e.printStackTrace(); // TODO - } catch (NoSuchMethodException e) { - e.printStackTrace(); // TODO - } catch (IllegalArgumentException e) { - e.printStackTrace(); // TODO - } catch (InstantiationException e) { - e.printStackTrace(); // TODO - } catch (IllegalAccessException e) { - e.printStackTrace(); // TODO - } catch (InvocationTargetException e) { - e.printStackTrace(); // TODO + } catch (Exception e) { + e.printStackTrace(); } - return new ReflectionTemplateBuilder(registry, cl); + return new ReflectionTemplateBuilder(registry, cl); } public TemplateBuilder getForceBuilder() { From 25f3c3daca176fbb67bd029e9ce6d499a31cc9ff Mon Sep 17 00:00:00 2001 From: Tom Lee Date: Thu, 25 Jul 2013 19:23:45 -0700 Subject: [PATCH 367/409] Slightly better type errors for Unpackers. --- .../java/org/msgpack/unpacker/Accept.java | 40 +++++++++++-------- .../org/msgpack/unpacker/ArrayAccept.java | 4 ++ .../msgpack/unpacker/BigIntegerAccept.java | 4 ++ .../org/msgpack/unpacker/ByteArrayAccept.java | 4 ++ .../org/msgpack/unpacker/DoubleAccept.java | 4 ++ .../java/org/msgpack/unpacker/IntAccept.java | 4 ++ .../java/org/msgpack/unpacker/LongAccept.java | 4 ++ .../java/org/msgpack/unpacker/MapAccept.java | 4 ++ .../java/org/msgpack/unpacker/SkipAccept.java | 4 ++ .../org/msgpack/unpacker/StringAccept.java | 1 + .../org/msgpack/unpacker/ValueAccept.java | 4 ++ 11 files changed, 60 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/Accept.java b/src/main/java/org/msgpack/unpacker/Accept.java index 9d2f4ba34..1af038de9 100644 --- a/src/main/java/org/msgpack/unpacker/Accept.java +++ b/src/main/java/org/msgpack/unpacker/Accept.java @@ -23,40 +23,46 @@ import org.msgpack.MessageTypeException; abstract class Accept implements BufferReferer { + private final String expected; + + Accept(String expected) { + this.expected = expected; + } + void acceptBoolean(boolean v) throws IOException { - throw new MessageTypeException("Unexpected boolean value"); + throw new MessageTypeException(String.format("Expected %s, but got boolean", expected)); } void acceptInteger(byte v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptInteger(short v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptInteger(int v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptInteger(long v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptUnsignedInteger(byte v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptUnsignedInteger(short v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptUnsignedInteger(int v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } void acceptUnsignedInteger(long v) throws IOException { - throw new MessageTypeException("Unexpected integer value"); + throw new MessageTypeException(String.format("Expected %s, but got integer value", expected)); } // void checkRawAcceptable() throws IOException { @@ -64,11 +70,11 @@ void acceptUnsignedInteger(long v) throws IOException { // } void acceptRaw(byte[] raw) throws IOException { - throw new MessageTypeException("Unexpected raw value"); + throw new MessageTypeException(String.format("Expected %s, but got raw value", expected)); } void acceptEmptyRaw() throws IOException { - throw new MessageTypeException("Unexpected raw value"); + throw new MessageTypeException(String.format("Expected %s, but got raw value", expected)); } // void checkArrayAcceptable(int size) throws IOException { @@ -76,7 +82,7 @@ void acceptEmptyRaw() throws IOException { // } void acceptArray(int size) throws IOException { - throw new MessageTypeException("Unexpected array value"); + throw new MessageTypeException(String.format("Expected %s, but got array value", expected)); } // void checkMapAcceptable(int size) throws IOException { @@ -84,22 +90,22 @@ void acceptArray(int size) throws IOException { // } void acceptMap(int size) throws IOException { - throw new MessageTypeException("Unexpected map value"); + throw new MessageTypeException(String.format("Expected %s, but got map value", expected)); } void acceptNil() throws IOException { - throw new MessageTypeException("Unexpected nil value"); + throw new MessageTypeException(String.format("Expected %s, but got nil value", expected)); } void acceptFloat(float v) throws IOException { - throw new MessageTypeException("Unexpected float value"); + throw new MessageTypeException(String.format("Expected %s, but got float value", expected)); } void acceptDouble(double v) throws IOException { - throw new MessageTypeException("Unexpected float value"); + throw new MessageTypeException(String.format("Expected %s, but got float value", expected)); } public void refer(ByteBuffer bb, boolean gift) throws IOException { - throw new MessageTypeException("Unexpected raw value"); + throw new MessageTypeException(String.format("Expected %s, but got raw value", expected)); } } diff --git a/src/main/java/org/msgpack/unpacker/ArrayAccept.java b/src/main/java/org/msgpack/unpacker/ArrayAccept.java index db2285d85..7c70df710 100644 --- a/src/main/java/org/msgpack/unpacker/ArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ArrayAccept.java @@ -20,6 +20,10 @@ final class ArrayAccept extends Accept { int size; + ArrayAccept() { + super("array"); + } + @Override void acceptArray(int size) { this.size = size; diff --git a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java index accc8367e..05f610076 100644 --- a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java +++ b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java @@ -22,6 +22,10 @@ final class BigIntegerAccept extends Accept { BigInteger value; + BigIntegerAccept() { + super("integer"); + } + @Override void acceptInteger(byte v) { this.value = BigInteger.valueOf((long) v); diff --git a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java index 18d34d84f..f80dd382e 100644 --- a/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java +++ b/src/main/java/org/msgpack/unpacker/ByteArrayAccept.java @@ -23,6 +23,10 @@ final class ByteArrayAccept extends Accept { byte[] value; + ByteArrayAccept() { + super("raw value"); + } + @Override void acceptRaw(byte[] raw) { this.value = raw; diff --git a/src/main/java/org/msgpack/unpacker/DoubleAccept.java b/src/main/java/org/msgpack/unpacker/DoubleAccept.java index a0324654f..c4506cc7c 100644 --- a/src/main/java/org/msgpack/unpacker/DoubleAccept.java +++ b/src/main/java/org/msgpack/unpacker/DoubleAccept.java @@ -20,6 +20,10 @@ final class DoubleAccept extends Accept { double value; + DoubleAccept() { + super("float"); + } + void acceptFloat(float v) { this.value = (double) v; } diff --git a/src/main/java/org/msgpack/unpacker/IntAccept.java b/src/main/java/org/msgpack/unpacker/IntAccept.java index 71bc6839b..aee720e90 100644 --- a/src/main/java/org/msgpack/unpacker/IntAccept.java +++ b/src/main/java/org/msgpack/unpacker/IntAccept.java @@ -22,6 +22,10 @@ final class IntAccept extends Accept { int value; + IntAccept() { + super("integer"); + } + @Override void acceptInteger(byte v) { this.value = (int) v; diff --git a/src/main/java/org/msgpack/unpacker/LongAccept.java b/src/main/java/org/msgpack/unpacker/LongAccept.java index 215dc67c1..fbbad3958 100644 --- a/src/main/java/org/msgpack/unpacker/LongAccept.java +++ b/src/main/java/org/msgpack/unpacker/LongAccept.java @@ -22,6 +22,10 @@ final class LongAccept extends Accept { long value; + LongAccept() { + super("integer"); + } + @Override void acceptInteger(byte v) { this.value = (long) v; diff --git a/src/main/java/org/msgpack/unpacker/MapAccept.java b/src/main/java/org/msgpack/unpacker/MapAccept.java index a687b9678..38f488adb 100644 --- a/src/main/java/org/msgpack/unpacker/MapAccept.java +++ b/src/main/java/org/msgpack/unpacker/MapAccept.java @@ -20,6 +20,10 @@ final class MapAccept extends Accept { int size; + MapAccept() { + super("map"); + } + @Override void acceptMap(int size) { this.size = size; diff --git a/src/main/java/org/msgpack/unpacker/SkipAccept.java b/src/main/java/org/msgpack/unpacker/SkipAccept.java index 7e3a98c54..696c01049 100644 --- a/src/main/java/org/msgpack/unpacker/SkipAccept.java +++ b/src/main/java/org/msgpack/unpacker/SkipAccept.java @@ -21,6 +21,10 @@ import java.nio.ByteBuffer; final class SkipAccept extends Accept { + SkipAccept() { + super(null); + } + @Override void acceptBoolean(boolean v) { } diff --git a/src/main/java/org/msgpack/unpacker/StringAccept.java b/src/main/java/org/msgpack/unpacker/StringAccept.java index a50053ceb..4eee3c0fd 100644 --- a/src/main/java/org/msgpack/unpacker/StringAccept.java +++ b/src/main/java/org/msgpack/unpacker/StringAccept.java @@ -30,6 +30,7 @@ final class StringAccept extends Accept { private CharsetDecoder decoder; public StringAccept() { + super("raw value"); this.decoder = Charset.forName("UTF-8").newDecoder() .onMalformedInput(CodingErrorAction.REPORT) .onUnmappableCharacter(CodingErrorAction.REPORT); diff --git a/src/main/java/org/msgpack/unpacker/ValueAccept.java b/src/main/java/org/msgpack/unpacker/ValueAccept.java index 9df93396c..ac0b16e8d 100644 --- a/src/main/java/org/msgpack/unpacker/ValueAccept.java +++ b/src/main/java/org/msgpack/unpacker/ValueAccept.java @@ -26,6 +26,10 @@ final class ValueAccept extends Accept { private Unconverter uc = null; + ValueAccept() { + super(null); + } + void setUnconverter(Unconverter uc) throws IOException { this.uc = uc; } From 907cfedb5726fa51ecf2a68463a626fe2b8d940c Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Fri, 16 Aug 2013 09:55:28 +0900 Subject: [PATCH 368/409] Fixed upperbound and lower bound of IntAccept#acceptInteger(long). Signed-off-by: Tsuyoshi Ozawa --- .../java/org/msgpack/unpacker/IntAccept.java | 2 +- src/test/java/org/msgpack/TestPackUnpack.java | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/unpacker/IntAccept.java b/src/main/java/org/msgpack/unpacker/IntAccept.java index aee720e90..35f33ada8 100644 --- a/src/main/java/org/msgpack/unpacker/IntAccept.java +++ b/src/main/java/org/msgpack/unpacker/IntAccept.java @@ -43,7 +43,7 @@ void acceptInteger(int v) { @Override void acceptInteger(long v) { - if (value < (long) Integer.MIN_VALUE || value > (long) Integer.MAX_VALUE) { + if (v < (long) Integer.MIN_VALUE || v > (long) Integer.MAX_VALUE) { throw new MessageTypeException(); // TODO message } this.value = (int) v; diff --git a/src/test/java/org/msgpack/TestPackUnpack.java b/src/test/java/org/msgpack/TestPackUnpack.java index 7f7201471..bcf0c2dfe 100644 --- a/src/test/java/org/msgpack/TestPackUnpack.java +++ b/src/test/java/org/msgpack/TestPackUnpack.java @@ -119,6 +119,34 @@ public void testLong(long v) throws Exception { assertEquals(bytes.length, unpacker.getReadByteCount()); } + @Test(expected=MessageTypeException.class) + public void testReadIntOverUpperBound() throws Exception { + long v = Integer.MAX_VALUE + 1L; + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(v); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); + unpacker.readInt(); + } + + @Test(expected=MessageTypeException.class) + public void testReadIntUnderLowerBound() throws Exception { + long v = Integer.MIN_VALUE - 1L; + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + packer.write(v); + byte[] bytes = out.toByteArray(); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + Unpacker unpacker = msgpack.createUnpacker(in); + unpacker.resetReadByteCount(); + unpacker.readInt(); + } + @Override public void testFloat(float v) throws Exception { MessagePack msgpack = new MessagePack(); From 380b1012eb244423ffab23713b393d5037eee37f Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 17 Aug 2013 16:32:41 +0900 Subject: [PATCH 369/409] update CHANGES.txt --- CHANGES.txt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index 369829e3d..abb48385c 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,11 +1,16 @@ -Release 0.6.8 - 20XX/XX/XX +Release 0.6.8 - 2013/08/17 BUG FIXES Replaces method calls of LinkedList#peek{First,Last}() into get{First,Last}() within LinkedBufferInput class (pull request #18) - Make encoding byte[][] work correctly (pull request #24) + Makes encoding byte[][] work correctly (pull request #24) Ports SimpleImmutableEntry for Android2.2 or below (pull request #27) + Fixes to check upper bound and lower bound of IntAccept#acceptInteger(long) correctly (pull request #43) IMPROVEMENTS MSGPACK-83 Gracefully handling new enum value with OrdinalEnum (pull request #26) + Refactors some jar dependencies for Android + Adds MessagePack#read(byte[] bytes, int off, int len, Class c) + Changes README format to Markdown + Supports maven-findbugs-plugin Release 0.6.7 - 2012/12/09 NEW FEATURES From f032780f15ffd2db5d054e164b6d926e7294bfba Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 17 Aug 2013 16:45:16 +0900 Subject: [PATCH 370/409] [maven-release-plugin] prepare release msgpack-0.6.8 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 252152c43..b837b75db 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.8-SNAPSHOT + 0.6.8 bundle http://msgpack.org/ From 57780716486a1dc4c24e4249cfaec56172ac1507 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sat, 17 Aug 2013 16:45:29 +0900 Subject: [PATCH 371/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b837b75db..809838192 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.8 + 0.6.9-SNAPSHOT bundle http://msgpack.org/ From 4c3141516b93a5643a519b9f07fe710fdbb44fc2 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sat, 17 Aug 2013 18:02:04 +0900 Subject: [PATCH 372/409] add msgpack.org.md for msgpack.org Signed-off-by: Tsuyoshi Ozawa --- msgpack.org.md | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 msgpack.org.md diff --git a/msgpack.org.md b/msgpack.org.md new file mode 100644 index 000000000..7109b173c --- /dev/null +++ b/msgpack.org.md @@ -0,0 +1,44 @@ +# MessagePack for Java + +## How to install + +You can install msgpack via maven: + + + ... + + org.msgpack + msgpack + ${msgpack.version} + + ... + + +## Simple Serialization/Deserialization/Duck Typing using Value + + // Create serialize objects. + List src = new ArrayList(); + src.add("msgpack"); + src.add("kumofs"); + src.add("viver"); + + MessagePack msgpack = new MessagePack(); + // Serialize + byte[] raw = msgpack.write(src); + + // Deserialize directly using a template + List dst1 = msgpack.read(raw, Templates.tList(Templates.TString)); + System.out.println(dst1.get(0)); + System.out.println(dst1.get(1)); + System.out.println(dst1.get(2)); + + // Or, Deserialze to Value then convert type. + Value dynamic = msgpack.read(raw); + List dst2 = new Converter(dynamic) + .read(Templates.tList(Templates.TString)); + System.out.println(dst2.get(0)); + System.out.println(dst2.get(1)); + System.out.println(dst2.get(2)); + + + From 58d9e9635fd8ec47ed438f5656f9bc7dd9d0c60e Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sun, 1 Sep 2013 03:06:09 -0700 Subject: [PATCH 373/409] Add the overview and lisence information of msgpack-java Signed-off-by: Tsuyoshi Ozawa --- README.md | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 85893db09..27f2cf557 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,19 @@ # MessagePack for Java -An implementation of [MessagePack](http://msgpack.org/) for Java. +[MessagePack](http://msgpack.org/) is an efficient binary serialization format. +It lets you exchange data among multiple languages like JSON but it's faster and smaller. +For example, small integers (like flags or error code) are encoded into a single byte, +and typical short strings only require an extra byte in addition to the strings themselves. -## Installation +You may be interested in how msgpack-java is faster than the other libraries. +To know this, please see [jvm-serializers](https://github.com/eishay/jvm-serializers/wiki), which is one of well-known benchmarks for comparing Java libraries of data serialization. + +## Quick start + +Quick start for msgpack-java is available at [Wiki](https://github.com/msgpack/msgpack-java/wiki/QuickStart). + + +## Build To build the JAR file of MessagePack, you need to install Maven (http://maven.apache.org), then type the following command: @@ -34,4 +45,7 @@ To relese the project (compile, test, tagging, deploy), please use the commands $ mvn release:prepare $ mvn release:perform +## License + +This software is distributed under [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html). From bdbf17b856fda2b4209d924ba73c8fae8b2d31b3 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sun, 1 Sep 2013 03:09:23 -0700 Subject: [PATCH 374/409] Add QuickStart link. Signed-off-by: Tsuyoshi Ozawa --- msgpack.org.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/msgpack.org.md b/msgpack.org.md index 7109b173c..17cbc0720 100644 --- a/msgpack.org.md +++ b/msgpack.org.md @@ -1,5 +1,7 @@ # MessagePack for Java +QuickStart for msgpack-java is available [here](https://github.com/msgpack/msgpack-java/wiki/QuickStart). + ## How to install You can install msgpack via maven: From e25043b077d84d9a8ee76501103dda860127895d Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Mon, 2 Sep 2013 22:19:17 +0900 Subject: [PATCH 375/409] Add CI support on OpenJDK7 and OracleJDK7. Signed-off-by: Tsuyoshi Ozawa --- .travis.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.travis.yml b/.travis.yml index 093978f87..201770aa9 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,9 +1,12 @@ language: java jdk: - openjdk6 + - openjdk7 + - oraclejdk7 branches: only: - master notifications: email: - muga.nishizawa@gmail.com + - ozawa.tsuyoshi@gmail.com From f37b317b4fe26718aab50f9597c16cd5dba15b82 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Mon, 2 Sep 2013 22:24:05 +0900 Subject: [PATCH 376/409] Show testing results by Travis CI Signed-off-by: Tsuyoshi Ozawa --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 27f2cf557..800436ffc 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,8 @@ and typical short strings only require an extra byte in addition to the strings You may be interested in how msgpack-java is faster than the other libraries. To know this, please see [jvm-serializers](https://github.com/eishay/jvm-serializers/wiki), which is one of well-known benchmarks for comparing Java libraries of data serialization. +[![Build Status](https://travis-ci.org/msgpack/msgpack-java.png?branch=master)](https://travis-ci.org/msgpack/msgpack-java) + ## Quick start Quick start for msgpack-java is available at [Wiki](https://github.com/msgpack/msgpack-java/wiki/QuickStart). From 8ff62f08d61c21a3dcf6481d1e3470cc9410e751 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20B=C3=BChler?= Date: Thu, 7 Nov 2013 12:38:55 +0100 Subject: [PATCH 377/409] OSGi - javassist.NotFoundException: org.msgpack.template.builder.JavassistTemplateBuilder$JavassistTemplate https://github.com/msgpack/msgpack-java/issues/57 --- .../org/msgpack/template/builder/JavassistTemplateBuilder.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 543cc7664..be423c512 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -21,6 +21,7 @@ import java.util.logging.Level; import java.util.logging.Logger; +import javassist.ClassClassPath; import javassist.ClassPool; import javassist.CtClass; import javassist.LoaderClassPath; @@ -59,6 +60,7 @@ public JavassistTemplateBuilder(TemplateRegistry registry) { public JavassistTemplateBuilder(TemplateRegistry registry, ClassLoader cl) { super(registry); pool = new ClassPool(); + pool.appendClassPath(new ClassClassPath(getClass())); boolean appended = false; loader = cl; if (loader == null) { From 1a025e9479678ba862b73ed72ccb3a5c892df8ab Mon Sep 17 00:00:00 2001 From: FURUHASHI Sadayuki Date: Sat, 14 Dec 2013 16:47:45 +0900 Subject: [PATCH 378/409] fixed ArrayValueImpl#equals --- src/main/java/org/msgpack/type/ArrayValueImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/org/msgpack/type/ArrayValueImpl.java b/src/main/java/org/msgpack/type/ArrayValueImpl.java index 2f87e5b85..3d9f826b0 100644 --- a/src/main/java/org/msgpack/type/ArrayValueImpl.java +++ b/src/main/java/org/msgpack/type/ArrayValueImpl.java @@ -120,6 +120,7 @@ public boolean equals(Object o) { if (!oi.hasNext() || !array[i].equals(oi.next())) { return false; } + i++; } return !oi.hasNext(); } From 8586db8cc7999e42e84de2c9714fbe75ae262742 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sun, 29 Sep 2013 00:10:19 -0700 Subject: [PATCH 379/409] Supported bin and str deserializers for minor release Based on "Upgrading MessagePack specification". For more detail, please see: https://github.com/msgpack/msgpack/blob/master/spec.md#impl-upgrade Signed-off-by: Tsuyoshi Ozawa --- .../msgpack/unpacker/MessagePackUnpacker.java | 38 ++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index f704f1717..e77e9237d 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -30,7 +30,7 @@ import org.msgpack.type.ValueType; public class MessagePackUnpacker extends AbstractUnpacker { - private static final byte REQUIRE_TO_READ_HEAD = (byte) 0xc6; + private static final byte REQUIRE_TO_READ_HEAD = (byte) 0xc1; protected final Input in; private final UnpackerStack stack = new UnpackerStack(); @@ -154,6 +154,9 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) a.acceptBoolean(true); headByte = REQUIRE_TO_READ_HEAD; return true; + //case 0xc4: // bin 8 -> see 0xd9 + //case 0xc5: // bin 16 -> see 0xda + //case 0xc6: // bin 32 -> see 0xdb case 0xca: // float a.acceptFloat(in.getFloat()); in.advance(); @@ -204,6 +207,32 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) in.advance(); headByte = REQUIRE_TO_READ_HEAD; return true; + case 0xc4: // bin 8 + case 0xd9: // str 8 + { + int count = in.getByte(); + if (count == 0) { + a.acceptEmptyRaw(); + in.advance(); + headByte = REQUIRE_TO_READ_HEAD; + return true; + } + if (count >= rawSizeLimit) { + String reason = String.format( + "Size of raw (%d) over limit at %d", + new Object[] { count, rawSizeLimit }); + throw new SizeLimitException(reason); + } + in.advance(); + if (!tryReferRawBody(a, count)) { + readRawBody(count); + a.acceptRaw(raw); + raw = null; + } + headByte = REQUIRE_TO_READ_HEAD; + return true; + } + case 0xc5: // bin 16 case 0xda: // raw 16 { int count = in.getShort() & 0xffff; @@ -228,6 +257,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) headByte = REQUIRE_TO_READ_HEAD; return true; } + case 0xc6: // bin 32 case 0xdb: // raw 32 { int count = in.getInt(); @@ -614,6 +644,12 @@ public ValueType getNextType() throws IOException { case 0xd2: // signed int 32 case 0xd3: // signed int 64 return ValueType.INTEGER; + // The definition based on a minor upgrade guide. + // https://github.com/msgpack/msgpack/blob/master/spec.md#impl-upgrade + case 0xc4: // bin 8 + case 0xc5: // bin 16 + case 0xc6: // bin 32 + case 0xd9: // str8 case 0xda: // raw 16 case 0xdb: // raw 32 return ValueType.RAW; From 87b4538330639bb61670bdc2b309d2e8eb58b56a Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 18 Dec 2013 10:10:13 -0800 Subject: [PATCH 380/409] [maven-release-plugin] prepare release msgpack-0.6.9 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 809838192..c449ef43a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.9-SNAPSHOT + 0.6.9 bundle http://msgpack.org/ From 6909073161ccb427c56ba09a2ff07620535d4575 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Wed, 18 Dec 2013 10:10:18 -0800 Subject: [PATCH 381/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c449ef43a..7c751c8a2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.9 + 0.6.10-SNAPSHOT bundle http://msgpack.org/ From e92cded36a7ff80cd1ed50e58989553d3075142e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christian=20B=C3=BChler?= Date: Fri, 17 Jan 2014 12:28:40 +0100 Subject: [PATCH 382/409] 0.6.10-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 809838192..7c751c8a2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.9-SNAPSHOT + 0.6.10-SNAPSHOT bundle http://msgpack.org/ From 2c17b3e1e678ee124954779b9d1462650a9bc4b8 Mon Sep 17 00:00:00 2001 From: Takatoshi Kondo Date: Mon, 20 Jan 2014 20:07:43 +0000 Subject: [PATCH 383/409] Replaced testShort with testByte in testByte function. --- src/test/java/org/msgpack/TestSet.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index 848620a3c..eddd69ed2 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -42,9 +42,9 @@ public void testBooleanArray(boolean[] v) throws Exception { } public void testByte() throws Exception { - testShort((byte) 0); - testShort((byte) -1); - testShort((byte) 1); + testByte((byte) 0); + testByte((byte) -1); + testByte((byte) 1); testByte(Byte.MIN_VALUE); testByte(Byte.MAX_VALUE); byte[] bytes = new byte[1000]; From 907ca8652ee3a8f5e54b19f9c9a2c32b24f20268 Mon Sep 17 00:00:00 2001 From: Takatoshi Kondo Date: Tue, 21 Jan 2014 21:23:00 +0000 Subject: [PATCH 384/409] Added override annotation. --- src/main/java/org/msgpack/unpacker/DoubleAccept.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/msgpack/unpacker/DoubleAccept.java b/src/main/java/org/msgpack/unpacker/DoubleAccept.java index c4506cc7c..146798e90 100644 --- a/src/main/java/org/msgpack/unpacker/DoubleAccept.java +++ b/src/main/java/org/msgpack/unpacker/DoubleAccept.java @@ -24,10 +24,12 @@ final class DoubleAccept extends Accept { super("float"); } + @Override void acceptFloat(float v) { this.value = (double) v; } + @Override void acceptDouble(double v) { this.value = v; } From e02ff5dc9b8f26c51ac3a75658cfa8e28ef1fe58 Mon Sep 17 00:00:00 2001 From: "Taro L. Saito" Date: Wed, 22 Jan 2014 12:42:11 +0900 Subject: [PATCH 385/409] Add xerial to the notification list --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 201770aa9..9b5d5660f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,3 +10,4 @@ notifications: email: - muga.nishizawa@gmail.com - ozawa.tsuyoshi@gmail.com + - leo@xerial.org From 7ea2f9869dc54d6dcf7665c64cdc68596db853fa Mon Sep 17 00:00:00 2001 From: "Taro L. Saito" Date: Thu, 23 Jan 2014 09:56:24 +0900 Subject: [PATCH 386/409] Monitor develop branch in travis-ci. --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 9b5d5660f..72729a5f3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ jdk: branches: only: - master + - develop notifications: email: - muga.nishizawa@gmail.com From 6cee72343ec67c4dacbed4bb55a84db4f41b3114 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Sun, 9 Feb 2014 19:14:10 -0800 Subject: [PATCH 387/409] #1: updated Javassist: 3.16.1-GA to 3.18.1-GA because of JAVASSIST-205 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7c751c8a2..635a62820 100644 --- a/pom.xml +++ b/pom.xml @@ -57,7 +57,7 @@ org.javassist javassist - 3.16.1-GA + 3.18.1-GA compile From 09d20987887440a44d874ef10daf3ebf4b2885e2 Mon Sep 17 00:00:00 2001 From: Muga Nishizawa Date: Thu, 13 Feb 2014 10:54:23 -0800 Subject: [PATCH 388/409] minor change of AbstractRawValue and StringRawValueImpl classes --- src/main/java/org/msgpack/type/AbstractRawValue.java | 4 +++- src/main/java/org/msgpack/type/StringRawValueImpl.java | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/type/AbstractRawValue.java b/src/main/java/org/msgpack/type/AbstractRawValue.java index 41f087dad..8fc7de810 100644 --- a/src/main/java/org/msgpack/type/AbstractRawValue.java +++ b/src/main/java/org/msgpack/type/AbstractRawValue.java @@ -25,6 +25,8 @@ import java.nio.charset.CodingErrorAction; abstract class AbstractRawValue extends AbstractValue implements RawValue { + static final String UTF8 = "UTF-8"; + @Override public ValueType getType() { return ValueType.RAW; @@ -75,7 +77,7 @@ public StringBuilder toString(StringBuilder sb) { } else { // don't throw encoding error exception // ignore malformed bytes - CharsetDecoder decoder = Charset.forName("UTF-8").newDecoder() + CharsetDecoder decoder = Charset.forName(UTF8).newDecoder() .onMalformedInput(CodingErrorAction.IGNORE) .onUnmappableCharacter(CodingErrorAction.IGNORE); try { diff --git a/src/main/java/org/msgpack/type/StringRawValueImpl.java b/src/main/java/org/msgpack/type/StringRawValueImpl.java index 635110c88..7d39b954f 100644 --- a/src/main/java/org/msgpack/type/StringRawValueImpl.java +++ b/src/main/java/org/msgpack/type/StringRawValueImpl.java @@ -34,7 +34,7 @@ class StringRawValueImpl extends AbstractRawValue { public byte[] getByteArray() { try { // TODO encoding error? - return string.getBytes("UTF-8"); + return string.getBytes(UTF8); } catch (UnsupportedEncodingException ex) { throw new MessageTypeException(ex); } From fb6d053903c3f21bdec7d147294ae810261174b2 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Thu, 20 Feb 2014 10:18:02 -0800 Subject: [PATCH 389/409] Converted tab into 4 spaces. Signed-off-by: Tsuyoshi Ozawa --- src/test/java/org/msgpack/TestSet.java | 582 ++++++++++++------------- 1 file changed, 291 insertions(+), 291 deletions(-) diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index eddd69ed2..6d5b8c73d 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -17,258 +17,258 @@ public class TestSet { public void testBoolean() throws Exception { - testBoolean(false); - testBoolean(true); + testBoolean(false); + testBoolean(true); } public void testBoolean(boolean v) throws Exception { } public void testBooleanArray() throws Exception { - testBooleanArray(null); - testBooleanArray(new boolean[0]); - testBooleanArray(new boolean[] { true }); - testBooleanArray(new boolean[] { false }); - testBooleanArray(new boolean[] { true, false }); - Random rand = new Random(); - boolean[] v = new boolean[100]; - for (int i = 0; i < v.length; ++i) { - v[i] = rand.nextBoolean(); - } - testBooleanArray(v); + testBooleanArray(null); + testBooleanArray(new boolean[0]); + testBooleanArray(new boolean[] { true }); + testBooleanArray(new boolean[] { false }); + testBooleanArray(new boolean[] { true, false }); + Random rand = new Random(); + boolean[] v = new boolean[100]; + for (int i = 0; i < v.length; ++i) { + v[i] = rand.nextBoolean(); + } + testBooleanArray(v); } public void testBooleanArray(boolean[] v) throws Exception { } public void testByte() throws Exception { - testByte((byte) 0); - testByte((byte) -1); - testByte((byte) 1); - testByte(Byte.MIN_VALUE); - testByte(Byte.MAX_VALUE); - byte[] bytes = new byte[1000]; - Random rand = new Random(); - rand.nextBytes(bytes); - for (int i = 0; i < bytes.length; ++i) { - testByte(bytes[i]); - } + testByte((byte) 0); + testByte((byte) -1); + testByte((byte) 1); + testByte(Byte.MIN_VALUE); + testByte(Byte.MAX_VALUE); + byte[] bytes = new byte[1000]; + Random rand = new Random(); + rand.nextBytes(bytes); + for (int i = 0; i < bytes.length; ++i) { + testByte(bytes[i]); + } } public void testByte(byte v) throws Exception { } public void testByteArray() throws Exception { - testByteArray(null); - Random rand = new Random(System.currentTimeMillis()); - byte[] b0 = new byte[0]; - testByteArray(b0); - byte[] b1 = new byte[10]; - rand.nextBytes(b1); - testByteArray(b1); - byte[] b2 = new byte[1024]; - rand.nextBytes(b2); - testByteArray(b2); + testByteArray(null); + Random rand = new Random(System.currentTimeMillis()); + byte[] b0 = new byte[0]; + testByteArray(b0); + byte[] b1 = new byte[10]; + rand.nextBytes(b1); + testByteArray(b1); + byte[] b2 = new byte[1024]; + rand.nextBytes(b2); + testByteArray(b2); } public void testByteArray(byte[] v) throws Exception { } public void testShort() throws Exception { - testShort((short) 0); - testShort((short) -1); - testShort((short) 1); - testShort(Short.MIN_VALUE); - testShort(Short.MAX_VALUE); - Random rand = new Random(); - byte[] bytes = new byte[2000]; - rand.nextBytes(bytes); - for (int i = 0; i < bytes.length; i = i + 2) { - testShort((short) ((bytes[i] << 8) | (bytes[i + 1] & 0xff))); - } + testShort((short) 0); + testShort((short) -1); + testShort((short) 1); + testShort(Short.MIN_VALUE); + testShort(Short.MAX_VALUE); + Random rand = new Random(); + byte[] bytes = new byte[2000]; + rand.nextBytes(bytes); + for (int i = 0; i < bytes.length; i = i + 2) { + testShort((short) ((bytes[i] << 8) | (bytes[i + 1] & 0xff))); + } } public void testShort(short v) throws Exception { } public void testShortArray() throws Exception { - testShortArray(null); - testShortArray(new short[0]); - testShortArray(new short[] { 0 }); - testShortArray(new short[] { -1 }); - testShortArray(new short[] { 1 }); - testShortArray(new short[] { 0, -1, 1 }); - testShortArray(new short[] { Short.MIN_VALUE }); - testShortArray(new short[] { Short.MAX_VALUE }); - testShortArray(new short[] { Short.MIN_VALUE, Short.MAX_VALUE }); - Random rand = new Random(); - byte[] bytes = new byte[2]; - short[] v = new short[100]; - for (int i = 0; i < v.length; ++i) { - rand.nextBytes(bytes); - v[i] = (short) ((bytes[0] << 8) | (bytes[1] & 0xff)); - } - testShortArray(v); + testShortArray(null); + testShortArray(new short[0]); + testShortArray(new short[] { 0 }); + testShortArray(new short[] { -1 }); + testShortArray(new short[] { 1 }); + testShortArray(new short[] { 0, -1, 1 }); + testShortArray(new short[] { Short.MIN_VALUE }); + testShortArray(new short[] { Short.MAX_VALUE }); + testShortArray(new short[] { Short.MIN_VALUE, Short.MAX_VALUE }); + Random rand = new Random(); + byte[] bytes = new byte[2]; + short[] v = new short[100]; + for (int i = 0; i < v.length; ++i) { + rand.nextBytes(bytes); + v[i] = (short) ((bytes[0] << 8) | (bytes[1] & 0xff)); + } + testShortArray(v); } public void testShortArray(short[] v) throws Exception { } public void testInteger() throws Exception { - testInteger(0); - testInteger(-1); - testInteger(1); - testInteger(Integer.MIN_VALUE); - testInteger(Integer.MAX_VALUE); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testInteger(rand.nextInt()); - } + testInteger(0); + testInteger(-1); + testInteger(1); + testInteger(Integer.MIN_VALUE); + testInteger(Integer.MAX_VALUE); + Random rand = new Random(); + for (int i = 0; i < 1000; i++) { + testInteger(rand.nextInt()); + } } public void testInteger(int v) throws Exception { } public void testIntegerArray() throws Exception { - testIntegerArray(null); - testIntegerArray(new int[0]); - testIntegerArray(new int[] { 0 }); - testIntegerArray(new int[] { -1 }); - testIntegerArray(new int[] { 1 }); - testIntegerArray(new int[] { 0, -1, 1 }); - testIntegerArray(new int[] { Integer.MIN_VALUE }); - testIntegerArray(new int[] { Integer.MAX_VALUE }); - testIntegerArray(new int[] { Integer.MIN_VALUE, Integer.MAX_VALUE }); - Random rand = new Random(); - int[] v = new int[100]; - for (int i = 0; i < v.length; ++i) { - v[i] = rand.nextInt(); - } - testIntegerArray(v); + testIntegerArray(null); + testIntegerArray(new int[0]); + testIntegerArray(new int[] { 0 }); + testIntegerArray(new int[] { -1 }); + testIntegerArray(new int[] { 1 }); + testIntegerArray(new int[] { 0, -1, 1 }); + testIntegerArray(new int[] { Integer.MIN_VALUE }); + testIntegerArray(new int[] { Integer.MAX_VALUE }); + testIntegerArray(new int[] { Integer.MIN_VALUE, Integer.MAX_VALUE }); + Random rand = new Random(); + int[] v = new int[100]; + for (int i = 0; i < v.length; ++i) { + v[i] = rand.nextInt(); + } + testIntegerArray(v); } public void testIntegerArray(int[] v) throws Exception { } public void testLong() throws Exception { - testLong(0); - testLong(-1); - testLong(1); - testLong(Long.MIN_VALUE); - testLong(Long.MAX_VALUE); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testLong(rand.nextLong()); - } + testLong(0); + testLong(-1); + testLong(1); + testLong(Long.MIN_VALUE); + testLong(Long.MAX_VALUE); + Random rand = new Random(); + for (int i = 0; i < 1000; i++) { + testLong(rand.nextLong()); + } } public void testLong(long v) throws Exception { } public void testLongArray() throws Exception { - testLongArray(null); - testLongArray(new long[0]); - testLongArray(new long[] { 0 }); - testLongArray(new long[] { -1 }); - testLongArray(new long[] { 1 }); - testLongArray(new long[] { 0, -1, 1 }); - testLongArray(new long[] { Long.MIN_VALUE }); - testLongArray(new long[] { Long.MAX_VALUE }); - testLongArray(new long[] { Long.MIN_VALUE, Long.MAX_VALUE }); - Random rand = new Random(); - long[] v = new long[100]; - for (int i = 0; i < v.length; ++i) { - v[i] = rand.nextLong(); - } - testLongArray(v); + testLongArray(null); + testLongArray(new long[0]); + testLongArray(new long[] { 0 }); + testLongArray(new long[] { -1 }); + testLongArray(new long[] { 1 }); + testLongArray(new long[] { 0, -1, 1 }); + testLongArray(new long[] { Long.MIN_VALUE }); + testLongArray(new long[] { Long.MAX_VALUE }); + testLongArray(new long[] { Long.MIN_VALUE, Long.MAX_VALUE }); + Random rand = new Random(); + long[] v = new long[100]; + for (int i = 0; i < v.length; ++i) { + v[i] = rand.nextLong(); + } + testLongArray(v); } public void testLongArray(long[] v) throws Exception { } public void testFloat() throws Exception { - testFloat((float) 0.0); - testFloat((float) -0.0); - testFloat((float) 1.0); - testFloat((float) -1.0); - testFloat(Float.MAX_VALUE); - testFloat(Float.MIN_VALUE); - testFloat(Float.NaN); - testFloat(Float.NEGATIVE_INFINITY); - testFloat(Float.POSITIVE_INFINITY); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testFloat(rand.nextFloat()); - } + testFloat((float) 0.0); + testFloat((float) -0.0); + testFloat((float) 1.0); + testFloat((float) -1.0); + testFloat(Float.MAX_VALUE); + testFloat(Float.MIN_VALUE); + testFloat(Float.NaN); + testFloat(Float.NEGATIVE_INFINITY); + testFloat(Float.POSITIVE_INFINITY); + Random rand = new Random(); + for (int i = 0; i < 1000; i++) { + testFloat(rand.nextFloat()); + } } public void testFloat(float v) throws Exception { } public void testFloatArray() throws Exception { - testFloatArray(null); - testFloatArray(new float[0]); - testFloatArray(new float[] { (float) 0.0 }); - testFloatArray(new float[] { (float) -0.0 }); - testFloatArray(new float[] { (float) -1.0 }); - testFloatArray(new float[] { (float) 1.0 }); - testFloatArray(new float[] { (float) 0.0, (float) -0.0, (float) -1.0, (float) 1.0 }); - testFloatArray(new float[] { Float.MAX_VALUE }); - testFloatArray(new float[] { Float.MIN_VALUE }); - testFloatArray(new float[] { Float.NaN }); - testFloatArray(new float[] { Float.NEGATIVE_INFINITY }); - testFloatArray(new float[] { Float.POSITIVE_INFINITY }); - testFloatArray(new float[] { Float.MAX_VALUE, Float.MIN_VALUE, Float.NaN, Float.NEGATIVE_INFINITY, Float.POSITIVE_INFINITY }); - Random rand = new Random(); - float[] v = new float[100]; - for (int i = 0; i < v.length; ++i) { - v[i] = rand.nextFloat(); - } - testFloatArray(v); + testFloatArray(null); + testFloatArray(new float[0]); + testFloatArray(new float[] { (float) 0.0 }); + testFloatArray(new float[] { (float) -0.0 }); + testFloatArray(new float[] { (float) -1.0 }); + testFloatArray(new float[] { (float) 1.0 }); + testFloatArray(new float[] { (float) 0.0, (float) -0.0, (float) -1.0, (float) 1.0 }); + testFloatArray(new float[] { Float.MAX_VALUE }); + testFloatArray(new float[] { Float.MIN_VALUE }); + testFloatArray(new float[] { Float.NaN }); + testFloatArray(new float[] { Float.NEGATIVE_INFINITY }); + testFloatArray(new float[] { Float.POSITIVE_INFINITY }); + testFloatArray(new float[] { Float.MAX_VALUE, Float.MIN_VALUE, Float.NaN, Float.NEGATIVE_INFINITY, Float.POSITIVE_INFINITY }); + Random rand = new Random(); + float[] v = new float[100]; + for (int i = 0; i < v.length; ++i) { + v[i] = rand.nextFloat(); + } + testFloatArray(v); } public void testFloatArray(float[] v) throws Exception { } public void testDouble() throws Exception { - testDouble((double) 0.0); - testDouble((double) -0.0); - testDouble((double) 1.0); - testDouble((double) -1.0); - testDouble(Double.MAX_VALUE); - testDouble(Double.MIN_VALUE); - testDouble(Double.NaN); - testDouble(Double.NEGATIVE_INFINITY); - testDouble(Double.POSITIVE_INFINITY); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testDouble(rand.nextDouble()); - } + testDouble((double) 0.0); + testDouble((double) -0.0); + testDouble((double) 1.0); + testDouble((double) -1.0); + testDouble(Double.MAX_VALUE); + testDouble(Double.MIN_VALUE); + testDouble(Double.NaN); + testDouble(Double.NEGATIVE_INFINITY); + testDouble(Double.POSITIVE_INFINITY); + Random rand = new Random(); + for (int i = 0; i < 1000; i++) { + testDouble(rand.nextDouble()); + } } public void testDouble(double v) throws Exception { } public void testDoubleArray() throws Exception { - testDoubleArray(null); - testDoubleArray(new double[0]); - testDoubleArray(new double[] { (double) 0.0 }); - testDoubleArray(new double[] { (double) -0.0 }); - testDoubleArray(new double[] { (double) -1.0 }); - testDoubleArray(new double[] { (double) 1.0 }); - testDoubleArray(new double[] { (double) 0.0, (double) -0.0, (double) -1.0, (double) 1.0 }); - testDoubleArray(new double[] { Double.MAX_VALUE }); - testDoubleArray(new double[] { Double.MIN_VALUE }); - testDoubleArray(new double[] { Double.NaN }); - testDoubleArray(new double[] { Double.NEGATIVE_INFINITY }); - testDoubleArray(new double[] { Double.POSITIVE_INFINITY }); - testDoubleArray(new double[] { Double.MAX_VALUE, Double.MIN_VALUE, Double.NaN, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY }); - Random rand = new Random(); - double[] v = new double[100]; - for (int i = 0; i < v.length; ++i) { - v[i] = rand.nextDouble(); - } - testDoubleArray(v); + testDoubleArray(null); + testDoubleArray(new double[0]); + testDoubleArray(new double[] { (double) 0.0 }); + testDoubleArray(new double[] { (double) -0.0 }); + testDoubleArray(new double[] { (double) -1.0 }); + testDoubleArray(new double[] { (double) 1.0 }); + testDoubleArray(new double[] { (double) 0.0, (double) -0.0, (double) -1.0, (double) 1.0 }); + testDoubleArray(new double[] { Double.MAX_VALUE }); + testDoubleArray(new double[] { Double.MIN_VALUE }); + testDoubleArray(new double[] { Double.NaN }); + testDoubleArray(new double[] { Double.NEGATIVE_INFINITY }); + testDoubleArray(new double[] { Double.POSITIVE_INFINITY }); + testDoubleArray(new double[] { Double.MAX_VALUE, Double.MIN_VALUE, Double.NaN, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY }); + Random rand = new Random(); + double[] v = new double[100]; + for (int i = 0; i < v.length; ++i) { + v[i] = rand.nextDouble(); + } + testDoubleArray(v); } public void testDoubleArray(double[] v) throws Exception { @@ -278,159 +278,159 @@ public void testNil() throws Exception { } public void testString() throws Exception { - testString(null); - testString(""); - testString("a"); - testString("ab"); - testString("abc"); - StringBuilder sb; - int len; - // small size string - { - for (int i = 0; i < 100; i++) { - sb = new StringBuilder(); - len = (int) Math.random() % 31 + 1; - for (int j = 0; j < len; j++) { - sb.append('a' + ((int) Math.random()) & 26); - } - testString(sb.toString()); - } - } - // medium size string - { - for (int i = 0; i < 100; i++) { - sb = new StringBuilder(); - len = (int) Math.random() % 100 + (1 << 15); - for (int j = 0; j < len; j++) { - sb.append('a' + ((int) Math.random()) & 26); - } - testString(sb.toString()); - } - } - // large size string - { - for (int i = 0; i < 10; i++) { - sb = new StringBuilder(); - len = (int) Math.random() % 100 + (1 << 31); - for (int j = 0; j < len; j++) { - sb.append('a' + ((int) Math.random()) & 26); - } - testString(sb.toString()); - } - } + testString(null); + testString(""); + testString("a"); + testString("ab"); + testString("abc"); + StringBuilder sb; + int len; + // small size string + { + for (int i = 0; i < 100; i++) { + sb = new StringBuilder(); + len = (int) Math.random() % 31 + 1; + for (int j = 0; j < len; j++) { + sb.append('a' + ((int) Math.random()) & 26); + } + testString(sb.toString()); + } + } + // medium size string + { + for (int i = 0; i < 100; i++) { + sb = new StringBuilder(); + len = (int) Math.random() % 100 + (1 << 15); + for (int j = 0; j < len; j++) { + sb.append('a' + ((int) Math.random()) & 26); + } + testString(sb.toString()); + } + } + // large size string + { + for (int i = 0; i < 10; i++) { + sb = new StringBuilder(); + len = (int) Math.random() % 100 + (1 << 31); + for (int j = 0; j < len; j++) { + sb.append('a' + ((int) Math.random()) & 26); + } + testString(sb.toString()); + } + } } public void testString(String v) throws Exception { } public void testByteBuffer() throws Exception { - testByteBuffer(null); - Random rand = new Random(System.currentTimeMillis()); - byte[] b0 = new byte[0]; - testByteBuffer(ByteBuffer.wrap(b0)); - byte[] b1 = new byte[10]; - rand.nextBytes(b1); - testByteBuffer(ByteBuffer.wrap(b1)); - byte[] b2 = new byte[1024]; - rand.nextBytes(b2); - testByteBuffer(ByteBuffer.wrap(b2)); + testByteBuffer(null); + Random rand = new Random(System.currentTimeMillis()); + byte[] b0 = new byte[0]; + testByteBuffer(ByteBuffer.wrap(b0)); + byte[] b1 = new byte[10]; + rand.nextBytes(b1); + testByteBuffer(ByteBuffer.wrap(b1)); + byte[] b2 = new byte[1024]; + rand.nextBytes(b2); + testByteBuffer(ByteBuffer.wrap(b2)); } public void testByteBuffer(ByteBuffer v) throws Exception { } public void testList() throws Exception { - testList(null, Integer.class); - List list0 = new ArrayList(); - testList(list0, Integer.class); - List list1 = new ArrayList(); - Random rand1 = new Random(); - for (int i = 0; i < 10; ++i) { - list1.add(rand1.nextInt()); - } - testList(list1, Integer.class); - List list2 = new ArrayList(); - Random rand2 = new Random(); - for (int i = 0; i < 100; ++i) { - list2.add("xx" + rand2.nextInt()); - } - testList(list2, String.class); - List list3 = new ArrayList(); - Random rand3 = new Random(); - for (int i = 0; i < 1000; ++i) { - list3.add("xx" + rand3.nextInt()); - } - testList(list3, String.class); + testList(null, Integer.class); + List list0 = new ArrayList(); + testList(list0, Integer.class); + List list1 = new ArrayList(); + Random rand1 = new Random(); + for (int i = 0; i < 10; ++i) { + list1.add(rand1.nextInt()); + } + testList(list1, Integer.class); + List list2 = new ArrayList(); + Random rand2 = new Random(); + for (int i = 0; i < 100; ++i) { + list2.add("xx" + rand2.nextInt()); + } + testList(list2, String.class); + List list3 = new ArrayList(); + Random rand3 = new Random(); + for (int i = 0; i < 1000; ++i) { + list3.add("xx" + rand3.nextInt()); + } + testList(list3, String.class); } public void testList(List v, Class elementClass) throws Exception { } public void testMap() throws Exception { - testMap(null, Integer.class, Integer.class); - Map map0 = new HashMap(); - testMap(map0, Integer.class, Integer.class); - Map map1 = new HashMap(); - Random rand1 = new Random(); - for (int i = 0; i < 10; ++i) { - map1.put(rand1.nextInt(), rand1.nextInt()); - } - testMap(map1, Integer.class, Integer.class); - Map map2 = new HashMap(); - Random rand2 = new Random(); - for (int i = 0; i < 100; ++i) { - map2.put("xx" + rand2.nextInt(), rand2.nextInt()); - } - testMap(map2, String.class, Integer.class); - Map map3 = new HashMap(); - Random rand3= new Random(); - for (int i = 0; i < 1000; ++i) { - map3.put("xx" + rand3.nextInt(), rand3.nextInt()); - } - testMap(map3, String.class, Integer.class); + testMap(null, Integer.class, Integer.class); + Map map0 = new HashMap(); + testMap(map0, Integer.class, Integer.class); + Map map1 = new HashMap(); + Random rand1 = new Random(); + for (int i = 0; i < 10; ++i) { + map1.put(rand1.nextInt(), rand1.nextInt()); + } + testMap(map1, Integer.class, Integer.class); + Map map2 = new HashMap(); + Random rand2 = new Random(); + for (int i = 0; i < 100; ++i) { + map2.put("xx" + rand2.nextInt(), rand2.nextInt()); + } + testMap(map2, String.class, Integer.class); + Map map3 = new HashMap(); + Random rand3= new Random(); + for (int i = 0; i < 1000; ++i) { + map3.put("xx" + rand3.nextInt(), rand3.nextInt()); + } + testMap(map3, String.class, Integer.class); } public void testMap(Map v, Class keyElementClass, Class valueElementClass) throws Exception { } public void testBigInteger() throws Exception { - testBigInteger(null); - testBigInteger(BigInteger.valueOf(0)); - testBigInteger(BigInteger.valueOf(-1)); - testBigInteger(BigInteger.valueOf(1)); - testBigInteger(BigInteger.valueOf(Integer.MIN_VALUE)); - testBigInteger(BigInteger.valueOf(Integer.MAX_VALUE)); - testBigInteger(BigInteger.valueOf(Long.MIN_VALUE)); - testBigInteger(BigInteger.valueOf(Long.MAX_VALUE)); - BigInteger max = BigInteger.valueOf(Long.MAX_VALUE).setBit(63); - testBigInteger(max); - Random rand = new Random(); - for (int i = 0; i < 1000; i++) { - testBigInteger(max.subtract(BigInteger.valueOf(Math.abs(rand.nextLong())))); - } + testBigInteger(null); + testBigInteger(BigInteger.valueOf(0)); + testBigInteger(BigInteger.valueOf(-1)); + testBigInteger(BigInteger.valueOf(1)); + testBigInteger(BigInteger.valueOf(Integer.MIN_VALUE)); + testBigInteger(BigInteger.valueOf(Integer.MAX_VALUE)); + testBigInteger(BigInteger.valueOf(Long.MIN_VALUE)); + testBigInteger(BigInteger.valueOf(Long.MAX_VALUE)); + BigInteger max = BigInteger.valueOf(Long.MAX_VALUE).setBit(63); + testBigInteger(max); + Random rand = new Random(); + for (int i = 0; i < 1000; i++) { + testBigInteger(max.subtract(BigInteger.valueOf(Math.abs(rand.nextLong())))); + } } public void testBigInteger(BigInteger v) throws Exception { } public void testBigDecimal() throws Exception { - testBigDecimal(null); - testBigDecimal(BigDecimal.valueOf(0)); - testBigDecimal(BigDecimal.valueOf(-1)); - testBigDecimal(BigDecimal.valueOf(1)); - testBigDecimal(BigDecimal.valueOf(Integer.MIN_VALUE)); - testBigDecimal(BigDecimal.valueOf(Integer.MAX_VALUE)); - testBigDecimal(BigDecimal.valueOf(Long.MIN_VALUE)); - testBigDecimal(BigDecimal.valueOf(Long.MAX_VALUE)); + testBigDecimal(null); + testBigDecimal(BigDecimal.valueOf(0)); + testBigDecimal(BigDecimal.valueOf(-1)); + testBigDecimal(BigDecimal.valueOf(1)); + testBigDecimal(BigDecimal.valueOf(Integer.MIN_VALUE)); + testBigDecimal(BigDecimal.valueOf(Integer.MAX_VALUE)); + testBigDecimal(BigDecimal.valueOf(Long.MIN_VALUE)); + testBigDecimal(BigDecimal.valueOf(Long.MAX_VALUE)); } public void testBigDecimal(BigDecimal v) throws Exception { } public void testDate() throws Exception { - testDate(null); - Date d0 = new Date(); - testDate(d0); + testDate(null); + Date d0 = new Date(); + testDate(d0); } public void testDate(Date v) throws Exception { From e37e03af7c1b78ee79730b68aa1ac528973e1ec1 Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Thu, 20 Feb 2014 10:36:53 -0800 Subject: [PATCH 390/409] Fix BigIntegerAccept to read byte/short values correctly Signed-off-by: Tsuyoshi Ozawa --- src/main/java/org/msgpack/unpacker/BigIntegerAccept.java | 4 ++-- src/test/java/org/msgpack/TestSet.java | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java index 05f610076..9e91b7ba7 100644 --- a/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java +++ b/src/main/java/org/msgpack/unpacker/BigIntegerAccept.java @@ -48,12 +48,12 @@ void acceptInteger(long v) { @Override void acceptUnsignedInteger(byte v) { - BigInteger.valueOf((long) (v & 0xff)); + this.value = BigInteger.valueOf((long) (v & 0xff)); } @Override void acceptUnsignedInteger(short v) { - BigInteger.valueOf((long) (v & 0xffff)); + this.value = BigInteger.valueOf((long) (v & 0xffff)); } @Override diff --git a/src/test/java/org/msgpack/TestSet.java b/src/test/java/org/msgpack/TestSet.java index 6d5b8c73d..638aefee5 100644 --- a/src/test/java/org/msgpack/TestSet.java +++ b/src/test/java/org/msgpack/TestSet.java @@ -398,6 +398,8 @@ public void testBigInteger() throws Exception { testBigInteger(BigInteger.valueOf(0)); testBigInteger(BigInteger.valueOf(-1)); testBigInteger(BigInteger.valueOf(1)); + testBigInteger(BigInteger.valueOf(128l)); + testBigInteger(BigInteger.valueOf(512l)); testBigInteger(BigInteger.valueOf(Integer.MIN_VALUE)); testBigInteger(BigInteger.valueOf(Integer.MAX_VALUE)); testBigInteger(BigInteger.valueOf(Long.MIN_VALUE)); From 183097620776054bac2269e78df9d66eb6e8b87f Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Thu, 27 Feb 2014 01:29:09 +0900 Subject: [PATCH 391/409] [maven-release-plugin] prepare release msgpack-0.6.10 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 635a62820..b1a7d6480 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.10-SNAPSHOT + 0.6.10 bundle http://msgpack.org/ From 6559a77eb1eb6d2a0c934fdd64433160f33ec0b7 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Thu, 27 Feb 2014 01:29:17 +0900 Subject: [PATCH 392/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b1a7d6480..653685251 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.10 + 0.6.11-SNAPSHOT bundle http://msgpack.org/ From 838d641d4354530470c46cb75666fc725815f05e Mon Sep 17 00:00:00 2001 From: August Shi Date: Sat, 19 Apr 2014 18:34:57 -0500 Subject: [PATCH 393/409] Patch: an interface also has the abstract modifier, so in order to correctly check if a passed in type is an interface, should check for interface modifier before checking for abstract modifier --- .../msgpack/template/builder/AbstractTemplateBuilder.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java index 6ad2a100d..82041e9bc 100644 --- a/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/AbstractTemplateBuilder.java @@ -72,14 +72,14 @@ public Template buildTemplate(final Class targetClass, final FieldList protected abstract Template buildTemplate(Class targetClass, FieldEntry[] entries); protected void checkClassValidation(final Class targetClass) { - if (Modifier.isAbstract(targetClass.getModifiers())) { - throw new TemplateBuildException( - "Cannot build template for abstract class: " + targetClass.getName()); - } if (targetClass.isInterface()) { throw new TemplateBuildException( "Cannot build template for interface: " + targetClass.getName()); } + if (Modifier.isAbstract(targetClass.getModifiers())) { + throw new TemplateBuildException( + "Cannot build template for abstract class: " + targetClass.getName()); + } if (targetClass.isArray()) { throw new TemplateBuildException( "Cannot build template for array class: " + targetClass.getName()); From 2c424df17ea9ea34270459ce62818cc2637b804e Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 20 Apr 2014 21:47:02 +0900 Subject: [PATCH 394/409] [maven-release-plugin] prepare release msgpack-0.6.11 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 653685251..6ffd5f8a9 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.11-SNAPSHOT + 0.6.11 bundle http://msgpack.org/ From 6a37c20ec5b2475c71d31b65b9c27098590063b8 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 20 Apr 2014 21:47:09 +0900 Subject: [PATCH 395/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 6ffd5f8a9..700717e1e 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.11 + 0.6.12-SNAPSHOT bundle http://msgpack.org/ From 8b3ead2c3d98287eaa388f8fb2365ec0ca88d33f Mon Sep 17 00:00:00 2001 From: Tsuyoshi Ozawa Date: Sun, 4 May 2014 01:06:25 -0700 Subject: [PATCH 396/409] Add Travis CI support against v07 branch Signed-off-by: Tsuyoshi Ozawa --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 72729a5f3..29ec0526e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,6 +7,7 @@ branches: only: - master - develop + - v07 notifications: email: - muga.nishizawa@gmail.com From bd4b1d308a50eb48e1a930112a7d5df9f18d8347 Mon Sep 17 00:00:00 2001 From: Erno Tukia Date: Fri, 13 Jun 2014 00:57:19 +0300 Subject: [PATCH 397/409] Fix NPE when properties of bean are manually indexed When bean's properties ordering has been annotated (@Index), NullPointerException in ReflectionBeansTemplateBuilder#toFieldEntries(Class, FieldOption) will occur if annotated order is different than introspected order. --- .../ReflectionBeansTemplateBuilder.java | 2 +- .../java/org/msgpack/TestMessagePack02.java | 230 ++++++++++++++++++ ...ReflectionBeansBufferPackBufferUnpack.java | 95 ++++++++ .../TestReflectionBeansBufferPackConvert.java | 50 ++++ .../TestReflectionBeansBufferPackUnpack.java | 90 +++++++ .../TestReflectionBeansPackBufferUnpack.java | 98 ++++++++ .../TestReflectionBeansPackConvert.java | 52 ++++ .../TestReflectionBeansPackUnpack.java | 94 +++++++ .../org/msgpack/template/builder/TestSet.java | 46 ++++ .../testclasses/IndexedFieldsBeanClass.java | 114 +++++++++ .../IndexedFieldsBeanClassNotNullable.java | 118 +++++++++ 11 files changed, 988 insertions(+), 1 deletion(-) create mode 100644 src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClass.java create mode 100644 src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClassNotNullable.java diff --git a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java index 3274df708..920897e31 100644 --- a/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/ReflectionBeansTemplateBuilder.java @@ -131,7 +131,7 @@ public FieldEntry[] toFieldEntries(Class targetClass, FieldOption implicitOpt throw new TemplateBuildException("invalid index: " + index); } entries[index] = new BeansFieldEntry(p); - props[index] = null; + props[i] = null; } } int insertIndex = 0; diff --git a/src/test/java/org/msgpack/TestMessagePack02.java b/src/test/java/org/msgpack/TestMessagePack02.java index 5130a6271..9270191c2 100644 --- a/src/test/java/org/msgpack/TestMessagePack02.java +++ b/src/test/java/org/msgpack/TestMessagePack02.java @@ -8,6 +8,8 @@ import org.junit.Test; import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.ListTypeFieldsClass; @@ -2555,6 +2557,234 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField } } + public static class TestIndexedFieldsBeanClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + IndexedFieldsBeanClass ret = msgpack.read(bytes, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + IndexedFieldsBeanClass ret = msgpack.convert(value, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + IndexedFieldsBeanClass ret = msgpack.read(in, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + IndexedFieldsBeanClass ret = msgpack.read(bytes, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + IndexedFieldsBeanClass ret = msgpack.convert(value, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + IndexedFieldsBeanClass ret = msgpack.read(in, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + IndexedFieldsBeanClass ret = msgpack.convert(value, IndexedFieldsBeanClass.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullableBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + IndexedFieldsBeanClassNotNullable ret = msgpack.read(bytes, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullableBufferPackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + Value value = msgpack.read(bytes); + IndexedFieldsBeanClassNotNullable ret = msgpack.convert(value, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullableBufferPackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + byte[] bytes = msgpack.write(v); + ByteArrayInputStream in = new ByteArrayInputStream(bytes); + IndexedFieldsBeanClassNotNullable ret = msgpack.read(in, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullablePackBufferUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + IndexedFieldsBeanClassNotNullable ret = msgpack.read(bytes, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullablePackConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + byte[] bytes = out.toByteArray(); + Value value = msgpack.read(bytes); + IndexedFieldsBeanClassNotNullable ret = msgpack.convert(value, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullablePackUnpack extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + msgpack.write(out, v); + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + IndexedFieldsBeanClassNotNullable ret = msgpack.read(in, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + + public static class TestIndexedFieldsBeanClassNotNullableUnconvertConvert extends org.msgpack.template.builder.TestSet { + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + Value value = msgpack.unconvert(v); + IndexedFieldsBeanClassNotNullable ret = msgpack.convert(value, IndexedFieldsBeanClassNotNullable.class); + assertEquals(v, ret); + } + } + public static class TestInheritanceClassBufferPackBufferUnpack extends org.msgpack.template.builder.TestSet { @Test @Override public void testInheritanceClass() throws Exception { diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java index ad82c3ae4..0074aa28e 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackBufferUnpack.java @@ -11,6 +11,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -389,6 +391,99 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, unpacker.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassFieldsUnpackedInOrder(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + + @Override + public void testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java index b1bb32ffc..c8079cbb7 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackConvert.java @@ -11,6 +11,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -421,6 +423,54 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, u.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, u.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, u.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java index 553b47818..47917c509 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansBufferPackUnpack.java @@ -13,6 +13,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -376,6 +378,94 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, unpacker.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassFieldsUnpackedInOrder(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + BufferPacker packer = msgpack.createBufferPacker(); + tmpl.write(packer, v); + byte[] bytes = packer.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java index 6481724a1..241c2a659 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackBufferUnpack.java @@ -13,6 +13,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -406,6 +408,102 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, unpacker.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassFieldsUnpackedInOrder(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker unpacker = msgpack.createBufferUnpacker(); + unpacker.resetReadByteCount(); + unpacker.wrap(bytes); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java index b0238c5f5..d65bff633 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackConvert.java @@ -13,6 +13,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -438,6 +440,56 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, u.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, u.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + BufferUnpacker u = msgpack.createBufferUnpacker(); + u.resetReadByteCount(); + u.wrap(bytes); + Value value = u.readValue(); + Converter unpacker = new Converter(value); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, u.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java index 4c88d4baf..48c700713 100644 --- a/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java +++ b/src/test/java/org/msgpack/template/builder/TestReflectionBeansPackUnpack.java @@ -14,6 +14,8 @@ import org.msgpack.template.Template; import org.msgpack.testclasses.AbstractClass; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.Interface; @@ -392,6 +394,98 @@ public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeField assertEquals(bytes.length, unpacker.getReadByteCount()); } + @Test @Override + public void testIndexedFieldsBeanClass() throws Exception { + super.testIndexedFieldsBeanClass(); + } + + @Override + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + IndexedFieldsBeanClass ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassFieldsUnpackedInOrder(IndexedFieldsBeanClass v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClass.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Test @Override + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + super.testIndexedFieldsBeanClassNotNullable(); + } + + @Override + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + IndexedFieldsBeanClassNotNullable ret = tmpl.read(unpacker, null); + assertEquals(v, ret); + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + + @Override + public void testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(IndexedFieldsBeanClassNotNullable v) throws Exception { + MessagePack msgpack = new MessagePack(); + TemplateRegistry registry = new TemplateRegistry(null); + ReflectionBeansTemplateBuilder builder = new ReflectionBeansTemplateBuilder(registry); + Template tmpl = builder.buildTemplate(IndexedFieldsBeanClassNotNullable.class); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + Packer packer = msgpack.createPacker(out); + tmpl.write(packer, v); + byte[] bytes = out.toByteArray(); + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(bytes)); + unpacker.resetReadByteCount(); + + unpacker.readArrayBegin(); + assertEquals("alpha", unpacker.readString()); + assertEquals("bravo", unpacker.readString()); + assertEquals("charlie", unpacker.readString()); + assertEquals("delta", unpacker.readString()); + assertEquals("echo", unpacker.readString()); + unpacker.readArrayEnd(); + + assertEquals(bytes.length, unpacker.getReadByteCount()); + } + @Test @Override public void testInheritanceClass() throws Exception { super.testInheritanceClass(); diff --git a/src/test/java/org/msgpack/template/builder/TestSet.java b/src/test/java/org/msgpack/template/builder/TestSet.java index 52f073178..12557a026 100644 --- a/src/test/java/org/msgpack/template/builder/TestSet.java +++ b/src/test/java/org/msgpack/template/builder/TestSet.java @@ -12,6 +12,8 @@ import org.msgpack.testclasses.EnumTypeFieldsClass; import org.msgpack.testclasses.EnumTypeFieldsClassNotNullable; import org.msgpack.testclasses.FinalClass; +import org.msgpack.testclasses.IndexedFieldsBeanClass; +import org.msgpack.testclasses.IndexedFieldsBeanClassNotNullable; import org.msgpack.testclasses.InheritanceClass; import org.msgpack.testclasses.InheritanceClassNotNullable; import org.msgpack.testclasses.ListTypeFieldsClass; @@ -434,6 +436,50 @@ public void testReferenceCycleTypeFieldsClassNotNullable() throws Exception { public void testReferenceCycleTypeFieldsClassNotNullable(ReferenceCycleTypeFieldsClassNotNullable v) throws Exception { } + public void testIndexedFieldsBeanClass() throws Exception { + testIndexedFieldsBeanClass(null); + testIndexedFieldsBeanClass(new IndexedFieldsBeanClass()); + IndexedFieldsBeanClass v = new IndexedFieldsBeanClass(); + v.f5 = "alpha"; + v.f4 = "echo"; + v.f3 = "bravo"; + v.f2 = "delta"; + v.f1 = "charlie"; + testIndexedFieldsBeanClass(v); + testIndexedFieldsBeanClassFieldsUnpackedInOrder(v); + } + + public void testIndexedFieldsBeanClass(IndexedFieldsBeanClass v) throws Exception { + } + + public void testIndexedFieldsBeanClassFieldsUnpackedInOrder(IndexedFieldsBeanClass v) throws Exception { + } + + public void testIndexedFieldsBeanClassNotNullable() throws Exception { + testIndexedFieldsBeanClassNotNullable(null); + try { + testIndexedFieldsBeanClassNotNullable(new IndexedFieldsBeanClassNotNullable()); + Assert.fail(); + } catch (Throwable t) { + Assert.assertTrue(t instanceof MessageTypeException); + } + + IndexedFieldsBeanClassNotNullable v = new IndexedFieldsBeanClassNotNullable(); + v.f5 = "alpha"; + v.f4 = "echo"; + v.f3 = "bravo"; + v.f2 = "delta"; + v.f1 = "charlie"; + testIndexedFieldsBeanClassNotNullable(v); + testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(v); + } + + public void testIndexedFieldsBeanClassNotNullable(IndexedFieldsBeanClassNotNullable v) throws Exception { + } + + public void testIndexedFieldsBeanClassNotNullableFieldsUnpackedInOrder(IndexedFieldsBeanClassNotNullable v) throws Exception { + } + public void testInheritanceClass() throws Exception { testInheritanceClass(null); testInheritanceClass(new InheritanceClass()); diff --git a/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClass.java b/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClass.java new file mode 100644 index 000000000..7c3331c36 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClass.java @@ -0,0 +1,114 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.Index; +import org.msgpack.annotation.MessagePackBeans; + +@Ignore @MessagePackBeans +public class IndexedFieldsBeanClass { + + public String f5; + + public String f4; + + public String f3; + + public String f2; + + public String f1; + + @Index(0) + public String getF5() { + return f5; + } + + public void setF5(String f5) { + this.f5 = f5; + } + + @Index(4) + public String getF4() { + return f4; + } + + public void setF4(String f4) { + this.f4 = f4; + } + + public String getF3() { + return f3; + } + + @Index(1) + public void setF3(String f3) { + this.f3 = f3; + } + + public String getF2() { + return f2; + } + + @Index(3) + public void setF2(String f2) { + this.f2 = f2; + } + + @Index(2) + public String getF1() { + return f1; + } + + public void setF1(String f1) { + this.f1 = f1; + } + + @Override + public boolean equals(Object o) { + if (! (o instanceof IndexedFieldsBeanClass)) { + return false; + } + IndexedFieldsBeanClass that = (IndexedFieldsBeanClass) o; + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null && ! f5.equals(that.f5)) { + return false; + } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null && ! f4.equals(that.f4)) { + return false; + } + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (that.f3 != null && ! f3.equals(that.f3)) { + return false; + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (that.f2 != null && ! f2.equals(that.f2)) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (that.f1 != null && ! f1.equals(that.f1)) { + return false; + } + + return true; + } +} diff --git a/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClassNotNullable.java b/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClassNotNullable.java new file mode 100644 index 000000000..8ec10bfa0 --- /dev/null +++ b/src/test/java/org/msgpack/testclasses/IndexedFieldsBeanClassNotNullable.java @@ -0,0 +1,118 @@ +package org.msgpack.testclasses; + +import org.junit.Ignore; +import org.msgpack.annotation.*; + +@Ignore @MessagePackBeans +public class IndexedFieldsBeanClassNotNullable { + + public String f5; + + public String f4; + + public String f3; + + public String f2; + + public String f1; + + @Index(0) @NotNullable + public String getF5() { + return f5; + } + + @NotNullable + public void setF5(String f5) { + this.f5 = f5; + } + + @Index(4) @NotNullable + public String getF4() { + return f4; + } + + @NotNullable + public void setF4(String f4) { + this.f4 = f4; + } + + @NotNullable + public String getF3() { + return f3; + } + + @Index(1) @NotNullable + public void setF3(String f3) { + this.f3 = f3; + } + + @NotNullable + public String getF2() { + return f2; + } + + @Index(3) @NotNullable + public void setF2(String f2) { + this.f2 = f2; + } + + @Index(2) @NotNullable + public String getF1() { + return f1; + } + + @NotNullable + public void setF1(String f1) { + this.f1 = f1; + } + + @Override + public boolean equals(Object o) { + if (! (o instanceof IndexedFieldsBeanClassNotNullable)) { + return false; + } + IndexedFieldsBeanClassNotNullable that = (IndexedFieldsBeanClassNotNullable) o; + if (f5 == null) { + if (that.f5 != null) { + return false; + } + } + if (that.f5 != null && ! f5.equals(that.f5)) { + return false; + } + if (f4 == null) { + if (that.f4 != null) { + return false; + } + } + if (that.f4 != null && ! f4.equals(that.f4)) { + return false; + } + if (f3 == null) { + if (that.f3 != null) { + return false; + } + } + if (that.f3 != null && ! f3.equals(that.f3)) { + return false; + } + if (f2 == null) { + if (that.f2 != null) { + return false; + } + } + if (that.f2 != null && ! f2.equals(that.f2)) { + return false; + } + if (f1 == null) { + if (that.f1 != null) { + return false; + } + } + if (that.f1 != null && ! f1.equals(that.f1)) { + return false; + } + + return true; + } +} From 22d238cf023af73ad8de41ae0431644b67c82da4 Mon Sep 17 00:00:00 2001 From: Gordon Tyler Date: Thu, 3 Jul 2014 14:58:12 -0400 Subject: [PATCH 398/409] System property for disabling dynamic code generation. --- .../org/msgpack/template/builder/TemplateBuilderChain.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index b78fc9fa8..0cbdda2f1 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -33,7 +33,8 @@ public class TemplateBuilderChain { "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { - return !DalvikVmChecker.isDalvikVm(); + return !Boolean.getBoolean("msgpack.disable.dynamic.code.generation") && + !DalvikVmChecker.isDalvikVm(); } protected List templateBuilders; From b490cca198b36bf6d1ea27045bbbac84a539b681 Mon Sep 17 00:00:00 2001 From: Gordon Tyler Date: Fri, 4 Jul 2014 09:08:37 -0400 Subject: [PATCH 399/409] Flip property meaning to enabling dynamic codegen. --- .../msgpack/template/builder/TemplateBuilderChain.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 0cbdda2f1..1388410d5 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -33,8 +33,12 @@ public class TemplateBuilderChain { "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { - return !Boolean.getBoolean("msgpack.disable.dynamic.code.generation") && - !DalvikVmChecker.isDalvikVm(); + boolean enabled = !DalvikVmChecker.isDalvikVm(); + String property = System.getProperty("msgpack.dynamic-codegen.enabled"); + if (property != null) { + enabled = Boolean.parseBoolean(property); + } + return enabled; } protected List templateBuilders; From 8221db29b7ec40c4fff9e9c5c5ecdc9c800cc84c Mon Sep 17 00:00:00 2001 From: Gordon Tyler Date: Fri, 4 Jul 2014 09:10:54 -0400 Subject: [PATCH 400/409] Fix indentation. --- .../template/builder/TemplateBuilderChain.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index 1388410d5..dbf797fc0 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -33,12 +33,12 @@ public class TemplateBuilderChain { "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { - boolean enabled = !DalvikVmChecker.isDalvikVm(); - String property = System.getProperty("msgpack.dynamic-codegen.enabled"); - if (property != null) { - enabled = Boolean.parseBoolean(property); - } - return enabled; + boolean enabled = !DalvikVmChecker.isDalvikVm(); + String property = System.getProperty("msgpack.dynamic-codegen.enabled"); + if (property != null) { + enabled = Boolean.parseBoolean(property); + } + return enabled; } protected List templateBuilders; From 23f267ccb58e0f57fedb8efc4f6c1f3db0a4eec5 Mon Sep 17 00:00:00 2001 From: Gordon Tyler Date: Fri, 4 Jul 2014 11:45:56 -0400 Subject: [PATCH 401/409] Don't allow dynamic-codegen property to override Dalvik VM check. --- .../msgpack/template/builder/TemplateBuilderChain.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index dbf797fc0..a544a7f2d 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -33,12 +33,8 @@ public class TemplateBuilderChain { "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { - boolean enabled = !DalvikVmChecker.isDalvikVm(); - String property = System.getProperty("msgpack.dynamic-codegen.enabled"); - if (property != null) { - enabled = Boolean.parseBoolean(property); - } - return enabled; + return !DalvikVmChecker.isDalvikVm() && + Boolean.parseBoolean(System.getProperties().getProperty("msgpack.dynamic-codegen.enabled", "true")); } protected List templateBuilders; From dc4aa2a695ce5664291bba825037632c11ca1cf0 Mon Sep 17 00:00:00 2001 From: Gena Date: Wed, 13 Aug 2014 03:25:43 +0400 Subject: [PATCH 402/409] fix for 0xc4 array length on android I had problems with negative-size arrays, this fixes them --- src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java index e77e9237d..0a5596f39 100644 --- a/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java +++ b/src/main/java/org/msgpack/unpacker/MessagePackUnpacker.java @@ -210,7 +210,7 @@ private boolean readOneWithoutStackLarge(Accept a, final int b) case 0xc4: // bin 8 case 0xd9: // str 8 { - int count = in.getByte(); + int count = in.getByte() & 0xff; if (count == 0) { a.acceptEmptyRaw(); in.advance(); From 407caaec82be3f506c9ab026179bf8b583bdfbcf Mon Sep 17 00:00:00 2001 From: Ben Bader Date: Thu, 2 Oct 2014 14:35:31 -0700 Subject: [PATCH 403/409] Replacing calls to `Exception#printStackTrace()` with Java logging. This will keep output cleaner, especially in Android where logging and stdout are mixed. --- .../builder/JavassistTemplateBuilder.java | 7 +++++-- .../template/builder/TemplateBuilderChain.java | 9 ++++++++- src/main/java/org/msgpack/util/Exceptions.java | 18 ++++++++++++++++++ 3 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 src/main/java/org/msgpack/util/Exceptions.java diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index be423c512..9efccec8b 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -31,6 +31,7 @@ import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; +import org.msgpack.util.Exceptions; @SuppressWarnings({ "rawtypes", "unchecked" }) public class JavassistTemplateBuilder extends AbstractTemplateBuilder { @@ -73,8 +74,10 @@ public JavassistTemplateBuilder(TemplateRegistry registry, ClassLoader cl) { appended = true; } } catch (SecurityException e) { - LOG.fine("Cannot append a search path of classloader"); - e.printStackTrace(); + if (LOG.isLoggable(Level.FINE)) { + LOG.fine("Cannot append a search path of classloader"); + LOG.fine(Exceptions.getStackTraceAsString(e)); + } } if (!appended) { pool.appendSystemPath(); diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index a544a7f2d..f3941cb59 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -22,11 +22,16 @@ import java.lang.reflect.Type; import java.util.ArrayList; import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; import org.msgpack.template.TemplateRegistry; +import org.msgpack.util.Exceptions; import org.msgpack.util.android.DalvikVmChecker; public class TemplateBuilderChain { + private static final Logger LOG = Logger.getLogger(TemplateBuilderChain.class.getName()); + private static final String JAVASSIST_TEMPLATE_BUILDER_CLASS_NAME = "org.msgpack.template.builder.JavassistTemplateBuilder"; private static final String REFLECTION_TEMPLATE_BUILDER_CLASS_NAME = @@ -82,7 +87,9 @@ private static TemplateBuilder createForceTemplateBuilder(String className, ClassLoader.class); return (TemplateBuilder) cons.newInstance(registry, cl); } catch (Exception e) { - e.printStackTrace(); + if (LOG.isLoggable(Level.FINE)) { + LOG.fine(Exceptions.getStackTraceAsString(e)); + } } return new ReflectionTemplateBuilder(registry, cl); } diff --git a/src/main/java/org/msgpack/util/Exceptions.java b/src/main/java/org/msgpack/util/Exceptions.java new file mode 100644 index 000000000..74d1489b7 --- /dev/null +++ b/src/main/java/org/msgpack/util/Exceptions.java @@ -0,0 +1,18 @@ +package org.msgpack.util; + +import java.io.PrintWriter; +import java.io.StringWriter; + +public class Exceptions { + /** + * Prints an exception as a {@link String} suitable for logging. + * + * @param e the exception to print + * @return the exception formatted as a string + */ + public static String getStackTraceAsString(Exception e) { + StringWriter writer = new StringWriter(); + e.printStackTrace(new PrintWriter(writer)); + return writer.toString(); + } +} From d952d287b1477b5b82626e506c968b810dcbbd0e Mon Sep 17 00:00:00 2001 From: Ben Bader Date: Thu, 2 Oct 2014 15:23:19 -0700 Subject: [PATCH 404/409] Replacing some tabs with spaces for consistency. --- .../builder/TemplateBuilderChain.java | 34 +++++++++---------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index f3941cb59..bce527498 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -30,12 +30,12 @@ import org.msgpack.util.android.DalvikVmChecker; public class TemplateBuilderChain { - private static final Logger LOG = Logger.getLogger(TemplateBuilderChain.class.getName()); + private static final Logger LOG = Logger.getLogger(TemplateBuilderChain.class.getName()); - private static final String JAVASSIST_TEMPLATE_BUILDER_CLASS_NAME = - "org.msgpack.template.builder.JavassistTemplateBuilder"; - private static final String REFLECTION_TEMPLATE_BUILDER_CLASS_NAME = - "org.msgpack.template.builder.ReflectionTemplateBuilder"; + private static final String JAVASSIST_TEMPLATE_BUILDER_CLASS_NAME = + "org.msgpack.template.builder.JavassistTemplateBuilder"; + private static final String REFLECTION_TEMPLATE_BUILDER_CLASS_NAME = + "org.msgpack.template.builder.ReflectionTemplateBuilder"; private static boolean enableDynamicCodeGeneration() { return !DalvikVmChecker.isDalvikVm() && @@ -79,18 +79,18 @@ protected void reset(final TemplateRegistry registry, final ClassLoader cl) { templateBuilders.add(new ReflectionBeansTemplateBuilder(registry)); } - private static TemplateBuilder createForceTemplateBuilder(String className, - TemplateRegistry registry, ClassLoader cl) { - try { - Class c = (Class) Class.forName(className); - Constructor cons = c.getConstructor(TemplateRegistry.class, - ClassLoader.class); - return (TemplateBuilder) cons.newInstance(registry, cl); - } catch (Exception e) { - if (LOG.isLoggable(Level.FINE)) { - LOG.fine(Exceptions.getStackTraceAsString(e)); - } - } + private static TemplateBuilder createForceTemplateBuilder(String className, + TemplateRegistry registry, ClassLoader cl) { + try { + Class c = (Class) Class.forName(className); + Constructor cons = c.getConstructor(TemplateRegistry.class, + ClassLoader.class); + return (TemplateBuilder) cons.newInstance(registry, cl); + } catch (Exception e) { + if (LOG.isLoggable(Level.FINE)) { + LOG.fine(Exceptions.getStackTraceAsString(e)); + } + } return new ReflectionTemplateBuilder(registry, cl); } From acd92b87efc96c82833c17d0f8cf58dcb97e596b Mon Sep 17 00:00:00 2001 From: kraman14 Date: Thu, 9 Oct 2014 15:17:50 -0700 Subject: [PATCH 405/409] Add a c'tor to take in charset. InputStreamReader defaults to the locale of the container, have added a constructor to pass in the desired Charset. --- src/main/java/org/msgpack/util/json/JSONUnpacker.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/main/java/org/msgpack/util/json/JSONUnpacker.java b/src/main/java/org/msgpack/util/json/JSONUnpacker.java index 177bf2230..864c5ca18 100644 --- a/src/main/java/org/msgpack/util/json/JSONUnpacker.java +++ b/src/main/java/org/msgpack/util/json/JSONUnpacker.java @@ -24,6 +24,7 @@ import java.util.List; import java.util.Map; import java.util.Iterator; +import java.nio.charset.Charset; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; import org.msgpack.MessagePack; @@ -42,6 +43,10 @@ public JSONUnpacker(InputStream in) { public JSONUnpacker(MessagePack msgpack, InputStream in) { this(msgpack, new InputStreamReader(in)); } + + public JSONUnpacker(MessagePack msgpack, InputStream in, Charset cs) { + this(msgpack, new InputStreamReader(in, cs)); + } JSONUnpacker(MessagePack msgpack, Reader in) { super(msgpack, null); From ec4eb62a815f7ae0b80871e67f72d716f236a5bb Mon Sep 17 00:00:00 2001 From: Ben Bader Date: Mon, 13 Oct 2014 11:22:17 -0700 Subject: [PATCH 406/409] Use Log#log(Level, String, Throwable). Additionaly, increase log level of exceptions from FINE to WARNING. --- .../builder/JavassistTemplateBuilder.java | 6 ++---- .../template/builder/TemplateBuilderChain.java | 5 ++--- src/main/java/org/msgpack/util/Exceptions.java | 18 ------------------ 3 files changed, 4 insertions(+), 25 deletions(-) delete mode 100644 src/main/java/org/msgpack/util/Exceptions.java diff --git a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java index 9efccec8b..23bcb8716 100644 --- a/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java +++ b/src/main/java/org/msgpack/template/builder/JavassistTemplateBuilder.java @@ -31,7 +31,6 @@ import org.msgpack.template.Template; import org.msgpack.template.AbstractTemplate; import org.msgpack.template.TemplateRegistry; -import org.msgpack.util.Exceptions; @SuppressWarnings({ "rawtypes", "unchecked" }) public class JavassistTemplateBuilder extends AbstractTemplateBuilder { @@ -74,9 +73,8 @@ public JavassistTemplateBuilder(TemplateRegistry registry, ClassLoader cl) { appended = true; } } catch (SecurityException e) { - if (LOG.isLoggable(Level.FINE)) { - LOG.fine("Cannot append a search path of classloader"); - LOG.fine(Exceptions.getStackTraceAsString(e)); + if (LOG.isLoggable(Level.WARNING)) { + LOG.log(Level.WARNING, "Cannot append a search path of classloader", e); } } if (!appended) { diff --git a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java index bce527498..b870b2539 100644 --- a/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java +++ b/src/main/java/org/msgpack/template/builder/TemplateBuilderChain.java @@ -26,7 +26,6 @@ import java.util.logging.Logger; import org.msgpack.template.TemplateRegistry; -import org.msgpack.util.Exceptions; import org.msgpack.util.android.DalvikVmChecker; public class TemplateBuilderChain { @@ -87,8 +86,8 @@ private static TemplateBuilder createForceTemplateBuilder(String className, ClassLoader.class); return (TemplateBuilder) cons.newInstance(registry, cl); } catch (Exception e) { - if (LOG.isLoggable(Level.FINE)) { - LOG.fine(Exceptions.getStackTraceAsString(e)); + if (LOG.isLoggable(Level.WARNING)) { + LOG.log(Level.WARNING, "Failed to create a TemplateBuilder reflectively", e); } } return new ReflectionTemplateBuilder(registry, cl); diff --git a/src/main/java/org/msgpack/util/Exceptions.java b/src/main/java/org/msgpack/util/Exceptions.java deleted file mode 100644 index 74d1489b7..000000000 --- a/src/main/java/org/msgpack/util/Exceptions.java +++ /dev/null @@ -1,18 +0,0 @@ -package org.msgpack.util; - -import java.io.PrintWriter; -import java.io.StringWriter; - -public class Exceptions { - /** - * Prints an exception as a {@link String} suitable for logging. - * - * @param e the exception to print - * @return the exception formatted as a string - */ - public static String getStackTraceAsString(Exception e) { - StringWriter writer = new StringWriter(); - e.printStackTrace(new PrintWriter(writer)); - return writer.toString(); - } -} From c98343bff5f3e83b38ce5bdb60a61c637ae1a66f Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 17 May 2015 22:46:56 +0900 Subject: [PATCH 407/409] Add test for https://github.com/msgpack/msgpack-java/pull/130 --- .../unpacker/TestMessagePackUnpacker.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 src/test/java/org/msgpack/unpacker/TestMessagePackUnpacker.java diff --git a/src/test/java/org/msgpack/unpacker/TestMessagePackUnpacker.java b/src/test/java/org/msgpack/unpacker/TestMessagePackUnpacker.java new file mode 100644 index 000000000..17693003d --- /dev/null +++ b/src/test/java/org/msgpack/unpacker/TestMessagePackUnpacker.java @@ -0,0 +1,38 @@ +package org.msgpack.unpacker; + +import org.junit.Before; +import org.junit.Test; +import org.msgpack.MessagePack; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.IOException; + +import static org.junit.Assert.*; + +public class TestMessagePackUnpacker { + private MessagePack msgpack; + + @Before + public void setup() { + msgpack = new MessagePack(); + } + + @Test + public void testStr8() throws IOException { + // Deserialize a data that another platform serialized a string "xxx...xxx" (length: 128). + ByteArrayOutputStream out = new ByteArrayOutputStream(); + // 0xD9: str8, 0x80: length: 128 + out.write(new byte[] {(byte) 0xD9, (byte) 0x80}); + for (int i = 0; i < 128; i++) { + // 0x78: 'x' + out.write(0x78); + } + Unpacker unpacker = msgpack.createUnpacker(new ByteArrayInputStream(out.toByteArray())); + String string = unpacker.readString(); + assertEquals(128, string.length()); + for (int i = 0; i < 128; i++) { + assertEquals('x', string.charAt(i)); + } + } +} \ No newline at end of file From 8c4fa5d659dc852b1a67ba7d6a5254a00f3bfce6 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 17 May 2015 23:03:56 +0900 Subject: [PATCH 408/409] [maven-release-plugin] prepare release msgpack-0.6.12 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 700717e1e..4ebd8e07d 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.12-SNAPSHOT + 0.6.12 bundle http://msgpack.org/ From 103d1e1b9fa8ecedc16f051cf4c676ed0a36ab71 Mon Sep 17 00:00:00 2001 From: Mitsunori Komatsu Date: Sun, 17 May 2015 23:04:03 +0900 Subject: [PATCH 409/409] [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 4ebd8e07d..525b4b4ac 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ MessagePack for Java MessagePack for Java is a binary-based efficient object serialization library in Java. - 0.6.12 + 0.6.13-SNAPSHOT bundle http://msgpack.org/