summaryrefslogtreecommitdiffstats
path: root/components/scripts/python/ccsdk_netconf/netconfclient.py
blob: 421e50098ab9a7c4df608a4c0ab0737801a58e4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
from netconf_constant import CONFIG_TARGET_RUNNING, CONFIG_DEFAULT_OPERATION_REPLACE



class NetconfClient:

    def __init__(self, log, componentFunction):
        self.log = log
        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):
        self.nc.connect(deviceInfo)
        return

    def lock(self, messageId, configTarget, messageTimeout=30):
        deviceResponse = self.nc.lock(messageId, configTarget, messageTimeout)
        return deviceResponse

    def getConfig(self, messageId, filter, configTarget=CONFIG_TARGET_RUNNING, messageTimeout=30):
        self.log.info("in the ncclient getConfig {}",messageId)
        self.log.info("in the ncclient getConfig {}",filter)
        deviceResponse = self.nc.getConfig(messageId, filter, configTarget, messageTimeout)
        return deviceResponse
    
    def editConfig(self, messageId, messageContent, reConnect=False, wait=0, lock=False,
                   configTarget=CONFIG_TARGET_RUNNING, editDefaultOperation=CONFIG_DEFAULT_OPERATION_REPLACE, 
                   deleteConfig= False, validate= False, commit=False, discardChanges =True, unlock=False, 
                   preRestartWait=0, postRestartWait=0, messageTimeout=30):
        deviceResponse = self.nc.editConfig(messageId, messageContent, reConnect, wait, lock, configTarget,
                                            editDefaultOperation, deleteConfig, validate, commit, discardChanges, unlock,
                                            preRestartWait, postRestartWait, messageTimeout)
        return deviceResponse

    def commit(self, messageId, message, discardChanges =True, messageTimeout=30):
        deviceResponse = self.nc.commit(messageId, message, discardChanges, messageTimeout)
        return deviceResponse

    def unLock(self, messageId, configTarget, messageTimeout=30):
        deviceResponse = self.nc.unLock(messageId, configTarget, messageTimeout)
        return deviceResponse

    def discardChanges(self, messageId, messageTimeout=30):
        deviceResponse = self.nc.discardChanges(messageId, messageTimeout)
        return deviceResponse

    def close(self, messageId, force=False, messageTimeout=30):
        deviceResponse = self.nc.close(messageId, force, messageTimeout)
        return deviceResponse

    def rpc(self, request, messageId, messageTimeout=30):
        deviceResponse = self.nc.rpc(request, messageId, messageTimeout)
        return deviceResponse