import netconf_constant
from netconfclient import NetconfClient
from java.lang import Exception
-from abstract_blueprint_function import AbstractPythonComponentFunction
-from org.onap.ccsdk.apps.blueprintsprocessor.functions.netconf.executor import NetconfRpcService
+from org.onap.ccsdk.apps.blueprintsprocessor.functions.netconf.executor import NetconfComponentFunction
+class DefaultGetNetConfig(NetconfComponentFunction):
-
-class DefaultGetNetConfig(AbstractPythonComponentFunction):
def process(self, execution_request):
try:
log = globals()[netconf_constant.SERVICE_LOG]
print(globals())
#requestId = globals()[netconf_constant.PARAM_REQUEST_ID]
requestId = '1234'
+ nc = NetconfClient(log, self)
- bluePrintRuntimeService = globals()['bluePrintRuntimeService']
-
- capabilityProperty = bluePrintRuntimeService.resolveNodeTemplateCapabilityProperties("sample-netconf-device","netconf")
-
- log.info("capabilityProperty {}",capabilityProperty)
- netconfService = NetconfRpcService()
- nc = NetconfClient(log, netconfService)
+ # Create RPC Serivice
+ nc.createRPCServiceFromRequirement("netconf-connection")
- nc.connect(netconfService.getNetconfDeviceInfo(capabilityProperty))
runningConfigTemplate = "runningconfig-template"
runningConfigMessageId = "get-config-" + requestId
errorMessage = "Get Running Config Failure ::"+ deviceResponse.errorMessage
except Exception, err:
- log.info("Exception in the script {}",err.getMessage())
+ log.error("Exception in the script {}",err.getMessage())
status = netconf_constant.STATUS_FAILURE
errorMessage = "Get Running Config Failure ::"+err.getMessage()
class NetconfClient:
- def __init__(self, log, nc):
+ def __init__(self, log, componentFunction):
self.log = log
- self.nc = nc
+ self.componentFunction = componentFunction
+ self.nc = None
+
+ def createRPCServiceFromRequirement(self, requirementName):
+ self.nc = self.componentFunction.netconfRpcClientService(requirementName)
def disconnect(self):
self.nc.disconnect()
return
- def connect(self,deviceInfo):
+ def connect(self, deviceInfo):
self.nc.connect(deviceInfo)
return