23 Commits

Author SHA1 Message Date
Shams Asari
11fd70a1f7 Merge remote-tracking branch 'open/master' into os-merge-d620e71
# Conflicts:
#	node/src/main/kotlin/net/corda/node/serialization/kryo/Kryo.kt
2018-06-06 09:51:29 +01:00
Shams Asari
d620e71bb6
Replaced all uses of assert with require ()
JVM assertions have to be enabled with the -ea flag so it's possible for these checks to be ignored.
2018-06-06 00:31:41 +01:00
Shams Asari
27e688e2c8
Merge pull request from corda/os-merge-5d1cc0b
O/S merge from 5d1cc0b
2018-05-31 11:14:15 +01:00
Tudor Malene
fd2f2eb14a ENT-1871 Rebrand R3Corda to Corda Enterprise ()
* ENT-1871 Rebrand R3Corda to Corda Enterprise

* ENT-1871 Address code review comments

* ENT-1871 Address code review comments

* ENT-1871 Address code review comments

* ENT-1871 Address code review comments
2018-05-31 08:59:05 +01:00
Shams Asari
03fae9bd7d Merge branch 'merge-5d1cc0b' into os-merge-5d1cc0b
# Conflicts:
#	.idea/compiler.xml
#	node/src/main/kotlin/net/corda/node/services/statemachine/SingleThreadedStateMachineManager.kt
#	node/src/main/kotlin/net/corda/node/services/statemachine/transitions/StateMachine.kt
2018-05-30 21:47:48 +01:00
Shams Asari
7b09795795
CORDA-1383: Cleaned up the JSON format of WireTransaction and SignedTransaction ()
In particular correctly outputs the custom state and command objects in the txs. Also fixed up deserialisation back into the transaction objects.
2018-05-30 16:37:41 +01:00
sollecitom
de0c69a888 Merge remote-tracking branch 'remotes/open/master' into merges/may-29-16-48
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/services/RaftNotaryServiceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/PersistentNetworkMapCacheTest.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/internal/Node.kt
#	node/src/main/kotlin/net/corda/node/services/identity/PersistentIdentityService.kt
#	node/src/main/kotlin/net/corda/node/services/persistence/DBTransactionMappingStorage.kt
#	node/src/main/kotlin/net/corda/node/services/persistence/DBTransactionStorage.kt
#	node/src/main/kotlin/net/corda/node/services/vault/NodeVaultService.kt
#	node/src/test/kotlin/net/corda/node/internal/NodeTest.kt
#	node/src/test/kotlin/net/corda/node/services/identity/PersistentIdentityServiceTests.kt
#	node/src/test/kotlin/net/corda/node/services/messaging/ArtemisMessagingTest.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/DBCheckpointStorageTests.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/DBTransactionStorageTests.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/HibernateConfigurationTest.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/NodeAttachmentStorageTest.kt
#	node/src/test/kotlin/net/corda/node/services/schema/HibernateObserverTests.kt
#	node/src/test/kotlin/net/corda/node/services/transactions/PersistentUniquenessProviderTests.kt
#	node/src/test/kotlin/net/corda/node/services/transactions/RaftTransactionCommitLogTests.kt
#	node/src/test/kotlin/net/corda/node/services/vault/VaultQueryTests.kt
#	node/src/test/kotlin/net/corda/node/utilities/ObservablesTests.kt
#	samples/irs-demo/cordapp/src/test/kotlin/net/corda/irs/api/NodeInterestRatesTest.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockServices.kt
2018-05-29 17:17:08 +01:00
Katelyn Baker
a359f627d5
CORDA-1545 - Arrays of primitive byte arrays don't deserialize ()
* CORDA-1545 - Arrays of primitive byte arrays don't deserialize

