Documentation ¶
Index ¶
- Constants
- Variables
- type Database
- func (d *Database) AddListener(ctx context.Context, cl port.ChangeListener) error
- func (d *Database) AddTasks(ctx context.Context, tasks []*model.Task) error
- func (d *Database) AddTasksTx(ctx context.Context, tx port.EngineWriteTransaction, tasks []*model.Task) error
- func (d *Database) AllDesignDocs(ctx context.Context) ([]*model.Document, int, error)
- func (d *Database) AllDocs(ctx context.Context, query port.AllDocsQuery) ([]*model.Document, int, error)
- func (d *Database) AttachmentReader(docID, attachment string) (io.ReadCloser, error)
- func (d *Database) BuildDesignDocIndices(ctx context.Context, tx *Transaction, doc *model.Document, update bool) error
- func (d *Database) BuildFnIndices(ctx context.Context, tx port.EngineWriteTransaction, doc *model.Document, ...) error
- func (d *Database) BuildIndices(ctx context.Context, tx *Transaction, update bool) error
- func (d *Database) Changes(ctx context.Context, options *model.ChangesOptions) ([]*model.Document, int, error)
- func (d *Database) ChangesIndex() port.DocumentIndex
- func (d *Database) CompleteTasks(ctx context.Context, tasks []*model.Task) error
- func (d *Database) DeleteAttachment(ctx context.Context, docID, name string) (string, error)
- func (d *Database) DeleteDocument(ctx context.Context, docID, rev string) (*model.Document, error)
- func (d *Database) DocAttachment(docID, attachment string) string
- func (d *Database) DocDir(docID string) string
- func (d *Database) EnrichDocuments(ctx context.Context, docs []*model.Document) error
- func (d *Database) FindDocs(ctx context.Context, query model.FindQuery) ([]*model.Document, *model.ExecutionStats, error)
- func (d *Database) GetAttachment(ctx context.Context, docID, name string) (*model.Attachment, error)
- func (d *Database) GetDocument(ctx context.Context, docID string) (*model.Document, error)
- func (d *Database) GetSecurity(ctx context.Context) (*model.Security, error)
- func (d *Database) GetTasks(ctx context.Context, count int) ([]*model.Task, error)
- func (d *Database) IndexIterator(ctx context.Context, tx *Transaction, idx port.DocumentIndex) (*Iterator, error)
- func (d *Database) Indices() map[string]port.DocumentIndex
- func (d *Database) Iterator(ctx context.Context, ddfn *model.DesignDocFn, fn func(i port.Iterator) error) error
- func (d *Database) Name() string
- func (d *Database) NotifyDocumentUpdate(doc *model.Document)
- func (d *Database) PeekTasks(ctx context.Context, count int) ([]*model.Task, error)
- func (d *Database) PutAttachment(ctx context.Context, docID string, att *model.Attachment) (string, error)
- func (d *Database) PutDocument(ctx context.Context, doc *model.Document) (string, error)
- func (d *Database) PutSecurity(ctx context.Context, sec *model.Security) error
- func (d *Database) ReducerEngine(name string) port.ReducerServerBuilder
- func (d *Database) SearchDocuments(ctx context.Context, ddfn *model.DesignDocFn, sq *port.SearchQuery) (*port.SearchResult, error)
- func (d *Database) Sequence(ctx context.Context) (string, error)
- func (d *Database) Stats(ctx context.Context) (stats model.DatabaseStats, err error)
- func (d *Database) String() string
- func (d *Database) TaskCount(ctx context.Context) (int, error)
- func (d *Database) Transaction(ctx context.Context, fn func(tx *Transaction) error) error
- func (d *Database) UpdateAllDocuments(ctx context.Context, tx port.EngineWriteTransaction, ddfn *model.DesignDocFn) error
- func (d *Database) UpdateTask(ctx context.Context, task *model.Task) error
- func (d *Database) ViewEngine(name string) port.ViewServerBuilder
- type Iterator
- func (i *Iterator) Continue() bool
- func (i *Iterator) First() *model.Document
- func (i *Iterator) IncLimit()
- func (i *Iterator) Next() *model.Document
- func (i *Iterator) Remaining() int
- func (i *Iterator) SetEndKey(v []byte)
- func (i *Iterator) SetLimit(v int)
- func (i *Iterator) SetSkip(v int)
- func (i *Iterator) SetSkipDesignDoc(v bool)
- func (i *Iterator) SetSkipLocalDoc(v bool)
- func (i *Iterator) SetStartKey(v []byte)
- func (i *Iterator) Total() int
- type IteratorOption
- type Storage
- func (s *Storage) Close() error
- func (s *Storage) CreateDatabase(ctx context.Context, name string) (*Database, error)
- func (s *Storage) Database(ctx context.Context, name string) (*Database, error)
- func (s *Storage) Databases(ctx context.Context) ([]string, error)
- func (s *Storage) DeleteDatabase(ctx context.Context, name string) error
- func (s *Storage) RegisterReducerEngine(name string, builder port.ReducerServerBuilder) error
- func (s *Storage) RegisterViewEngine(name string, builder port.ViewServerBuilder) error
- func (s *Storage) ReloadDatabases(ctx context.Context) error
- func (s *Storage) String() string
- type StorageOption
- type Transaction
- func (tx *Transaction) DeleteDocument(ctx context.Context, docID, rev string) (*model.Document, error)
- func (tx *Transaction) GetDocument(ctx context.Context, docID string) (*model.Document, error)
- func (tx *Transaction) GetRaw(ctx context.Context, key []byte, value interface{}) error
- func (tx *Transaction) PutDocument(ctx context.Context, doc *model.Document) (rev string, err error)
- func (tx *Transaction) PutRaw(ctx context.Context, key []byte, raw interface{}) error
- func (tx *Transaction) SetBucketName(bucketName []byte)
Constants ¶
View Source
const AttachmentDir = "attachments"
View Source
const (
SearchDir = "search_indices"
)
Variables ¶
View Source
var ErrConflict = errors.New("rev doesn't match for update")
View Source
var ErrNotFound = errors.New("resource not found")
View Source
var ErrUnknownDatabase = errors.New("unknown database")
Functions ¶
This section is empty.
Types ¶
type Database ¶
type Database struct {
// contains filtered or unexported fields
}
func (*Database) AddListener ¶
AddListener add a change listener to the database changes (document updates) the listener will stay registered as long as the context is valid
func (*Database) AddTasksTx ¶
func (*Database) AllDesignDocs ¶
func (*Database) AttachmentReader ¶
func (d *Database) AttachmentReader(docID, attachment string) (io.ReadCloser, error)
func (*Database) BuildDesignDocIndices ¶
func (*Database) BuildFnIndices ¶
func (*Database) BuildIndices ¶
BuildIndices loads all design documents and builds their indices
func (*Database) ChangesIndex ¶
func (d *Database) ChangesIndex() port.DocumentIndex
func (*Database) CompleteTasks ¶
func (*Database) DeleteAttachment ¶
func (*Database) DeleteDocument ¶
func (*Database) DocAttachment ¶
func (*Database) EnrichDocuments ¶
func (*Database) GetAttachment ¶
func (*Database) GetDocument ¶
func (*Database) GetSecurity ¶
func (*Database) IndexIterator ¶
func (d *Database) IndexIterator(ctx context.Context, tx *Transaction, idx port.DocumentIndex) (*Iterator, error)
func (*Database) NotifyDocumentUpdate ¶
NotifyDocumentUpdate notifies about the change of the passed document using a separate goroutine
func (*Database) PutAttachment ¶
func (*Database) PutDocument ¶
func (*Database) PutSecurity ¶
func (*Database) ReducerEngine ¶
func (d *Database) ReducerEngine(name string) port.ReducerServerBuilder
func (*Database) SearchDocuments ¶
func (d *Database) SearchDocuments(ctx context.Context, ddfn *model.DesignDocFn, sq *port.SearchQuery) (*port.SearchResult, error)
func (*Database) Transaction ¶
func (*Database) UpdateAllDocuments ¶
func (d *Database) UpdateAllDocuments(ctx context.Context, tx port.EngineWriteTransaction, ddfn *model.DesignDocFn) error
UpdateAllDocuments triggers rebuild with all documents
func (*Database) UpdateTask ¶
func (*Database) ViewEngine ¶
func (d *Database) ViewEngine(name string) port.ViewServerBuilder
type Iterator ¶
type Iterator struct { Skip int Limit int StartKey []byte EndKey []byte SkipDeleted bool SkipDesignDoc bool SkipLocalDoc bool CleanKey func([]byte) string KeyFn func([]byte) []byte // contains filtered or unexported fields }
func NewIterator ¶
func NewIterator(tx *Transaction, opts ...IteratorOption) *Iterator
func (*Iterator) Remaining ¶
Remaining returns the remaining documents starting at the current position till the end of the range
func (*Iterator) SetSkipDesignDoc ¶
func (*Iterator) SetSkipLocalDoc ¶
func (*Iterator) SetStartKey ¶
type IteratorOption ¶
type IteratorOption func(*Iterator)
func ForDesignDocFn ¶
func ForDesignDocFn(ddfn *model.DesignDocFn) IteratorOption
func ForDocuments ¶
func ForDocuments() IteratorOption
func WithOptions ¶
func WithOptions(opts *model.IteratorOptions) IteratorOption
type Storage ¶
type Storage struct {
// contains filtered or unexported fields
}
func (*Storage) CreateDatabase ¶
func (*Storage) DeleteDatabase ¶
func (*Storage) RegisterReducerEngine ¶
func (s *Storage) RegisterReducerEngine(name string, builder port.ReducerServerBuilder) error
func (*Storage) RegisterViewEngine ¶
func (s *Storage) RegisterViewEngine(name string, builder port.ViewServerBuilder) error
type StorageOption ¶
func WithReducerEngine ¶
func WithReducerEngine(name string, builder port.ReducerServerBuilder) StorageOption
func WithViewEngine ¶
func WithViewEngine(name string, builder port.ViewServerBuilder) StorageOption
type Transaction ¶
type Transaction struct { Database *Database BucketName []byte port.EngineWriteTransaction }
func (*Transaction) DeleteDocument ¶
func (*Transaction) GetDocument ¶
func (*Transaction) GetRaw ¶
func (tx *Transaction) GetRaw(ctx context.Context, key []byte, value interface{}) error
func (*Transaction) PutDocument ¶
func (*Transaction) PutRaw ¶
func (tx *Transaction) PutRaw(ctx context.Context, key []byte, raw interface{}) error
func (*Transaction) SetBucketName ¶
func (tx *Transaction) SetBucketName(bucketName []byte)
Click to show internal directories.
Click to hide internal directories.