private

package
v0.80.0 Latest Latest
Warning

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

Go to latest
Published: Jan 22, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EphemeralApiToken added in v0.78.0

type EphemeralApiToken struct {
	Token         string        `json:"token"`
	ExpiresAt     time.Time     `json:"expires_at"`
	WarnThreshold time.Duration `json:"warn_threshold"`
	DoNotLogOut   bool          `json:"do_not_log_out"`
}

func (*EphemeralApiToken) LoadPrivateState added in v0.78.0

func (o *EphemeralApiToken) LoadPrivateState(ctx context.Context, ps State, diags *diag.Diagnostics)

func (*EphemeralApiToken) SetPrivateState added in v0.78.0

func (o *EphemeralApiToken) SetPrivateState(ctx context.Context, ps State, diags *diag.Diagnostics)

type ResourceDatacenterIpLinkAddressingInterfaceAddressing

type ResourceDatacenterIpLinkAddressingInterfaceAddressing struct {
	SwitchIpv4  enum.InterfaceNumberingIpv4Type `json:"switch_ipv4"`
	SwitchIpv6  enum.InterfaceNumberingIpv6Type `json:"switch_ipv6"`
	GenericIpv4 enum.InterfaceNumberingIpv4Type `json:"generic_ipv4"`
	GenericIpv6 enum.InterfaceNumberingIpv6Type `json:"generic_ipv6"`
}

ResourceDatacenterIpLinkAddressingInterfaceAddressing is stored in private state by ResourceDatacenterIpLinkAddressing.Create(). It is the record of the original numbering scheme on a logical link, and is restored by ResourceDatacenterIpLinkAddressing.Delete()

func (*ResourceDatacenterIpLinkAddressingInterfaceAddressing) LoadApiData

func (*ResourceDatacenterIpLinkAddressingInterfaceAddressing) LoadPrivateState

func (*ResourceDatacenterIpLinkAddressingInterfaceAddressing) SetPrivateState

type ResourceDatacenterIpLinkAddressingInterfaceIds

type ResourceDatacenterIpLinkAddressingInterfaceIds struct {
	SwitchInterface  apstra.ObjectId `json:"switch_interface"`
	GenericInterface apstra.ObjectId `json:"generic_interface"`
}

ResourceDatacenterIpLinkAddressingInterfaceIds contains the logical interfaces associated with a logical link. It turns out that these interface IDs are NOT immutable. The interfaces, along with the logical link are created as a side-effect of associating a CT containing IP Link primitives with a physical switch port. Modifying the CT may cause the logical link and logical interface pair to be replaced. The logical link is indistinguishable from immutable because its ID is constructed by encoding other information. The interfaces, on the other hand, use random IDs, so they may be found to have changed from one run to the next. As a result, this "private data" struct is no longer committed to private state. It's now relegated to merely unpacking the API response via the LoadApiData() method.

func (*ResourceDatacenterIpLinkAddressingInterfaceIds) LoadApiData

func (*ResourceDatacenterIpLinkAddressingInterfaceIds) LoadPrivateState

func (*ResourceDatacenterIpLinkAddressingInterfaceIds) SetPrivateState

type State

type State interface {
	GetKey(ctx context.Context, key string) ([]byte, diag.Diagnostics)
	SetKey(ctx context.Context, key string, value []byte) diag.Diagnostics
}

State is intended as a stand-in for ProviderData from the not-import-able github.com/hashicorp/terraform-plugin-framework/internal/privatestate package.

Jump to

Keyboard shortcuts

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