Documentation ¶
Index ¶
- Constants
- Variables
- func CursorToSearchAfter(cursor model.PageCursor) (searchAfter interface{}, err error)
- func MakeSearchBody(appID config.AppID, searchKeyword string, filterOptions libuser.FilterOptions, ...) map[string]interface{}
- func NewClient(credentials *config.ElasticsearchCredentials) *elasticsearch.Client
- func RawToSource(raw *model.ElasticsearchUserRaw) *model.ElasticsearchUserSource
- func SortToCursor(sort interface{}) (cursor model.PageCursor, err error)
- type ElasticsearchServiceLogger
- type Logger
- type ReindexRequest
- type ReindexResult
- type Service
- func (s *Service) EnqueueReindexUserTask(userID string) error
- func (s *Service) ExecReindexUser(request ReindexRequest) (result ReindexResult)
- func (s *Service) MarkUsersAsReindexRequired(userIDs []string) error
- func (s *Service) QueryUser(searchKeyword string, filterOptions libuser.FilterOptions, ...) ([]model.PageItemRef, *Stats, error)
- type Sink
- type Stats
- type UserQueries
- type UserReindexCreateProducer
Constants ¶
View Source
const IndexNameUser = "user"
View Source
const PrefixMinChars = 3
Variables ¶
Functions ¶
func CursorToSearchAfter ¶
func CursorToSearchAfter(cursor model.PageCursor) (searchAfter interface{}, err error)
func MakeSearchBody ¶
func MakeSearchBody( appID config.AppID, searchKeyword string, filterOptions libuser.FilterOptions, sortOption libuser.SortOption, ) map[string]interface{}
func NewClient ¶
func NewClient(credentials *config.ElasticsearchCredentials) *elasticsearch.Client
func RawToSource ¶
func RawToSource(raw *model.ElasticsearchUserRaw) *model.ElasticsearchUserSource
func SortToCursor ¶
func SortToCursor(sort interface{}) (cursor model.PageCursor, err error)
Types ¶
type ElasticsearchServiceLogger ¶
func NewElasticsearchServiceLogger ¶
func NewElasticsearchServiceLogger(lf *log.Factory) *ElasticsearchServiceLogger
type ReindexRequest ¶
type ReindexRequest struct {
UserID string `json:"user_id"`
}
type ReindexResult ¶
type Service ¶
type Service struct { Clock clock.Clock Context context.Context Database *appdb.Handle Logger *ElasticsearchServiceLogger AppID config.AppID Client *elasticsearch.Client Users UserQueries UserStore *user.Store OAuth *identityoauth.Store LoginID *identityloginid.Store RolesGroups *rolesgroups.Store TaskQueue task.Queue Producer UserReindexCreateProducer }
func (*Service) EnqueueReindexUserTask ¶
func (*Service) ExecReindexUser ¶
func (s *Service) ExecReindexUser(request ReindexRequest) (result ReindexResult)
func (*Service) MarkUsersAsReindexRequired ¶
func (*Service) QueryUser ¶
func (s *Service) QueryUser( searchKeyword string, filterOptions libuser.FilterOptions, sortOption libuser.SortOption, pageArgs graphqlutil.PageArgs, ) ([]model.PageItemRef, *Stats, error)
type UserQueries ¶
type UserReindexCreateProducer ¶
type UserReindexCreateProducer interface { NewTask(appID string, input json.RawMessage) *redisqueue.Task EnqueueTask(ctx context.Context, task *redisqueue.Task) error }
Click to show internal directories.
Click to hide internal directories.