Documentation
¶
Index ¶
- type APIRuleProvider
- func (a *APIRuleProvider) AddNetwork(net Network) error
- func (a *APIRuleProvider) AddPolicy(networkName string, pol Policy) error
- func (a *APIRuleProvider) DeleteNetwork(name string) error
- func (a *APIRuleProvider) DeletePolicy(networkName string, index int) error
- func (a *APIRuleProvider) Get() *RuleSet
- func (a *APIRuleProvider) GetNetwork(name string) (*Network, error)
- func (a *APIRuleProvider) GetNetworks() []Network
- func (a *APIRuleProvider) GetPolicies(networkName string) ([]Policy, error)
- func (a *APIRuleProvider) LoadFromRuleSet(rs *RuleSet) error
- func (a *APIRuleProvider) RegisterObserver(observer NetworkObserver)
- func (a *APIRuleProvider) UpdateNetwork(name string, net Network) error
- func (a *APIRuleProvider) UpdatePolicy(networkName string, index int, pol Policy) error
- type CIDRString
- type Network
- type NetworkObserver
- type Policy
- type RuleProvider
- type RuleSet
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type APIRuleProvider ¶
type APIRuleProvider struct {
// contains filtered or unexported fields
}
APIRuleProvider is a thread-safe in-memory RuleProvider implementation that can be mutated via API calls while the Controller reads from it concurrently.
func NewAPIRuleProvider ¶
func NewAPIRuleProvider() *APIRuleProvider
NewAPIRuleProvider creates a new APIRuleProvider with an empty RuleSet
func (*APIRuleProvider) AddNetwork ¶
func (a *APIRuleProvider) AddNetwork(net Network) error
AddNetwork adds a new network with validation
func (*APIRuleProvider) AddPolicy ¶
func (a *APIRuleProvider) AddPolicy(networkName string, pol Policy) error
AddPolicy adds a new policy to a network
func (*APIRuleProvider) DeleteNetwork ¶
func (a *APIRuleProvider) DeleteNetwork(name string) error
DeleteNetwork removes a network by name
func (*APIRuleProvider) DeletePolicy ¶
func (a *APIRuleProvider) DeletePolicy(networkName string, index int) error
DeletePolicy removes a policy at a specific index
func (*APIRuleProvider) Get ¶
func (a *APIRuleProvider) Get() *RuleSet
Get returns a deep copy of the current RuleSet to prevent data races
func (*APIRuleProvider) GetNetwork ¶
func (a *APIRuleProvider) GetNetwork(name string) (*Network, error)
GetNetwork returns a copy of a network by name
func (*APIRuleProvider) GetNetworks ¶
func (a *APIRuleProvider) GetNetworks() []Network
GetNetworks returns a copy of the networks slice
func (*APIRuleProvider) GetPolicies ¶
func (a *APIRuleProvider) GetPolicies(networkName string) ([]Policy, error)
GetPolicies returns a copy of policies for a network
func (*APIRuleProvider) LoadFromRuleSet ¶
func (a *APIRuleProvider) LoadFromRuleSet(rs *RuleSet) error
LoadFromRuleSet loads rules from an existing RuleSet (used for seeding from config file)
func (*APIRuleProvider) RegisterObserver ¶ added in v1.6.1
func (a *APIRuleProvider) RegisterObserver(observer NetworkObserver)
RegisterObserver registers a NetworkObserver to receive network lifecycle events
func (*APIRuleProvider) UpdateNetwork ¶
func (a *APIRuleProvider) UpdateNetwork(name string, net Network) error
UpdateNetwork updates an existing network
func (*APIRuleProvider) UpdatePolicy ¶
func (a *APIRuleProvider) UpdatePolicy(networkName string, index int, pol Policy) error
UpdatePolicy updates a policy at a specific index
type CIDRString ¶
func (CIDRString) MarshalJSON ¶
func (c CIDRString) MarshalJSON() ([]byte, error)
func (*CIDRString) UnmarshalYAML ¶
func (ip *CIDRString) UnmarshalYAML(unmarshal func(interface{}) error) error
type Network ¶
type Network struct {
Name string `json:"name"`
CIDR CIDRString `json:"cidr"`
Policies []Policy `json:"policies"`
// Kubernetes integration fields (optional, for integration-managed networks)
IntegrationID string `json:"integration_id,omitempty"`
Namespace string `json:"namespace,omitempty"`
LabelSelector string `json:"label_selector,omitempty"`
}
type NetworkObserver ¶ added in v1.6.1
type NetworkObserver interface {
OnNetworkCreated(network Network) error
OnNetworkUpdated(old, new Network) error
OnNetworkDeleted(network Network) error
}
NetworkObserver interface for observing network lifecycle events Used by K8s WatcherManager to coordinate PodWatcher lifecycles
type RuleProvider ¶
type RuleProvider interface {
Get() *RuleSet
}