- public boolean isPceOtnNodeValid(final PceOtnNode pceOtnNode) {
- if (pceOtnNode == null || pceOtnNode.node == null || pceOtnNode.getNodeId() == null
- || pceOtnNode.nodeType == null || pceOtnNode.getSupNetworkNodeId() == null
- || pceOtnNode.getSupClliNodeId() == null || pceOtnNode.otnServiceType == null) {
- LOG.error(
- "PceOtnNode: one of parameters is not populated : nodeId, node type, supporting nodeId, otnServiceType"
- );
- return false;
- }
- if (isNodeTypeValid(pceOtnNode)) {
- return isOtnServiceTypeValid(pceOtnNode);
- }
- LOG.error("PceOtnNode node type: node type is not one of MUXPDR or SWITCH or TPDR");
- return false;
- }
-
- private boolean isOtnServiceTypeValid(PceOtnNode pceOtnNode) {
- if (pceOtnNode.modeType == null) {
- return false;
- }
- //Todo refactor Strings (mode and otnServiceType ) to enums
- if (pceOtnNode.otnServiceType.equals(StringConstants.SERVICE_TYPE_ODU4)
- && pceOtnNode.modeType.equals("AZ")) {
- return true;
- }
- return (pceOtnNode.otnServiceType.equals(StringConstants.SERVICE_TYPE_10GE)
- || pceOtnNode.otnServiceType.equals(StringConstants.SERVICE_TYPE_1GE)
- || pceOtnNode.otnServiceType.equals(StringConstants.SERVICE_TYPE_100GE_S))
- && (isAz(pceOtnNode) || isIntermediate(pceOtnNode));
- //TODO serviceTypeEthTsNbMap.containsKey(this.otnServiceType) might be more appropriate here
- // but only SERVICE_TYPE_100GE_S is managed and not SERVICE_TYPE_100GE_M and _T
- }
-
- private boolean isIntermediate(PceOtnNode pceOtnNode) {
- return pceOtnNode.modeType.equals("intermediate")
- && checkSwPool(null, pceOtnNode.availableXpdrNWTps, 0, 2);
- }
-
- private boolean isAz(PceOtnNode pceOtnNode) {
- return pceOtnNode.modeType.equals("AZ")
- && checkSwPool(pceOtnNode.availableXpdrClientTps, pceOtnNode.availableXpdrNWTps, 1, 1);
- }
-
- private boolean isNodeTypeValid(final PceOtnNode pceOtnNode) {
- return pceOtnNode.nodeType == OpenroadmNodeType.MUXPDR
- || pceOtnNode.nodeType == OpenroadmNodeType.SWITCH
- || pceOtnNode.nodeType == OpenroadmNodeType.TPDR;
- }
-