This is an automated email from the ASF dual-hosted git repository. acosentino pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit a5d371efeaa621e8aa1e15c6e07c37725b3a5361 Author: krish <[email protected]> AuthorDate: Tue Oct 15 14:32:11 2019 +0100 CAMEL-13684 - upgraded corda to 4.1 and added missing ops methos in producer --- components/camel-corda/pom.xml | 14 ++++++ .../camel/component/corda/CordaConstants.java | 15 ++++++ .../camel/component/corda/CordaProducer.java | 53 ++++++++++++++++++++++ parent/pom.xml | 2 +- 4 files changed, 83 insertions(+), 1 deletion(-) diff --git a/components/camel-corda/pom.xml b/components/camel-corda/pom.xml index fdffbc3..c05d19f 100644 --- a/components/camel-corda/pom.xml +++ b/components/camel-corda/pom.xml @@ -36,6 +36,20 @@ <properties> </properties> + <repositories> + <repository> + <id>R3</id> + <name>R3 Maven</name> + <url>https://dl.bintray.com/r3/corda/</url> + <releases> + <enabled>true</enabled> + </releases> + <snapshots> + <enabled>false</enabled> + </snapshots> + </repository> + </repositories> + <dependencies> <dependency> <groupId>org.apache.camel</groupId> diff --git a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaConstants.java b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaConstants.java index 1a06c25..ef00bc3 100644 --- a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaConstants.java +++ b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaConstants.java @@ -66,4 +66,19 @@ public interface CordaConstants { String SECURE_HASH = "SECURE_HASH"; String QUERY_CRITERIA = "QUERY_CRITERIA"; String PAGE_SPECIFICATION = "PAGE_SPECIFICATION"; + + String TERMINATE = "TERMINATE"; + String ACCEPT_NEWNETWORK_PARAMETERS = "ACCEPT_NEWNETWORK_PARAMETERS"; + String IS_WAITING_FOR_SHUTDOWN = "IS_WAITING_FOR_SHUTDOWN"; + String KILL_FLOW = "KILL_FLOW"; + String NETWORK_PARAMETERS_FEED = "NETWORK_PARAMETERS_FEED"; + String REFRESH_NETWORK_MAP_CACHE = "REFRESH_NETWORK_MAP_CACHE"; + String SHUTDOWN = "SHUTDOWN"; + String UPLOAD_ATTACHMENT_WITH_META_DATA = "UPLOAD_ATTACHMENT_WITH_META_DATA"; + String WAIT_UNTIL_NETWORK_READY = "WAIT_UNTIL_NETWORK_READY"; + + + + + } diff --git a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java index 30ded99..ab5b2ca 100644 --- a/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java +++ b/components/camel-corda/src/main/java/org/apache/camel/component/corda/CordaProducer.java @@ -33,6 +33,8 @@ import net.corda.core.node.services.vault.Sort; import org.apache.camel.Message; import org.apache.camel.spi.InvokeOnHeader; import org.apache.camel.support.HeaderSelectorProducer; +import net.corda.core.flows.StateMachineRunId; + import static org.apache.camel.component.corda.CordaConstants.ARGUMENTS; import static org.apache.camel.component.corda.CordaConstants.ATTACHMENT_QUERY_CRITERIA; @@ -238,4 +240,55 @@ public class CordaProducer extends HeaderSelectorProducer { Sort sorting = message.getHeader(SORT, Sort.class); message.setBody(cordaRPCOps.vaultQueryByWithSorting(contractStateClass, criteria, sorting)); } + + @InvokeOnHeader(CordaConstants.TERMINATE) + void terminate(Message message) throws Exception { + cordaRPCOps.terminate(true); + } + + @InvokeOnHeader(CordaConstants.IS_WAITING_FOR_SHUTDOWN) + void isWaitingForShutdown(Message message) throws Exception { + message.setBody(cordaRPCOps.isWaitingForShutdown()); + } + + @InvokeOnHeader(CordaConstants.REFRESH_NETWORK_MAP_CACHE) + void refreshNetworkMapCache(Message message) throws Exception { + cordaRPCOps.refreshNetworkMapCache(); + } + + @InvokeOnHeader(CordaConstants.SHUTDOWN) + void shutdown(Message message) throws Exception { + cordaRPCOps.shutdown(); + } + + @InvokeOnHeader(CordaConstants.WAIT_UNTIL_NETWORK_READY) + void waitUntilNetworkReady(Message message) throws Exception { + message.setBody(cordaRPCOps.waitUntilNetworkReady()); + } + + @InvokeOnHeader(CordaConstants.ACCEPT_NEWNETWORK_PARAMETERS) + void acceptNewNetworkParameters(Message message) throws Exception { + SecureHash secureHash = message.getHeader(SECURE_HASH, SecureHash.class); + cordaRPCOps.acceptNewNetworkParameters(secureHash); + } + + @InvokeOnHeader(CordaConstants.KILL_FLOW) + void killFlow(Message message) throws Exception { + StateMachineRunId stateMachineRunId = message.getBody(StateMachineRunId.class); + cordaRPCOps.killFlow(stateMachineRunId); + } + + @InvokeOnHeader(CordaConstants.NETWORK_PARAMETERS_FEED) + void networkParametersFeed(Message message) throws Exception { + message.setBody(cordaRPCOps.networkParametersFeed()); + } + + @InvokeOnHeader(CordaConstants.UPLOAD_ATTACHMENT_WITH_META_DATA) + void uploadAttachmentWithMetadata(Message message) throws Exception { + InputStream inputStream = message.getBody(InputStream.class); + String uploader = message.getBody(String.class); + String filename = message.getBody(String.class); + SecureHash secureHash = cordaRPCOps.uploadAttachmentWithMetadata(inputStream,uploader,filename); + message.setHeader(SECURE_HASH, secureHash); + } } diff --git a/parent/pom.xml b/parent/pom.xml index 481a63a..59c819d 100644 --- a/parent/pom.xml +++ b/parent/pom.xml @@ -148,7 +148,7 @@ <consul-client-version>1.3.3</consul-client-version> <consul-client-bundle-version>1.3.3_1</consul-client-bundle-version> <cobertura-maven-plugin-version>2.7</cobertura-maven-plugin-version> - <corda-version>4.0</corda-version> + <corda-version>4.1</corda-version> <couchbase-client-version>1.4.13</couchbase-client-version> <couchbase-client-bundle-version>1.4.13_1</couchbase-client-bundle-version> <curator-version>2.12.0</curator-version>