At serialization time we incorrectly encode the type as byte[p][] instead
of binary[]
2018-05-29 14:36:04 +01:00
szymonsztuka
c6168cb4e6 Resloved merge conflicts. 2018-05-29 11:32:43 +01:00
Katarzyna Streich
8504b65e7b
ENT-1933: make NetworkParameters serialization compatible ()
* ENT-1933: make NetworkParameters serialization compatible
2018-05-25 17:14:00 +01:00
rick.parker
033a5798a1 Merge remote-tracking branch 'remotes/open/master' into parkri-os-merge-20180525-1
# Conflicts:
#	.idea/compiler.xml
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/config/ConfigUtilities.kt
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/persistence/DatabaseTransaction.kt
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/protonwrapper/netty/AMQPChannelHandler.kt
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/protonwrapper/netty/AMQPClient.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/main/kotlin/net/corda/node/services/messaging/P2PMessagingClient.kt
#	node/src/main/kotlin/net/corda/node/services/statemachine/transitions/DeliverSessionMessageTransition.kt
#	node/src/main/resources/reference.conf
#	node/src/test/kotlin/net/corda/node/services/config/NodeConfigurationImplTest.kt
#	node/src/test/kotlin/net/corda/node/services/vault/VaultQueryTests.kt
#	settings.gradle
2018-05-25 14:19:15 +01:00
Katelyn Baker
7cbc316b9d
CORDA-1521 - Fix rpc attachment smoke test / better AMQP logging ()
* CORDA-1521 - Fix rpc attachment smoke test / better AMQP logging

* Remove poor debug message

* Review comments

* reduce debug spam
2018-05-25 13:00:04 +01:00
Katelyn Baker
ee0d580448
CORDA-1530 - Generics break default evolver ()
* CORDA-1530 - Generics break default  evolver

