Documentation ¶
Overview ¶
Package registeredlimits provides information and interaction with registered limits for the Openstack Identity service.
Example to List RegisteredLimits
listOpts := registeredlimits.ListOpts{ ResourceName: "image_size_total", } allPages, err := registeredlimits.List(identityClient, listOpts).AllPages() if err != nil { panic(err) } allLimits, err := limits.ExtractLimits(allPages) if err != nil { panic(err) }
Example to Create a RegisteredLimit
batchCreateOpts := registeredlimits.BatchCreateOpts{ registeredlimits.CreateOpts{ ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", RegionID: "RegionOne", ResourceName: "snapshot", DefaultLimit: 5, }, registeredlimits.CreateOpts{ ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", RegionID: "RegionOne", ResourceName: "volume", DefaultLimit: 10, Description: "Number of volumes for service 9408080f1970482aa0e38bc2d4ea34b7", }, } createdRegisteredLimits, err := limits.Create(identityClient, batchCreateOpts).Extract() if err != nil { panic(err) }
Example to Get a RegisteredLimit
registeredLimitID := "966b3c7d36a24facaf20b7e458bf2192" registered_limit, err := registeredlimits.Get(client, registeredLimitID).Extract() if err != nil { panic(err) }
Example to Update a RegisteredLimit
Either ServiceID, ResourceName, or RegionID must be different than existing value otherwise it will raise 409. registeredLimitID := "966b3c7d36a24facaf20b7e458bf2192" resourceName := "images" description := "Number of images for service 9408080f1970482aa0e38bc2d4ea34b7" defaultLimit := 10 updateOpts := registeredlimits.UpdateOpts{ Description: &description, DefaultLimit: &defaultLimit, ResourceName: resourceName, ServiceID: "9408080f1970482aa0e38bc2d4ea34b7", } registered_limit, err := registeredlimits.Update(client, registeredLimitID, updateOpts).Extract() if err != nil { panic(err) }
Example to Delete a RegisteredLimit
registeredLimitID := "966b3c7d36a24facaf20b7e458bf2192" err := registeredlimits.Delete(identityClient, registeredLimitID).ExtractErr() if err != nil { panic(err) }
Index ¶
- func List(client *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager
- type BatchCreateOpts
- type BatchCreateOptsBuilder
- type CreateOpts
- type CreateResult
- type DeleteResult
- type EnforcementModel
- type EnforcementModelResult
- type GetResult
- type ListOpts
- type ListOptsBuilder
- type RegisteredLimit
- type RegisteredLimitOutput
- type RegisteredLimitPage
- type RegisteredLimitsOutput
- type UpdateOpts
- type UpdateOptsBuilder
- type UpdateResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func List ¶
func List(client *gophercloud.ServiceClient, opts ListOptsBuilder) pagination.Pager
List enumerates the registered limits.
Types ¶
type BatchCreateOpts ¶
type BatchCreateOpts []CreateOpts
BatchCreateOpts provides options used to create limits.
func (BatchCreateOpts) ToRegisteredLimitsCreateMap ¶
func (opts BatchCreateOpts) ToRegisteredLimitsCreateMap() (map[string]interface{}, error)
ToRegisteredLimitsCreateMap formats a BatchCreateOpts into a create request.
type BatchCreateOptsBuilder ¶
type BatchCreateOptsBuilder interface {
ToRegisteredLimitsCreateMap() (map[string]interface{}, error)
}
BatchCreateOptsBuilder allows extensions to add additional parameters to the Create request.
type CreateOpts ¶
type CreateOpts struct { // RegionID is the ID of the region where the limit is applied. RegionID string `json:"region_id,omitempty"` // ServiceID is the ID of the service where the limit is applied. ServiceID string `json:"service_id" required:"true"` // Description of the limit. Description string `json:"description,omitempty"` // ResourceName is the name of the resource that the limit is applied to. ResourceName string `json:"resource_name" required:"true"` // DefaultLimit is the default limit. DefaultLimit int `json:"default_limit" required:"true"` }
func (CreateOpts) ToMap ¶
func (opts CreateOpts) ToMap() (map[string]interface{}, error)
type CreateResult ¶
type CreateResult struct {
gophercloud.Result
}
CreateResult is the response from a Create operation. Call its Extract method to interpret it as a Registered Limits.
func BatchCreate ¶
func BatchCreate(client *gophercloud.ServiceClient, opts BatchCreateOptsBuilder) (r CreateResult)
BatchCreate creates new Limits.
func (CreateResult) Extract ¶
func (r CreateResult) Extract() ([]RegisteredLimit, error)
Extract interprets CreateResult as slice of RegisteredLimits.
type DeleteResult ¶
type DeleteResult struct {
gophercloud.ErrResult
}
DeleteResult is the result of a Delete request. Call its ExtractErr method to determine if the request succeeded or failed.
func Delete ¶
func Delete(client *gophercloud.ServiceClient, registeredLimitID string) (r DeleteResult)
Delete deletes a registered_limit.
type EnforcementModel ¶
type EnforcementModel struct { // The name of the enforcement model. Name string `json:"name"` // A short description of the enforcement model used. Description string `json:"description"` }
A model describing the configured enforcement model used by the deployment.
type EnforcementModelResult ¶
type EnforcementModelResult struct {
gophercloud.Result
}
EnforcementModelResult is the response from a GetEnforcementModel operation. Call its Extract method to interpret it as a EnforcementModel.
func (EnforcementModelResult) Extract ¶
func (r EnforcementModelResult) Extract() (*EnforcementModel, error)
Extract interprets EnforcementModelResult as a EnforcementModel.
type GetResult ¶
type GetResult struct {
// contains filtered or unexported fields
}
GetResult is the response from a Get operation. Call its Extract method to interpret it as a RegisteredLimit.
func Get ¶
func Get(client *gophercloud.ServiceClient, registeredLimitID string) (r GetResult)
Get retrieves details on a single registered_limit, by ID.
func (GetResult) Extract ¶
func (r GetResult) Extract() (*RegisteredLimit, error)
Extract interprets any commonResult as a RegisteredLimit.
type ListOpts ¶
type ListOpts struct { // Filters the response by a region ID. RegionID string `q:"region_id"` // Filters the response by a service ID. ServiceID string `q:"service_id"` // Filters the response by a resource name. ResourceName string `q:"resource_name"` }
ListOpts provides options to filter the List results.
func (ListOpts) ToRegisteredLimitListQuery ¶
ToRegisteredLimitListQuery formats a ListOpts into a query string.
type ListOptsBuilder ¶
ListOptsBuilder allows extensions to add additional parameters to the List request
type RegisteredLimit ¶
type RegisteredLimit struct { // ID is the unique ID of the limit. ID string `json:"id"` // RegionID is the ID of the region where the limit is applied. RegionID string `json:"region_id"` // ServiceID is the ID of the service where the limit is applied. ServiceID string `json:"service_id"` // Description of the limit. Description string `json:"description"` // ResourceName is the name of the resource that the limit is applied to. ResourceName string `json:"resource_name"` // DefaultLimit is the default limit. DefaultLimit int `json:"default_limit"` // Links contains referencing links to the limit. Links map[string]interface{} `json:"links"` }
A registered limit is the limit that is default for all projects.
func ExtractRegisteredLimits ¶
func ExtractRegisteredLimits(r pagination.Page) ([]RegisteredLimit, error)
ExtractRegisteredLimits returns a slice of Registered Limits contained in a single page of results.
type RegisteredLimitOutput ¶
type RegisteredLimitOutput struct {
RegisteredLimit *RegisteredLimit `json:"registered_limit"`
}
A RegisteredLimitOutput is an encapsulated Limit returned by Get and Update operations
type RegisteredLimitPage ¶
type RegisteredLimitPage struct {
pagination.LinkedPageBase
}
RegisteredLimitPage is a single page of Registered Limit results.
func (RegisteredLimitPage) IsEmpty ¶
func (r RegisteredLimitPage) IsEmpty() (bool, error)
IsEmpty determines whether or not a page of Limits contains any results.
func (RegisteredLimitPage) NextPageURL ¶
func (r RegisteredLimitPage) NextPageURL() (string, error)
NextPageURL extracts the "next" link from the links section of the result.
type RegisteredLimitsOutput ¶
type RegisteredLimitsOutput struct {
RegisteredLimits []RegisteredLimit `json:"registered_limits"`
}
A LimitsOutput is an array of limits returned by List and BatchCreate operations
type UpdateOpts ¶
type UpdateOpts struct { // Description of the registered_limit. Description *string `json:"description,omitempty"` // DefaultLimit is the override limit. DefaultLimit *int `json:"default_limit,omitempty"` // RegionID is the ID of the region where the limit is applied. RegionID string `json:"region_id,omitempty"` // ServiceID is the ID of the service where the limit is applied. ServiceID string `json:"service_id,omitempty"` // ResourceName is the name of the resource that the limit is applied to. ResourceName string `json:"resource_name,omitempty"` }
UpdateOpts represents parameters to update a domain.
func (UpdateOpts) ToRegisteredLimitUpdateMap ¶
func (opts UpdateOpts) ToRegisteredLimitUpdateMap() (map[string]interface{}, error)
ToRegisteredLimitUpdateMap formats UpdateOpts into an update request.
type UpdateOptsBuilder ¶
UpdateOptsBuilder allows extensions to add additional parameters to the Update request.
type UpdateResult ¶
type UpdateResult struct {
// contains filtered or unexported fields
}
UpdateResult is the result of an Update request. Call its Extract method to interpret it as a Limit.
func Update ¶
func Update(client *gophercloud.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)
Update modifies the attributes of a registered limit.
func (UpdateResult) Extract ¶
func (r UpdateResult) Extract() (*RegisteredLimit, error)
Extract interprets any commonResult as a RegisteredLimit.