Help us shape the future of Go! Take the 2026 Go Developer Survey

ports

package
v0.0.0-...-9ec2bbf Latest Latest
Warning

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

Go to latest
Published: Oct 21, 2026 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Overview

Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.

Code generated by sdkgen from Gophercloud v2.15.0 and the pinned Neutron proxy; DO NOT EDIT.

Code generated by sdkgen from Gophercloud v2.15.0 and OpenStackSDK ef55d7d1666099f50bf1e1c40b59d7e7b72a51fe; DO NOT EDIT.

Code generated by sdkgen from Gophercloud v2.15.0; DO NOT EDIT.

Index

Constants

View Source
const StatusActive = upstream.StatusActive
View Source
const StatusBuild = upstream.StatusBuild
View Source
const StatusDown = upstream.StatusDown
View Source
const StatusError = upstream.StatusError

Variables

This section is empty.

Functions

This section is empty.

Types

type API

type API struct {
	Resources *resource.Collection[Port]
	// contains filtered or unexported fields
}

API owns typed operations and their shared resource policies.

func New

func New(client *gophercloud.ServiceClient) *API

func (*API) All

func (a *API) All(ctx context.Context, options ...resource.ListOption) ([]*Port, error)

func (*API) AllRecords

func (a *API) AllRecords(ctx context.Context, options ...RecordListOption) ([]*PortRecord, error)

AllRecords discards partial collected values on error and returns a nonnil empty slice on success. Iterator consumers keep already yielded records.

func (*API) Create

func (a *API) Create(ctx context.Context, opts CreateOpts, options ...CreateOption) (*Port, error)

Create invokes the upstream API with library-owned builders and result handling.

func (*API) CreatePorts

func (a *API) CreatePorts(ctx context.Context, data []BulkPortInput, options ...BulkPortOption) (*BulkPortResult, error)

CreatePorts performs Source create_ports' single eager POST {ports:[attrs]}. Every row's raw Body and Header are validated first; only the last row Header applies to the request. Returned rows are projected on iteration, retaining Source constructor collisions and the actual completed POST on all errors.

func (*API) CreateWithAttributes

func (a *API) CreateWithAttributes(ctx context.Context, options ...AttributeOption) (*Port, error)

CreateWithAttributes posts only supplied Source Body attributes and headers. No attributes sends an empty resource envelope; Neutron validates required fields. Native Create and result decoding remain unchanged. In particular a native 204 result is an ID-less zero model; no request values are synthesized.

func (*API) Delete

func (a *API) Delete(ctx context.Context, id string) error

Delete invokes the upstream API with library-owned builders and result handling.

func (*API) DeleteWithOptions

func (a *API) DeleteWithOptions(ctx context.Context, id string, options ...DeleteOption) error

DeleteWithOptions submits a conditional deletion. Missing resources are ignored by default; WithDeleteIgnoreMissing(false) selects strict handling. A zero revision is a real condition, and later options override earlier ones.

func (*API) Find

func (a *API) Find(ctx context.Context, ref resource.Ref, options ...resource.LookupOption) (*Port, error)

func (*API) FindIdentity

func (a *API) FindIdentity(ctx context.Context, identity string, options ...resource.IdentityFindOption) (*Port, error)

FindIdentity tries an ID request before exact ID/name fallback within this collection.

func (*API) FindRecord

func (a *API) FindRecord(ctx context.Context, identity string, options ...RecordFindOption) (*PortRecord, error)

FindRecord matches the pinned Source GET-first, complete ID-or-name search. It suppresses only clean GET 400/403/404. A physical body/Close/source/cancel failure never becomes a fallback or missing-resource success.

func (*API) Get

func (a *API) Get(ctx context.Context, id string) (*Port, error)

Get invokes the upstream API with library-owned builders and result handling.

func (*API) GetRecord

func (a *API) GetRecord(ctx context.Context, identity string, options ...RecordFindOption) (*PortRecord, error)

GetRecord fetches one literal port without the find fallback. It reuses the declared Port descriptors so workflows observe the same conversion errors and keep the physical response separately from the Resource view.

func (*API) GetSubnetPorts

func (a *API) GetSubnetPorts(ctx context.Context, target SubnetPortTarget, options ...SubnetPortOption) (*SubnetPortsResult, error)

GetSubnetPorts performs the Source unfiltered ports() scan. It never looks up a subnet, pushes a subnet filter, deduplicates ports or rewrites receipts. Local errors retain the actual row/page and all previously observed records.

func (*API) GetWithFields

