client.go raw

   1  package gnocchi
   2  
   3  import (
   4  	"github.com/gophercloud/gophercloud"
   5  )
   6  
   7  func initClientOpts(client *gophercloud.ProviderClient, eo gophercloud.EndpointOpts, clientType string) (*gophercloud.ServiceClient, error) {
   8  	sc := new(gophercloud.ServiceClient)
   9  	eo.ApplyDefaults(clientType)
  10  	url, err := client.EndpointLocator(eo)
  11  	if err != nil {
  12  		return sc, err
  13  	}
  14  	sc.ProviderClient = client
  15  	sc.Endpoint = url
  16  	sc.Type = clientType
  17  	return sc, nil
  18  }
  19  
  20  // NewGnocchiV1 creates a ServiceClient that may be used with the v1 Gnocchi package.
  21  func NewGnocchiV1(client *gophercloud.ProviderClient, eo gophercloud.EndpointOpts) (*gophercloud.ServiceClient, error) {
  22  	sc, err := initClientOpts(client, eo, "metric")
  23  	sc.ResourceBase = sc.Endpoint + "v1/"
  24  	return sc, err
  25  }
  26