Loading src/simap_connector/service/SimapConnectorServiceServicerImpl.py +2 −5 Original line number Diff line number Diff line Loading @@ -14,7 +14,6 @@ import grpc, logging, sqlalchemy from typing import List from common.proto.context_pb2 import Empty from common.proto.simap_connector_pb2 import Subscription, SubscriptionId from common.proto.simap_connector_pb2_grpc import SimapConnectorServiceServicer Loading Loading @@ -63,7 +62,7 @@ class SimapConnectorServiceServicerImpl(SimapConnectorServiceServicer): link_details : LinkDetails = discover_link_details( self._restconf_client, xpath_filter ) xpath_filter = link_details.link.get_xpath_filter() xpath_filter = link_details.link.get_xpath_filter(add_simap_telemetry=True) parent_subscription_uuid, parent_subscription_id = subscription_set( self._db_engine, datastore, xpath_filter, period Loading @@ -72,11 +71,9 @@ class SimapConnectorServiceServicerImpl(SimapConnectorServiceServicer): aggregation_cache = AggregationCache() device_client = DeviceClient() sup_link_xpath_filters : List[str] = list() for supporting_link in link_details.supporting_links: controller_id = get_controller_id(supporting_link.network_id) sup_link_xpath_filter = supporting_link.get_xpath_filter() sup_link_xpath_filters.append(sup_link_xpath_filter) sup_link_xpath_filter = supporting_link.get_xpath_filter(add_simap_telemetry=True) if controller_id is None: collector_name = '{:d}:SIMAP:{:s}:{:s}'.format( Loading src/simap_connector/service/Tools.py +7 −7 Original line number Diff line number Diff line Loading @@ -29,10 +29,8 @@ from device.client.DeviceClient import DeviceClient LOGGER = logging.getLogger(__name__) XPATH_LINK_TEMPLATE = ( '/ietf-network:networks/network={:s}' '/ietf-network-topology:link={:s}/simap-telemetry:simap-telemetry' ) XPATH_LINK_TEMPLATE = '/ietf-network:networks/network={:s}/ietf-network-topology:link={:s}' SIMAP_TELEMETRY_SUFFIX = '/simap-telemetry:simap-telemetry' RE_XPATH_LINK = re.compile( r'^/ietf-network:networks/network=([^/]+)/ietf-network-topology:link=([^/]+)/?.*$' Loading @@ -44,8 +42,10 @@ class Link: network_id : str link_id : str def get_xpath_filter(self) -> str: return XPATH_LINK_TEMPLATE.format(self.network_id, self.link_id) def get_xpath_filter(self, add_simap_telemetry : bool = True) -> str: xpath_filter = XPATH_LINK_TEMPLATE.format(self.network_id, self.link_id) if add_simap_telemetry: xpath_filter += SIMAP_TELEMETRY_SUFFIX return xpath_filter @dataclass Loading @@ -62,7 +62,7 @@ def discover_link_details(restconf_client : RestConfClient, xpath_filter : str) network_id, link_id = link_xpath_match.groups() link_details = LinkDetails(Link(network_id, link_id)) xpath_filter = link_details.link.get_xpath_filter() xpath_filter = link_details.link.get_xpath_filter(add_simap_telemetry=False) xpath_data = restconf_client.get(xpath_filter) if not xpath_data: raise Exception('Resource({:s}) not found in SIMAP Server'.format(str(xpath_filter))) Loading Loading
src/simap_connector/service/SimapConnectorServiceServicerImpl.py +2 −5 Original line number Diff line number Diff line Loading @@ -14,7 +14,6 @@ import grpc, logging, sqlalchemy from typing import List from common.proto.context_pb2 import Empty from common.proto.simap_connector_pb2 import Subscription, SubscriptionId from common.proto.simap_connector_pb2_grpc import SimapConnectorServiceServicer Loading Loading @@ -63,7 +62,7 @@ class SimapConnectorServiceServicerImpl(SimapConnectorServiceServicer): link_details : LinkDetails = discover_link_details( self._restconf_client, xpath_filter ) xpath_filter = link_details.link.get_xpath_filter() xpath_filter = link_details.link.get_xpath_filter(add_simap_telemetry=True) parent_subscription_uuid, parent_subscription_id = subscription_set( self._db_engine, datastore, xpath_filter, period Loading @@ -72,11 +71,9 @@ class SimapConnectorServiceServicerImpl(SimapConnectorServiceServicer): aggregation_cache = AggregationCache() device_client = DeviceClient() sup_link_xpath_filters : List[str] = list() for supporting_link in link_details.supporting_links: controller_id = get_controller_id(supporting_link.network_id) sup_link_xpath_filter = supporting_link.get_xpath_filter() sup_link_xpath_filters.append(sup_link_xpath_filter) sup_link_xpath_filter = supporting_link.get_xpath_filter(add_simap_telemetry=True) if controller_id is None: collector_name = '{:d}:SIMAP:{:s}:{:s}'.format( Loading
src/simap_connector/service/Tools.py +7 −7 Original line number Diff line number Diff line Loading @@ -29,10 +29,8 @@ from device.client.DeviceClient import DeviceClient LOGGER = logging.getLogger(__name__) XPATH_LINK_TEMPLATE = ( '/ietf-network:networks/network={:s}' '/ietf-network-topology:link={:s}/simap-telemetry:simap-telemetry' ) XPATH_LINK_TEMPLATE = '/ietf-network:networks/network={:s}/ietf-network-topology:link={:s}' SIMAP_TELEMETRY_SUFFIX = '/simap-telemetry:simap-telemetry' RE_XPATH_LINK = re.compile( r'^/ietf-network:networks/network=([^/]+)/ietf-network-topology:link=([^/]+)/?.*$' Loading @@ -44,8 +42,10 @@ class Link: network_id : str link_id : str def get_xpath_filter(self) -> str: return XPATH_LINK_TEMPLATE.format(self.network_id, self.link_id) def get_xpath_filter(self, add_simap_telemetry : bool = True) -> str: xpath_filter = XPATH_LINK_TEMPLATE.format(self.network_id, self.link_id) if add_simap_telemetry: xpath_filter += SIMAP_TELEMETRY_SUFFIX return xpath_filter @dataclass Loading @@ -62,7 +62,7 @@ def discover_link_details(restconf_client : RestConfClient, xpath_filter : str) network_id, link_id = link_xpath_match.groups() link_details = LinkDetails(Link(network_id, link_id)) xpath_filter = link_details.link.get_xpath_filter() xpath_filter = link_details.link.get_xpath_filter(add_simap_telemetry=False) xpath_data = restconf_client.get(xpath_filter) if not xpath_data: raise Exception('Resource({:s}) not found in SIMAP Server'.format(str(xpath_filter))) Loading