func (a *API) GetWithFields(ctx context.Context, id string, fields ...string) (*Port, error)

GetWithFields fetches selected fields using canonical Python Body aliases. No fields requests the ordinary representation. Unknown field names and repeated fields are preserved; list-query aliases are not applied. It uses native result extraction with successful HTTP statuses 200..399.

func (*API) List

func (a *API) List(ctx context.Context, options ...ListOption) iter.Seq2[*Port, error]

List invokes the upstream API with library-owned builders and result handling.

func (*API) ListRecordValues

func (a *API) ListRecordValues(ctx context.Context, expression string, options ...RecordListOption) (*RecordListValue, error)

ListRecordValues collects the owned Python attribute views before evaluating a JMESPath expression. An empty expression returns the views as a JSON array. This explicit Go API corrects Proxy._list's generator input limitation; cloud search_ports already uses an eager list. Every original row remains available.

func (*API) ListRecords

func (a *API) ListRecords(ctx context.Context, options ...RecordListOption) iter.Seq2[*PortRecord, error]

ListRecords is the lazy Source-shaped ports list (Proxy.ports). It has no implicit name hint or member fetch. Declared QueryParameters go to the server, other declared Body attributes filter received rows locally, and ports_links, top-level next, HTTP Link and limit/marker continuation follow the pinned Resource.list paging.

func (*API) ListSourceValues

func (a *API) ListSourceValues(ctx context.Context, options ...SourceCloudListOption) (*SourceCloudListResult, error)

ListSourceValues provides cloud.list_ports' polymorphic list conversion. It never normalizes a literal JSON mapping into a Port or fabricates a Wire, response body, Header or status for evidence-free values.

func (*API) ProxyListRecords

func (a *API) ProxyListRecords(ctx context.Context, options ...RecordListOption) (*RecordProxyListResult, error)

ProxyListRecords mirrors Proxy.ports, including _list's generator-based jmespath_filters evaluation. Missing, falsey and non-string filters retain the lazy generator. A truthy expression is evaluated against that opaque generator before any HTTP: projections commonly return null, type-checked array functions fail, and @ returns the generator itself. ListRecordValues is the explicit eager alternative for evaluating the actual returned rows.

func (*API) RawClient

func (a *API) RawClient() *gophercloud.ServiceClient

func (*API) Remove

func (a *API) Remove(ctx context.Context, ref resource.Ref, options ...resource.LookupOption) error

func (*API) SearchRecords

func (a *API) SearchRecords(ctx context.Context, nameOrID string, options ...RecordSearchOption) (*SearchResult, error)

SearchRecords implements the cloud layer search_ports(name_or_id, filters): list_ports with dictionary filters pushed down as Proxy.ports kwargs (no pushdown for a JMESPath string), then _utils._filter_list with exact or glob ID/name matching and nested dictionary or JMESPath filters on the Python attribute views (Resource.Body).

func (*API) Update

func (a *API) Update(ctx context.Context, id string, opts UpdateOpts, options ...UpdateOption) (*Port, error)

Update invokes the upstream API with library-owned builders and result handling.

func (*API) UpdateWithAttributes

func (a *API) UpdateWithAttributes(ctx context.Context, id string, options ...AttributeOption) (*Port, error)

UpdateWithAttributes commits Body/header changes to a literal ID. No options sends no HTTP and returns an ID-only native model. A revision or If-Match header alone is a change and sends an empty resource envelope in a PUT.

func (*API) WaitFor

func (a *API) WaitFor(ctx context.Context, ref resource.Ref, status string, options ...resource.WaitOption) (*Port, error)

func (*API) WaitForDeletion

func (a *API) WaitForDeletion(ctx context.Context, ref resource.Ref, options ...resource.WaitOption) error

type AddressPair

type AddressPair = upstream.AddressPair

type AttributeOption

type AttributeOption = request.Option[struct{}]

AttributeOption configures the dedicated pinned Source mutation profile. Body values are JSON snapshots; revision and If-Match stay outside the Body.

func WithAttribute

func WithAttribute(key string, value any) AttributeOption

WithAttribute maps canonical Python Body names to wire names and snapshots supplied JSON. Unknown extension keys stay in Body. The inherited if_match Header accepts JSON strings/string lists and null (the Source string "None"). Raw Header validation is deferred because Source revision overrides it first.

func WithIfMatch

func WithIfMatch(values ...string) AttributeOption

WithIfMatch snapshots Header values using the Source comma-space list form. An explicit empty list sends an empty header rather than omitting it.

func WithRevision

