-
- for (org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network
- .node.TerminationPoint tp : allTps) {
- org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130.@Nullable TerminationPoint1 ocnTp1
- = tp.augmentation(org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev181130
- .TerminationPoint1.class);
- //TODO many nested if-structures below, this needs to be reworked
- if (OpenroadmTpType.XPONDERNETWORK.equals(ocnTp1.getTpType()) && this.otnServiceType.equals("ODU4")) {
- TerminationPoint1 ontTp1;
- if (tp.augmentation(TerminationPoint1.class) != null) {
- ontTp1 = tp.augmentation(TerminationPoint1.class);
- } else {
- continue;
- }
- if (checkTpForOdtuTermination(ontTp1)) {
- LOG.info("TP {} of XPONDER {} is validated", tp.getTpId(), node.getNodeId().getValue());
- this.availableXpdrNWTps.add(tp.getTpId());
- } else {
- LOG.error("TP {} of {} does not allow ODU4 termination creation", tp.getTpId().getValue(),
- node.getNodeId().getValue());
- }
- } else if (OpenroadmTpType.XPONDERNETWORK.equals(ocnTp1.getTpType())
- && (this.otnServiceType.equals("10GE") || this.otnServiceType.equals("1GE"))) {
- TerminationPoint1 ontTp1;
- if (tp.augmentation(TerminationPoint1.class) != null) {
- ontTp1 = tp.augmentation(TerminationPoint1.class);
- } else {
- continue;
- }
- if ("10GE".equals(otnServiceType) && checkOdtuTTPforLoOduCreation(ontTp1, 10)
- || "1GE".equals(otnServiceType) && checkOdtuTTPforLoOduCreation(ontTp1, 1)) {
- LOG.info("TP {} of XPONDER {} is validated", tp.getTpId(), node.getNodeId().getValue());
- this.availableXpdrNWTps.add(tp.getTpId());
- } else {
- if ("10GE".equals(otnServiceType)) {
- LOG.error("TP {} of {} does not allow OD2e termination creation", tp.getTpId().getValue(),
- node.getNodeId().getValue());
- } else if ("1GE".equals(otnServiceType)) {
- LOG.error("TP {} of {} does not allow ODU0 termination creation", tp.getTpId().getValue(),
- node.getNodeId().getValue());
+ for (TerminationPoint tp : allTps) {
+ org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1 ocnTp1
+ = tp.augmentation(org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529
+ .TerminationPoint1.class);
+ if (ocnTp1 == null) {
+ LOG.warn("null ocn TP {}", tp);
+ continue;
+ }
+ //TODO many nested structures below, this needs to be reworked
+ switch (ocnTp1.getTpType()) {
+ case XPONDERNETWORK:
+ if (tp.augmentation(TerminationPoint1.class) == null) {
+ continue;
+ }
+ TerminationPoint1 ontTp1 = tp.augmentation(TerminationPoint1.class);
+ if (SERVICE_TYPE_ODU_LIST.contains(this.otnServiceType)
+ || StringConstants.SERVICE_TYPE_100GE_S.equals(this.otnServiceType)) {
+ // TODO verify the capability of network port to support ODU4 CTP interface creation
+ if (!checkTpForOdtuTermination(ontTp1)) {
+ LOG.error("TP {} of {} does not allow ODU4 termination creation",
+ tp.getTpId().getValue(), node.getNodeId().getValue());
+ continue;
+ }
+ } else if (SERVICE_TYPE_ETH_TS_NB_MAP.containsKey(this.otnServiceType)) {
+ if (!checkOdtuTTPforLoOduCreation(
+ ontTp1, SERVICE_TYPE_ETH_TS_NB_MAP.get(this.otnServiceType))) {
+ LOG.error("TP {} of {} does not allow {} termination creation",
+ tp.getTpId().getValue(),
+ SERVICE_TYPE_ETH_ODU_STRING_MAP.get(this.otnServiceType),
+ node.getNodeId().getValue());
+ continue;
+ }