From ad3b6064dff135dd34d997167ec2ef628828d95e Mon Sep 17 00:00:00 2001 From: Sergey Skripnick Date: Tue, 30 Apr 2013 13:35:37 +0300 Subject: [PATCH] Docstrings formatted according to pep257 Bug #1020184 quantum/plugins/hyperv/* quantum/plugins/linuxbridge/* quantum/plugins/nec/* quantum/plugins/nicira/* quantum/plugins/plumgrid/* quantum/plugins/ryu/* quantum/plugins/services/* Change-Id: I3525aa57235935d90ec7b70c65ba15012ce575a3 --- quantum/plugins/hyperv/rpc_callbacks.py | 4 +- .../agent/linuxbridge_quantum_agent.py | 9 ++--- quantum/plugins/nec/drivers/pfc.py | 6 +-- quantum/plugins/nec/drivers/trema.py | 6 +-- quantum/plugins/nicira/NvpApiClient.py | 8 ++-- quantum/plugins/nicira/QuantumPlugin.py | 38 ++++++++++--------- .../plugins/nicira/common/securitygroups.py | 7 ++-- quantum/plugins/nicira/nicira_qos_db.py | 4 +- quantum/plugins/nicira/nvp_cluster.py | 6 ++- quantum/plugins/nicira/nvplib.py | 27 ++++++++----- .../plumgrid_nos_plugin/plumgrid_plugin.py | 37 +++++------------- .../plugins/ryu/agent/ryu_quantum_agent.py | 3 +- quantum/plugins/ryu/db/api_v2.py | 5 ++- quantum/plugins/ryu/db/models_v2.py | 5 ++- .../services/agent_loadbalancer/plugin.py | 11 ++---- quantum/plugins/services/service_base.py | 11 +++--- 16 files changed, 92 insertions(+), 95 deletions(-) diff --git a/quantum/plugins/hyperv/rpc_callbacks.py b/quantum/plugins/hyperv/rpc_callbacks.py index 8a47052e7..91f0a5895 100644 --- a/quantum/plugins/hyperv/rpc_callbacks.py +++ b/quantum/plugins/hyperv/rpc_callbacks.py @@ -89,7 +89,9 @@ class HyperVRpcCallbacks( return entry def tunnel_sync(self, rpc_context, **kwargs): - """Dummy function for ovs agent running on Linux to + """Tunnel sync. + + Dummy function for ovs agent running on Linux to work with Hyper-V plugin and agent. """ entry = dict() diff --git a/quantum/plugins/linuxbridge/agent/linuxbridge_quantum_agent.py b/quantum/plugins/linuxbridge/agent/linuxbridge_quantum_agent.py index 40ce7cf2d..a7229d5d9 100755 --- a/quantum/plugins/linuxbridge/agent/linuxbridge_quantum_agent.py +++ b/quantum/plugins/linuxbridge/agent/linuxbridge_quantum_agent.py @@ -212,9 +212,7 @@ class LinuxBridgeManager: def ensure_bridge(self, bridge_name, interface=None, ips=None, gateway=None): - """ - Create a bridge unless it already exists. - """ + """Create a bridge unless it already exists.""" if not self.device_exists(bridge_name): LOG.debug(_("Starting bridge %(bridge_name)s for subinterface " "%(interface)s"), @@ -271,9 +269,10 @@ class LinuxBridgeManager: def add_tap_interface(self, network_id, physical_network, vlan_id, tap_device_name): - """ + """Add tap interface. + If a VIF has been plugged into a network, this function will - add the corresponding tap device to the relevant bridge + add the corresponding tap device to the relevant bridge. """ if not self.device_exists(tap_device_name): LOG.debug(_("Tap device: %s does not exist on " diff --git a/quantum/plugins/nec/drivers/pfc.py b/quantum/plugins/nec/drivers/pfc.py index f30f0c2fe..26805bf59 100644 --- a/quantum/plugins/nec/drivers/pfc.py +++ b/quantum/plugins/nec/drivers/pfc.py @@ -25,7 +25,7 @@ from quantum.plugins.nec import ofc_driver_base class PFCDriverBase(ofc_driver_base.OFCDriverBase): - """Base Class for PDC Drivers + """Base Class for PDC Drivers. PFCDriverBase provides methods to handle PFC resources through REST API. This uses ofc resource path instead of ofc resource ID. @@ -49,7 +49,7 @@ class PFCDriverBase(ofc_driver_base.OFCDriverBase): return re.sub(r'[^0-9a-zA-Z]', '_', raw_str) def _generate_pfc_id(self, id_str): - """Generate ID on PFC + """Generate ID on PFC. Currently, PFC ID must be less than 32. Shorten UUID string length from 36 to 31 by follows: @@ -67,7 +67,7 @@ class PFCDriverBase(ofc_driver_base.OFCDriverBase): return self._generate_pfc_str(id_str)[:31] def _generate_pfc_description(self, desc): - """Generate Description on PFC + """Generate Description on PFC. Currently, PFC Description must be less than 128. """ diff --git a/quantum/plugins/nec/drivers/trema.py b/quantum/plugins/nec/drivers/trema.py index 9f55223e5..22b10ed6c 100644 --- a/quantum/plugins/nec/drivers/trema.py +++ b/quantum/plugins/nec/drivers/trema.py @@ -174,7 +174,7 @@ class TremaFilterDriver(object): class TremaPortBaseDriver(TremaDriverBase, TremaFilterDriver): - """Trema (Sliceable Switch) Driver for port base binding + """Trema (Sliceable Switch) Driver for port base binding. TremaPortBaseDriver uses port base binding. Ports are identified by datapath_id, port_no and vlan_id. @@ -212,7 +212,7 @@ class TremaPortBaseDriver(TremaDriverBase, TremaFilterDriver): class TremaPortMACBaseDriver(TremaDriverBase, TremaFilterDriver): - """Trema (Sliceable Switch) Driver for port-mac base binding + """Trema (Sliceable Switch) Driver for port-mac base binding. TremaPortBaseDriver uses port-mac base binding. Ports are identified by datapath_id, port_no, vlan_id and mac. @@ -268,7 +268,7 @@ class TremaPortMACBaseDriver(TremaDriverBase, TremaFilterDriver): class TremaMACBaseDriver(TremaDriverBase): - """Trema (Sliceable Switch) Driver for mac base binding + """Trema (Sliceable Switch) Driver for mac base binding. TremaPortBaseDriver uses mac base binding. Ports are identified by mac. diff --git a/quantum/plugins/nicira/NvpApiClient.py b/quantum/plugins/nicira/NvpApiClient.py index 74d82bba2..caec4811c 100644 --- a/quantum/plugins/nicira/NvpApiClient.py +++ b/quantum/plugins/nicira/NvpApiClient.py @@ -38,7 +38,8 @@ def _find_nvp_version_in_headers(headers): class NVPApiHelper(client_eventlet.NvpApiClientEventlet): - ''' + '''API helper class. + Helper class to do basic login, cookie management, and provide base method to send HTTP requests. @@ -187,14 +188,13 @@ class NVPApiHelper(client_eventlet.NvpApiClientEventlet): class NvpApiException(Exception): - ''' - Base NvpApiClient Exception + """Base NvpApiClient Exception. To correctly use this class, inherit from it and define a 'message' property. That message will get printf'd with the keyword arguments provided to the constructor. - ''' + """ message = _("An unknown exception occurred.") def __init__(self, **kwargs): diff --git a/quantum/plugins/nicira/QuantumPlugin.py b/quantum/plugins/nicira/QuantumPlugin.py index 9aed89bc8..dd44db286 100644 --- a/quantum/plugins/nicira/QuantumPlugin.py +++ b/quantum/plugins/nicira/QuantumPlugin.py @@ -127,7 +127,8 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, nvp_sec.NVPSecurityGroups, nvp_meta.NvpMetadataAccess, agentschedulers_db.AgentSchedulerDbMixin): - """ + """L2 Virtual network plugin. + NvpPluginV2 is a Quantum plugin that provides L2 Virtual Network functionality using NVP. """ @@ -218,10 +219,10 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, raise def _build_ip_address_list(self, context, fixed_ips, subnet_ids=None): - """Build ip_addresses data structure for logical router port + """Build ip_addresses data structure for logical router port. No need to perform validation on IPs - this has already been - done in the l3_db mixin class + done in the l3_db mixin class. """ ip_addresses = [] for ip in fixed_ips: @@ -624,6 +625,7 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, def _nvp_get_port_id(self, context, cluster, quantum_port): """Return the NVP port uuid for a given quantum port. + First, look up the Quantum database. If not found, execute a query on NVP platform as the mapping might be missing because the port was created before upgrading to grizzly. @@ -649,10 +651,10 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, quantum_port['id']) def _extend_fault_map(self): - """Extends the Quantum Fault Map + """Extends the Quantum Fault Map. Exceptions specific to the NVP Plugin are mapped to standard - HTTP Exceptions + HTTP Exceptions. """ base.FAULT_MAP.update({nvp_exc.NvpInvalidNovaZone: webob.exc.HTTPBadRequest, @@ -1280,11 +1282,10 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, def delete_port(self, context, id, l3_port_check=True, nw_gw_port_check=True): - """ - Deletes a port on a specified Virtual Network, - if the port contains a remote interface attachment, - the remote interface is first un-plugged and then the port - is deleted. + """Deletes a port on a specified Virtual Network. + + If the port contains a remote interface attachment, the remote + interface is first un-plugged and then the port is deleted. :returns: None :raises: exception.PortInUse @@ -1853,10 +1854,10 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, super(NvpPluginV2, self).disassociate_floatingips(context, port_id) def create_network_gateway(self, context, network_gateway): - """Create a layer-2 network gateway + """Create a layer-2 network gateway. Create the gateway service on NVP platform and corresponding data - structures in Quantum datase + structures in Quantum datase. """ # Need to re-do authZ checks here in order to avoid creation on NVP gw_data = network_gateway[networkgw.RESOURCE_NAME.replace('-', '_')] @@ -1880,10 +1881,10 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, network_gateway) def delete_network_gateway(self, context, id): - """Remove a layer-2 network gateway + """Remove a layer-2 network gateway. Remove the gateway service from NVP platform and corresponding data - structures in Quantum datase + structures in Quantum datase. """ with context.session.begin(subtransactions=True): try: @@ -1921,6 +1922,7 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, def create_security_group(self, context, security_group, default_sg=False): """Create security group. + If default_sg is true that means a we are creating a default security group and we don't need to check if one exists. """ @@ -1937,7 +1939,8 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, context, security_group, default_sg) def delete_security_group(self, context, security_group_id): - """Delete a security group + """Delete a security group. + :param security_group_id: security group rule to remove. """ with context.session.begin(subtransactions=True): @@ -1959,12 +1962,13 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2, context, security_group_id) def create_security_group_rule(self, context, security_group_rule): - """create a single security group rule.""" + """Create a single security group rule.""" bulk_rule = {'security_group_rules': [security_group_rule]} return self.create_security_group_rule_bulk(context, bulk_rule)[0] def create_security_group_rule_bulk(self, context, security_group_rule): - """create security group rules + """Create security group rules. + :param security_group_rule: list of rules to create """ s = security_group_rule.get('security_group_rules') diff --git a/quantum/plugins/nicira/common/securitygroups.py b/quantum/plugins/nicira/common/securitygroups.py index 444d4674f..db80f7084 100644 --- a/quantum/plugins/nicira/common/securitygroups.py +++ b/quantum/plugins/nicira/common/securitygroups.py @@ -63,8 +63,7 @@ class NVPSecurityGroups(object): def _get_security_group_rules_nvp_format(self, context, security_group_id, with_id=False): - """Query quantum db for security group rules. - """ + """Query quantum db for security group rules.""" fields = ['remote_ip_prefix', 'remote_group_id', 'protocol', 'port_range_min', 'port_range_max', 'protocol', 'ethertype'] if with_id: @@ -106,7 +105,9 @@ class NVPSecurityGroups(object): return merged_rules def _remove_security_group_with_id_and_id_field(self, rules, rule_id): - """This function receives all of the current rule associated with a + """Remove rule by rule_id. + + This function receives all of the current rule associated with a security group and then removes the rule that matches the rule_id. In addition it removes the id field in the dict with each rule since that should not be passed to nvp. diff --git a/quantum/plugins/nicira/nicira_qos_db.py b/quantum/plugins/nicira/nicira_qos_db.py index e69ff3237..a251a3fe2 100644 --- a/quantum/plugins/nicira/nicira_qos_db.py +++ b/quantum/plugins/nicira/nicira_qos_db.py @@ -189,7 +189,9 @@ class NVPQoSDbMixin(ext_qos.QueuePluginBase): return self._fields(res, fields) def _check_for_queue_and_create(self, context, port): - """This function determines if a port should be associated with a + """Check for queue and create. + + This function determines if a port should be associated with a queue. It works by first querying NetworkQueueMapping to determine if the network is associated with a queue. If so, then it queries NetworkQueueMapping for all the networks that are associated with diff --git a/quantum/plugins/nicira/nvp_cluster.py b/quantum/plugins/nicira/nvp_cluster.py index 9fadbe709..947385191 100644 --- a/quantum/plugins/nicira/nvp_cluster.py +++ b/quantum/plugins/nicira/nvp_cluster.py @@ -36,8 +36,10 @@ DEPRECATED_ATTRIBUTES = ['metadata_dhcp_host_route', class NVPCluster(object): - """Encapsulates controller connections and the Api client for a - NVP cluster. Accessed within the NvpPluginV2 class. + """NVP cluster class. + + Encapsulates controller connections and the API client for a NVP cluster. + Accessed within the NvpPluginV2 class. Controller-specific parameters, such as timeouts are stored in the elements of the controllers attribute, which are dicts. diff --git a/quantum/plugins/nicira/nvplib.py b/quantum/plugins/nicira/nvplib.py index 8b228d594..28a9b93e5 100644 --- a/quantum/plugins/nicira/nvplib.py +++ b/quantum/plugins/nicira/nvplib.py @@ -224,7 +224,9 @@ def do_multi_request(*args, **kwargs): # Network functions # ------------------------------------------------------------------- def find_port_and_cluster(clusters, port_id): - """Return (url, cluster_id) of port or (None, None) if port does not exist. + """Find port and cluster. + + Returns (url, cluster_id) of port or (None, None) if port does not exist. """ for c in clusters: query = "/ws.v1/lswitch/*/lport?uuid=%s&fields=*" % port_id @@ -549,9 +551,11 @@ def update_lrouter(cluster, lrouter_id, display_name, nexthop): def get_all_networks(cluster, tenant_id, networks): - """Append the quantum network uuids we can find in the given cluster to - "networks" - """ + """Get all networks. + + Append the quantum network uuids we can find in the given cluster + to "networks". + """ uri = "/ws.v1/lswitch?fields=*&tag=%s&tag_scope=os_tid" % tenant_id try: resp_obj = do_single_request(HTTP_GET, uri, cluster=cluster) @@ -664,8 +668,7 @@ def get_logical_port_status(cluster, switch, port): def get_port_by_display_name(clusters, lswitch, display_name): - """Return (url, cluster_id) of port or raises ResourceNotFound - """ + """Return (url, cluster_id) of port or raises PortNotFound.""" query = ("/ws.v1/lswitch/%s/lport?display_name=%s&fields=*" % (lswitch, display_name)) LOG.debug(_("Looking for port with display_name " @@ -685,8 +688,10 @@ def get_port_by_display_name(clusters, lswitch, display_name): def get_port_by_quantum_tag(cluster, lswitch_uuid, quantum_port_id): - """Return the NVP UUID of the logical port with tag q_port_id - equal to quantum_port_id or None if the port is not Found. + """Get port by quantum tag. + + Returns the NVP UUID of the logical port with tag q_port_id equal to + quantum_port_id or None if the port is not Found. """ uri = _build_uri_path(LSWITCHPORT_RESOURCE, parent_resource_id=lswitch_uuid, @@ -938,10 +943,11 @@ def plug_router_port_attachment(cluster, router_id, port_id, attachment_uuid, nvp_attachment_type, attachment_vlan=None): """Attach a router port to the given attachment. - Current attachment types: + + Current attachment types: - PatchAttachment [-> logical switch port uuid] - L3GatewayAttachment [-> L3GatewayService uuid] - For the latter attachment type a VLAN ID can be specified as well + For the latter attachment type a VLAN ID can be specified as well. """ uri = _build_uri_path(LROUTERPORT_RESOURCE, port_id, router_id, is_attachment=True) @@ -1036,6 +1042,7 @@ TENANT_ID_SCOPE = 'os_tid' def format_exception(etype, e, execption_locals, request=None): """Consistent formatting for exceptions. + :param etype: a string describing the exception type. :param e: the exception. :param request: the request object. diff --git a/quantum/plugins/plumgrid/plumgrid_nos_plugin/plumgrid_plugin.py b/quantum/plugins/plumgrid/plumgrid_nos_plugin/plumgrid_plugin.py index 5b098d71c..108908d39 100644 --- a/quantum/plugins/plumgrid/plumgrid_nos_plugin/plumgrid_plugin.py +++ b/quantum/plugins/plumgrid/plumgrid_nos_plugin/plumgrid_plugin.py @@ -88,9 +88,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): 'PLUMgrid Plugin has started')) def create_network(self, context, network): - """ - Create network core Quantum API - """ + """Create network core Quantum API.""" LOG.debug(_('QuantumPluginPLUMgrid Status: create_network() called')) @@ -126,9 +124,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): return net def update_network(self, context, net_id, network): - """ - Update network core Quantum API - """ + """Update network core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgridV2.update_network() called")) self._network_admin_state(network) @@ -160,9 +156,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): return new_network def delete_network(self, context, net_id): - """ - Delete network core Quantum API - """ + """Delete network core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: delete_network() called")) super(QuantumPluginPLUMgridV2, self).get_network(context, net_id) @@ -183,9 +177,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): raise plum_excep.PLUMgridException(err_message) def create_port(self, context, port): - """ - Create port core Quantum API - """ + """Create port core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: create_port() called")) # Port operations on PLUMgrid NOS is an automatic operation from the @@ -197,10 +189,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): port) def update_port(self, context, port_id, port): - """ - Update port core Quantum API - - """ + """Update port core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: update_port() called")) # Port operations on PLUMgrid NOS is an automatic operation from the @@ -211,9 +200,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): context, port_id, port) def delete_port(self, context, port_id): - """ - Delete port core Quantum API - """ + """Delete port core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: delete_port() called")) @@ -224,9 +211,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): super(QuantumPluginPLUMgridV2, self).delete_port(context, port_id) def create_subnet(self, context, subnet): - """ - Create subnet core Quantum API - """ + """Create subnet core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: create_subnet() called")) @@ -253,9 +238,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): return subnet def delete_subnet(self, context, subnet_id): - """ - Delete subnet core Quantum API - """ + """Delete subnet core Quantum API.""" LOG.debug(_("QuantumPluginPLUMgrid Status: delete_subnet() called")) #Collecting subnet info @@ -278,9 +261,7 @@ class QuantumPluginPLUMgridV2(db_base_plugin_v2.QuantumDbPluginV2): return del_subnet def update_subnet(self, context, subnet_id, subnet): - """ - Update subnet core Quantum API - """ + """Update subnet core Quantum API.""" LOG.debug(_("update_subnet() called")) #Collecting subnet info diff --git a/quantum/plugins/ryu/agent/ryu_quantum_agent.py b/quantum/plugins/ryu/agent/ryu_quantum_agent.py index 41f99b3b1..7b5a5a43e 100755 --- a/quantum/plugins/ryu/agent/ryu_quantum_agent.py +++ b/quantum/plugins/ryu/agent/ryu_quantum_agent.py @@ -52,8 +52,7 @@ LOG = log.getLogger(__name__) # This is copied of nova.flags._get_my_ip() # Agent shouldn't depend on nova module def _get_my_ip(): - """ - Returns the actual ip of the local machine. + """Return the actual ip of the local machine. This code figures out what source address would be used if some traffic were to be sent out to some well known address on the Internet. In this diff --git a/quantum/plugins/ryu/db/api_v2.py b/quantum/plugins/ryu/db/api_v2.py index e67f7ec92..ab6756007 100644 --- a/quantum/plugins/ryu/db/api_v2.py +++ b/quantum/plugins/ryu/db/api_v2.py @@ -98,8 +98,9 @@ class TunnelKey(object): return session.query(ryu_models_v2.TunnelKeyLast).one() def _find_key(self, session, last_key): - """ - Try to find unused tunnel key in TunnelKey table starting + """Try to find unused tunnel key. + + Trying to find unused tunnel key in TunnelKey table starting from last_key + 1. When all keys are used, raise sqlalchemy.orm.exc.NoResultFound """ diff --git a/quantum/plugins/ryu/db/models_v2.py b/quantum/plugins/ryu/db/models_v2.py index 079350da3..911032c9d 100644 --- a/quantum/plugins/ryu/db/models_v2.py +++ b/quantum/plugins/ryu/db/models_v2.py @@ -20,8 +20,9 @@ from quantum.db import model_base class TunnelKeyLast(model_base.BASEV2): - """Lastly allocated Tunnel key. The next key allocation will be started - from this value + 1 + """Last allocated Tunnel key. + + The next key allocation will be started from this value + 1 """ last_key = sa.Column(sa.Integer, primary_key=True) diff --git a/quantum/plugins/services/agent_loadbalancer/plugin.py b/quantum/plugins/services/agent_loadbalancer/plugin.py index 4192cd872..c891873da 100644 --- a/quantum/plugins/services/agent_loadbalancer/plugin.py +++ b/quantum/plugins/services/agent_loadbalancer/plugin.py @@ -114,8 +114,8 @@ class LoadBalancerCallbacks(object): def pool_destroyed(self, context, pool_id=None, host=None): """Agent confirmation hook that a pool has been destroyed. - This method exists for subclasses to change the deletion - behavior. + This method exists for subclasses to change the deletion + behavior. """ pass @@ -212,8 +212,7 @@ class LoadBalancerAgentApi(proxy.RpcProxy): class LoadBalancerPlugin(loadbalancer_db.LoadBalancerPluginDb): - """ - Implementation of the Quantum Loadbalancer Service Plugin. + """Implementation of the Quantum Loadbalancer Service Plugin. This class manages the workflow of LBaaS request/response. Most DB related works are implemented in class @@ -222,9 +221,7 @@ class LoadBalancerPlugin(loadbalancer_db.LoadBalancerPluginDb): supported_extension_aliases = ["lbaas"] def __init__(self): - """ - Do the initialization for the loadbalancer service plugin here. - """ + """Do the initialization for the loadbalancer service plugin here.""" qdbapi.register_models() self.callbacks = LoadBalancerCallbacks(self) diff --git a/quantum/plugins/services/service_base.py b/quantum/plugins/services/service_base.py index 936621ab3..998a2e8bb 100644 --- a/quantum/plugins/services/service_base.py +++ b/quantum/plugins/services/service_base.py @@ -21,20 +21,21 @@ from quantum.api import extensions class ServicePluginBase(extensions.PluginInterface): - """defines base interface for any Advanced Service plugin.""" + """Define base interface for any Advanced Service plugin.""" __metaclass__ = abc.ABCMeta supported_extension_aliases = [] @abc.abstractmethod def get_plugin_type(self): - """returns one of predefine service types. see - quantum/plugins/common/constants.py + """Return one of predefined service types. + + See quantum/plugins/common/constants.py """ pass @abc.abstractmethod def get_plugin_name(self): - """return a symbolic name for the plugin. + """Return a symbolic name for the plugin. Each service plugin should have a symbolic name. This name will be used, for instance, by service definitions in service types @@ -43,5 +44,5 @@ class ServicePluginBase(extensions.PluginInterface): @abc.abstractmethod def get_plugin_description(self): - """returns string description of the plugin.""" + """Return string description of the plugin.""" pass -- 2.45.2