func WithRevision(value int64) AttributeOption

WithRevision selects the Source update if_revision argument, including zero. It is valid only for UpdateWithAttributes and overrides a raw If-Match option regardless of their relative order. Later revision options win.

type BulkPortAttribute

type BulkPortAttribute func(*BulkPortInput) error

func WithBulkPortAttribute

func WithBulkPortAttribute(key string, value any) BulkPortAttribute

type BulkPortInput

type BulkPortInput struct {
	Attributes map[string]json.RawMessage
	// contains filtered or unexported fields
}

BulkPortInput owns one set of raw Source attributes in insertion order. Descriptor conversion applies to response views, never to request Body values.

func BulkPort

func BulkPort(options ...BulkPortAttribute) BulkPortInput

func BulkPortFields

func BulkPortFields(fields map[string]json.RawMessage) BulkPortInput

func BulkPortJSON

func BulkPortJSON(value json.RawMessage) BulkPortInput

type BulkPortOption

type BulkPortOption func(*BulkPortOpts) error

func WithBulkPortHeaders

func WithBulkPortHeaders(value map[string]string) BulkPortOption

func WithBulkPortMicroversion

func WithBulkPortMicroversion(value string) BulkPortOption

func WithBulkPortOpts

func WithBulkPortOpts(value BulkPortOpts) BulkPortOption

type BulkPortOpts

type BulkPortOpts struct {
	Headers      map[string]string
	Microversion *string
}

type BulkPortResult

type BulkPortResult struct {
	Records    iter.Seq2[*PortRecord, error]
	Envelope   json.RawMessage
	Header     http.Header
	StatusCode int
}

BulkPortResult retains the one real POST receipt. Records projects only returned response rows, lazily, with no merge from submitted attributes.

func (*BulkPortResult) All

func (result *BulkPortResult) All() ([]*PortRecord, error)

All collects this already-submitted response iterator. It never sends a new request and discards partial collected rows when projection fails.

type CreateOption

type CreateOption = request.Option[CreateOpts]

func WithCreateField

func WithCreateField(key string, value any) CreateOption

func WithCreateOptions

func WithCreateOptions(value CreateOpts) CreateOption

type CreateOpts

type CreateOpts = upstream.CreateOpts

type CreateResult

type CreateResult = upstream.CreateResult

type DeleteOption

type DeleteOption = request.NeutronDeleteOption

func WithDeleteIgnoreMissing

func WithDeleteIgnoreMissing(value bool) DeleteOption

func WithDeleteOptions

func WithDeleteOptions(value DeleteOpts) DeleteOption

func WithDeleteRevision

func WithDeleteRevision(value int64) DeleteOption

type DeleteOpts

type DeleteOpts = request.NeutronDeleteOpts

type DeleteResult

type DeleteResult = upstream.DeleteResult

type FixedIPOpts

type FixedIPOpts = upstream.FixedIPOpts

type GetResult

type GetResult = upstream.GetResult

type IP

type IP = upstream.IP

type ListOption

type ListOption = request.Option[ListOpts]

func WithListOptions

func WithListOptions(value ListOpts) ListOption

func WithListQuery

func WithListQuery(key, value string) ListOption

type ListOpts

type ListOpts = upstream.ListOpts

type Port

type Port = upstream.Port

type PortPage

type PortPage = upstream.PortPage

type PortRecord

type PortRecord struct {
	Resource, Wire *resource.RawResource
	Envelope       json.RawMessage
	Header         http.Header
	StatusCode     int
	// contains filtered or unexported fields
}

PortRecord owns the declared Source view and original response evidence.

func (*PortRecord) UnmarshalJSON

func (v *PortRecord) UnmarshalJSON(data []byte) error

type RecordFindOption

type RecordFindOption func(*RecordFindOpts) error

func WithRecordFindHeaders

func WithRecordFindHeaders(value map[string]string) RecordFindOption

func WithRecordFindIgnoreMissing

func WithRecordFindIgnoreMissing(value bool) RecordFindOption

func WithRecordFindMicroversion

func WithRecordFindMicroversion(value string) RecordFindOption

func WithRecordFindOpts

func WithRecordFindOpts(value RecordFindOpts) RecordFindOption

func WithRecordFindQuery

func WithRecordFindQuery(key string, value any) RecordFindOption

type RecordFindOpts

type RecordFindOpts struct {
	IgnoreMissing *bool
	Microversion  *string

	Query   map[string]json.RawMessage
	Headers map[string]string
	// contains filtered or unexported fields
}

