code

package
v1.12.1 Latest Latest
Warning

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

Go to latest
Published: Jun 21, 2020 License: MIT Imports: 32 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrWrappedIndexerClosed = fmt.Errorf("Indexer closed before ready")

ErrWrappedIndexerClosed is the error returned if the indexer was closed before it was ready

Functions

func DeleteRepoFromIndexer

func DeleteRepoFromIndexer(repo *models.Repository, watchers ...chan<- error)

DeleteRepoFromIndexer remove all of a repository's entries from the indexer

func Init

func Init()

Init initialize the repo indexer

func PerformSearch

func PerformSearch(repoIDs []int64, language, keyword string, page, pageSize int) (int, []*Result, []*SearchResultLanguages, error)

PerformSearch perform a search on a repository

func UpdateRepoIndexer

func UpdateRepoIndexer(repo *models.Repository, watchers ...chan<- error)

UpdateRepoIndexer update a repository's entries in the indexer

Types

type BleveIndexer

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

BleveIndexer represents a bleve indexer implementation

func NewBleveIndexer

func NewBleveIndexer(indexDir string) (*BleveIndexer, bool, error)

NewBleveIndexer creates a new bleve local indexer

func (*BleveIndexer) Close

func (b *BleveIndexer) Close()

Close close the indexer

func (*BleveIndexer) Delete

func (b *BleveIndexer) Delete(repoID int64) error

Delete deletes indexes by ids

func (*BleveIndexer) Index

func (b *BleveIndexer) Index(repoID int64) error

Index indexes the data

func (*BleveIndexer) Search

func (b *BleveIndexer) Search(repoIDs []int64, language, keyword string, page, pageSize int) (int64, []*SearchResult, []*SearchResultLanguages, error)

Search searches for files in the specified repo. Returns the matching file-paths

type Indexer

type Indexer interface {
	Index(repoID int64) error
	Delete(repoID int64) error
	Search(repoIDs []int64, language, keyword string, page, pageSize int) (int64, []*SearchResult, []*SearchResultLanguages, error)
	Close()
}

Indexer defines an interface to indexer issues contents

type RepoIndexerData

type RepoIndexerData struct {
	RepoID    int64
	CommitID  string
	Content   string
	Language  string
	UpdatedAt time.Time
}

RepoIndexerData data stored in the repo indexer

func (*RepoIndexerData) Type

func (d *RepoIndexerData) Type() string

Type returns the document type, for bleve's mapping.Classifier interface.

type Result

type Result struct {
	RepoID         int64
	Filename       string
	CommitID       string
	UpdatedUnix    timeutil.TimeStamp
	Language       string
	Color          string
	HighlightClass string
	LineNumbers    []int
	FormattedLines gotemplate.HTML
}

Result a search result to display

type SearchResult

type SearchResult struct {
	RepoID      int64
	StartIndex  int
	EndIndex    int
	Filename    string
	Content     string
	CommitID    string
	UpdatedUnix timeutil.TimeStamp
	Language    string
	Color       string
}

SearchResult result of performing a search in a repo

type SearchResultLanguages added in v1.12.0

type SearchResultLanguages struct {
	Language string
	Color    string
	Count    int
}

SearchResultLanguages result of top languages count in search results

Jump to

Keyboard shortcuts

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