keystone/keystone
Morgan Fainberg 81f9fe6fed Remove Dependency Injection
Refactors all of keystone's dependency injection to maintain a
single centralized repository of instantiated objects. This
means that we are no longer having to resolve order. All
objects that need to reference the various manager APIs simply
do so via the __getattr__ built into the Manager common object
or the ProviderAPIMixin object.

This is also the first step towards correcting our tests to
where they cannot run "load_backends" multiple times.

This forces any/all managers to properly run super()
as the way to register the api is via __init__.

This eliminates all use of the @dependency.requires and
@dependency.provides decorators, simplifying the objects
all around.

Any instantiations of a Manager after keystone is running
will now generate an error, ensuring everything for keystone
is running before handling requests. An exception is for
CLI and CLI tests, as the CLI may directly instantiate
managers and will not lock the registry.

Change-Id: I4ba17855efd797c0db9f4824936b49e4bff54b6a
2017-12-13 10:59:39 -08:00
..
assignment Remove Dependency Injection 2017-12-13 10:59:39 -08:00
auth Remove Dependency Injection 2017-12-13 10:59:39 -08:00
catalog Remove Dependency Injection 2017-12-13 10:59:39 -08:00
cmd Update links in keystone 2017-09-12 15:18:13 +08:00
common Remove Dependency Injection 2017-12-13 10:59:39 -08:00
conf Update the help message for unique_last_password_count 2017-11-24 08:52:12 +08:00
contrib Remove Dependency Injection 2017-12-13 10:59:39 -08:00
credential Remove Dependency Injection 2017-12-13 10:59:39 -08:00
endpoint_policy Remove Dependency Injection 2017-12-13 10:59:39 -08:00
federation Remove Dependency Injection 2017-12-13 10:59:39 -08:00
identity Remove Dependency Injection 2017-12-13 10:59:39 -08:00
locale Imported Translations from Zanata 2017-08-02 07:49:09 +00:00
middleware Remove Dependency Injection 2017-12-13 10:59:39 -08:00
models Remove v2 token value model 2017-10-26 16:09:11 +08:00
oauth1 Remove Dependency Injection 2017-12-13 10:59:39 -08:00
policy Remove Dependency Injection 2017-12-13 10:59:39 -08:00
resource Remove Dependency Injection 2017-12-13 10:59:39 -08:00
revoke Remove Dependency Injection 2017-12-13 10:59:39 -08:00
server Remove Dependency Injection 2017-12-13 10:59:39 -08:00
tests Remove Dependency Injection 2017-12-13 10:59:39 -08:00
token Remove Dependency Injection 2017-12-13 10:59:39 -08:00
trust Remove Dependency Injection 2017-12-13 10:59:39 -08:00
v2_crud Remove v2.0 identity APIs 2017-09-29 20:42:12 +00:00
version Remove v2.0 auth APIs 2017-09-30 15:31:45 +00:00
__init__.py Revert "Disable eventlet monkey-patching of DNS" 2013-05-10 10:24:48 -04:00
exception.py Update the help message for unique_last_password_count 2017-11-24 08:52:12 +08:00
i18n.py Update links in keystone 2017-09-12 15:18:13 +08:00
notifications.py Remove Dependency Injection 2017-12-13 10:59:39 -08:00