RecordFindOpts owns Source kwargs. Omitted IgnoreMissing defaults to true. Query preserves JSON values, including arrays and null; unknown kwargs go to the member GET but are ignored by the list, following Source Resource.find.

type RecordListGenerator

type RecordListGenerator struct {
	Records iter.Seq2[*PortRecord, error]
}

RecordListGenerator represents the unconsumed Resource.list generator in the Source Proxy API. Iterating Records performs the guarded lazy list request.

func (*RecordListGenerator) JMESPathIdentity

func (g *RecordListGenerator) JMESPathIdentity() any

func (*RecordListGenerator) MarshalJSON

func (*RecordListGenerator) MarshalJSON() ([]byte, error)

type RecordListOption

type RecordListOption func(*RecordListOpts) error

func WithRecordListBasePath

func WithRecordListBasePath(value string) RecordListOption

WithRecordListBasePath selects an owned service-relative Source list path.

func WithRecordListHeaders

func WithRecordListHeaders(v map[string]string) RecordListOption

func WithRecordListJMESPath

func WithRecordListJMESPath(expression string) RecordListOption

WithRecordListJMESPath supplies Source Proxy._list's polymorphic expression. ProxyListRecords exposes its zero-HTTP value or lazy generator result.

func WithRecordListLimit

func WithRecordListLimit(v int) RecordListOption

func WithRecordListMarker

func WithRecordListMarker(v string) RecordListOption

func WithRecordListMaxItems

func WithRecordListMaxItems(v int) RecordListOption

func WithRecordListMicroversion

func WithRecordListMicroversion(v string) RecordListOption

func WithRecordListOpts

func WithRecordListOpts(v RecordListOpts) RecordListOption

func WithRecordListPaginated

func WithRecordListPaginated(v bool) RecordListOption

func WithRecordListQuery

func WithRecordListQuery(key string, value any) RecordListOption

WithRecordListQuery snapshots known kwargs in insertion order; unknowns are discarded before encoding their transport value, matching Source list. Declared query names and wire names go to the server; other declared Body attributes become local filters on each received row.

type RecordListOpts

type RecordListOpts struct {
	Query        map[string]json.RawMessage
	Headers      map[string]string
	Microversion *string
	BasePath     *string
	// contains filtered or unexported fields
}

RecordListOpts owns JSON Source list kwargs and transport conveniences. Query retains omission/null/false/zero. Microversion applies to every page. Default pagination is true; max_items 0 is unbounded and limit is omitted.

type RecordListValue

type RecordListValue struct {
	Value     json.RawMessage
	Inventory []*PortRecord
}

RecordListValue retains the listed evidence and the arbitrary JSON result of an expression. It does not fabricate a record association for projected data.

type RecordProxyListResult

type RecordProxyListResult struct {
	Value any
	JSON  json.RawMessage
}

RecordProxyListResult preserves the Source's polymorphic JMESPath result. Value can contain JSON values, a *RecordListGenerator, or nested generators. JSON is populated only if the entire result is representable as JSON.

type RecordSearchOption

type RecordSearchOption func(*RecordSearchOpts) error

func WithRecordSearchCloudLocation

func WithRecordSearchCloudLocation(value resource.CloudLocation) RecordSearchOption

WithRecordSearchCloudLocation supplies configured Connection facts. The SDK computes each actual port's project/zone view before local selection, retaining foreign project IDs while clearing the current project's names.

func WithRecordSearchExpression

func WithRecordSearchExpression(expression string) RecordSearchOption

WithRecordSearchExpression supplies the deprecated JMESPath string filter. Python then lists every port without pushing any filter to Neutron.

func WithRecordSearchFilters

func WithRecordSearchFilters(value json.RawMessage) RecordSearchOption

WithRecordSearchFilters snapshots raw JSON filters. nil clears them.

func WithRecordSearchHeaders

func WithRecordSearchHeaders(v map[string]string) RecordSearchOption

func WithRecordSearchLocation

func WithRecordSearchLocation(value json.RawMessage) RecordSearchOption

WithRecordSearchLocation is the Connection adapter's declared Resource view. It is applied before dictionary/JMESPath selection and never changes Wire.

func WithRecordSearchMicroversion

func WithRecordSearchMicroversion(v string) RecordSearchOption

func WithRecordSearchOpts

func WithRecordSearchOpts(value RecordSearchOpts) RecordSearchOption

WithRecordSearchOpts snapshots the complete concrete policy, including raw filters and an optional Connection location. No user-supplied builder is needed.

type RecordSearchOpts

