Class ServiceNetworkLayerModifierImpl<V extends ServiceNode,​E extends ServiceLeg,​S extends ServiceLegSegment>

    • Constructor Detail

      • ServiceNetworkLayerModifierImpl

        public ServiceNetworkLayerModifierImpl​(ServiceNetworkLayerImpl serviceNetworkLayer,
                                               UntypedDirectedGraphImpl<V,​E,​S> graph)
        Constructor
        Parameters:
        serviceNetworkLayer - to use
        graph - parent graph to base modifier on
    • Method Detail

      • removeDanglingSubnetworks

        public void removeDanglingSubnetworks​(Integer belowSize,
                                              Integer aboveSize,
                                              boolean alwaysKeepLargest)
        todo: implement by removing dangling service network subnetworks. But unclear what this means. What if service network is dangling but the underlying physical network is not for now not yet supported. If we implement it in the strict sense, we can simply borrow the functionality from super class and remove override
        Specified by:
        removeDanglingSubnetworks in interface TopologicalLayerModifier
        Overrides:
        removeDanglingSubnetworks in class UntypedNetworkLayerModifierImpl<V extends ServiceNode,​E extends ServiceLeg,​S extends ServiceLegSegment>
        Parameters:
        belowSize - remove subnetworks below the given size
        aboveSize - remove subnetworks above the given size (typically set to maximum value)
        alwaysKeepLargest - when true the largest of the subnetworks is always kept, otherwise not
      • removeUnmappedServiceNetworkEntities

        public void removeUnmappedServiceNetworkEntities()
        Method that will remove all entities (service nodes, legs, leg segments) that have no mapping present to the underlying physical network layer the service network is attached to.

        Note that invoking this method will recreate all managed ids across the service network due to gaps occurring after removal of unmapped entries

        Should fire #RecreatedGraphEntitiesManagedIdsEvent after it has been executed

        Specified by:
        removeUnmappedServiceNetworkEntities in interface ServiceNetworkLayerModifier<V extends ServiceNode,​E extends ServiceLeg,​S extends ServiceLegSegment>