"Fossies" - the Fresh Open Source Software Archive

Member "tacker-4.0.0/tacker/nfvo/drivers/vnffg/abstract_vnffg_driver.py" (14 Oct 2020, 2029 Bytes) of package /linux/misc/openstack/tacker-4.0.0.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Python source code syntax highlighting (style: standard) with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. For more information about "abstract_vnffg_driver.py" see the Fossies "Dox" file reference documentation and the last Fossies "Diffs" side-by-side code changes report: 4.0.0_vs_5.0.0.

    1 #    Licensed under the Apache License, Version 2.0 (the "License"); you may
    2 #    not use this file except in compliance with the License. You may obtain
    3 #    a copy of the License at
    4 #
    5 #         http://www.apache.org/licenses/LICENSE-2.0
    6 #
    7 #    Unless required by applicable law or agreed to in writing, software
    8 #    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
    9 #    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
   10 #    License for the specific language governing permissions and limitations
   11 #    under the License.
   12 
   13 import abc
   14 
   15 import six
   16 
   17 from tacker.api import extensions
   18 
   19 
   20 @six.add_metaclass(abc.ABCMeta)
   21 class VnffgAbstractDriver(extensions.PluginInterface):
   22 
   23     @abc.abstractmethod
   24     def get_type(self):
   25         """Return one of predefined type of Tacker drivers."""
   26         pass
   27 
   28     @abc.abstractmethod
   29     def get_name(self):
   30         """Return a symbolic name for the Tacker VNFFG SFC driver."""
   31         pass
   32 
   33     @abc.abstractmethod
   34     def get_description(self):
   35         pass
   36 
   37     @abc.abstractmethod
   38     def create_chain(self, name, fc_id, vnfs, symmetrical=False,
   39                      auth_attr=None):
   40         """Create service function chain and returns an ID"""
   41         pass
   42 
   43     @abc.abstractmethod
   44     def update_chain(self, chain_id, fc_ids, vnfs,
   45                      symmetrical=False,
   46                      auth_attr=None):
   47         """Update service function chain"""
   48         pass
   49 
   50     @abc.abstractmethod
   51     def delete_chain(self, chain_id, auth_attr=None):
   52         """Delete service function chain"""
   53         pass
   54 
   55     @abc.abstractmethod
   56     def create_flow_classifier(self, name, fc, auth_attr=None):
   57         """Create flow classifier and returns an ID"""
   58         pass
   59 
   60     @abc.abstractmethod
   61     def update_flow_classifier(self, fc_id, fc, auth_attr=None):
   62         """Update flow classifier"""
   63         pass
   64 
   65     @abc.abstractmethod
   66     def delete_flow_classifier(self, fc_id, auth_attr=None):
   67         """Delete flow classifier"""
   68         pass