Repository: ignite Updated Branches: refs/heads/ignite-1353 51257da41 -> 74be071bf
Merge remote-tracking branch 'remotes/apache-git/master' into ignite-1353 Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9e5708e6 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9e5708e6 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9e5708e6 Branch: refs/heads/ignite-1353 Commit: 9e5708e643ddb594d1f38f20b5c889c572309738 Parents: c1d60ad 6ac9557 Author: Denis Magda <[email protected]> Authored: Thu Sep 3 11:30:43 2015 +0300 Committer: Denis Magda <[email protected]> Committed: Thu Sep 3 11:30:43 2015 +0300 ---------------------------------------------------------------------- modules/aop/pom.xml | 1 + modules/apache-license-gen/pom.xml | 1 + modules/aws/pom.xml | 1 + modules/clients/pom.xml | 1 + modules/cloud/pom.xml | 1 + modules/codegen/pom.xml | 1 + modules/core/pom.xml | 1 + .../configuration/PlatformConfiguration.java | 2 +- .../apache/ignite/internal/IgniteKernal.java | 14 +- .../portable/GridPortableMarshaller.java | 44 +- .../portable/PortableAbstractLazyValue.java | 57 -- .../internal/portable/PortableBuilderEnum.java | 114 --- .../internal/portable/PortableBuilderImpl.java | 531 ------------ .../portable/PortableBuilderReader.java | 776 ------------------ .../PortableBuilderSerializationAware.java | 29 - .../portable/PortableBuilderSerializer.java | 211 ----- .../portable/PortableClassDescriptor.java | 57 +- .../internal/portable/PortableContext.java | 6 +- .../portable/PortableEnumArrayLazyValue.java | 112 --- .../portable/PortableLazyArrayList.java | 159 ---- .../portable/PortableLazyLinkedList.java | 215 ----- .../internal/portable/PortableLazyMap.java | 218 ----- .../internal/portable/PortableLazyMapEntry.java | 66 -- .../internal/portable/PortableLazySet.java | 89 --- .../internal/portable/PortableLazyValue.java | 28 - .../portable/PortableObjectArrayLazyValue.java | 89 --- .../portable/PortablePlainLazyValue.java | 47 -- .../portable/PortablePlainPortableObject.java | 50 -- .../internal/portable/PortableReaderExImpl.java | 154 +++- .../ignite/internal/portable/PortableUtils.java | 11 + .../portable/PortableValueWithType.java | 74 -- .../internal/portable/PortableWriterExImpl.java | 159 +++- .../builder/PortableAbstractLazyValue.java | 57 ++ .../portable/builder/PortableBuilderEnum.java | 116 +++ .../portable/builder/PortableBuilderImpl.java | 537 +++++++++++++ .../portable/builder/PortableBuilderReader.java | 800 +++++++++++++++++++ .../PortableBuilderSerializationAware.java | 31 + .../builder/PortableBuilderSerializer.java | 214 +++++ .../builder/PortableEnumArrayLazyValue.java | 114 +++ .../portable/builder/PortableLazyArrayList.java | 166 ++++ .../builder/PortableLazyLinkedList.java | 217 +++++ .../portable/builder/PortableLazyMap.java | 220 +++++ .../portable/builder/PortableLazyMapEntry.java | 68 ++ .../portable/builder/PortableLazySet.java | 92 +++ .../portable/builder/PortableLazyValue.java | 28 + .../builder/PortableModifiableLazyValue.java | 52 ++ .../builder/PortableObjectArrayLazyValue.java | 91 +++ .../builder/PortablePlainLazyValue.java | 49 ++ .../builder/PortablePlainPortableObject.java | 53 ++ .../portable/builder/PortableValueWithType.java | 75 ++ .../internal/portable/builder/package-info.java | 22 + .../CacheObjectPortableProcessorImpl.java | 2 +- .../cache/store/CacheOsStoreManager.java | 32 +- .../cache/store/CacheStoreManager.java | 10 + .../store/GridCacheStoreManagerAdapter.java | 5 - .../platform/PlatformNoopProcessor.java | 11 +- .../processors/platform/PlatformProcessor.java | 10 + .../cache/store/PlatformCacheStore.java | 25 + .../resources/META-INF/classnames.properties | 2 +- .../GridPortableBuilderAdditionalSelfTest.java | 232 +++++- .../portable/GridPortableBuilderSelfTest.java | 1 + .../GridPortableMarshallerSelfTest.java | 61 ++ .../GridPortableMetaDataDisabledSelfTest.java | 17 + .../portable/GridPortableMetaDataSelfTest.java | 17 + .../mutabletest/GridPortableTestClasses.java | 38 +- ...ClientNodePortableMetadataMultinodeTest.java | 11 + modules/gce/pom.xml | 1 + modules/geospatial/pom.xml | 1 + modules/hadoop/pom.xml | 1 + modules/hibernate/pom.xml | 1 + modules/indexing/pom.xml | 1 + modules/jcl/pom.xml | 1 + modules/jms11/pom.xml | 1 + modules/jta/pom.xml | 1 + modules/kafka/pom.xml | 1 + modules/log4j/pom.xml | 1 + modules/log4j2/pom.xml | 1 + modules/mesos/pom.xml | 1 + modules/platform/pom.xml | 1 + ...processors.platform.PlatformBootstrapFactory | 2 + .../PlatformAbstractConfigurationClosure.java | 61 ++ .../platform/PlatformConfigurationEx.java | 48 ++ .../platform/PlatformProcessorImpl.java | 360 +++++++++ .../platform/cache/PlatformCache.java | 2 +- .../cache/store/PlatformCacheStore.java | 25 - .../platform/cpp/PlatformCppBootstrap.java | 31 + .../cpp/PlatformCppBootstrapFactory.java | 39 + .../cpp/PlatformCppConfigurationClosure.java | 99 +++ .../cpp/PlatformCppConfigurationEx.java | 82 ++ .../dotnet/PlatformDotNetBootstrap.java | 31 + .../dotnet/PlatformDotNetBootstrapFactory.java | 39 + .../dotnet/PlatformDotNetCacheStore.java | 497 ++++++++++++ .../PlatformDotNetConfigurationClosure.java | 255 ++++++ .../dotnet/PlatformDotNetConfigurationEx.java | 91 +++ .../platform/utils/PlatformUtils.java | 14 + .../platform/cpp/PlatformCppConfiguration.java | 47 ++ .../dotnet/PlatformDotNetCacheStoreFactory.java | 139 ++++ .../dotnet/PlatformDotNetConfiguration.java | 119 +++ .../dotnet/PlatformDotNetLifecycleBean.java | 109 +++ .../PlatformDotNetPortableConfiguration.java | 228 ++++++ ...PlatformDotNetPortableTypeConfiguration.java | 248 ++++++ modules/rest-http/pom.xml | 1 + modules/scalar-2.10/pom.xml | 1 + modules/scalar/pom.xml | 1 + modules/schedule/pom.xml | 1 + modules/schema-import/pom.xml | 1 + modules/slf4j/pom.xml | 1 + modules/spark-2.10/pom.xml | 1 + modules/spark/pom.xml | 1 + modules/spring/pom.xml | 1 + modules/ssh/pom.xml | 1 + modules/tools/pom.xml | 1 + modules/urideploy/pom.xml | 1 + modules/visor-console-2.10/pom.xml | 1 + modules/visor-console/pom.xml | 1 + modules/visor-plugins/pom.xml | 1 + modules/web/pom.xml | 1 + modules/yardstick/pom.xml | 1 + modules/yarn/pom.xml | 1 + modules/zookeeper/pom.xml | 1 + parent/pom.xml | 2 + 121 files changed, 6357 insertions(+), 3038 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/9e5708e6/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableClassDescriptor.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/9e5708e6/modules/core/src/main/java/org/apache/ignite/internal/portable/PortableContext.java ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/9e5708e6/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMarshallerSelfTest.java ---------------------------------------------------------------------- diff --cc modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMarshallerSelfTest.java index 5d186c8,c8287a0..7378c22 --- a/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMarshallerSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/portable/GridPortableMarshallerSelfTest.java @@@ -2244,29 -2243,51 +2245,76 @@@ public class GridPortableMarshallerSelf /** * @throws Exception If failed. */ + public void testPredefinedTypeIds() throws Exception { + PortableMarshaller marsh = new PortableMarshaller(); + + PortableContext pCtx = initPortableContext(marsh); + + Field field = pCtx.getClass().getDeclaredField("predefinedClasses"); + + field.setAccessible(true); + + Set<Class> value = (Set<Class>)field.get(pCtx); + + assertTrue(value.size() > 0); + + for (Class pCls : value) { + PortableClassDescriptor desc = pCtx.descriptorForClass(pCls); + + assertEquals(desc.typeId(), pCtx.typeId(pCls).id()); + assertEquals(desc.typeId(), pCtx.typeId(pCls.getName())); + assertEquals(desc.typeId(), pCtx.typeId(pCtx.typeName(pCls.getName()))); + } + } + + /** ++ * @throws Exception If failed. ++ */ + public void testCyclicReferencesMarshalling() throws Exception { + PortableMarshaller marsh = new PortableMarshaller(); + + SimpleObject obj = simpleObject(); + + obj.bArr = obj.inner.bArr; + obj.cArr = obj.inner.cArr; + obj.boolArr = obj.inner.boolArr; + obj.sArr = obj.inner.sArr; + obj.strArr = obj.inner.strArr; + obj.iArr = obj.inner.iArr; + obj.lArr = obj.inner.lArr; + obj.fArr = obj.inner.fArr; + obj.dArr = obj.inner.dArr; + obj.dateArr = obj.inner.dateArr; + obj.uuidArr = obj.inner.uuidArr; + obj.objArr = obj.inner.objArr; + obj.bdArr = obj.inner.bdArr; + obj.map = obj.inner.map; + obj.col = obj.inner.col; + obj.mEntry = obj.inner.mEntry; + + SimpleObject res = (SimpleObject)marshalUnmarshal(obj, marsh); + + assertEquals(obj, res); + + assertTrue(res.bArr == res.inner.bArr); + assertTrue(res.cArr == res.inner.cArr); + assertTrue(res.boolArr == res.inner.boolArr); + assertTrue(res.sArr == res.inner.sArr); + assertTrue(res.strArr == res.inner.strArr); + assertTrue(res.iArr == res.inner.iArr); + assertTrue(res.lArr == res.inner.lArr); + assertTrue(res.fArr == res.inner.fArr); + assertTrue(res.dArr == res.inner.dArr); + assertTrue(res.dateArr == res.inner.dateArr); + assertTrue(res.uuidArr == res.inner.uuidArr); + assertTrue(res.objArr == res.inner.objArr); + assertTrue(res.bdArr == res.inner.bdArr); + assertTrue(res.map == res.inner.map); + assertTrue(res.col == res.inner.col); + assertTrue(res.mEntry == res.inner.mEntry); + } + + /** * */ private static class ObjectWithClassFields {
