本文整理汇总了Python中trove.quota.models.QuotaUsage类的典型用法代码示例。如果您正苦于以下问题:Python QuotaUsage类的具体用法?Python QuotaUsage怎么用?Python QuotaUsage使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了QuotaUsage类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_quota_usage_by_tenant
def get_quota_usage_by_tenant(self, tenant_id, resource):
"""Get a specific quota usage by tenant."""
quotas = QuotaUsage.find_all(tenant_id=tenant_id, resource=resource).all()
if len(quotas) == 0:
return QuotaUsage.create(tenant_id=tenant_id, in_use=0, reserved=0, resource=resource)
return quotas[0]
示例2: get_all_quota_usages_by_tenant
def get_all_quota_usages_by_tenant(self, tenant_id, resources):
"""
Retrieve the quota usagess for the given tenant.
:param tenant_id: The ID of the tenant to return quotas for.
:param resources: A list of the registered resources to get.
"""
all_usages = QuotaUsage.find_all(tenant_id=tenant_id).all()
result_usages = {usage.resource: usage for usage in all_usages if usage.resource in resources}
if len(result_usages) != len(resources):
for resource in resources:
# Not in the DB, return default value
if resource not in result_usages:
usage = QuotaUsage.create(tenant_id=tenant_id, in_use=0, reserved=0, resource=resource)
result_usages[resource] = usage
return result_usages
示例3: rollback
def rollback(self, reservations):
"""Roll back reservations.
:param reservations: A list of the reservation UUIDs, as
returned by the reserve() method.
"""
for reservation in reservations:
usage = QuotaUsage.find_by(id=reservation.usage_id)
usage.reserved -= reservation.delta
reservation.status = Reservation.Statuses.ROLLEDBACK
usage.save()
reservation.save()
示例4: commit
def commit(self, reservations):
"""Commit reservations.
:param reservations: A list of the reservation UUIDs, as
returned by the reserve() method.
"""
for reservation in reservations:
usage = QuotaUsage.find_by(id=reservation.usage_id)
usage.in_use += reservation.delta
usage.reserved -= reservation.delta
reservation.status = Reservation.Statuses.COMMITTED
usage.save()
reservation.save()