Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var MaxStreamBufferSize uint32 = 4096
MaxStreamBufferSize represents the maximum number of elements a stream can have buffered before a consumer consumes it.
Functions ¶
This section is empty.
Types ¶
type Consumer ¶
type Consumer interface { // InitStream initializes a resource stream for the consumer. InitStream(resourceUrl string) error // NotifyStream lazily notifies the relevant stream, if it exists, about // a change in a particular resource. NotifyStream(obj *rd.StreamResponse) error // WatchStream publishes changes to resources that are being watched. WatchStream(resourceUrl string) (<-chan WatchResponse, error) // CloseStream closes a resource stream for the consumer. CloseStream(resourceUrl string) error }
Consumer represents an instance of a federated service mesh consumer.
type Registry ¶
type Registry interface { // Register creates a new entry for the given consumer identified by id. Register(id string) (Consumer, error) // Deregister deregisters the consumer identified by id. Deregister(id string) error // GetAll returns all the registered consumer instances. GetAll() []Consumer }
Registry maintains an active set of consumers and provides a mechanism to interact with them.
func NewRegistry ¶
func NewRegistry(stateProvider state.StateProvider) Registry
NewRegistry returns a new instance of the registry.
type WatchResponse ¶
type WatchResponse struct { // Object is the information about the change in a resource that's being // watched. Object *rd.StreamResponse // Closed tells if the stream being watched was closed. Closed bool // Error tells of any errors while processing the stream. Error error }
WatchResponse holds the information about a resource change event to be notified to the watcher.
Click to show internal directories.
Click to hide internal directories.