From d570f9d051b8445be5fc764d827de1cab424a5b8 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Tue, 8 Dec 2020 19:17:56 -0600 Subject: Factor get_nmsa into a util module for DRY --- ncserver/module/interfaces.py | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) (limited to 'ncserver/module/interfaces.py') diff --git a/ncserver/module/interfaces.py b/ncserver/module/interfaces.py index c91c318..d760e0b 100644 --- a/ncserver/module/interfaces.py +++ b/ncserver/module/interfaces.py @@ -18,9 +18,9 @@ from lxml.etree import QName # pylint: disable=E0611 from netconf import error, util from ncserver.base.log import log_config_change -from ncserver.base.modman import MODMAN from ncserver.base.util import _, node_operation -from ncserver.util import maybe_raise_on_invalid_node, system_boot_time +from ncserver.util import get_nmsa, maybe_raise_on_invalid_node, \ + system_boot_time LOGGER = logging.getLogger(__name__) @@ -102,14 +102,6 @@ def _add_iface_contents(container, ifaces): ifname.name, type_num) -def _get_nmsa(): - """Retrieve our NMSA module handle.""" - nmsa_ns = "http://netconf.adelielinux.org/ns/netmgmt" - nmsa = MODMAN._module_for_ns(nmsa_ns) # pylint: disable=W0212 - - return nmsa - - def _log_iface_change(session, iface: str, info: str): """Log a change to an interface. @@ -128,7 +120,7 @@ def _log_iface_change(session, iface: str, info: str): def running(node): """Retrieve the service configuration for this device.""" ifaces = util.subelm(node, 'if:interfaces') - nmsa = _get_nmsa() + nmsa = get_nmsa() if nmsa is None: # We can't get any parameters if an NMSA module isn't loaded. @@ -186,7 +178,7 @@ def operational(node): ifaces = util.subelm(node, 'if:interfaces') _add_iface_contents(ifaces, pathlib.Path('/sys/class/net').iterdir()) - nmsa = _get_nmsa() + nmsa = get_nmsa() for iface in ifaces.iterchildren(): name = iface.find('{'+M_NS+'}name').text @@ -241,7 +233,7 @@ def operational(node): def _edit_description(session, rpc, node, def_op, iface: str): """Edit the description for an interface.""" operation = node_operation(node, def_op) - nmsa = _get_nmsa() + nmsa = get_nmsa() already = nmsa.get_param(iface, 'description') is not None if operation == 'create' and already: @@ -265,7 +257,7 @@ def _edit_description(session, rpc, node, def_op, iface: str): def _edit_enabled(session, rpc, node, def_op, iface: str): """Edit the enabled property of an interface.""" operation = node_operation(node, def_op) - nmsa = _get_nmsa() + nmsa = get_nmsa() if operation == 'create': raise error.DataExistsAppError(rpc) @@ -283,7 +275,7 @@ def edit(session, rpc, node, def_op): """Edit the interface configuration for this device.""" methods = {'description': _edit_description, 'enabled': _edit_enabled} - nmsa = _get_nmsa() + nmsa = get_nmsa() # We can't edit if we don't have an NMSA module loaded. # This guarantees that none of our child functions need to test for nmsa. if nmsa is None: -- cgit v1.2.3-60-g2f50