diff options
Diffstat (limited to 'ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java')
-rw-r--r-- | ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java b/ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java index f4dc174..e3a4261 100644 --- a/ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java +++ b/ransim/ransimctrlr/RANSIM-CTRLR/src/main/java/org/onap/ransim/netconf/NetconfClient.java @@ -30,6 +30,7 @@ import java.io.IOException; import java.net.ConnectException; import org.apache.log4j.Logger; +import org.onap.ransim.rest.api.models.PLMNInfoModel; import org.onap.ransim.rest.web.mapper.GNBCUCPModel; import org.onap.ransim.rest.web.mapper.GNBCUUPModel; import org.onap.ransim.rest.web.mapper.GNBDUModel; @@ -211,6 +212,86 @@ public class NetconfClient { } + public Element sendIntelligentSlicingData(PLMNInfoModel pLMNInfoModel, String serverId) { + try { + log.info("sending Intelligent Slicing netconf data"); + Element ranNetworkElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/ran-network"); + Element nearRTRICElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/NearRTRIC"); + Element idNearRTRICElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/idNearRTRIC"); + idNearRTRICElement.setValue(pLMNInfoModel.getNearrtricid()); + + Element gNBCUCPFunctionElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/GNBCUCPFunction"); + Element idGNBCUCPFunctionElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/idGNBCUCPFunction"); + idGNBCUCPFunctionElement.setValue(pLMNInfoModel.getGnbId()); + + Element nRCellCUElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/NRCellCU"); + Element idNRCellCUElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/idNRCellCU"); + idNRCellCUElement.setValue(pLMNInfoModel.getConfigParameter()); + Element nRCellattributesElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/attributes"); + Element pLMNInfoListElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/pLMNInfoList"); + Element mccElement = Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/mcc"); + Element mncElement = Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/mnc"); + String[] plmn = pLMNInfoModel.getpLMNId().split("-"); + log.info("plmn list" + plmn); + mccElement.setValue(plmn[0]); + mncElement.setValue(plmn[1]); + Element sNSSAIListElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/sNSSAIList"); + Element sNssaiElement = Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/sNssai"); + sNssaiElement.setValue(pLMNInfoModel.getSnssai()); + Element statusElement = Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/status"); + statusElement.setValue(pLMNInfoModel.getStatus()); + Element configDataElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/configData"); + Element configParameterElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/configParameter"); + configParameterElement.setValue("maxNumberOfConns"); + Element configValueElement = + Element.create("org:onap:ccsdk:features:sdnr:northbound:ran-network", "/configValue"); + configValueElement.setValue(pLMNInfoModel.getConfigValue()); + + configDataElement.addChild(configParameterElement); + configDataElement.addChild(configValueElement); + + sNSSAIListElement.markReplace(); + sNSSAIListElement.addChild(sNssaiElement); + sNSSAIListElement.addChild(statusElement); + sNSSAIListElement.addChild(configDataElement); + + pLMNInfoListElement.addChild(mccElement); + pLMNInfoListElement.addChild(mncElement); + pLMNInfoListElement.addChild(sNSSAIListElement); + + nRCellattributesElement.addChild(pLMNInfoListElement); + nRCellCUElement.addChild(idNRCellCUElement); + nRCellCUElement.addChild(nRCellattributesElement); + + gNBCUCPFunctionElement.addChild(idGNBCUCPFunctionElement); + gNBCUCPFunctionElement.addChild(nRCellCUElement); + + nearRTRICElement.addChild(idNearRTRICElement); + nearRTRICElement.addChild(gNBCUCPFunctionElement); + + ranNetworkElement.addChild(nearRTRICElement); + ranNetworkElement.markMerge(); + return ranNetworkElement; + + } catch (JNCException e) { + log.error("Exception occured during NodeSet creation {}", e); + return null; + } + + } + public void editConfig(Element initialConfig) { try { Boolean connected = false; |