Skip to content

Commit

Permalink
Merge pull request #341 from ganeshrn/manager_timeout_issue
Browse files Browse the repository at this point in the history
Allow setting manager timeout with backward compatibility
  • Loading branch information
einarnn committed Sep 6, 2019
2 parents 131c088 + 0b703c3 commit a0cf92b
Showing 1 changed file with 12 additions and 12 deletions.
24 changes: 12 additions & 12 deletions ncclient/manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,21 +90,19 @@ def make_device_handler(device_params):


def _extract_device_params(kwds):
if "device_params" in kwds:
device_params = kwds["device_params"]
del kwds["device_params"]
else:
device_params = None
device_params = kwds.pop("device_params", None)

return device_params

def _extract_manager_params(kwds):
if "manager_params" in kwds:
manager_params = kwds["manager_params"]
del kwds["manager_params"]
else:
manager_params = {}
manager_params = kwds.pop("manager_params", {})

# To maintain backward compatibility
if 'timeout' not in manager_params and 'timeout' in kwds:
manager_params['timeout'] = kwds['timeout']
return manager_params


def connect_ssh(*args, **kwds):
"""
Initialize a :class:`Manager` over the SSH transport.
Expand All @@ -116,8 +114,8 @@ def connect_ssh(*args, **kwds):
all the provided arguments are passed directly to its implementation
of :meth:`~ncclient.transport.SSHSession.connect`.
To customize the :class:`Manager`, add a `manager_params` dictionnary in connection
parameters (e.g. `manager_params={'timeout': 60}` for a bigger RPC timeout paramater)
To customize the :class:`Manager`, add a `manager_params` dictionary in connection
parameters (e.g. `manager_params={'timeout': 60}` for a bigger RPC timeout parameter)
To invoke advanced vendor related operation add
`device_params={'name': '<vendor_alias>'}` in connection parameters. For the time,
Expand Down Expand Up @@ -147,6 +145,7 @@ def connect_ssh(*args, **kwds):
raise
return Manager(session, device_handler, **manager_params)


def connect_ioproc(*args, **kwds):
device_params = _extract_device_params(kwds)
manager_params = _extract_manager_params(kwds)
Expand Down Expand Up @@ -176,6 +175,7 @@ def connect(*args, **kwds):
else:
return connect_ssh(*args, **kwds)


class Manager(object):

"""
Expand Down

0 comments on commit a0cf92b

Please sign in to comment.