Documentation
¶
Index ¶
- Variables
- func DoStreamEntities(entities []etre.Entity, err error) <-chan entity.EntityResult
- func NewSystemMetrics(real metrics.Metrics, recorder *MetricRecorder) metrics.Metrics
- type AuthRecorder
- type AuthenticateArgs
- type AuthorizeArgs
- type CDCStore
- type ChangeStreamServer
- type DBPlugin
- type EntityStore
- func (s EntityStore) CreateEntities(ctx context.Context, wo entity.WriteOp, entities []etre.Entity) ([]string, error)
- func (s EntityStore) DeleteEntities(ctx context.Context, wo entity.WriteOp, q query.Query) ([]etre.Entity, error)
- func (s EntityStore) DeleteEntityLabel(ctx context.Context, wo entity.WriteOp, label string) (etre.Entity, error)
- func (s EntityStore) DeleteLabel(ctx context.Context, wo entity.WriteOp, label string) (etre.Entity, error)
- func (s EntityStore) ReadEntity(ctx context.Context, entityType string, entityId string, f etre.QueryFilter) (etre.Entity, error)
- func (s EntityStore) StreamEntities(ctx context.Context, entityType string, q query.Query, f etre.QueryFilter) <-chan entity.EntityResult
- func (s EntityStore) UpdateEntities(ctx context.Context, wo entity.WriteOp, q query.Query, u etre.Entity) ([]etre.Entity, error)
- type MetricMethodArgs
- type MetricRecorder
- func (m *MetricRecorder) EntityType(et string)
- func (m *MetricRecorder) Inc(mn byte, n int64)
- func (m *MetricRecorder) IncLabel(mn byte, label string)
- func (m *MetricRecorder) Report(reset bool) etre.Metrics
- func (m *MetricRecorder) Reset()
- func (m *MetricRecorder) Trace(map[string]string)
- func (m *MetricRecorder) Val(mn byte, n int64)
- type MetricsFactory
- type MetricsStore
- type Stream
- type StreamerFactory
Constants ¶
This section is empty.
Variables ¶
View Source
var CDCEvents = []etre.CDCEvent{ etre.CDCEvent{Id: "nru", EntityId: "e1", EntityRev: 0, Ts: 10}, etre.CDCEvent{Id: "vno", EntityId: "e2", EntityRev: 0, Ts: 13}, etre.CDCEvent{Id: "4pi", EntityId: "e3", EntityRev: 0, Ts: 13}, etre.CDCEvent{Id: "p34", EntityId: "e1", EntityRev: 1, Ts: 22}, etre.CDCEvent{Id: "vb0", EntityId: "e5", EntityRev: 0, Ts: 35}, etre.CDCEvent{Id: "bnu", EntityId: "e5", EntityRev: 1, Ts: 35}, etre.CDCEvent{Id: "qwp", EntityId: "e1", EntityRev: 3, Ts: 39}, etre.CDCEvent{Id: "61p", EntityId: "e1", EntityRev: 2, Ts: 42}, etre.CDCEvent{Id: "2oi", EntityId: "e2", EntityRev: 1, Ts: 44}, }
Some test events that can be insterted into a db.
View Source
var RawInsertEvents = []bson.M{ { "_id": bson.M{"_data": bson.Binary{Data: []uint8{0x82, 0x5e, 0x8f, 0x5c, 0xf7, 0x0, 0x0, 0x0, 0x26, 0x46, 0x3c, 0x5f, 0x69, 0x64, 0x0, 0x3c, 0x61, 0x62, 0x63, 0x0, 0x0, 0x5a, 0x10, 0x4, 0x4d, 0x5e, 0xa3, 0x2c, 0x5c, 0x27, 0x4c, 0xf8, 0xb1, 0xad, 0x80, 0x30, 0x3a, 0x44, 0xbc, 0x82, 0x4}}}, "documentKey": bson.M{"_id": "abc"}, "fullDocument": bson.M{ "_id": "abc", "entityId": "e13", "entityType": "node", "op": "i", "rev": int64(7), "ts": 54, "user": "mike", "new": bson.M{"_id": "e13", "_rev": int64(7), "_type": "node", "foo": "bar"}, }, "ns": bson.M{"coll": "cdc", "db": "etre_test"}, "operationType": "insert", }, }
Functions ¶
func DoStreamEntities ¶ added in v0.15.0
func DoStreamEntities(entities []etre.Entity, err error) <-chan entity.EntityResult
func NewSystemMetrics ¶ added in v0.12.3
func NewSystemMetrics(real metrics.Metrics, recorder *MetricRecorder) metrics.Metrics
Types ¶
type AuthRecorder ¶ added in v0.12.3
type AuthRecorder struct {
AuthenticateFunc func(*http.Request) (auth.Caller, error)
AuthorizeFunc func(auth.Caller, auth.Action) error
AuthenticateArgs []AuthenticateArgs
AuthorizeArgs []AuthorizeArgs
}
func (*AuthRecorder) Authenticate ¶ added in v0.12.3
func (*AuthRecorder) Reset ¶ added in v0.12.3
func (a *AuthRecorder) Reset()
type AuthenticateArgs ¶ added in v0.12.3
type AuthorizeArgs ¶ added in v0.12.3
type CDCStore ¶
type ChangeStreamServer ¶ added in v0.11.0
type ChangeStreamServer struct {
WatchFunc func(string) (<-chan etre.CDCEvent, error)
CloseFunc func(string)
RunFunc func() error
StopFunc func()
}
func (ChangeStreamServer) Close ¶ added in v0.11.0
func (s ChangeStreamServer) Close(clientId string)
func (ChangeStreamServer) Run ¶ added in v0.11.0
func (s ChangeStreamServer) Run() error
func (ChangeStreamServer) Stop ¶ added in v0.11.0
func (s ChangeStreamServer) Stop()
type DBPlugin ¶ added in v0.12.0
type DBPlugin struct {
ConnectFunc func(config.DatasourceConfig) (*mongo.Client, error)
}
type EntityStore ¶
type EntityStore struct {
ReadEntityFunc func(ctx context.Context, entityType string, entityId string, f etre.QueryFilter) (etre.Entity, error)
DeleteEntityLabelFunc func(context.Context, entity.WriteOp, string) (etre.Entity, error)
CreateEntitiesFunc func(context.Context, entity.WriteOp, []etre.Entity) ([]string, error)
UpdateEntitiesFunc func(context.Context, entity.WriteOp, query.Query, etre.Entity) ([]etre.Entity, error)
DeleteEntitiesFunc func(context.Context, entity.WriteOp, query.Query) ([]etre.Entity, error)
DeleteLabelFunc func(context.Context, entity.WriteOp, string) (etre.Entity, error)
StreamEntitiesFunc func(ctx context.Context, entityType string, q query.Query, f etre.QueryFilter) <-chan entity.EntityResult
}
func (EntityStore) CreateEntities ¶
func (EntityStore) DeleteEntities ¶
func (EntityStore) DeleteEntityLabel ¶
func (EntityStore) DeleteLabel ¶
func (EntityStore) ReadEntity ¶ added in v0.15.0
func (s EntityStore) ReadEntity(ctx context.Context, entityType string, entityId string, f etre.QueryFilter) (etre.Entity, error)
func (EntityStore) StreamEntities ¶ added in v0.15.0
func (s EntityStore) StreamEntities(ctx context.Context, entityType string, q query.Query, f etre.QueryFilter) <-chan entity.EntityResult
type MetricMethodArgs ¶
type MetricRecorder ¶
type MetricRecorder struct {
Called []MetricMethodArgs
}
MetricRecorder records the called methods and values.
func NewMetricsRecorder ¶
func NewMetricsRecorder() *MetricRecorder
func (*MetricRecorder) EntityType ¶
func (m *MetricRecorder) EntityType(et string)
func (*MetricRecorder) Inc ¶
func (m *MetricRecorder) Inc(mn byte, n int64)
func (*MetricRecorder) IncLabel ¶
func (m *MetricRecorder) IncLabel(mn byte, label string)
func (*MetricRecorder) Reset ¶
func (m *MetricRecorder) Reset()
func (*MetricRecorder) Trace ¶
func (m *MetricRecorder) Trace(map[string]string)
func (*MetricRecorder) Val ¶
func (m *MetricRecorder) Val(mn byte, n int64)
type MetricsFactory ¶
type MetricsFactory struct {
MetricRecorder *MetricRecorder
Real metrics.Factory
}
func NewMetricsFactory ¶ added in v0.12.3
func NewMetricsFactory(real metrics.Factory, recorder *MetricRecorder) MetricsFactory
type MetricsStore ¶ added in v0.9.2
type MetricsStore struct {
AddFunc func(m metrics.Metrics, name string) error
GetFunc func(name string) metrics.Metrics
NamesFunc func() []string
}
func (MetricsStore) Add ¶ added in v0.9.2
func (s MetricsStore) Add(m metrics.Metrics, name string) error
func (MetricsStore) Names ¶ added in v0.9.2
func (s MetricsStore) Names() []string
type Stream ¶ added in v0.11.0
type Stream struct {
StartFunc func(sinceTs int64) <-chan etre.CDCEvent
InSyncFunc func() chan struct{}
StatusFunc func() changestream.Status
StopFunc func()
ErrorFunc func() error
}
func (Stream) Status ¶ added in v0.11.0
func (s Stream) Status() changestream.Status
type StreamerFactory ¶ added in v0.11.0
type StreamerFactory struct {
MakeFunc func(clientId string) changestream.Streamer
}
func (StreamerFactory) Make ¶ added in v0.11.0
func (f StreamerFactory) Make(clientId string) changestream.Streamer
Click to show internal directories.
Click to hide internal directories.