Documentation
¶
Index ¶
- Constants
- Variables
- type CollectEntityGraphDirective
- func (d *CollectEntityGraphDirective) CollectEntityGraphDirective()
- func (d *CollectEntityGraphDirective) GetDebugVals() directive.DebugValues
- func (d *CollectEntityGraphDirective) GetName() string
- func (d *CollectEntityGraphDirective) GetValueOptions() directive.ValueOptions
- func (d *CollectEntityGraphDirective) IsEquivalent(other directive.Directive) bool
- func (d *CollectEntityGraphDirective) Superceeds(other directive.Directive) bool
- func (d *CollectEntityGraphDirective) Validate() error
- type Config
- func (m *Config) CloneMessageVT() protobuf_go_lite.CloneMessage
- func (m *Config) CloneVT() *Config
- func (this *Config) EqualMessageVT(thatMsg any) bool
- func (this *Config) EqualVT(that *Config) bool
- func (c *Config) EqualsConfig(other config.Config) bool
- func (c *Config) GetConfigID() string
- func (x *Config) MarshalJSON() ([]byte, error)
- func (x *Config) MarshalProtoJSON(s *json.MarshalState)
- func (x *Config) MarshalProtoText() string
- func (m *Config) MarshalToSizedBufferVT(dAtA []byte) (int, error)
- func (m *Config) MarshalToVT(dAtA []byte) (int, error)
- func (m *Config) MarshalVT() (dAtA []byte, err error)
- func (*Config) ProtoMessage()
- func (x *Config) Reset()
- func (m *Config) SizeVT() (n int)
- func (x *Config) String() string
- func (x *Config) UnmarshalJSON(b []byte) error
- func (x *Config) UnmarshalProtoJSON(s *json.UnmarshalState)
- func (m *Config) UnmarshalVT(dAtA []byte) error
- func (c *Config) Validate() error
- type Controller
- type Factory
- func (t *Factory) Construct(ctx context.Context, conf config.Config, opts controller.ConstructOpts) (controller.Controller, error)
- func (t *Factory) ConstructConfig() config.Config
- func (t *Factory) GetConfigID() string
- func (t *Factory) GetControllerID() string
- func (t *Factory) GetVersion() semver.Version
Constants ¶
const ConfigID = ControllerID
ConfigID is the string used to identify this config object.
const ControllerID = "entitygraph/collector/1"
ControllerID is the ID of the controller.
Variables ¶
var Version = semver.MustParse("0.0.1")
Version is the version of the controller implementation.
Functions ¶
This section is empty.
Types ¶
type CollectEntityGraphDirective ¶
type CollectEntityGraphDirective struct{}
CollectEntityGraphDirective implements CollectEntityGraph.
func NewCollectEntityGraphDirective ¶
func NewCollectEntityGraphDirective() *CollectEntityGraphDirective
NewCollectEntityGraphDirective constructs a new CollectEntityGraph directive.
func (*CollectEntityGraphDirective) CollectEntityGraphDirective ¶
func (d *CollectEntityGraphDirective) CollectEntityGraphDirective()
CollectEntityGraphDirective is a marker function.
func (*CollectEntityGraphDirective) GetDebugVals ¶
func (d *CollectEntityGraphDirective) GetDebugVals() directive.DebugValues
GetDebugVals returns the directive arguments as k/v pairs. This is not necessarily unique, and is primarily intended for display.
func (*CollectEntityGraphDirective) GetName ¶
func (d *CollectEntityGraphDirective) GetName() string
GetName returns the directive's type name. This is not necessarily unique, and is primarily intended for display.
func (*CollectEntityGraphDirective) GetValueOptions ¶
func (d *CollectEntityGraphDirective) GetValueOptions() directive.ValueOptions
GetValueOptions returns options relating to value handling.
func (*CollectEntityGraphDirective) IsEquivalent ¶
func (d *CollectEntityGraphDirective) IsEquivalent(other directive.Directive) bool
IsEquivalent checks if the other directive is equivalent. If two directives are equivalent, and the new directive does not superceed the old, then the new directive will be merged (de-duplicated) into the old.
func (*CollectEntityGraphDirective) Superceeds ¶
func (d *CollectEntityGraphDirective) Superceeds(other directive.Directive) bool
Superceeds checks if the directive overrides another. The other directive will be canceled if superceded.
func (*CollectEntityGraphDirective) Validate ¶
func (d *CollectEntityGraphDirective) Validate() error
Validate validates the directive. This is a cursory validation to see if the values "look correct."
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
Config is the entity graph aggregation controller config.
func (*Config) CloneMessageVT ¶ added in v0.6.0
func (m *Config) CloneMessageVT() protobuf_go_lite.CloneMessage
func (*Config) EqualMessageVT ¶ added in v0.6.0
func (*Config) EqualsConfig ¶
EqualsConfig checks if the other config is equal.
func (*Config) GetConfigID ¶
GetConfigID returns the unique string for this configuration type. This string is stored with the encoded config.
func (*Config) MarshalJSON ¶ added in v0.8.1
MarshalJSON marshals the Config to JSON.
func (*Config) MarshalProtoJSON ¶ added in v0.8.1
func (x *Config) MarshalProtoJSON(s *json.MarshalState)
MarshalProtoJSON marshals the Config message to JSON.
func (*Config) MarshalProtoText ¶ added in v0.8.2
func (*Config) MarshalToSizedBufferVT ¶ added in v0.2.1
func (*Config) ProtoMessage ¶
func (*Config) ProtoMessage()
func (*Config) UnmarshalJSON ¶ added in v0.8.1
UnmarshalJSON unmarshals the Config from JSON.
func (*Config) UnmarshalProtoJSON ¶ added in v0.8.1
func (x *Config) UnmarshalProtoJSON(s *json.UnmarshalState)
UnmarshalProtoJSON unmarshals the Config message from JSON.
func (*Config) UnmarshalVT ¶ added in v0.2.1
type Controller ¶
type Controller struct {
// contains filtered or unexported fields
}
Controller implements the entity graph aggregation controller. The controller issues a CollectEntityGraph directive, aggregates entities, and fulfills ObserveEntityGraph directives.
func NewController ¶
NewController constructs a new entity graph controller.
func (*Controller) Close ¶
func (c *Controller) Close() error
Close releases any resources used by the controller. Error indicates any issue encountered releasing.
func (*Controller) Execute ¶
func (c *Controller) Execute(ctx context.Context) error
Execute executes the given controller. Returning nil ends execution. Returning an error triggers a retry with backoff.
func (*Controller) GetControllerInfo ¶
func (c *Controller) GetControllerInfo() *controller.Info
GetControllerInfo returns information about the controller.
func (*Controller) HandleDirective ¶
func (c *Controller) HandleDirective( ctx context.Context, inst directive.Instance, ) ([]directive.Resolver, error)
HandleDirective asks if the handler can resolve the directive.
type Factory ¶
type Factory struct {
// contains filtered or unexported fields
}
Factory constructs a entity graph controller.
func NewFactory ¶
NewFactory builds a entity graph controller factory.
func (*Factory) Construct ¶
func (t *Factory) Construct( ctx context.Context, conf config.Config, opts controller.ConstructOpts, ) (controller.Controller, error)
Construct constructs the associated controller given configuration. The transport's identity (private key) comes from a GetNode lookup.
func (*Factory) ConstructConfig ¶
ConstructConfig constructs an instance of the controller configuration.
func (*Factory) GetConfigID ¶
GetConfigID returns the configuration ID for the controller.
func (*Factory) GetControllerID ¶
GetControllerID returns the unique ID for the controller.
func (*Factory) GetVersion ¶
func (t *Factory) GetVersion() semver.Version
GetVersion returns the version of this controller.