aboutsummaryrefslogtreecommitdiffstats
path: root/osdf/adapters
diff options
context:
space:
mode:
authorhariharan97 <rh20085046@wipro.com>2020-08-26 09:42:29 +0530
committerhariharan97 <rh20085046@wipro.com>2020-09-02 17:38:41 +0530
commit7b7cfac3d2ae636f63c0e94df1a7129f2d10cb54 (patch)
treeaefbb5da4319a5fe3bc7b4a2c8d6b2156201038b /osdf/adapters
parent053c09a2ed1a8fc8aeef3f8185902634feec8000 (diff)
Add Nxi-Termination feature
Issue-ID: OPTFRA-825 Signed-off-by: hariharan97 <rh20085046@wipro.com> Change-Id: I0d768e36708e9f26e5bcdf661b2bcb5772ed48c2
Diffstat (limited to 'osdf/adapters')
-rw-r--r--osdf/adapters/aai/_init_.py0
-rw-r--r--osdf/adapters/aai/fetch_aai_data.py55
2 files changed, 55 insertions, 0 deletions
diff --git a/osdf/adapters/aai/_init_.py b/osdf/adapters/aai/_init_.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/osdf/adapters/aai/_init_.py
diff --git a/osdf/adapters/aai/fetch_aai_data.py b/osdf/adapters/aai/fetch_aai_data.py
new file mode 100644
index 0000000..634aa04
--- /dev/null
+++ b/osdf/adapters/aai/fetch_aai_data.py
@@ -0,0 +1,55 @@
+# -------------------------------------------------------------------------
+# Copyright (C) 2020 Wipro Limited.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+# -------------------------------------------------------------------------
+#
+
+import requests
+from requests.auth import HTTPBasicAuth
+from requests import RequestException
+
+
+class AAIException(Exception):
+ pass
+
+
+def get_aai_data(request_json, osdf_config):
+
+ """Get the response from AAI
+
+ :param request_json: requestjson
+ :param osdf_config: configuration specific to OSDF app
+ :return:response body from AAI
+ """
+ aai_headers = {
+ "X-TransactionId": "9999",
+ "X-FromAppId": "OOF",
+ "Accept": "application/json",
+ "Content-Type": "application/json",
+ }
+ nxi_id = request_json["NxIId"]
+ config = osdf_config.deployment
+ aai_url = config["aaiUrl"]
+ aai_req_url = aai_url + config["aaiServiceInstanceUrl"] + nxi_id + "?depth=2"
+
+ try:
+ response = requests.get(aai_req_url, aai_headers, auth=HTTPBasicAuth("AAI", "AAI"), verify=False)
+ except RequestException as e:
+ raise AAIException("Request exception was encountered {}".format(e))
+
+ if response.status_code == 200:
+ return response.json()
+ else:
+ raise AAIException("Error response recieved from AAI for the request {}".format(aai_req_url))