X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=tapi%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Ftapi%2Ftopology%2FConvertORToTapiTopology.java;h=3aaeeef7fd07e2d89807de58420cb8750a275f9e;hb=a2c215874e665ca82672f0ed77d219fd150a0026;hp=6c97ba4de538ca1167fa560f76921096fc449669;hpb=e891adcb78e7985004bb7a8fecc3c1295bfa56ef;p=transportpce.git diff --git a/tapi/src/main/java/org/opendaylight/transportpce/tapi/topology/ConvertORToTapiTopology.java b/tapi/src/main/java/org/opendaylight/transportpce/tapi/topology/ConvertORToTapiTopology.java index 6c97ba4de..3aaeeef7f 100644 --- a/tapi/src/main/java/org/opendaylight/transportpce/tapi/topology/ConvertORToTapiTopology.java +++ b/tapi/src/main/java/org/opendaylight/transportpce/tapi/topology/ConvertORToTapiTopology.java @@ -598,6 +598,71 @@ public class ConvertORToTapiTopology { return null; } + public OwnedNodeEdgePointBuilder addPayloadStructureAndPhotSpecToOnep(String nodeId, + Map freqWidthMap, List operModeList, + Collection sicColl, OwnedNodeEdgePointBuilder onepBldr, String keyword) { + if (String.join("+", nodeId, TapiStringConstants.OTSI_MC).equals(keyword) + || String.join("+", nodeId, TapiStringConstants.PHTNC_MEDIA_OTS).equals(keyword)) { + //Creating OTS & OTSI_MC NEP specific attributes + onepBldr.setSupportedPayloadStructure(createSupportedPayloadStructureForPhtncMedia( + sicColl,operModeList)); + SpectrumCapabilityPacBuilder spectrumPac = new SpectrumCapabilityPacBuilder(); + OccupiedSpectrumBuilder ospecBd = new OccupiedSpectrumBuilder(); + if (freqWidthMap == null || freqWidthMap.isEmpty()) { + ospecBd + .setUpperFrequency(Uint64.valueOf(0)) + .setLowerFrequency(Uint64.valueOf(0)); + onepBldr.setAvailablePayloadStructure(createAvailablePayloadStructureForPhtncMedia( + false, sicColl,operModeList)); + double naz = 0.01; + AvailableSpectrum aspec = new AvailableSpectrumBuilder() + .setUpperFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + naz))) + .setLowerFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + + GridConstant.GRANULARITY * GridConstant.EFFECTIVE_BITS * 1E06 + naz))) + .build(); + Map aspecMap = new HashMap<>(); + aspecMap.put(new AvailableSpectrumKey(aspec.getLowerFrequency(), + aspec.getUpperFrequency()), aspec); + spectrumPac.setAvailableSpectrum(aspecMap); + } else { + onepBldr.setAvailablePayloadStructure(createAvailablePayloadStructureForPhtncMedia( + true, sicColl,operModeList)); + ospecBd + .setUpperFrequency(Uint64.valueOf(Math.round( + freqWidthMap.keySet().iterator().next().doubleValue() * 1E09 + + (freqWidthMap.entrySet().iterator().next().getValue().doubleValue() * 1E06) / 2))) + .setLowerFrequency(Uint64.valueOf(Math.round( + freqWidthMap.keySet().iterator().next().doubleValue() * 1E09 + - (freqWidthMap.entrySet().iterator().next().getValue().doubleValue() * 1E06) / 2))); + } + OccupiedSpectrum ospec = ospecBd.build(); + Map ospecMap = new HashMap<>(); + ospecMap.put(new OccupiedSpectrumKey(ospec.getLowerFrequency(), + ospec.getUpperFrequency()), ospec); + spectrumPac.setOccupiedSpectrum(ospecMap); + double nazz = 0.01; + SupportableSpectrum sspec = new SupportableSpectrumBuilder() + .setUpperFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + nazz))) + .setLowerFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + + GridConstant.GRANULARITY * GridConstant.EFFECTIVE_BITS * 1E06 + nazz))) + .build(); + Map sspecMap = new HashMap<>(); + sspecMap.put(new SupportableSpectrumKey(sspec.getLowerFrequency(), + sspec.getUpperFrequency()), sspec); + spectrumPac.setSupportableSpectrum(sspecMap); + PhotonicMediaNodeEdgePointSpec pnepSpec = new PhotonicMediaNodeEdgePointSpecBuilder() + .setSpectrumCapabilityPac(spectrumPac.build()) + .build(); + org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.photonic.media.rev221121.OwnedNodeEdgePoint1 onep1 = + new org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.photonic.media.rev221121 + .OwnedNodeEdgePoint1Builder() + .setPhotonicMediaNodeEdgePointSpec(pnepSpec) + .build(); + onepBldr.addAugmentation(onep1); + } + return onepBldr; + } + private OduSwitchingPools createOduSwitchingPoolForTp100G() { Map nblMap = new HashMap<>(); int count = 1; @@ -943,10 +1008,12 @@ public class ConvertORToTapiTopology { if (("IfOCHOTUCnODUCn").equals(ifCapType) || ("IfOCHOTUCnODUCnUniregen").equals(ifCapType) || ("IfOCHOTUCnODUCnRegen").equals(ifCapType)) { opModeList.add(new OperationalModeKey("400G")); + LOG.warn(TopologyUtils.NOOPMODEDECLARED + "400G rate available", oorTp.getTpId().toString()); break; } } opModeList.add(new OperationalModeKey("100G")); + LOG.warn(TopologyUtils.NOOPMODEDECLARED + "100G rate available", oorTp.getTpId().toString()); } else { opModeList = oorTp.augmentation( org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev230526.TerminationPoint1.class) @@ -954,65 +1021,8 @@ public class ConvertORToTapiTopology { .toList(); } Map freqWidthMap = getXpdrUsedWavelength(oorTp); - if (String.join("+", this.ietfNodeId, TapiStringConstants.OTSI_MC).equals(keyword) - || String.join("+", this.ietfNodeId, TapiStringConstants.PHTNC_MEDIA_OTS).equals(keyword)) { - //Creating OTS & OTSI_MC NEP specific attributes - onepBldr.setSupportedPayloadStructure(createSupportedPayloadStructureForPhtncMedia( - sicColl,opModeList)); - SpectrumCapabilityPacBuilder spectrumPac = new SpectrumCapabilityPacBuilder(); - OccupiedSpectrumBuilder ospecBd = new OccupiedSpectrumBuilder(); - if (freqWidthMap != null && !freqWidthMap.isEmpty()) { - onepBldr.setAvailablePayloadStructure(createAvailablePayloadStructureForPhtncMedia( - true, sicColl,opModeList)); - ospecBd - .setUpperFrequency(Uint64.valueOf(Math.round( - freqWidthMap.keySet().iterator().next().doubleValue() * 1E09 - + (freqWidthMap.entrySet().iterator().next().getValue().doubleValue() * 1E06) / 2))) - .setLowerFrequency(Uint64.valueOf(Math.round( - freqWidthMap.keySet().iterator().next().doubleValue() * 1E09 - - (freqWidthMap.entrySet().iterator().next().getValue().doubleValue() * 1E06) / 2))); - } else { - ospecBd - .setUpperFrequency(Uint64.valueOf(0)) - .setLowerFrequency(Uint64.valueOf(0)); - onepBldr.setAvailablePayloadStructure(createAvailablePayloadStructureForPhtncMedia( - false, sicColl,opModeList)); - double naz = 0.01; - AvailableSpectrum aspec = new AvailableSpectrumBuilder() - .setUpperFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + naz))) - .setLowerFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 - + GridConstant.GRANULARITY * GridConstant.EFFECTIVE_BITS * 1E06 + naz))) - .build(); - Map aspecMap = new HashMap<>(); - aspecMap.put(new AvailableSpectrumKey(aspec.getLowerFrequency(), - aspec.getUpperFrequency()), aspec); - spectrumPac.setAvailableSpectrum(aspecMap); - } - OccupiedSpectrum ospec = ospecBd.build(); - Map ospecMap = new HashMap<>(); - ospecMap.put(new OccupiedSpectrumKey(ospec.getLowerFrequency(), - ospec.getUpperFrequency()), ospec); - spectrumPac.setOccupiedSpectrum(ospecMap); - double nazz = 0.01; - SupportableSpectrum sspec = new SupportableSpectrumBuilder() - .setUpperFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 + nazz))) - .setLowerFrequency(Uint64.valueOf(Math.round(GridConstant.START_EDGE_FREQUENCY * 1E09 - + GridConstant.GRANULARITY * GridConstant.EFFECTIVE_BITS * 1E06 + nazz))) - .build(); - Map sspecMap = new HashMap<>(); - sspecMap.put(new SupportableSpectrumKey(sspec.getLowerFrequency(), - sspec.getUpperFrequency()), sspec); - spectrumPac.setSupportableSpectrum(sspecMap); - PhotonicMediaNodeEdgePointSpec pnepSpec = new PhotonicMediaNodeEdgePointSpecBuilder() - .setSpectrumCapabilityPac(spectrumPac.build()) - .build(); - org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.photonic.media.rev221121.OwnedNodeEdgePoint1 onep1 = - new org.opendaylight.yang.gen.v1.urn.onf.otcc.yang.tapi.photonic.media.rev221121 - .OwnedNodeEdgePoint1Builder() - .setPhotonicMediaNodeEdgePointSpec(pnepSpec) - .build(); - onepBldr.addAugmentation(onep1); - } + onepBldr = addPayloadStructureAndPhotSpecToOnep(this.ietfNodeId, freqWidthMap, opModeList, sicColl, + onepBldr, keyword); } return onepBldr.build(); }