Class VplsManager

  • All Implemented Interfaces:
    Vpls

    public class VplsManager
    extends Object
    implements Vpls
    Application to create L2 broadcast overlay networks using VLANs.
    • Field Detail

      • hostService

        protected org.onosproject.net.host.HostService hostService
      • interfaceService

        protected org.onosproject.net.intf.InterfaceService interfaceService
      • codecService

        protected org.onosproject.codec.CodecService codecService
    • Constructor Detail

      • VplsManager

        public VplsManager()
    • Method Detail

      • activate

        public void activate()
      • deactivate

        public void deactivate()
      • createVpls

        public VplsData createVpls​(String vplsName,
                                   org.onosproject.net.EncapsulationType encapsulationType)
        Description copied from interface: Vpls
        Creates a new VPLS.
        Specified by:
        createVpls in interface Vpls
        Parameters:
        vplsName - the name of the VPLS
        encapsulationType - the encapsulation type
        Returns:
        a VPLS instance if the operation is successful; null otherwise
      • removeVpls

        public VplsData removeVpls​(VplsData vplsData)
        Description copied from interface: Vpls
        Removes a VPLS.
        Specified by:
        removeVpls in interface Vpls
        Parameters:
        vplsData - the VPLS to be removed
        Returns:
        the VPLS removed if the operation is successful; null otherwise
      • addInterfaces

        public void addInterfaces​(VplsData vplsData,
                                  Collection<org.onosproject.net.intf.Interface> interfaces)
        Description copied from interface: Vpls
        Adds network interfaces to a VPLS.
        Specified by:
        addInterfaces in interface Vpls
        Parameters:
        vplsData - the VPLS to which the interfaces have to be added to
        interfaces - the interfaces to add
      • addInterface

        public void addInterface​(VplsData vplsData,
                                 org.onosproject.net.intf.Interface iface)
        Description copied from interface: Vpls
        Adds a network interface to a VPLS.
        Specified by:
        addInterface in interface Vpls
        Parameters:
        vplsData - the VPLS to which the interface has to be added to
        iface - the interface to add
      • setEncapsulationType

        public void setEncapsulationType​(VplsData vplsData,
                                         org.onosproject.net.EncapsulationType encapsulationType)
        Description copied from interface: Vpls
        Sets an encapsulation type for a VPLS.
        Specified by:
        setEncapsulationType in interface Vpls
        Parameters:
        vplsData - the VPLS for which the encapsulation has to be set
        encapsulationType - the encapsulation type
      • getVpls

        public VplsData getVpls​(String vplsName)
        Description copied from interface: Vpls
        Retrieves a VPLS.
        Specified by:
        getVpls in interface Vpls
        Parameters:
        vplsName - the name of the VPLS
        Returns:
        the VPLS instance if the VPLS exists; null otherwise
      • removeInterfaces

        public Collection<org.onosproject.net.intf.Interface> removeInterfaces​(VplsData vplsData,
                                                                               Collection<org.onosproject.net.intf.Interface> interfaces)
        Description copied from interface: Vpls
        Removes the interfaces specified from a VPLS.
        Specified by:
        removeInterfaces in interface Vpls
        Parameters:
        vplsData - the VPLS from which the interfaces are to be removed
        interfaces - the interfaces to remove
        Returns:
        the interfaces removed
      • removeInterface

        public org.onosproject.net.intf.Interface removeInterface​(VplsData vplsData,
                                                                  org.onosproject.net.intf.Interface iface)
        Description copied from interface: Vpls
        Removes the interface specified from a VPLS.
        Specified by:
        removeInterface in interface Vpls
        Parameters:
        vplsData - the VPLS from which the interface is to be removed
        iface - the interface to remove
        Returns:
        the interface removed
      • removeAllVpls

        public void removeAllVpls()
        Description copied from interface: Vpls
        Removes all VPLSs and cleans up the VPLS configuration.
        Specified by:
        removeAllVpls in interface Vpls
      • getAllVpls

        public Collection<VplsData> getAllVpls()
        Description copied from interface: Vpls
        Gets all VPLSs.
        Specified by:
        getAllVpls in interface Vpls
        Returns:
        a collection of VPLSs