示例#1
0
 def get_quota_by_id(self, context, quota_id):
     query = model_query(models.Quota)
     query = query.filter_by(id=quota_id)
     try:
         return query.one()
     except NoResultFound:
         msg = _('quota id %s .') % quota_id
         raise exception.QuotaNotFound(msg=msg)
示例#2
0
    def get_quota_by_project_id_resource(self, project_id, resource):
        query = model_query(models.Quota)
        query = query.filter_by(project_id=project_id).filter_by(
            resource=resource)

        try:
            return query.one()
        except NoResultFound:
            msg = (_('project_id %(project_id)s resource %(resource)s.') %
                   {'project_id': project_id, 'resource': resource})
            raise exception.QuotaNotFound(msg=msg)
示例#3
0
    def delete_quota(self, project_id, resource):
        session = get_session()
        with session.begin():
            query = model_query(models.Quota, session=session)

            try:
                query.filter_by(project_id=project_id).filter_by(
                    resource=resource).one()
            except NoResultFound:
                msg = (_('project_id %(project_id)s resource %(resource)s.') %
                       {'project_id': project_id, 'resource': resource})
                raise exception.QuotaNotFound(msg=msg)

            query.delete()
示例#4
0
    def update_quota(self, project_id, values):
        session = get_session()
        with session.begin():
            query = model_query(models.Quota, session=session)
            resource = values['resource']
            try:
                query = query.filter_by(project_id=project_id).filter_by(
                    resource=resource)
                ref = query.with_for_update().one()
            except NoResultFound:
                msg = (_('project_id %(project_id)s resource %(resource)s.') %
                       {'project_id': project_id, 'resource': resource})
                raise exception.QuotaNotFound(msg=msg)

            ref.update(values)
        return ref