type RecordSearchOpts struct {
	Filters      *json.RawMessage
	Headers      map[string]string
	Microversion *string
	// Location supplies the library-owned Connection view before local search.
	Location      *json.RawMessage
	CloudLocation *resource.CloudLocation
}

RecordSearchOpts holds the cloud search_ports filters: a JSON object for nested dictionary filters, or a JSON string for the deprecated JMESPath expression. Headers and Microversion apply to every list page.

type SearchResult

type SearchResult struct {
	Value     json.RawMessage
	Ports     []*PortRecord
	Inventory []*PortRecord
}

SearchResult is a completed cloud search. Value is the selected JSON array of Python views, or the arbitrary JMESPath result. Ports keeps the selected records in order and is nil for an expression. Inventory is every listed record, including the rows read before a failure.

type SourceCloudListOption

type SourceCloudListOption func(*SourceCloudListOpts) error

func WithSourceCloudListFilters

func WithSourceCloudListFilters(value json.RawMessage) SourceCloudListOption

func WithSourceCloudListHeaders

func WithSourceCloudListHeaders(value map[string]string) SourceCloudListOption

func WithSourceCloudListLocation

func WithSourceCloudListLocation(value resource.CloudLocation) SourceCloudListOption

func WithSourceCloudListMicroversion

func WithSourceCloudListMicroversion(value string) SourceCloudListOption

func WithSourceCloudListOpts

func WithSourceCloudListOpts(value SourceCloudListOpts) SourceCloudListOption

type SourceCloudListOpts

type SourceCloudListOpts struct {
	Filters       *json.RawMessage
	Headers       map[string]string
	Microversion  *string
	CloudLocation *resource.CloudLocation
	// contains filtered or unexported fields
}

SourceCloudListOpts owns cloud.list_ports' filters and Go transport facts. A falsey filter is equivalent to {}; a truthy object becomes Proxy kwargs.

type SourceCloudListResult

type SourceCloudListResult struct {
	Values    []any
	JSON      json.RawMessage
	Ports     []*PortRecord
	Inventory []*PortRecord
}

SourceCloudListResult is the actual Python list() conversion. Values can contain JSON values, original PortRecord pointers or nested opaque generators. JSON is present only for a complete JSON-representable list. Ports is supplied only for an actual Resource generator; Inventory contains actual HTTP rows.

type SubnetPortOption

type SubnetPortOption func(*SubnetPortOpts) error

func WithSubnetPortHeaders

func WithSubnetPortHeaders(value map[string]string) SubnetPortOption

func WithSubnetPortMicroversion

func WithSubnetPortMicroversion(value string) SubnetPortOption

func WithSubnetPortOpts

func WithSubnetPortOpts(value SubnetPortOpts) SubnetPortOption

type SubnetPortOpts

type SubnetPortOpts struct {
	Headers      map[string]string
	Microversion *string
}

type SubnetPortTarget

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

SubnetPortTarget is a concrete Source subnet selector. IDs are literal; selecting an owned/native subnet reads its ID without fetching the subnet.

func SubnetPortFields

func SubnetPortFields(fields map[string]json.RawMessage) SubnetPortTarget

SubnetPortFields selects an owned Resource-like ID, with absent ID equal to Source's None. The fields are evidence-free input; no response is invented.

func SubnetPortID

func SubnetPortID(id string) SubnetPortTarget

func SubnetPortNative

func SubnetPortNative(value *subnets.Subnet) SubnetPortTarget

func SubnetPortRecord

func SubnetPortRecord(value *subnets.SubnetRecord) SubnetPortTarget

func SubnetPortValue

func SubnetPortValue(value json.RawMessage) SubnetPortTarget

SubnetPortValue preserves Resource._get_id's non-Resource JSON-domain input. Explicit JSON null and arbitrary JSON identifiers are not treated as names.

type SubnetPortsResult

type SubnetPortsResult struct {
	Ports     []*PortRecord
	Inventory []*PortRecord
}

SubnetPortsResult retains every observed port and the selected pointers. Multiple fixed IP matches append the same pointer, matching Source's loop.

type UpdateOption

type UpdateOption = request.Option[UpdateOpts]

func WithUpdateField

func WithUpdateField(key string, value any) UpdateOption

func WithUpdateOptions

func WithUpdateOptions(value UpdateOpts) UpdateOption

type UpdateOpts

type UpdateOpts = upstream.UpdateOpts

type UpdateResult

type UpdateResult = upstream.UpdateResult

Jump to

Keyboard shortcuts

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