Documentation ¶
Index ¶
- func NewDispatcher(s *service) *dispatcher
- func NewService(ctx *context.T, opts ServiceOptions) (*service, error)
- func PermsString(perms access.Permissions) string
- type CollectionPerms
- func (m *CollectionPerms) FillVDLTarget(t vdl.Target, tt *vdl.Type) error
- func (perms *CollectionPerms) GetPerms() access.Permissions
- func (m *CollectionPerms) MakeVDLTarget() vdl.Target
- func (x CollectionPerms) VDLIsZero() bool
- func (x *CollectionPerms) VDLRead(dec vdl.Decoder) error
- func (x CollectionPerms) VDLWrite(enc vdl.Encoder) error
- type CollectionPermsTarget
- func (t *CollectionPermsTarget) FinishField(key, field vdl.Target) error
- func (t *CollectionPermsTarget) FinishKeyStartField(key vdl.Target) (field vdl.Target, _ error)
- func (t *CollectionPermsTarget) FinishMap(elem vdl.MapTarget) error
- func (t *CollectionPermsTarget) StartKey() (key vdl.Target, _ error)
- func (t *CollectionPermsTarget) StartMap(tt *vdl.Type, len int) (vdl.MapTarget, error)
- type DatabaseData
- func (m *DatabaseData) FillVDLTarget(t vdl.Target, tt *vdl.Type) error
- func (data *DatabaseData) GetPerms() access.Permissions
- func (m *DatabaseData) MakeVDLTarget() vdl.Target
- func (x DatabaseData) VDLIsZero() bool
- func (x *DatabaseData) VDLRead(dec vdl.Decoder) error
- func (x DatabaseData) VDLWrite(enc vdl.Encoder) error
- type DatabaseDataTarget
- func (t *DatabaseDataTarget) FinishField(_, _ vdl.Target) error
- func (t *DatabaseDataTarget) FinishFields(_ vdl.FieldsTarget) error
- func (t *DatabaseDataTarget) StartField(name string) (key, field vdl.Target, _ error)
- func (t *DatabaseDataTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
- func (t *DatabaseDataTarget) ZeroField(name string) error
- type DatabaseOptions
- type DbInfo
- type DbInfoTarget
- func (t *DbInfoTarget) FinishField(_, _ vdl.Target) error
- func (t *DbInfoTarget) FinishFields(_ vdl.FieldsTarget) error
- func (t *DbInfoTarget) StartField(name string) (key, field vdl.Target, _ error)
- func (t *DbInfoTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
- func (t *DbInfoTarget) ZeroField(name string) error
- type ServiceData
- func (m *ServiceData) FillVDLTarget(t vdl.Target, tt *vdl.Type) error
- func (data *ServiceData) GetPerms() access.Permissions
- func (m *ServiceData) MakeVDLTarget() vdl.Target
- func (x ServiceData) VDLIsZero() bool
- func (x *ServiceData) VDLRead(dec vdl.Decoder) error
- func (x ServiceData) VDLWrite(enc vdl.Encoder) error
- type ServiceDataTarget
- func (t *ServiceDataTarget) FinishField(_, _ vdl.Target) error
- func (t *ServiceDataTarget) FinishFields(_ vdl.FieldsTarget) error
- func (t *ServiceDataTarget) StartField(name string) (key, field vdl.Target, _ error)
- func (t *ServiceDataTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
- func (t *ServiceDataTarget) ZeroField(name string) error
- type ServiceOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewDispatcher ¶
func NewDispatcher(s *service) *dispatcher
func NewService ¶
func NewService(ctx *context.T, opts ServiceOptions) (*service, error)
NewService creates a new service instance and returns it. TODO(sadovsky): If possible, close all stores when the server is stopped.
func PermsString ¶
func PermsString(perms access.Permissions) string
PermsString returns a JSON-based string representation of the permissions.
Types ¶
type CollectionPerms ¶
type CollectionPerms access.Permissions
CollectionPerms represent the persistent, synced permissions of a Collection. Existence of CollectionPerms in the store determines existence of the Collection. Note: Since CollectionPerms is synced and conflict resolved, the sync protocol needs to be aware of it. Any potential additions to synced Collection metadata should be written to a separate, synced key prefix, written in the same transaction with CollectionPerms and incorporated into the sync protocol. All persistent Collection metadata should be synced; local-only metadata is acceptable only if optional (e.g. stats).
func (*CollectionPerms) FillVDLTarget ¶
func (*CollectionPerms) GetPerms ¶
func (perms *CollectionPerms) GetPerms() access.Permissions
func (*CollectionPerms) MakeVDLTarget ¶
func (m *CollectionPerms) MakeVDLTarget() vdl.Target
func (CollectionPerms) VDLIsZero ¶
func (x CollectionPerms) VDLIsZero() bool
type CollectionPermsTarget ¶
type CollectionPermsTarget struct { Value *CollectionPerms vdl.TargetBase vdl.MapTargetBase // contains filtered or unexported fields }
func (*CollectionPermsTarget) FinishField ¶
func (t *CollectionPermsTarget) FinishField(key, field vdl.Target) error
func (*CollectionPermsTarget) FinishKeyStartField ¶
func (*CollectionPermsTarget) FinishMap ¶
func (t *CollectionPermsTarget) FinishMap(elem vdl.MapTarget) error
type DatabaseData ¶
type DatabaseData struct { Id syncbase.Id Version uint64 // covers the Perms field below Perms access.Permissions SchemaMetadata *syncbase.SchemaMetadata }
DatabaseData represents the persistent state of a Database, stored in the per-database storage engine.
func (*DatabaseData) FillVDLTarget ¶
func (*DatabaseData) GetPerms ¶
func (data *DatabaseData) GetPerms() access.Permissions
func (*DatabaseData) MakeVDLTarget ¶
func (m *DatabaseData) MakeVDLTarget() vdl.Target
func (DatabaseData) VDLIsZero ¶
func (x DatabaseData) VDLIsZero() bool
type DatabaseDataTarget ¶
type DatabaseDataTarget struct { Value *DatabaseData vdl.TargetBase vdl.FieldsTargetBase // contains filtered or unexported fields }
func (*DatabaseDataTarget) FinishField ¶
func (t *DatabaseDataTarget) FinishField(_, _ vdl.Target) error
func (*DatabaseDataTarget) FinishFields ¶
func (t *DatabaseDataTarget) FinishFields(_ vdl.FieldsTarget) error
func (*DatabaseDataTarget) StartField ¶
func (t *DatabaseDataTarget) StartField(name string) (key, field vdl.Target, _ error)
func (*DatabaseDataTarget) StartFields ¶
func (t *DatabaseDataTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
func (*DatabaseDataTarget) ZeroField ¶
func (t *DatabaseDataTarget) ZeroField(name string) error
type DatabaseOptions ¶
type DatabaseOptions struct { // Database-level permissions. Perms access.Permissions // Root dir for data storage. RootDir string // Storage engine to use. Engine string }
DatabaseOptions configures a database.
type DbInfo ¶
type DbInfo struct { Id syncbase.Id // Select fields from DatabaseOptions, needed in order to open storage engine // on restart. RootDir string // interpreted by storage engine Engine string // name of storage engine, e.g. "leveldb" }
DbInfo contains information about a single Database, stored in the service-level storage engine.
func (*DbInfo) MakeVDLTarget ¶
type DbInfoTarget ¶
type DbInfoTarget struct { Value *DbInfo vdl.TargetBase vdl.FieldsTargetBase // contains filtered or unexported fields }
func (*DbInfoTarget) FinishField ¶
func (t *DbInfoTarget) FinishField(_, _ vdl.Target) error
func (*DbInfoTarget) FinishFields ¶
func (t *DbInfoTarget) FinishFields(_ vdl.FieldsTarget) error
func (*DbInfoTarget) StartField ¶
func (t *DbInfoTarget) StartField(name string) (key, field vdl.Target, _ error)
func (*DbInfoTarget) StartFields ¶
func (t *DbInfoTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
func (*DbInfoTarget) ZeroField ¶
func (t *DbInfoTarget) ZeroField(name string) error
type ServiceData ¶
type ServiceData struct { Version uint64 // covers the fields below Perms access.Permissions }
ServiceData represents the persistent state of a Service.
func (*ServiceData) FillVDLTarget ¶
func (*ServiceData) GetPerms ¶
func (data *ServiceData) GetPerms() access.Permissions
func (*ServiceData) MakeVDLTarget ¶
func (m *ServiceData) MakeVDLTarget() vdl.Target
func (ServiceData) VDLIsZero ¶
func (x ServiceData) VDLIsZero() bool
type ServiceDataTarget ¶
type ServiceDataTarget struct { Value *ServiceData vdl.TargetBase vdl.FieldsTargetBase // contains filtered or unexported fields }
func (*ServiceDataTarget) FinishField ¶
func (t *ServiceDataTarget) FinishField(_, _ vdl.Target) error
func (*ServiceDataTarget) FinishFields ¶
func (t *ServiceDataTarget) FinishFields(_ vdl.FieldsTarget) error
func (*ServiceDataTarget) StartField ¶
func (t *ServiceDataTarget) StartField(name string) (key, field vdl.Target, _ error)
func (*ServiceDataTarget) StartFields ¶
func (t *ServiceDataTarget) StartFields(tt *vdl.Type) (vdl.FieldsTarget, error)
func (*ServiceDataTarget) ZeroField ¶
func (t *ServiceDataTarget) ZeroField(name string) error
type ServiceOptions ¶
type ServiceOptions struct { // Service-level permissions. Used only when creating a brand-new storage // instance. Perms access.Permissions // Root dir for data storage. If empty, we write to a fresh directory created // using ioutil.TempDir. RootDir string // Storage engine to use: memstore or leveldb. If empty, we use the default // storage engine, currently leveldb. Engine string // Whether to skip publishing in the neighborhood. SkipPublishInNh bool // Whether to run in development mode; required for RPCs such as // Service.DevModeUpdateVClock. DevMode bool }
ServiceOptions configures a service.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
Package interfaces defines internal interfaces for various objects in the Syncbase server implementation.
|
Package interfaces defines internal interfaces for various objects in the Syncbase server implementation. |