summaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md102
1 files changed, 102 insertions, 0 deletions
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..58e7d2f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,102 @@
+# Overview
+This component contains a number of general Apache Camel components which are intended for use by the data-router.
+
+# Maven Dependency
+To make use of the Camel components included in this repository, include the following artifact in your dependencies list:
+
+ <dependency>
+ <groupId>org.openecomp</groupId>
+ <artifactId>router-core</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ </dependency>
+
+# How to Build:
+
+ > mvn clean install
+
+
+## Rest Client Component
+
+The REST client component provides a simple endpoint for sending HTTP requests to a REST endpoint.
+
+### URI Format
+ ecomp-rest:op[?options]
+
+Where,
+
+op = One of GET, PUT, POST, or DELETE
+
+### URI Options
+The following option parameters must be passed in to the component for HTTPS communications:
+
+| Parameter | Description |
+| --------- | ----------- |
+| ecomp-client-cert | Fully qualified path to the client certificate to use for HTTPS communications. |
+| ecomp-keystore | Fully qualified path to the keystore file to use for HTTP communications. |
+| ecomp-keystore-password | Obfuscated password for the keystore. |
+
+### IN Message
+
+#### Ecomp-Rest Header Parameters
+| Header Name | Description |
+| ----------- | ----------- |
+| ecomp-url | The fully qualified URL for the HTTP request to be send. This is mandatory. |
+
+#### HTTP Header Parameters
+The following parameters, if they are present in the Exchange In Message Headers, will be included as header values
+in the HTTP request generated by the component:
+
+| HTTP Header Name |
+| ---------------- |
+| X-FromAppId |
+| X-TransactionId |
+| resourceVersion |
+| ETag |
+| If-Match |
+| If-None-Match |
+| Accept |
+
+#### Message Body
+For HTTP operations that require a content body, the body of the IN message will be used.
+
+### OUT Message
+
+#### Headers
+The following header values are populated on the OUT message:
+
+| ecomp-response-code | The response code produced by the HTTP request. |
+| ecomp-response-message | The response message produced by the HTTP request. |
+
+#### Message Body
+For HTTP operations that produce a content body, the body of the OUT message will be populated with this result.
+
+### Example
+
+The following route file illustrates a simple example which takes console input and invokes the rest client, using the input from the
+console as the content body for the REST request.
+
+
+ <route xmlns="http://camel.apache.org/schema/spring" trace="true">
+ <!-- Take some input from the console. -->
+ <from uri="stream:in?promptMessage=Enter Something: " />
+
+ <!-- Set the URL that we want to send our REST request to. -->
+ <setHeader headerName="ecomp-url">
+ <constant>https://localhost:9509/services/search-data-service/v1/search/indexes/gdf/documents/88</constant>
+ </setHeader>
+
+ <!-- Set values for some HTTP headers that we want to populate for our reqeust. -->
+ <setHeader headerName="X-FromAppId">
+ <constant>DataLayer</constant>
+ </setHeader>
+ <setHeader headerName="X-TransactionId">
+ <constant>gdf1</constant>
+ </setHeader>
+
+ <!-- Invoke the REST client, using our console input as the content body of our request. -->
+ <!-- Note that we provide the paths to the client certificate and keystore, as well as -->
+ <!-- the obfuscated password for the keystore. -->
+ <to uri="rest-client:put?ecompClientCert=c:/dev/dl_microservice/target/swm/package/nix/dist_files/opt/app/ajsc-aai-data-layer-microservice/bundleconfig/etc/auth/aai-client-cert.p12&amp;ecompKeystore=c:/dev/dl_microservice/target/swm/package/nix/dist_files/opt/app/ajsc-aai-data-layer-microservice/bundleconfig/etc/auth/tomcat_keystore&amp;ecompKeystorePassword=70c87528c88dcd9f9c2558d30e817868"/>
+ <to uri="stream:out" />
+
+ </route>