"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "keystone/common/manager.py" between
keystone-16.0.1.tar.gz and keystone-17.0.0.tar.gz

About: OpenStack Keystone (Core Service: Identity) provides an authentication and authorization service for other OpenStack services. Provides a catalog of endpoints for all OpenStack services.
The "Ussuri" series (latest release).

manager.py  (keystone-16.0.1):manager.py  (keystone-17.0.0)
skipping to change at line 21 skipping to change at line 21
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
import functools import functools
import inspect import inspect
import time import time
import types import types
from oslo_log import log from oslo_log import log
import six
import stevedore import stevedore
from keystone.common import provider_api from keystone.common import provider_api
from keystone.i18n import _ from keystone.i18n import _
LOG = log.getLogger(__name__) LOG = log.getLogger(__name__)
if hasattr(inspect, 'getfullargspec'): if hasattr(inspect, 'getfullargspec'):
getargspec = inspect.getfullargspec getargspec = inspect.getfullargspec
else: else:
skipping to change at line 153 skipping to change at line 152
def __new__(meta, classname, bases, class_dict): def __new__(meta, classname, bases, class_dict):
final_cls_dict = {} final_cls_dict = {}
for attr_name, attr in class_dict.items(): for attr_name, attr in class_dict.items():
# NOTE(morganfainberg): only wrap public instances and methods. # NOTE(morganfainberg): only wrap public instances and methods.
if (isinstance(attr, types.FunctionType) and if (isinstance(attr, types.FunctionType) and
not attr_name.startswith('_')): not attr_name.startswith('_')):
attr = _TraceMeta.wrapper(attr, classname) attr = _TraceMeta.wrapper(attr, classname)
final_cls_dict[attr_name] = attr final_cls_dict[attr_name] = attr
return type.__new__(meta, classname, bases, final_cls_dict) return type.__new__(meta, classname, bases, final_cls_dict)
@six.add_metaclass(_TraceMeta) class Manager(object, metaclass=_TraceMeta):
class Manager(object):
"""Base class for intermediary request layer. """Base class for intermediary request layer.
The Manager layer exists to support additional logic that applies to all The Manager layer exists to support additional logic that applies to all
or some of the methods exposed by a service that are not specific to the or some of the methods exposed by a service that are not specific to the
HTTP interface. HTTP interface.
It also provides a stable entry point to dynamic backends. It also provides a stable entry point to dynamic backends.
An example of a probable use case is logging all the calls. An example of a probable use case is logging all the calls.
 End of changes. 2 change blocks. 
3 lines changed or deleted 1 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)