When selecting an annotated constructor for evolving a type make sure
we treat generics in the same manner we did when serialized. Effectively
throw away the template information and treat lists as lists and maps
as maps
2018-05-24 18:30:45 +01:00
Shams Asari
4e0378de9c
CORDA-1238: Moved the blob inspector out of experimental and wired it to JackonSupport ()
The existing output format was not complete and so was deleted to avoid it becoming a tech debt. We can always resurrect it at a later point.
2018-05-24 18:26:55 +01:00
Shams Asari
c40e080dcc Merge remote-tracking branch 'open/master' into os-merge-3136e97
# Conflicts:
#	.idea/compiler.xml
#	node/src/main/kotlin/net/corda/node/serialization/kryo/CordaClassResolver.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/CordaClosureSerializer.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/DefaultKryoCustomizer.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/Kryo.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/KryoSerializationScheme.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/SerializeAsTokenSerializer.kt
#	node/src/main/kotlin/net/corda/node/services/config/ConfigUtilities.kt
#	node/src/test/kotlin/net/corda/node/serialization/kryo/KryoStreamsTest.kt
#	node/src/test/kotlin/net/corda/node/serialization/kryo/KryoTests.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/SharedContexts.kt
2018-05-24 13:20:16 +01:00
Shams Asari
3136e973a7
CORDA-1511: Kryo only used for node checkpoints and so moved out of serialization module and into node () 2018-05-24 12:18:07 +01:00
Chris Rankin
76918de656
ENT-1903: Isolate the WeakHashMap reference. () 2018-05-23 20:09:57 +01:00
Katelyn Baker
cba83aca13
Move RxNotification serializer into the serialization package () 2018-05-22 15:17:18 +01:00
Shams Asari
b2f41d82f9 Merge fixes 2018-05-21 11:25:13 +01:00
Shams Asari
152848730d Merge remote-tracking branch 'open/master' into os-merge-2907250
# Conflicts:
#	build.gradle
#	client/rpc/src/main/kotlin/net/corda/client/rpc/CordaRPCClient.kt
#	node-api/build.gradle
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/serialization/amqp/custom/StringBufferSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/AllButBlacklisted.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/AttachmentsClassLoader.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/DefaultWhitelist.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/GeneratedAttachment.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/OrdinalIO.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/SerializationFormat.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/SerializationScheme.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/SerializeAsTokenContextImpl.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/SharedContexts.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/UseCaseAwareness.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/AMQPDescriptorRegistry.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/AMQPPrimitiveSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/AMQPSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/AMQPSerializerFactories.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/ArraySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/CollectionSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/CorDappCustomSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/CustomSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/DeserializationInput.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/DeserializedGenericArrayType.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/DeserializedParameterizedType.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/EnumEvolutionSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/EnumSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/Envelope.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/EvolutionSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/FingerPrinter.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/MapSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/ObjectSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/PropertySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/PropertySerializers.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/Schema.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/SerializationHelper.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/SerializationOutput.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/SerializerFactory.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/SingletonSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/SupportedTransforms.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/TransformTypes.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/TransformsSchema.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/BigDecimalSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/BigIntegerSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/BitSetSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/CertPathSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/ClassSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/ContractAttachmentSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/CurrencySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/DurationSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/EnumSetSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/InputStreamSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/InstantSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/LocalDateSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/LocalDateTimeSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/LocalTimeSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/MonthDaySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/OffsetDateTimeSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/OffsetTimeSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/OpaqueBytesSubSequenceSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/PeriodSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/PrivateKeySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/PublicKeySerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/SimpleStringSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/ThrowableSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/X509CRLSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/X509CertificateSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/YearMonthSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/YearSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/ZoneIdSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/amqp/custom/ZonedDateTimeSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/carpenter/ClassCarpenter.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/carpenter/Exceptions.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/carpenter/MetaCarpenter.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/carpenter/Schema.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/carpenter/SchemaFields.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/CordaClassResolver.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/CordaClosureSerializer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/DefaultKryoCustomizer.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/Kryo.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/KryoSerializationScheme.kt
#	serialization/src/main/kotlin/net/corda/serialization/internal/kryo/SerializeAsTokenSerializer.kt
#	serialization/src/test/java/net/corda/serialization/internal/ForbiddenLambdaSerializationTests.java
#	serialization/src/test/java/net/corda/serialization/internal/LambdaCheckpointSerializationTest.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/ErrorMessageTests.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/JavaGenericsTest.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/JavaPrivatePropertyTests.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/JavaSerialiseEnumTests.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/JavaSerializationOutputTests.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/ListsSerializationJavaTest.java
#	serialization/src/test/java/net/corda/serialization/internal/amqp/SetterConstructorTests.java
#	serialization/src/test/kotlin/net/corda/serialization/internal/AttachmentsClassLoaderTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/ContractAttachmentSerializerTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/CordaClassResolverTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/ListsSerializationTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/MapsSerializationTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/PrivateKeySerializationTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/SerializationTokenTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/SetsSerializationTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/CorDappSerializerTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeAndReturnEnvelopeTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeMapTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeNeedingCarpentryOfEnumsTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeNeedingCarpentrySimpleTypesTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeNeedingCarpentryTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializeSimpleTypesTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/DeserializedParameterizedTypeTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/EnumEvolvabilityTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/EnumEvolveTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/EnumTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/ErrorMessagesTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/EvolutionSerializerGetterTesting.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/EvolvabilityTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/FingerPrinterTesting.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/GenericsTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/OverridePKSerializerTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/PrivatePropertyTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/SerializationPropertyOrdering.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/SerializeAndReturnSchemaTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/amqp/StaticInitialisationOfSerializedObjectTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/ClassCarpenterTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/ClassCarpenterTestUtils.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/ClassCarpenterWhitelistTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/CompositeMemberCompositeSchemaToClassCarpenterTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/EnumClassTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/InheritanceSchemaToClassCarpenterTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/MultiMemberCompositeSchemaToClassCarpenterTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/carpenter/SingleMemberCompositeSchemaToClassCarpenterTests.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/kryo/KryoStreamsTest.kt
#	serialization/src/test/kotlin/net/corda/serialization/internal/kryo/KryoTests.kt
#	settings.gradle
2018-05-21 10:31:57 +01:00
Chris Rankin
a38250c100
Declare serialisation default interface methods as Java8-style defaults. () 2018-05-18 12:31:01 +01:00
Shams Asari
824adca6c0
CORDA-1238: Updated JacksonSupport to serialise pojos annotated with @CordaSerializable with the same properties as the AMQP serialisation framework. ()
This fixes an issue for pojos with getters that aren't c'tor-based properties. Jackson serialises these out but is then unable to deserialise the pojo back.
2018-05-17 18:34:12 +01:00
Shams Asari
3cdd908714
Moved the serialisation logic in nodeapi.internal.serialization into its own module: serialization ()
node-api now depends on this module and upcoming changes will use this as well rather than having to depend on node-api.

EnumEvolveTests.deserializeWithRename and EnumEvolveTests.multiOperations are temporarily ignored since their test resources can't be regenerated due to bugs.
2018-05-17 16:18:07 +01:00