diff options
author | krishnaa96 <krishna.moorthy6@wipro.com> | 2020-05-01 13:34:50 +0530 |
---|---|---|
committer | krishnaa96 <krishna.moorthy6@wipro.com> | 2020-05-01 13:36:38 +0530 |
commit | 070488fcb919b2cdffca8a3739b0f9abbb9414f4 (patch) | |
tree | cbc23ec9149d8409084fba1847e7d4bc35887d56 /apps | |
parent | 375d7bd29cdc687e11ae27183a20653e76bfba3c (diff) |
Add NSSI and slice profile in shared NSI response
Issue-ID: OPTFRA-749
Signed-off-by: krishnaa96 <krishna.moorthy6@wipro.com>
Change-Id: Ie41f07881dad20e54bc13e5c1d7a6be094972a35
Diffstat (limited to 'apps')
-rw-r--r-- | apps/slice_selection/models/api/nsi_selection_response.py | 9 | ||||
-rw-r--r-- | apps/slice_selection/optimizers/conductor/response_processor.py | 13 |
2 files changed, 22 insertions, 0 deletions
diff --git a/apps/slice_selection/models/api/nsi_selection_response.py b/apps/slice_selection/models/api/nsi_selection_response.py index 9547200..a927efa 100644 --- a/apps/slice_selection/models/api/nsi_selection_response.py +++ b/apps/slice_selection/models/api/nsi_selection_response.py @@ -22,12 +22,21 @@ from schematics.types.compound import ModelType, ListType, DictType # TODO: update osdf.models +class NSSI(OSDFModel): + NSSIId = StringType(required=True) + NSSIName = StringType(required=True) + UUID = StringType(required=True) + invariantUUID = StringType(required=True) + sliceProfile = ListType(DictType(BaseType)) + + class SharedNSISolution(OSDFModel): invariantUUID = StringType(required=True) UUID = StringType(required=True) NSIName = StringType(required=True) NSIId = StringType(required=True) matchLevel = StringType(required=True) + NSSIs = ListType(ModelType(NSSI)) class NSSTInfo(OSDFModel): diff --git a/apps/slice_selection/optimizers/conductor/response_processor.py b/apps/slice_selection/optimizers/conductor/response_processor.py index a841cb5..c175c1a 100644 --- a/apps/slice_selection/optimizers/conductor/response_processor.py +++ b/apps/slice_selection/optimizers/conductor/response_processor.py @@ -54,6 +54,19 @@ def conductor_response_processor(overall_recommendations, nst_info_map, request_ shared_nsi_solution["NSIName"] = candidate.get('nsi_name') shared_nsi_solution["UUID"] = candidate.get('nsi_model_version_id') shared_nsi_solution["invariantUUID"] = candidate.get('nsi_model_invariant_id') + + nssi_info_list = get_nssi_solutions(recommendation) + nssis = list() + for nssi_info in nssi_info_list: + nssi = dict() + nssi["NSSIId"] = nssi_info.get("NSSISolution").get("NSSIId") + nssi["NSSIName"] = nssi_info.get("NSSISolution").get("NSSIName") + nssi["UUID"] = "" + nssi["invariantUUID"] = "" + nssi["sliceProfile"] = [nssi_info.get("sliceProfile")] + nssis.append(nssi) + + shared_nsi_solution["NSSIs"] = nssis shared_nsi_solutions.append(shared_nsi_solution) else: nssi_solutions = get_nssi_solutions(recommendation) |