diff options
Diffstat (limited to 'vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/QuotaUsage.java')
-rw-r--r-- | vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/QuotaUsage.java | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/QuotaUsage.java b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/QuotaUsage.java new file mode 100644 index 00000000000..8e9c7de9272 --- /dev/null +++ b/vespa-athenz/src/main/java/com/yahoo/vespa/athenz/client/zms/QuotaUsage.java @@ -0,0 +1,55 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.athenz.client.zms; + +import com.yahoo.vespa.athenz.client.zms.bindings.StatisticsEntity; + +/** + * @author olaa + */ +public class QuotaUsage { + + private double subdomainUsage; + private double roleUsage; + private double policyUsage; + private double serviceUsage; + private double groupUsage; + + + public QuotaUsage(double subdomainUsage, double roleUsage, double policyUsage, double serviceUsage, double groupUsage) { + this.subdomainUsage = subdomainUsage; + this.roleUsage = roleUsage; + this.policyUsage = policyUsage; + this.serviceUsage = serviceUsage; + this.groupUsage = groupUsage; + } + + public static QuotaUsage calculateUsage(StatisticsEntity used, StatisticsEntity quota) { + return new QuotaUsage( + (double) used.getSubdomains() / quota.getSubdomains(), + (double) used.getRoles() / quota.getRoles(), + (double) used.getPolicies() / quota.getPolicies(), + (double) used.getServices() / quota.getServices(), + (double) used.getGroups() / quota.getGroups() + ); + } + + public double getSubdomainUsage() { + return subdomainUsage; + } + + public double getRoleUsage() { + return roleUsage; + } + + public double getPolicyUsage() { + return policyUsage; + } + + public double getServiceUsage() { + return serviceUsage; + } + + public double getGroupUsage() { + return groupUsage; + } +}
\ No newline at end of file |