Documentation ¶
Index ¶
- Constants
- type ASNumber
- type NumOrStringType
- type Port
- type Protocol
- func (p Protocol) MarshalJSON() ([]byte, error)
- func (p Protocol) NumValue() (uint8, error)
- func (_ Protocol) OpenAPISchemaFormat() string
- func (_ Protocol) OpenAPISchemaType() []string
- func (p Protocol) String() string
- func (p Protocol) SupportsPorts() bool
- func (p Protocol) ToV1() Protocol
- func (p *Protocol) UnmarshalJSON(b []byte) error
- type Uint8OrString
Constants ¶
const ( ProtocolUDP = "UDP" ProtocolTCP = "TCP" ProtocolICMP = "ICMP" ProtocolICMPv6 = "ICMPv6" ProtocolSCTP = "SCTP" ProtocolUDPLite = "UDPLite" ProtocolUDPV1 = "udp" ProtocolTCPV1 = "tcp" ProtocolSCTPV1 = "sctp" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ASNumber ¶
type ASNumber uint32
func ASNumberFromString ¶
ASNumberFromString creates an ASNumber struct from a string value. The string value may simply be a number or may be the ASN in dotted notation.
func (*ASNumber) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaller uinterface.
type NumOrStringType ¶
type NumOrStringType int
Type represents the stored type of Int32OrString.
const ( NumOrStringNum NumOrStringType = iota // The structure holds a number. NumOrStringString // The structure holds a string. )
type Port ¶
type Port struct { MinPort uint16 `json:"minPort,omitempty"` MaxPort uint16 `json:"maxPort,omitempty"` PortName string `json:"portName" validate:"omitempty,portName"` }
Port represents either a range of numeric ports or a named port.
- For a named port, set the PortName, leaving MinPort and MaxPort as 0.
- For a port range, set MinPort and MaxPort to the (inclusive) port numbers. Set PortName to "".
- For a single port, set MinPort = MaxPort and PortName = "".
func PortFromRange ¶
PortFromRange creates a Port struct representing a range of ports.
func PortFromString ¶
PortFromString creates a Port struct from its string representation. A port may either be single value "1234", a range of values "100:200" or a named port: "name".
func SinglePort ¶
SinglePort creates a Port struct representing a single port.
func (Port) MarshalJSON ¶
MarshalJSON implements the json.Marshaller interface.
func (Port) OpenAPISchemaFormat ¶
OpenAPISchemaFormat is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Port) OpenAPISchemaType ¶
OpenAPISchemaType is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Port) String ¶
String returns the string value. If the min and max port are the same this returns a single string representation of the port number, otherwise if returns a colon separated range of ports.
func (*Port) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaller interface.
type Protocol ¶
type Protocol Uint8OrString
func ProtocolFromInt ¶
ProtocolFromInt creates a Protocol struct from an integer value.
func ProtocolFromString ¶
ProtocolFromString creates a Protocol struct from a string value.
func ProtocolFromStringV1 ¶
ProtocolFromStringV1 creates a Protocol struct from a string value (for the v1 API)
func ProtocolV3FromProtocolV1 ¶
ProtocolV3FromProtocolV1 creates a v3 Protocol from a v1 Protocol, while handling case conversion.
func (Protocol) MarshalJSON ¶
MarshalJSON implements the json.Marshaller interface.
func (Protocol) NumValue ¶
NumValue returns the NumVal if type Int, or if it is a String, will attempt a conversion to int.
func (Protocol) OpenAPISchemaFormat ¶
OpenAPISchemaFormat is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Protocol) OpenAPISchemaType ¶
OpenAPISchemaType is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Protocol) SupportsPorts ¶
SupportsProtocols returns whether this protocol supports ports. This returns true if the numerical or string version of the protocol indicates TCP (6), UDP (17), or SCTP (132).
func (*Protocol) UnmarshalJSON ¶
UnmarshalJSON implements the json.Unmarshaller interface.
type Uint8OrString ¶
type Uint8OrString struct { Type NumOrStringType `json:"type"` NumVal uint8 `json:"numVal"` StrVal string `json:"strVal"` }
UInt8OrString is a type that can hold an uint8 or a string. When used in JSON or YAML marshalling and unmarshalling, it produces or consumes the inner type. This allows you to have, for example, a JSON field that can accept a name or number.
func (Uint8OrString) MarshalJSON ¶
func (i Uint8OrString) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaller interface.
func (Uint8OrString) NumValue ¶
func (i Uint8OrString) NumValue() (uint8, error)
NumValue returns the NumVal if type Int, or if it is a String, will attempt a conversion to int.
func (Uint8OrString) OpenAPISchemaFormat ¶
func (_ Uint8OrString) OpenAPISchemaFormat() string
OpenAPISchemaFormat is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Uint8OrString) OpenAPISchemaType ¶
func (_ Uint8OrString) OpenAPISchemaType() []string
OpenAPISchemaType is used by the kube-openapi generator when constructing the OpenAPI spec of this type. See: https://github.com/kubernetes/kube-openapi/tree/master/pkg/generators
func (Uint8OrString) String ¶
func (i Uint8OrString) String() string
String returns the string value, or the Itoa of the int value.
func (*Uint8OrString) UnmarshalJSON ¶
func (i *Uint8OrString) UnmarshalJSON(b []byte) error
UnmarshalJSON implements the json.Unmarshaller interface.