This is an automated email from the ASF dual-hosted git repository.

albumenj pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/dubbo-hessian-lite.git

commit ba3511e87ac5150b0f59975c34af309569ac6cf5
Merge: eda01778 9e45d37b
Author: Albumen Kevin <[email protected]>
AuthorDate: Sat Jun 8 18:43:11 2024 +0800

    Merge pull request #70 from AlbumenJ/0606-jdk11
    
    Support ImmutableCollection & Record

 .github/workflows/maven.yml                        |  16 +-
 hessian-lite/pom.xml                               |  37 +++
 .../com/caucho/hessian/HessianException.java       |   0
 .../com/caucho/hessian/HessianUnshared.java        |   0
 .../caucho/hessian/io/AbstractDeserializer.java    |   0
 .../hessian/io/AbstractDeserializerWrapper.java    |   0
 .../caucho/hessian/io/AbstractHessianInput.java    |   0
 .../caucho/hessian/io/AbstractHessianOutput.java   |   0
 .../hessian/io/AbstractListDeserializer.java       |   0
 .../caucho/hessian/io/AbstractMapDeserializer.java |   0
 .../com/caucho/hessian/io/AbstractSerializer.java  |   0
 .../hessian/io/AbstractSerializerFactory.java      |   0
 .../hessian/io/AbstractSerializerWrapper.java      |   0
 .../hessian/io/AbstractStreamDeserializer.java     |   0
 .../hessian/io/AbstractStreamSerializer.java       |   0
 .../io/AbstractStringValueDeserializer.java        |   0
 .../caucho/hessian/io/AnnotationDeserializer.java  |   0
 .../hessian/io/AnnotationInvocationHandler.java    |   0
 .../caucho/hessian/io/AnnotationSerializer.java    |   0
 .../com/caucho/hessian/io/ArrayDeserializer.java   |   0
 .../com/caucho/hessian/io/ArraySerializer.java     |   0
 .../com/caucho/hessian/io/BasicDeserializer.java   |   0
 .../com/caucho/hessian/io/BasicSerializer.java     |   0
 .../com/caucho/hessian/io/BeanDeserializer.java    |   0
 .../caucho/hessian/io/BigDecimalDeserializer.java  |   0
 .../com/caucho/hessian/io/BitSetHandle.java        |   0
 .../com/caucho/hessian/io/BitSetSerializer.java    |   0
 .../com/caucho/hessian/io/ByteArraySerializer.java |   0
 .../alibaba/com/caucho/hessian/io/ByteHandle.java  |   0
 .../com/caucho/hessian/io/CalendarHandle.java      |   0
 .../com/caucho/hessian/io/CalendarSerializer.java  |   0
 .../com/caucho/hessian/io/ClassDeserializer.java   |   0
 .../com/caucho/hessian/io/ClassFactory.java        |   0
 .../com/caucho/hessian/io/ClassSerializer.java     |   0
 .../caucho/hessian/io/CollectionDeserializer.java  |   0
 .../caucho/hessian/io/CollectionSerializer.java    |   0
 .../hessian/io/ContextSerializerFactory.java       |   0
 .../com/caucho/hessian/io/Deserializer.java        |   0
 .../com/caucho/hessian/io/EnumDeserializer.java    |   0
 .../com/caucho/hessian/io/EnumSerializer.java      |   0
 .../caucho/hessian/io/EnumerationDeserializer.java |   0
 .../caucho/hessian/io/EnumerationSerializer.java   |   0
 .../com/caucho/hessian/io/FieldDeserializer2.java  |   0
 .../hessian/io/FieldDeserializer2Factory.java      |   0
 .../io/FieldDeserializer2FactoryUnsafe.java        |   0
 .../com/caucho/hessian/io/FileDeserializer.java    |   0
 .../alibaba/com/caucho/hessian/io/FloatHandle.java |   0
 .../com/caucho/hessian/io/Hessian2Constants.java   |   0
 .../com/caucho/hessian/io/Hessian2Input.java       |   0
 .../com/caucho/hessian/io/Hessian2Output.java      |   0
 .../caucho/hessian/io/Hessian2StreamingInput.java  |   0
 .../caucho/hessian/io/Hessian2StreamingOutput.java |   0
 .../com/caucho/hessian/io/HessianFactory.java      |   0
 .../caucho/hessian/io/HessianFieldException.java   |   0
 .../com/caucho/hessian/io/HessianHandle.java       |   0
 .../io/HessianMethodSerializationException.java    |   0
 .../hessian/io/HessianProtocolException.java       |   0
 .../com/caucho/hessian/io/HessianRemote.java       |   0
 .../com/caucho/hessian/io/HessianRemoteObject.java |   0
 .../caucho/hessian/io/HessianRemoteResolver.java   |   0
 .../caucho/hessian/io/HessianServiceException.java |   0
 .../com/caucho/hessian/io/IOExceptionWrapper.java  |   0
 .../com/caucho/hessian/io/InetAddressHandle.java   |   0
 .../caucho/hessian/io/InetAddressSerializer.java   |   0
 .../caucho/hessian/io/InputStreamDeserializer.java |   0
 .../caucho/hessian/io/InputStreamSerializer.java   |   0
 .../caucho/hessian/io/IteratorDeserializer.java    |   0
 .../com/caucho/hessian/io/IteratorSerializer.java  |   0
 .../com/caucho/hessian/io/JavaDeserializer.java    |   0
 .../com/caucho/hessian/io/JavaSerializer.java      |   0
 .../caucho/hessian/io/JavaUnsharedSerializer.java  |   0
 .../com/caucho/hessian/io/LocaleHandle.java        |   0
 .../com/caucho/hessian/io/LocaleSerializer.java    |   0
 .../com/caucho/hessian/io/MapDeserializer.java     |   0
 .../com/caucho/hessian/io/MapSerializer.java       |   0
 .../com/caucho/hessian/io/ObjectDeserializer.java  |   0
 .../caucho/hessian/io/ObjectHandleSerializer.java  |   0
 .../caucho/hessian/io/ObjectNameDeserializer.java  |   0
 .../com/caucho/hessian/io/ObjectSerializer.java    |   0
 .../com/caucho/hessian/io/RecordDeserializer.java  | 124 ++++++++++
 .../com/caucho/hessian/io/RecordSerializer.java    |  58 +++++
 .../alibaba/com/caucho/hessian/io/RecordUtil.java  | 190 ++++++++++++++
 .../com/caucho/hessian/io/RemoteDeserializer.java  |   0
 .../com/caucho/hessian/io/RemoteSerializer.java    |   0
 .../alibaba/com/caucho/hessian/io/Serializer.java  |   0
 .../com/caucho/hessian/io/SerializerFactory.java   |   6 +
 .../alibaba/com/caucho/hessian/io/ShortHandle.java |   0
 .../com/caucho/hessian/io/SqlDateDeserializer.java |   0
 .../com/caucho/hessian/io/SqlDateSerializer.java   |   0
 .../hessian/io/StackTraceElementDeserializer.java  |   0
 .../caucho/hessian/io/StringValueDeserializer.java |   0
 .../caucho/hessian/io/StringValueSerializer.java   |   0
 .../com/caucho/hessian/io/ThrowableSerializer.java |   0
 .../com/caucho/hessian/io/UnsafeDeserializer.java  |   0
 .../com/caucho/hessian/io/UnsafeSerializer.java    |   0
 .../hessian/io/UnsafeUnsharedSerializer.java       |   0
 .../com/caucho/hessian/io/ValueDeserializer.java   |   0
 .../caucho/hessian/io/WriteReplaceSerializer.java  |   0
 .../caucho/hessian/io/java8/DurationHandle.java    |   0
 .../hessian/io/java8/DurationSerializer.java       |   0
 .../com/caucho/hessian/io/java8/InstantHandle.java |   0
 .../caucho/hessian/io/java8/InstantSerializer.java |   0
 .../caucho/hessian/io/java8/LocalDateHandle.java   |   0
 .../hessian/io/java8/LocalDateSerializer.java      |   0
 .../hessian/io/java8/LocalDateTimeHandle.java      |   0
 .../hessian/io/java8/LocalDateTimeSerializer.java  |   0
 .../caucho/hessian/io/java8/LocalTimeHandle.java   |   0
 .../hessian/io/java8/LocalTimeSerializer.java      |   0
 .../caucho/hessian/io/java8/MonthDayHandle.java    |   0
 .../hessian/io/java8/MonthDaySerializer.java       |   0
 .../hessian/io/java8/OffsetDateTimeHandle.java     |   0
 .../hessian/io/java8/OffsetDateTimeSerializer.java |   0
 .../caucho/hessian/io/java8/OffsetTimeHandle.java  |   0
 .../hessian/io/java8/OffsetTimeSerializer.java     |   0
 .../com/caucho/hessian/io/java8/PeriodHandle.java  |   0
 .../caucho/hessian/io/java8/PeriodSerializer.java  |   0
 .../com/caucho/hessian/io/java8/YearHandle.java    |   0
 .../caucho/hessian/io/java8/YearMonthHandle.java   |   0
 .../hessian/io/java8/YearMonthSerializer.java      |   0
 .../caucho/hessian/io/java8/YearSerializer.java    |   0
 .../com/caucho/hessian/io/java8/ZoneIdHandle.java  |   0
 .../caucho/hessian/io/java8/ZoneIdSerializer.java  |   0
 .../caucho/hessian/io/java8/ZoneOffsetHandle.java  |   0
 .../hessian/io/java8/ZoneOffsetSerializer.java     |   0
 .../hessian/io/java8/ZonedDateTimeHandle.java      |   0
 .../hessian/io/java8/ZonedDateTimeSerializer.java  |   0
 .../caucho/hessian/io/java9/List12Serializer.java  |  10 +-
 .../caucho/hessian/io/java9/ListNSerializer.java   |  10 +-
 .../caucho/hessian/io/java9/Map1Serializer.java    |  12 +-
 .../caucho/hessian/io/java9/MapNSerializer.java    |  10 +-
 .../caucho/hessian/io/java9/Set12Serializer.java   |  12 +-
 .../caucho/hessian/io/java9/SetNSerializer.java    |  10 +-
 .../caucho/hessian/io/java9/SubListSerializer.java |  10 +-
 .../com/caucho/hessian/util/HessianFreeList.java   |   0
 .../com/caucho/hessian/util/IdentityIntMap.java    |   0
 .../alibaba/com/caucho/hessian/util/IntMap.java    |   0
 .../src}/main/resources/DENY_CLASS                 |   0
 .../resources/META-INF/dubbo/hessian/deserializers |   0
 .../resources/META-INF/dubbo/hessian/serializers   |   7 +
 java-11-test/pom.xml                               |  63 +++++
 .../apache/dubbo/hessian/java11/ImmutableTest.java | 101 ++++++++
 .../hessian/java11}/base/SerializeTestBase.java    |   2 +-
 java-17-test/pom.xml                               |  63 +++++
 .../apache/dubbo/hessian/java17/RecordTest.java    | 275 +++++++++++++++++++++
 .../dubbo/hessian/java17/TestRecordObject.java     |   8 +-
 .../hessian/java17}/base/SerializeTestBase.java    |  14 +-
 java-8-test/pom.xml                                |  63 +++++
 .../caucho/hessian/io/BitSetSerializerTest.java    |  13 +-
 .../hessian/io/CollectionSerializerTest.java       |  19 +-
 .../com/caucho/hessian/io/DenyListTest.java        |  61 +++++
 .../com/caucho/hessian/io/Hessian2EnumSetTest.java |  16 +-
 .../com/caucho/hessian/io/Hessian2ReuseTest.java   |  24 +-
 .../caucho/hessian/io/Hessian2StringShortTest.java |  11 +-
 .../com/caucho/hessian/io/Hessian2UUIDTest.java    |  11 +-
 .../hessian/io/HessianJavaSerializeTest.java       |  17 +-
 .../caucho/hessian/io/LocaleSerializerTest.java    |   7 +-
 .../caucho/hessian/io/SerializerFactoryTest.java   |  36 +--
 .../alibaba/com/caucho/hessian/io/TestClass.java   |   0
 .../com/caucho/hessian/io/TestInterface.java       |   0
 .../caucho/hessian/io/base/SerializeTestBase.java  |   0
 .../com/caucho/hessian/io/beans/BaseUser.java      |   0
 .../com/caucho/hessian/io/beans/GrandsonUser.java  |   0
 .../hessian/io/beans/Hessian2StringShortType.java  |   0
 .../com/caucho/hessian/io/beans/PersonType.java    |   0
 .../com/caucho/hessian/io/beans/SubUser.java       |   0
 .../alibaba/com/caucho/hessian/io/beans/Type.java  |   0
 .../hessian/io/java8/Java8TimeSerializerTest.java  | 110 +++------
 .../io/writereplace/Hessian2WriteReplaceTest.java  |   7 +-
 .../com/caucho/hessian3/HessianException.java      |   0
 .../caucho/hessian3/io/AbstractDeserializer.java   |   0
 .../caucho/hessian3/io/AbstractHessianInput.java   |   0
 .../caucho/hessian3/io/AbstractHessianOutput.java  |   0
 .../hessian3/io/AbstractHessianResolver.java       |   0
 .../hessian3/io/AbstractListDeserializer.java      |   0
 .../hessian3/io/AbstractMapDeserializer.java       |   0
 .../com/caucho/hessian3/io/AbstractSerializer.java |   0
 .../hessian3/io/AbstractSerializerFactory.java     |   0
 .../com/caucho/hessian3/io/ArrayDeserializer.java  |   0
 .../com/caucho/hessian3/io/ArraySerializer.java    |   0
 .../com/caucho/hessian3/io/BasicDeserializer.java  |   0
 .../com/caucho/hessian3/io/BasicSerializer.java    |   0
 .../com/caucho/hessian3/io/BeanDeserializer.java   |   0
 .../com/caucho/hessian3/io/BeanSerializer.java     |   0
 .../caucho/hessian3/io/BeanSerializerFactory.java  |   0
 .../caucho/hessian3/io/BigIntegerDeserializer.java |   0
 .../com/caucho/hessian3/io/BitSetHandle.java       |   0
 .../com/caucho/hessian3/io/BitSetSerializer.java   |   0
 .../com/caucho/hessian3/io/CalendarHandle.java     |   0
 .../com/caucho/hessian3/io/CalendarSerializer.java |   0
 .../com/caucho/hessian3/io/ClassDeserializer.java  |   0
 .../com/caucho/hessian3/io/ClassFactory.java       |   0
 .../com/caucho/hessian3/io/ClassSerializer.java    |   0
 .../caucho/hessian3/io/CollectionDeserializer.java |   0
 .../caucho/hessian3/io/CollectionSerializer.java   |   0
 .../alibaba/com/caucho/hessian3/io/Deflation.java  |   0
 .../com/caucho/hessian3/io/Deserializer.java       |   0
 .../com/caucho/hessian3/io/EnumDeserializer.java   |   0
 .../com/caucho/hessian3/io/EnumSerializer.java     |   0
 .../com/caucho/hessian3/io/EnumSetHandler.java     |   0
 .../com/caucho/hessian3/io/EnumSetSerializer.java  |   0
 .../hessian3/io/EnumerationDeserializer.java       |   0
 .../caucho/hessian3/io/EnumerationSerializer.java  |   0
 .../com/caucho/hessian3/io/EnvelopeFactory.java    |   0
 .../caucho/hessian3/io/ExtSerializerFactory.java   |   0
 .../com/caucho/hessian3/io/Hessian2Constants.java  |   0
 .../com/caucho/hessian3/io/Hessian2Input.java      |   0
 .../com/caucho/hessian3/io/Hessian2Output.java     |   0
 .../caucho/hessian3/io/Hessian2StreamingInput.java |   0
 .../hessian3/io/Hessian2StreamingOutput.java       |   0
 .../hessian3/io/HessianDebugInputStream.java       |   0
 .../hessian3/io/HessianDebugOutputStream.java      |   0
 .../com/caucho/hessian3/io/HessianDebugState.java  |   0
 .../com/caucho/hessian3/io/HessianEnvelope.java    |   0
 .../caucho/hessian3/io/HessianFieldException.java  |   0
 .../com/caucho/hessian3/io/HessianHandle.java      |   0
 .../com/caucho/hessian3/io/HessianInput.java       |   0
 .../caucho/hessian3/io/HessianInputFactory.java    |   0
 .../com/caucho/hessian3/io/HessianOutput.java      |   0
 .../hessian3/io/HessianProtocolException.java      |   0
 .../com/caucho/hessian3/io/HessianRemote.java      |   0
 .../caucho/hessian3/io/HessianRemoteObject.java    |   0
 .../caucho/hessian3/io/HessianRemoteResolver.java  |   0
 .../caucho/hessian3/io/HessianSerializerInput.java |   0
 .../hessian3/io/HessianSerializerOutput.java       |   0
 .../hessian3/io/HessianServiceException.java       |   0
 .../com/caucho/hessian3/io/IOExceptionWrapper.java |   0
 .../hessian3/io/InputStreamDeserializer.java       |   0
 .../caucho/hessian3/io/InputStreamSerializer.java  |   0
 .../com/caucho/hessian3/io/IteratorSerializer.java |   0
 .../com/caucho/hessian3/io/JavaDeserializer.java   |   0
 .../com/caucho/hessian3/io/JavaSerializer.java     |   0
 .../com/caucho/hessian3/io/LocaleHandle.java       |   0
 .../com/caucho/hessian3/io/LocaleSerializer.java   |   0
 .../com/caucho/hessian3/io/MapDeserializer.java    |   0
 .../com/caucho/hessian3/io/MapSerializer.java      |   0
 .../com/caucho/hessian3/io/ObjectDeserializer.java |   0
 .../com/caucho/hessian3/io/RemoteSerializer.java   |   0
 .../alibaba/com/caucho/hessian3/io/Serializer.java |   0
 .../com/caucho/hessian3/io/SerializerFactory.java  |   0
 .../caucho/hessian3/io/SqlDateDeserializer.java    |   0
 .../com/caucho/hessian3/io/SqlDateSerializer.java  |   0
 .../hessian3/io/StackTraceElementDeserializer.java |   0
 .../hessian3/io/StringValueDeserializer.java       |   0
 .../caucho/hessian3/io/StringValueSerializer.java  |   0
 .../caucho/hessian3/io/ThrowableSerializer.java    |   0
 .../com/caucho/hessian3/io/UUIDDeserializer.java   |   0
 .../com/caucho/hessian3/io/ValueDeserializer.java  |   0
 .../caucho/hessian3/io/java8/DurationHandle.java   |   0
 .../caucho/hessian3/io/java8/InstantHandle.java    |   0
 .../hessian3/io/java8/Java8TimeSerializer.java     |   0
 .../caucho/hessian3/io/java8/LocalDateHandle.java  |   0
 .../hessian3/io/java8/LocalDateTimeHandle.java     |   0
 .../caucho/hessian3/io/java8/LocalTimeHandle.java  |   0
 .../caucho/hessian3/io/java8/MonthDayHandle.java   |   0
 .../hessian3/io/java8/OffsetDateTimeHandle.java    |   0
 .../caucho/hessian3/io/java8/OffsetTimeHandle.java |   0
 .../com/caucho/hessian3/io/java8/PeriodHandle.java |   0
 .../com/caucho/hessian3/io/java8/YearHandle.java   |   0
 .../caucho/hessian3/io/java8/YearMonthHandle.java  |   0
 .../com/caucho/hessian3/io/java8/ZoneIdHandle.java |   0
 .../caucho/hessian3/io/java8/ZoneIdSerializer.java |   0
 .../caucho/hessian3/io/java8/ZoneOffsetHandle.java |   0
 .../hessian3/io/java8/ZonedDateTimeHandle.java     |   0
 .../caucho/hessian3/security/X509Encryption.java   |   0
 .../caucho/hessian3/security/X509Signature.java    |   0
 .../com/caucho/hessian3/util/IdentityIntMap.java   |   0
 .../alibaba/com/caucho/hessian3/util/IntMap.java   |   0
 pom.xml                                            |  89 ++++++-
 src/assembly/source-release.xml                    |  56 -----
 .../com/caucho/hessian/io/DenyListTest.java        |  61 -----
 270 files changed, 1310 insertions(+), 329 deletions(-)

Reply via email to