//Implements quotas retrieval, returns quotas or error if rest request failed func (self *NovaV2) GetQuotas(tenantId string) (nova.QuotaSet, error) { var out QuotaRespV2 err := nova.Get(self.Client, "os-quota-sets/"+url.QueryEscape(tenantId), &out) if err != nil { return nova.QuotaSet{}, err } return out.QuotaSet.ToQuotaSet(), nil }
//Implements limits retrieval, returns limits or error if rest request failed func (self *NovaV2) GetLimits() (nova.LimitsAbsolute, error) { var out LimitsRespV2 err := nova.Get(self.Client, "limits", &out) if err != nil { return nova.LimitsAbsolute{}, err } return out.Limits.Absolute.ToLimitsAbsolute(), nil }
//Implements hypervisor stats retrieval, returns these stats or error if rest request failed func (self *NovaV2) GetHypervisorStatistics() ([]nova.HypervisorStatistics, error) { var out HypervisorRespV2 err := nova.Get(self.Client, "os-hypervisors/detail", &out) if err != nil { return nil, err } result := make([]nova.HypervisorStatistics, len(out.Hypervisors)) for i, v := range out.Hypervisors { result[i] = v.ToHypervisorStatistics() } return result, nil }