Loading services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/core/apiinvokerenrolmentdetails.py +9 −2 Original line number Original line Diff line number Diff line Loading @@ -5,10 +5,12 @@ import requests from .responses import bad_request_error, not_found_error, forbidden_error, internal_server_error, make_response from .responses import bad_request_error, not_found_error, forbidden_error, internal_server_error, make_response from flask import current_app, Flask, Response from flask import current_app, Flask, Response import json import json from datetime import datetime from ..util import dict_to_camel_case from ..util import dict_to_camel_case from .auth_manager import AuthManager from .auth_manager import AuthManager from .resources import Resource from .resources import Resource from ..config import Config from ..config import Config from api_invoker_management.models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails Loading Loading @@ -77,10 +79,14 @@ class InvokerManagementOperations(Resource): apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id current_app.logger.debug(cert) current_app.logger.debug(cert) apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] # Onboarding Date Record invoker_dict = apiinvokerenrolmentdetail.to_dict() invoker_dict["onboarding_date"] = datetime.now() mycol.insert_one(apiinvokerenrolmentdetail.to_dict()) mycol.insert_one(apiinvokerenrolmentdetail.to_dict()) register.update_one({'username':username}, {"$push":{'list_invokers':api_invoker_id}}) register.update_one({'username':username}, {"$push":{'list_invokers':api_invoker_id}}) current_app.logger.debug("Invoker inserted in database") current_app.logger.debug("Invoker inserted in database") current_app.logger.debug("Netapp onboarded sucessfuly") current_app.logger.debug("Netapp onboarded sucessfuly") Loading Loading @@ -123,7 +129,8 @@ class InvokerManagementOperations(Resource): } } current_app.logger.debug("Invoker Resource inserted in database") current_app.logger.debug("Invoker Resource inserted in database") res = make_response(object=dict_to_camel_case(result), status=200) res = make_response(object=APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) return res return res except Exception as e: except Exception as e: Loading services/TS29222_CAPIF_API_Provider_Management_API/api_provider_management/core/provider_enrolment_details_api.py +9 −4 Original line number Original line Diff line number Diff line Loading @@ -4,11 +4,13 @@ import secrets from flask import current_app, Flask, Response from flask import current_app, Flask, Response from ..core.sign_certificate import sign_certificate from ..core.sign_certificate import sign_certificate from .responses import internal_server_error, not_found_error, forbidden_error, make_response, bad_request_error from .responses import internal_server_error, not_found_error, forbidden_error, make_response, bad_request_error from datetime import datetime from ..util import dict_to_camel_case, clean_empty from ..util import dict_to_camel_case, clean_empty from .resources import Resource from .resources import Resource from .auth_manager import AuthManager from .auth_manager import AuthManager from api_provider_management.models.api_provider_enrolment_details import APIProviderEnrolmentDetails # noqa: E501 class ProviderManagementOperations(Resource): class ProviderManagementOperations(Resource): Loading Loading @@ -53,8 +55,11 @@ class ProviderManagementOperations(Resource): self.auth_manager.add_auth_provider(certificate, api_provider_func.api_prov_func_id, api_provider_func.api_prov_func_role, api_provider_enrolment_details.api_prov_dom_id) self.auth_manager.add_auth_provider(certificate, api_provider_func.api_prov_func_id, api_provider_func.api_prov_func_role, api_provider_enrolment_details.api_prov_dom_id) # Onboarding Date Record provider_dict = api_provider_enrolment_details.to_dict() provider_dict["onboarding_date"] = datetime.now() mycol.insert_one(api_provider_enrolment_details.to_dict()) mycol.insert_one(provider_dict) register.update_one({'username':username}, {"$push":{'list_providers':api_provider_enrolment_details.api_prov_dom_id}}) register.update_one({'username':username}, {"$push":{'list_providers':api_provider_enrolment_details.api_prov_dom_id}}) current_app.logger.debug("Provider inserted in database") current_app.logger.debug("Provider inserted in database") Loading Loading @@ -135,7 +140,7 @@ class ProviderManagementOperations(Resource): result = clean_empty(result) result = clean_empty(result) current_app.logger.debug("Provider domain updated in database") current_app.logger.debug("Provider domain updated in database") return make_response(object=dict_to_camel_case(result), status=200) return make_response(object=APIProviderEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) except Exception as e: except Exception as e: exception = "An exception occurred in update provider" exception = "An exception occurred in update provider" Loading @@ -161,7 +166,7 @@ class ProviderManagementOperations(Resource): current_app.logger.debug("Provider domain updated in database") current_app.logger.debug("Provider domain updated in database") return make_response(object=dict_to_camel_case(result), status=200) return make_response(object=APIProviderEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) except Exception as e: except Exception as e: exception = "An exception occurred in patch provider" exception = "An exception occurred in patch provider" Loading services/TS29222_CAPIF_Discover_Service_API/service_apis/core/discoveredapis.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -43,7 +43,7 @@ class DiscoverApisOperations(Resource): if my_params: if my_params: my_query = {"$and": my_params} my_query = {"$and": my_params} discoved_apis = services.find(my_query, {"_id":0, "apf_id":0}) discoved_apis = services.find(my_query, {"onboarding_date":0, "_id":0, "apf_id":0}) json_docs = [] json_docs = [] for discoved_api in discoved_apis: for discoved_api in discoved_apis: my_api = dict_to_camel_case(discoved_api) my_api = dict_to_camel_case(discoved_api) Loading services/TS29222_CAPIF_Publish_Service_API/published_apis/core/serviceapidescriptions.py +9 −3 Original line number Original line Diff line number Diff line Loading @@ -11,6 +11,8 @@ from ..db.db import MongoDatabse from ..encoder import JSONEncoder from ..encoder import JSONEncoder from ..models.problem_details import ProblemDetails from ..models.problem_details import ProblemDetails from .resources import Resource from .resources import Resource from published_apis.models.service_api_description import ServiceAPIDescription from datetime import datetime from ..util import dict_to_camel_case, clean_empty from ..util import dict_to_camel_case, clean_empty from .responses import bad_request_error, internal_server_error, forbidden_error, not_found_error, unauthorized_error, make_response from .responses import bad_request_error, internal_server_error, forbidden_error, not_found_error, unauthorized_error, make_response from bson import json_util from bson import json_util Loading Loading @@ -55,7 +57,8 @@ class PublishServiceOperations(Resource): if result != None: if result != None: return result return result service = mycol.find({"apf_id": apf_id}, {"apf_id":0, "_id":0}) service = mycol.find({"apf_id": apf_id}, {"onboarding_date":0, "apf_id":0, "_id":0}) current_app.logger.debug(service) if service is None: if service is None: current_app.logger.error("Not found services for this apf id") current_app.logger.error("Not found services for this apf id") return not_found_error(detail="Not exist published services for this apf_id", cause="Not exist service with this apf_id") return not_found_error(detail="Not exist published services for this apf_id", cause="Not exist service with this apf_id") Loading @@ -67,6 +70,7 @@ class PublishServiceOperations(Resource): json_docs.append(my_service_api) json_docs.append(my_service_api) current_app.logger.debug("Obtained services apis") current_app.logger.debug("Obtained services apis") current_app.logger.debug(json_docs) res = make_response(object=json_docs, status=200) res = make_response(object=json_docs, status=200) return res return res Loading Loading @@ -97,7 +101,9 @@ class PublishServiceOperations(Resource): serviceapidescription.api_id = api_id serviceapidescription.api_id = api_id rec = dict() rec = dict() rec['apf_id'] = apf_id rec['apf_id'] = apf_id rec['onboarding_date'] = datetime.now() rec.update(serviceapidescription.to_dict()) rec.update(serviceapidescription.to_dict()) mycol.insert_one(rec) mycol.insert_one(rec) self.auth_manager.add_auth_service(api_id, apf_id) self.auth_manager.add_auth_service(api_id, apf_id) Loading Loading @@ -127,7 +133,7 @@ class PublishServiceOperations(Resource): return result return result my_query = {'apf_id': apf_id, 'api_id': service_api_id} my_query = {'apf_id': apf_id, 'api_id': service_api_id} service_api = mycol.find_one(my_query, {"apf_id":0, "_id":0}) service_api = mycol.find_one(my_query, {"onboarding_date":0, "apf_id":0, "_id":0}) if service_api is None: if service_api is None: current_app.logger.error(service_api_not_found_message) current_app.logger.error(service_api_not_found_message) return not_found_error(detail=service_api_not_found_message, cause="No Service with specific credentials exists") return not_found_error(detail=service_api_not_found_message, cause="No Service with specific credentials exists") Loading Loading @@ -201,7 +207,7 @@ class PublishServiceOperations(Resource): service_api_description = service_api_description.to_dict() service_api_description = service_api_description.to_dict() service_api_description = clean_empty(service_api_description) service_api_description = clean_empty(service_api_description) result = mycol.find_one_and_update(serviceapidescription, {"$set":service_api_description}, projection={"apf_id":0, "_id":0},return_document=ReturnDocument.AFTER ,upsert=False) result = mycol.find_one_and_update(serviceapidescription, {"$set":service_api_description}, projection={"onboarding_date":0, "apf_id":0, "_id":0},return_document=ReturnDocument.AFTER ,upsert=False) result = clean_empty(result) result = clean_empty(result) Loading services/register/register_service/core/register_operations.py +2 −1 Original line number Original line Diff line number Diff line from flask import Flask, jsonify, request, current_app from flask import Flask, jsonify, request, current_app from flask_jwt_extended import create_access_token from flask_jwt_extended import create_access_token from ..db.db import MongoDatabse from ..db.db import MongoDatabse from datetime import datetime from ..config import Config from ..config import Config import secrets import secrets import requests import requests Loading @@ -21,7 +22,7 @@ class RegisterOperations: if exist_user: if exist_user: return jsonify("user already exists"), 409 return jsonify("user already exists"), 409 user_info = dict(_id=secrets.token_hex(7), username=username, password=password, role=role, description=description, cn=cn, list_invokers=[], list_providers=[]) user_info = dict(_id=secrets.token_hex(7), username=username, password=password, role=role, description=description, cn=cn, list_invokers=[], list_providers=[], onboarding_date=datetime.now()) obj = mycol.insert_one(user_info) obj = mycol.insert_one(user_info) if role == "invoker": if role == "invoker": Loading Loading
services/TS29222_CAPIF_API_Invoker_Management_API/api_invoker_management/core/apiinvokerenrolmentdetails.py +9 −2 Original line number Original line Diff line number Diff line Loading @@ -5,10 +5,12 @@ import requests from .responses import bad_request_error, not_found_error, forbidden_error, internal_server_error, make_response from .responses import bad_request_error, not_found_error, forbidden_error, internal_server_error, make_response from flask import current_app, Flask, Response from flask import current_app, Flask, Response import json import json from datetime import datetime from ..util import dict_to_camel_case from ..util import dict_to_camel_case from .auth_manager import AuthManager from .auth_manager import AuthManager from .resources import Resource from .resources import Resource from ..config import Config from ..config import Config from api_invoker_management.models.api_invoker_enrolment_details import APIInvokerEnrolmentDetails Loading Loading @@ -77,10 +79,14 @@ class InvokerManagementOperations(Resource): apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id apiinvokerenrolmentdetail.api_invoker_id = api_invoker_id current_app.logger.debug(cert) current_app.logger.debug(cert) apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] apiinvokerenrolmentdetail.onboarding_information.api_invoker_certificate = cert['data']['certificate'] # Onboarding Date Record invoker_dict = apiinvokerenrolmentdetail.to_dict() invoker_dict["onboarding_date"] = datetime.now() mycol.insert_one(apiinvokerenrolmentdetail.to_dict()) mycol.insert_one(apiinvokerenrolmentdetail.to_dict()) register.update_one({'username':username}, {"$push":{'list_invokers':api_invoker_id}}) register.update_one({'username':username}, {"$push":{'list_invokers':api_invoker_id}}) current_app.logger.debug("Invoker inserted in database") current_app.logger.debug("Invoker inserted in database") current_app.logger.debug("Netapp onboarded sucessfuly") current_app.logger.debug("Netapp onboarded sucessfuly") Loading Loading @@ -123,7 +129,8 @@ class InvokerManagementOperations(Resource): } } current_app.logger.debug("Invoker Resource inserted in database") current_app.logger.debug("Invoker Resource inserted in database") res = make_response(object=dict_to_camel_case(result), status=200) res = make_response(object=APIInvokerEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) return res return res except Exception as e: except Exception as e: Loading
services/TS29222_CAPIF_API_Provider_Management_API/api_provider_management/core/provider_enrolment_details_api.py +9 −4 Original line number Original line Diff line number Diff line Loading @@ -4,11 +4,13 @@ import secrets from flask import current_app, Flask, Response from flask import current_app, Flask, Response from ..core.sign_certificate import sign_certificate from ..core.sign_certificate import sign_certificate from .responses import internal_server_error, not_found_error, forbidden_error, make_response, bad_request_error from .responses import internal_server_error, not_found_error, forbidden_error, make_response, bad_request_error from datetime import datetime from ..util import dict_to_camel_case, clean_empty from ..util import dict_to_camel_case, clean_empty from .resources import Resource from .resources import Resource from .auth_manager import AuthManager from .auth_manager import AuthManager from api_provider_management.models.api_provider_enrolment_details import APIProviderEnrolmentDetails # noqa: E501 class ProviderManagementOperations(Resource): class ProviderManagementOperations(Resource): Loading Loading @@ -53,8 +55,11 @@ class ProviderManagementOperations(Resource): self.auth_manager.add_auth_provider(certificate, api_provider_func.api_prov_func_id, api_provider_func.api_prov_func_role, api_provider_enrolment_details.api_prov_dom_id) self.auth_manager.add_auth_provider(certificate, api_provider_func.api_prov_func_id, api_provider_func.api_prov_func_role, api_provider_enrolment_details.api_prov_dom_id) # Onboarding Date Record provider_dict = api_provider_enrolment_details.to_dict() provider_dict["onboarding_date"] = datetime.now() mycol.insert_one(api_provider_enrolment_details.to_dict()) mycol.insert_one(provider_dict) register.update_one({'username':username}, {"$push":{'list_providers':api_provider_enrolment_details.api_prov_dom_id}}) register.update_one({'username':username}, {"$push":{'list_providers':api_provider_enrolment_details.api_prov_dom_id}}) current_app.logger.debug("Provider inserted in database") current_app.logger.debug("Provider inserted in database") Loading Loading @@ -135,7 +140,7 @@ class ProviderManagementOperations(Resource): result = clean_empty(result) result = clean_empty(result) current_app.logger.debug("Provider domain updated in database") current_app.logger.debug("Provider domain updated in database") return make_response(object=dict_to_camel_case(result), status=200) return make_response(object=APIProviderEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) except Exception as e: except Exception as e: exception = "An exception occurred in update provider" exception = "An exception occurred in update provider" Loading @@ -161,7 +166,7 @@ class ProviderManagementOperations(Resource): current_app.logger.debug("Provider domain updated in database") current_app.logger.debug("Provider domain updated in database") return make_response(object=dict_to_camel_case(result), status=200) return make_response(object=APIProviderEnrolmentDetails().from_dict(dict_to_camel_case(result)), status=200) except Exception as e: except Exception as e: exception = "An exception occurred in patch provider" exception = "An exception occurred in patch provider" Loading
services/TS29222_CAPIF_Discover_Service_API/service_apis/core/discoveredapis.py +1 −1 Original line number Original line Diff line number Diff line Loading @@ -43,7 +43,7 @@ class DiscoverApisOperations(Resource): if my_params: if my_params: my_query = {"$and": my_params} my_query = {"$and": my_params} discoved_apis = services.find(my_query, {"_id":0, "apf_id":0}) discoved_apis = services.find(my_query, {"onboarding_date":0, "_id":0, "apf_id":0}) json_docs = [] json_docs = [] for discoved_api in discoved_apis: for discoved_api in discoved_apis: my_api = dict_to_camel_case(discoved_api) my_api = dict_to_camel_case(discoved_api) Loading
services/TS29222_CAPIF_Publish_Service_API/published_apis/core/serviceapidescriptions.py +9 −3 Original line number Original line Diff line number Diff line Loading @@ -11,6 +11,8 @@ from ..db.db import MongoDatabse from ..encoder import JSONEncoder from ..encoder import JSONEncoder from ..models.problem_details import ProblemDetails from ..models.problem_details import ProblemDetails from .resources import Resource from .resources import Resource from published_apis.models.service_api_description import ServiceAPIDescription from datetime import datetime from ..util import dict_to_camel_case, clean_empty from ..util import dict_to_camel_case, clean_empty from .responses import bad_request_error, internal_server_error, forbidden_error, not_found_error, unauthorized_error, make_response from .responses import bad_request_error, internal_server_error, forbidden_error, not_found_error, unauthorized_error, make_response from bson import json_util from bson import json_util Loading Loading @@ -55,7 +57,8 @@ class PublishServiceOperations(Resource): if result != None: if result != None: return result return result service = mycol.find({"apf_id": apf_id}, {"apf_id":0, "_id":0}) service = mycol.find({"apf_id": apf_id}, {"onboarding_date":0, "apf_id":0, "_id":0}) current_app.logger.debug(service) if service is None: if service is None: current_app.logger.error("Not found services for this apf id") current_app.logger.error("Not found services for this apf id") return not_found_error(detail="Not exist published services for this apf_id", cause="Not exist service with this apf_id") return not_found_error(detail="Not exist published services for this apf_id", cause="Not exist service with this apf_id") Loading @@ -67,6 +70,7 @@ class PublishServiceOperations(Resource): json_docs.append(my_service_api) json_docs.append(my_service_api) current_app.logger.debug("Obtained services apis") current_app.logger.debug("Obtained services apis") current_app.logger.debug(json_docs) res = make_response(object=json_docs, status=200) res = make_response(object=json_docs, status=200) return res return res Loading Loading @@ -97,7 +101,9 @@ class PublishServiceOperations(Resource): serviceapidescription.api_id = api_id serviceapidescription.api_id = api_id rec = dict() rec = dict() rec['apf_id'] = apf_id rec['apf_id'] = apf_id rec['onboarding_date'] = datetime.now() rec.update(serviceapidescription.to_dict()) rec.update(serviceapidescription.to_dict()) mycol.insert_one(rec) mycol.insert_one(rec) self.auth_manager.add_auth_service(api_id, apf_id) self.auth_manager.add_auth_service(api_id, apf_id) Loading Loading @@ -127,7 +133,7 @@ class PublishServiceOperations(Resource): return result return result my_query = {'apf_id': apf_id, 'api_id': service_api_id} my_query = {'apf_id': apf_id, 'api_id': service_api_id} service_api = mycol.find_one(my_query, {"apf_id":0, "_id":0}) service_api = mycol.find_one(my_query, {"onboarding_date":0, "apf_id":0, "_id":0}) if service_api is None: if service_api is None: current_app.logger.error(service_api_not_found_message) current_app.logger.error(service_api_not_found_message) return not_found_error(detail=service_api_not_found_message, cause="No Service with specific credentials exists") return not_found_error(detail=service_api_not_found_message, cause="No Service with specific credentials exists") Loading Loading @@ -201,7 +207,7 @@ class PublishServiceOperations(Resource): service_api_description = service_api_description.to_dict() service_api_description = service_api_description.to_dict() service_api_description = clean_empty(service_api_description) service_api_description = clean_empty(service_api_description) result = mycol.find_one_and_update(serviceapidescription, {"$set":service_api_description}, projection={"apf_id":0, "_id":0},return_document=ReturnDocument.AFTER ,upsert=False) result = mycol.find_one_and_update(serviceapidescription, {"$set":service_api_description}, projection={"onboarding_date":0, "apf_id":0, "_id":0},return_document=ReturnDocument.AFTER ,upsert=False) result = clean_empty(result) result = clean_empty(result) Loading
services/register/register_service/core/register_operations.py +2 −1 Original line number Original line Diff line number Diff line from flask import Flask, jsonify, request, current_app from flask import Flask, jsonify, request, current_app from flask_jwt_extended import create_access_token from flask_jwt_extended import create_access_token from ..db.db import MongoDatabse from ..db.db import MongoDatabse from datetime import datetime from ..config import Config from ..config import Config import secrets import secrets import requests import requests Loading @@ -21,7 +22,7 @@ class RegisterOperations: if exist_user: if exist_user: return jsonify("user already exists"), 409 return jsonify("user already exists"), 409 user_info = dict(_id=secrets.token_hex(7), username=username, password=password, role=role, description=description, cn=cn, list_invokers=[], list_providers=[]) user_info = dict(_id=secrets.token_hex(7), username=username, password=password, role=role, description=description, cn=cn, list_invokers=[], list_providers=[], onboarding_date=datetime.now()) obj = mycol.insert_one(user_info) obj = mycol.insert_one(user_info) if role == "invoker": if role == "invoker": Loading