service

package
v1.3.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2021 License: MIT Imports: 15 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OpMatch  = "Match"
	OpPhrase = "Phrase"
	// OpMultiPhrase  = "MultiPhrase"
	OpPrefix       = "Prefix"
	OpRegexp       = "Regexp"
	OpTerm         = "Term"
	OpWildcard     = "Wildcard"
	OpDateRange    = "DateRange"
	OpNumericRange = "NumericRange"
	OpQueryString  = "QueryString"

	QueryObject = "query.json"
)

一些常量

Variables

View Source
var (
	ErrRecordNotFound = errors.New("record isnot found")
	ErrNameIsExists   = errors.New("query name is exists")
)

一些常见错误

OpList 一些过滤表达式的匹配操作

Functions

func CreateID

func CreateID(t time.Time, count uint32) string

CreateID create a unique ObjectId.

func ErrBadArguments

func ErrBadArguments(msg string) error

func GenerateID

func GenerateID() string

GenerateID returns a new unique ObjectId.

func TimeFromID

func TimeFromID(id string) time.Time

TimeFromID read time from id string.

Types

type ContinuousQuery

type ContinuousQuery struct {
	Fields  []string `json:"fields,omitempty"`
	GroupBy string   `json:"groupBy,omitempty"`
	Targets []struct {
		Type      string   `json:"type"`
		Arguments []string `json:"arguments"`
	} `json:"targets,omitempty"`

	//  cache for target callback
	Callback func(cq *ContinuousQuery, value interface{}) error `json:"-"`
}

ContinuousQuery 一个持续查询对象

type Filter

type Filter struct {
	Field  string   `json:"field,omitempty"`
	Op     string   `json:"op"`
	Values []string `json:"values"`
}

Filter 过滤器

func (*Filter) ToQuery

func (f *Filter) ToQuery() (query.Query, error)

ToQuery 转换为 query.Query

type MetaStore

type MetaStore struct {
	// contains filtered or unexported fields
}

MetaStore 对象

func NewMetaStore

func NewMetaStore(dataPath string) *MetaStore

func (*MetaStore) CreateCQ

func (h *MetaStore) CreateCQ(query string, cq ContinuousQuery) (string, error)

func (*MetaStore) CreateQuery

func (h *MetaStore) CreateQuery(q Query) (string, error)

func (*MetaStore) DeleteCQ

func (h *MetaStore) DeleteCQ(query, id string) error

func (*MetaStore) DeleteQuery

func (h *MetaStore) DeleteQuery(id string) error

func (*MetaStore) ForEach

func (h *MetaStore) ForEach(cb func(id string, data Query))

func (*MetaStore) ListCQ

func (h *MetaStore) ListCQ(query string) ([]ContinuousQuery, error)

func (*MetaStore) ListQueries

func (h *MetaStore) ListQueries() []Query

func (*MetaStore) ListQueryIDs

func (h *MetaStore) ListQueryIDs() ([]Query, error)

func (*MetaStore) Load

func (h *MetaStore) Load() error

func (*MetaStore) ReadCQ

func (h *MetaStore) ReadCQ(query, id string) (ContinuousQuery, error)

func (*MetaStore) ReadQuery

func (h *MetaStore) ReadQuery(id string) (Query, error)

func (*MetaStore) UpdateCQ

func (h *MetaStore) UpdateCQ(query, id string, cq ContinuousQuery) error

func (*MetaStore) UpdateQuery

func (h *MetaStore) UpdateQuery(id string, q Query) error

type Query

type Query struct {
	ID                string                     `json:"id,omitempty"`
	Name              string                     `json:"name"`
	Description       string                     `json:"description,omitempty"`
	Filters           []Filter                   `json:"filters,omitempty"`
	ContinuousQueries map[string]ContinuousQuery `json:"continuous_queries,omitempty"`
	Sort              string                     `json:"sort,omitempty"`
}

Query 一个查询对象

func (*Query) ToQueries

func (q *Query) ToQueries() ([]query.Query, error)

ToQueries 转换为 query.Query 列表

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL