diff options
author | vrvarma <vv8305@att.com> | 2019-12-13 10:24:55 -0500 |
---|---|---|
committer | vrvarma <vv8305@att.com> | 2019-12-13 10:29:45 -0500 |
commit | 430153e1a9489a86cf0ff7942eceb0bf5f1c170c (patch) | |
tree | b22090b80d11761a24d9cbeaa6348704cce2de83 /apps/pci/models/api | |
parent | 34ba229b31758c38a299a163de0007848b5921be (diff) |
osdf rearchitecture into apps and libs
Change-Id: I2db2f8e252bd5e60807b2ffabf5a5b193a789f7a
Signed-off-by: vrvarma <vv8305@att.com>
Issue-ID: OPTFRA-637
Diffstat (limited to 'apps/pci/models/api')
-rw-r--r-- | apps/pci/models/api/__init__.py | 0 | ||||
-rw-r--r-- | apps/pci/models/api/pciOptimizationRequest.py | 54 | ||||
-rw-r--r-- | apps/pci/models/api/pciOptimizationResponse.py | 46 |
3 files changed, 100 insertions, 0 deletions
diff --git a/apps/pci/models/api/__init__.py b/apps/pci/models/api/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/apps/pci/models/api/__init__.py diff --git a/apps/pci/models/api/pciOptimizationRequest.py b/apps/pci/models/api/pciOptimizationRequest.py new file mode 100644 index 0000000..02b67a2 --- /dev/null +++ b/apps/pci/models/api/pciOptimizationRequest.py @@ -0,0 +1,54 @@ +# ------------------------------------------------------------------------- +# Copyright (c) 2018 AT&T Intellectual Property +# +# 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. +# +# ------------------------------------------------------------------------- +# + +from schematics.types import BaseType, StringType, URLType, IntType +from schematics.types.compound import ModelType, ListType, DictType + +from osdf.models.api.common import OSDFModel + + +class RequestInfo(OSDFModel): + """Info for northbound request from client such as SO""" + transactionId = StringType(required=True) + requestId = StringType(required=True) + callbackUrl = URLType(required=True) + callbackHeader = DictType(BaseType) + sourceId = StringType(required=True) + requestType = StringType(required=True) + numSolutions = IntType() + optimizers = ListType(StringType(required=True)) + timeout = IntType() + + +class ANRInfo(OSDFModel): + cellId = StringType(required=True) + removeableNeighbors = ListType(StringType()) + + +class CellInfo(OSDFModel): + """Information specific to CellInfo """ + networkId = StringType(required=True) + cellIdList = ListType(StringType(required=True)) + anrInputList = ListType(ModelType(ANRInfo)) + trigger = StringType() + + +class PCIOptimizationAPI(OSDFModel): + """Request for PCI optimization """ + requestInfo = ModelType(RequestInfo, required=True) + cellInfo = ModelType(CellInfo, required=True) diff --git a/apps/pci/models/api/pciOptimizationResponse.py b/apps/pci/models/api/pciOptimizationResponse.py new file mode 100644 index 0000000..019a43a --- /dev/null +++ b/apps/pci/models/api/pciOptimizationResponse.py @@ -0,0 +1,46 @@ +# ------------------------------------------------------------------------- +# Copyright (c) 2018 AT&T Intellectual Property +# +# 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. +# +# ------------------------------------------------------------------------- +# + +from schematics.types import StringType, IntType +from schematics.types.compound import ModelType, ListType + +from osdf.models.api.common import OSDFModel + + +class PCISolution(OSDFModel): + cellId = StringType(required=True) + pci = IntType(required=True) + + +class ANRSolution(OSDFModel): + cellId = StringType(required=True) + removeableNeighbors = ListType(StringType()) + + +class Solution(OSDFModel): + networkId = StringType(required=True) + pciSolutions = ListType(ListType(ModelType(PCISolution), min_size=1)) + anrSolutions = ListType(ListType(ModelType(ANRSolution), min_size=1)) + + +class PCIOptimizationResponse(OSDFModel): + transactionId = StringType(required=True) + requestId = StringType(required=True) + requestStatus = StringType(required=True) + statusMessage = StringType() + solutions = ModelType(Solution, required=True) |