Skip to content
This repository has been archived by the owner on Jun 26, 2020. It is now read-only.

Commit

Permalink
Apply six for metaclass
Browse files Browse the repository at this point in the history
__metaclass__ cannot be used in python3.
six be used in general for python 3 compatibility.

Change-Id: I9fc7a59df3af29b4cc1287c40fa4e883d994a961
Closes-Bug: #1236648
  • Loading branch information
fujioka yuuichi committed Oct 9, 2013
1 parent aae2b1c commit 4bfb7a2
Show file tree
Hide file tree
Showing 8 changed files with 12 additions and 20 deletions.
4 changes: 2 additions & 2 deletions openstack/common/apiclient/auth.py
Expand Up @@ -23,6 +23,7 @@
import argparse
import logging
import os
import six

from stevedore import extension

Expand Down Expand Up @@ -102,15 +103,14 @@ def load_plugin_from_args(args):
raise exceptions.AuthPluginOptionsMissing(["auth_system"])


@six.add_metaclass(abc.ABCMeta)
class BaseAuthPlugin(object):
"""Base class for authentication plugins.
An authentication plugin needs to override at least the authenticate
method to be a valid plugin.
"""

__metaclass__ = abc.ABCMeta

auth_system = None
opt_names = []
common_opt_names = [
Expand Down
4 changes: 2 additions & 2 deletions openstack/common/apiclient/base.py
Expand Up @@ -26,6 +26,7 @@
# pylint: disable=E1102

import abc
import six
import urllib

from openstack.common.apiclient import exceptions
Expand Down Expand Up @@ -201,11 +202,10 @@ def _delete(self, url):
return self.client.delete(url)


@six.add_metaclass(abc.ABCMeta)
class ManagerWithFind(BaseManager):
"""Manager with additional `find()`/`findall()` methods."""

__metaclass__ = abc.ABCMeta

@abc.abstractmethod
def list(self):
pass
Expand Down
3 changes: 2 additions & 1 deletion openstack/common/periodic_task.py
Expand Up @@ -14,6 +14,7 @@
# under the License.

import datetime
import six
import time

from oslo.config import cfg
Expand Down Expand Up @@ -150,8 +151,8 @@ def __init__(cls, names, bases, dict_):
cls._periodic_last_run[name] = task._periodic_last_run


@six.add_metaclass(_PeriodicTasksMeta)
class PeriodicTasks(object):
__metaclass__ = _PeriodicTasksMeta

def run_periodic_tasks(self, context, raise_on_error=False):
"""Tasks to be run at a periodic interval."""
Expand Down
6 changes: 2 additions & 4 deletions openstack/common/policy.py
Expand Up @@ -279,11 +279,10 @@ def enforce(self, rule, target, creds, do_raise=False,
return result


@six.add_metaclass(abc.ABCMeta)
class BaseCheck(object):
"""Abstract base class for Check classes."""

__metaclass__ = abc.ABCMeta

@abc.abstractmethod
def __str__(self):
"""String representation of the Check tree rooted at this node."""
Expand Down Expand Up @@ -626,6 +625,7 @@ def decorator(func):
return decorator


@six.add_metaclass(ParseStateMeta)
class ParseState(object):
"""Implement the core of parsing the policy language.
Expand All @@ -638,8 +638,6 @@ class ParseState(object):
shouldn't be that big a problem.
"""

__metaclass__ = ParseStateMeta

def __init__(self):
"""Initialize the ParseState."""

Expand Down
3 changes: 2 additions & 1 deletion openstack/common/rpc/serializer.py
Expand Up @@ -15,11 +15,12 @@
"""Provides the definition of an RPC serialization handler"""

import abc
import six


@six.add_metaclass(abc.ABCMeta)
class Serializer(object):
"""Generic (de-)serialization definition base class."""
__metaclass__ = abc.ABCMeta

@abc.abstractmethod
def serialize_entity(self, context, entity):
Expand Down
2 changes: 1 addition & 1 deletion requirements.txt
Expand Up @@ -14,7 +14,7 @@ stevedore>=0.10
sqlalchemy-migrate>=0.7.2
SQLAlchemy>=0.7.8,<=0.7.99
qpid-python
six
six>=1.4.1
netaddr
pycrypto>=2.6
Babel>=0.9.6
Expand Down
8 changes: 0 additions & 8 deletions tests/unit/test_periodic.py
Expand Up @@ -82,7 +82,6 @@ class ManagerMetaTestCase(test.BaseTestCase):

def test_meta(self):
class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task
def foo(self):
Expand Down Expand Up @@ -112,7 +111,6 @@ def setUp(self):

def test_periodic_tasks_with_idle(self):
class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=200)
def bar(self):
Expand All @@ -128,7 +126,6 @@ def bar(self):

def test_periodic_tasks_constant(self):
class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=0)
def bar(self):
Expand All @@ -143,7 +140,6 @@ def test_periodic_tasks_idle_calculation(self):
timeutils.set_time_override(fake_time)

class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=10)
def bar(self, context):
Expand Down Expand Up @@ -179,7 +175,6 @@ def test_periodic_tasks_immediate_runs_now(self):
timeutils.set_time_override(fake_time)

class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=10, run_immediately=True)
def bar(self, context):
Expand Down Expand Up @@ -214,7 +209,6 @@ def bar(self, context):

def test_periodic_tasks_disabled(self):
class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=-1)
def bar(self):
Expand All @@ -228,7 +222,6 @@ def test_external_running_here(self):
self.config(run_external_periodic_tasks=True)

class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=200, external_process_ok=True)
def bar(self):
Expand All @@ -241,7 +234,6 @@ def test_external_running_elsewhere(self):
self.config(run_external_periodic_tasks=False)

class Manager(periodic_task.PeriodicTasks):
__metaclass__ = periodic_task._PeriodicTasksMeta

@periodic_task.periodic_task(spacing=200, external_process_ok=True)
def bar(self):
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/test_policy.py
Expand Up @@ -552,8 +552,8 @@ def spam():
self.assertEqual(spam.reducers, [['d', 'e', 'f'], ['a', 'b', 'c']])

def test_parse_state_meta(self):
@six.add_metaclass(policy.ParseStateMeta)
class FakeState(object):
__metaclass__ = policy.ParseStateMeta

@policy.reducer('a', 'b', 'c')
@policy.reducer('d', 'e', 'f')
Expand Down

0 comments on commit 4bfb7a2

Please sign in to comment.