Beispiel #1
0
 def get_metadef_resource_type_repo(self, context):
     resource_type_repo = glance.db.MetadefResourceTypeRepo(
         context, self.db_api)
     policy_object_repo = policy.MetadefResourceTypeRepoProxy(
         resource_type_repo, context, self.policy)
     return authorization.MetadefResourceTypeRepoProxy(policy_object_repo,
                                                       context)
Beispiel #2
0
    def get_metadef_resource_type_repo(self,
                                       context,
                                       authorization_layer=True):
        """Get the layered MetadefResourceTypeRepo model.

        This is where we construct the "the onion" by layering
        MetadefResourceTypeRepo models on top of each other, starting with
        the DB at the bottom.

        :param context: The RequestContext
        :param authorization_layer: Controls whether or not we add the legacy
                                    glance.authorization and glance.policy
                                    layers.
        :returns: An MetadefResourceTypeRepo-like object
        """
        repo = glance.db.MetadefResourceTypeRepo(context, self.db_api)
        if authorization_layer:
            repo = policy.MetadefResourceTypeRepoProxy(repo, context,
                                                       self.policy)
        repo = glance.notifier.MetadefResourceTypeRepoProxy(
            repo, context, self.notifier)
        if authorization_layer:
            repo = authorization.MetadefResourceTypeRepoProxy(repo, context)
        return repo