index

package
v2.3.1 Latest Latest
Warning

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

Go to latest
Published: May 15, 2023 License: GPL-3.0 Imports: 19 Imported by: 0

Documentation

Overview

Package index provides interfaces for indexing ebooks metadata and retrieving this metadata back from the index. Currently, there is only one implementation to those interfaces, using Bleve.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Mapping

func Mapping() *mapping.IndexMappingImpl

Types

type BleveIndexer

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

func NewBleve

func NewBleve(index bleve.Index, libraryPath string, read map[string]metadata.Reader) *BleveIndexer

NewBleve creates a new BleveIndexer instance using the passed parameters

func (*BleveIndexer) AddFile

func (b *BleveIndexer) AddFile(file string) error

AddFile adds a file to the index

func (*BleveIndexer) AddLibrary

func (b *BleveIndexer) AddLibrary(fs afero.Fs, batchSize int) error

AddLibrary scans <libraryPath> for books and adds them to the index in batches of <bathSize>

func (*BleveIndexer) Close

func (b *BleveIndexer) Close() error

Close closes the index

func (*BleveIndexer) Count

func (b *BleveIndexer) Count() (uint64, error)

Count returns the number of indexed books

func (*BleveIndexer) RemoveFile

func (b *BleveIndexer) RemoveFile(file string) error

RemoveFile removes a file from the index

func (*BleveIndexer) Search

func (b *BleveIndexer) Search(keywords string, page, resultsPerPage int, wordsPerMinute float64) (*controller.Result, error)

Search look for documents which match with the passed keywords. Returns a maximum <resultsPerPage> books, offset by <page>

Jump to

Keyboard shortcuts

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