firewall_groups

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 11, 2020 License: Apache-2.0 Imports: 3 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ExtractFirewallGroupsInto

func ExtractFirewallGroupsInto(r pagination.Page, v interface{}) error

func List

func List(c *golangsdk.ServiceClient, opts ListOptsBuilder) pagination.Pager

List returns a Pager which allows you to iterate over a collection of firewall_groups. It accepts a ListOpts struct, which allows you to filter and sort the returned collection for greater efficiency.

Default policy settings return only those firewall_groups that are owned by the tenant who submits the request, unless an admin user submits the request.

Types

type CreateOpts

type CreateOpts struct {
	IngressPolicyID string `json:"ingress_firewall_policy_id,omitempty"`
	EgressPolicyID  string `json:"egress_firewall_policy_id,omitempty"`
	// Only required if the caller has an admin role and wants to create a firewall
	// for another tenant.
	TenantID     string `json:"tenant_id,omitempty"`
	Name         string `json:"name,omitempty"`
	Description  string `json:"description,omitempty"`
	AdminStateUp *bool  `json:"admin_state_up,omitempty"`
	Shared       *bool  `json:"public,omitempty"`
}

CreateOpts contains all the values needed to create a new firewall_group.

func (CreateOpts) ToFirewallGroupCreateMap

func (opts CreateOpts) ToFirewallGroupCreateMap() (map[string]interface{}, error)

ToFirewallGroupCreateMap casts a CreateOpts struct to a map.

type CreateOptsBuilder

type CreateOptsBuilder interface {
	ToFirewallGroupCreateMap() (map[string]interface{}, error)
}

CreateOptsBuilder is the interface options structs have to satisfy in order to be used in the main Create operation in this package. Since many extensions decorate or modify the common logic, it is useful for them to satisfy a basic interface in order for them to be used.

type CreateResult

type CreateResult struct {
	// contains filtered or unexported fields
}

CreateResult represents the result of a create operation.

func Create

func Create(c *golangsdk.ServiceClient, opts CreateOptsBuilder) (r CreateResult)

Create accepts a CreateOpts struct and uses the values to create a new firewall group

func (CreateResult) Extract

func (r CreateResult) Extract() (*FirewallGroup, error)

Extract is a function that accepts a result and extracts a firewall.

func (CreateResult) ExtractInto

func (r CreateResult) ExtractInto(v interface{}) error

type DeleteResult

type DeleteResult struct {
	golangsdk.ErrResult
}

DeleteResult represents the result of a delete operation.

func Delete

func Delete(c *golangsdk.ServiceClient, id string) (r DeleteResult)

Delete will permanently delete a particular firewall based on its unique ID.

type FirewallGroup

type FirewallGroup struct {
	ID              string `json:"id"`
	Name            string `json:"name"`
	Description     string `json:"description"`
	AdminStateUp    bool   `json:"admin_state_up"`
	Status          string `json:"status"`
	IngressPolicyID string `json:"ingress_firewall_policy_id"`
	EgressPolicyID  string `json:"egress_firewall_policy_id"`
	TenantID        string `json:"tenant_id"`
}

FirewallGroup is an OpenStack firewall_group.

func ExtractFirewallGroups

func ExtractFirewallGroups(r pagination.Page) ([]FirewallGroup, error)

ExtractFirewalls accepts a Page struct, specifically a RouterPage struct, and extracts the elements into a slice of Router structs. In other words, a generic collection is mapped into a relevant slice.

type FirewallGroupPage

type FirewallGroupPage struct {
	pagination.LinkedPageBase
}

FirewallPage is the page returned by a pager when traversing over a collection of firewalls.

func (FirewallGroupPage) IsEmpty

func (r FirewallGroupPage) IsEmpty() (bool, error)

IsEmpty checks whether a FirewallPage struct is empty.

func (FirewallGroupPage) NextPageURL

func (r FirewallGroupPage) NextPageURL() (string, error)

NextPageURL is invoked when a paginated collection of firewalls has reached the end of a page and the pager seeks to traverse over a new one. In order to do this, it needs to construct the next page's URL.

type GetResult

type GetResult struct {
	// contains filtered or unexported fields
}

GetResult represents the result of a get operation.

func Get

func Get(c *golangsdk.ServiceClient, id string) (r GetResult)

Get retrieves a particular firewall based on its unique ID.

func (GetResult) Extract

func (r GetResult) Extract() (*FirewallGroup, error)

Extract is a function that accepts a result and extracts a firewall.

func (GetResult) ExtractInto

func (r GetResult) ExtractInto(v interface{}) error

type ListOpts

type ListOpts struct {
	TenantID        string `q:"tenant_id"`
	Name            string `q:"name"`
	Description     string `q:"description"`
	AdminStateUp    bool   `q:"admin_state_up"`
	Shared          bool   `q:"public"`
	IngressPolicyID string `q:"ingress_firewall_policy_id"`
	EgressPolicyID  string `q:"egress_firewall_policy_id"`
	ID              string `q:"id"`
	Limit           int    `q:"limit"`
	Marker          string `q:"marker"`
	SortKey         string `q:"sort_key"`
	SortDir         string `q:"sort_dir"`
}

ListOpts allows the filtering and sorting of paginated collections through the API. Filtering is achieved by passing in struct field values that map to the firewall attributes you want to see returned. SortKey allows you to sort by a particular firewall attribute. SortDir sets the direction, and is either `asc' or `desc'. Marker and Limit are used for pagination.

func (ListOpts) ToFirewallGroupListQuery

func (opts ListOpts) ToFirewallGroupListQuery() (string, error)

ToFirewallListQuery formats a ListOpts into a query string.

type ListOptsBuilder

type ListOptsBuilder interface {
	ToFirewallGroupListQuery() (string, error)
}

ListOptsBuilder allows extensions to add additional parameters to the List request.

type UpdateOpts

type UpdateOpts struct {
	IngressPolicyID string `json:"ingress_firewall_policy_id,omitempty"`
	EgressPolicyID  string `json:"egress_firewall_policy_id,omitempty"`
	Name            string `json:"name,omitempty"`
	Description     string `json:"description,omitempty"`
	AdminStateUp    *bool  `json:"admin_state_up,omitempty"`
	Shared          *bool  `json:"public,omitempty"`
}

UpdateOpts contains the values used when updating a firewall.

func (UpdateOpts) ToFirewallGroupUpdateMap

func (opts UpdateOpts) ToFirewallGroupUpdateMap() (map[string]interface{}, error)

ToFirewallGroupUpdateMap casts a CreateOpts struct to a map.

type UpdateOptsBuilder

type UpdateOptsBuilder interface {
	ToFirewallGroupUpdateMap() (map[string]interface{}, error)
}

UpdateOptsBuilder is the interface options structs have to satisfy in order to be used in the main Update operation in this package. Since many extensions decorate or modify the common logic, it is useful for them to satisfy a basic interface in order for them to be used.

type UpdateResult

type UpdateResult struct {
	// contains filtered or unexported fields
}

UpdateResult represents the result of an update operation.

func Update

func Update(c *golangsdk.ServiceClient, id string, opts UpdateOptsBuilder) (r UpdateResult)

Update allows firewall_groups to be updated.

func (UpdateResult) Extract

func (r UpdateResult) Extract() (*FirewallGroup, error)

Extract is a function that accepts a result and extracts a firewall.

func (UpdateResult) ExtractInto

func (r UpdateResult) ExtractInto(v interface{}) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL