Foxit PDF SDK

Public Types | Public Member Functions | List of all members
foxit.fts.FullTextSearch Class Reference
Inheritance diagram for foxit.fts.FullTextSearch:

## Public Types
enum | RankMode { RankMode.e_RankNone = 0, RankMode.e_RankHitCountASC = 1, RankMode.e_RankHitCountDESC = 2 }
| Enumeration for rank mode of full text search. More...

## Public Member Functions
| FullTextSearch ()
| Constructor.
| FullTextSearch (FullTextSearch other)
| Constructor, with another full text search object. More...
bool | IsEmpty ()
| Check whether current object is empty or not. More...
bool | SearchOf (string match_string, FullTextSearch.RankMode rank_mode, SearchCallback callback)
| Search for specified text among the indexed PDF files. More...
void | SetDataBasePath (string path_of_data_base)
| Set a file path as sqlite data base which is used for storing the indexed data. More...
Progressive | StartUpdateIndex (DocumentsSource source, PauseCallback pause, bool reupdate)
| Start to update the index of PDF files defined in a documents source object. More...
bool | UpdateIndexWithFilePath (string file_path)
| Update the index result of a specified PDF file. More...

## Detailed Description

This class is used to index some PDF files and then search specified text among these indexed PDF files.

## Member Enumeration Documentation

## ◆ RankMode

enum foxit.fts.FullTextSearch.RankMode
| strong

Enumeration for rank mode of full text search.

Values of this enumeration should be used alone.

Enumerator
e_RankNone | No ranking mode is used for searching results.
e_RankHitCountASC | Rank the searching results according to how the result matches the expected searching patten, in ascending order (from less similar to most similar or the same).
e_RankHitCountDESC | Rank the searching results according to how the result matches the expected searching patten, in descending order (from the same or most similar to less similar).

## Constructor & Destructor Documentation

## ◆ FullTextSearch()

foxit.fts.FullTextSearch.FullTextSearch | ( | FullTextSearch | other | ) |
| inline

Constructor, with another full text search object.

Parameters

  [in] | other | Another full text search object.

## Member Function Documentation

## ◆ IsEmpty()

bool foxit.fts.FullTextSearch.IsEmpty | ( |  | ) |
| inline

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
  true means current object is empty, while false means not.

## ◆ SearchOf()

bool foxit.fts.FullTextSearch.SearchOf | ( | string | match_string,
|  | FullTextSearch.RankMode | rank_mode,
|  | SearchCallback | callback
| ) |  |
| inline

Search for specified text among the indexed PDF files.

This function can be used to search among several PDF files, which have been indexed by function FullTextSearch.StartUpdateIndex or FullTextSearch.UpdateIndexWithFilePath . The searching result will be returned through callback function SearchCallback.RetrieveSearchResult , in specified ranking mode.

Parameters

  [in] | match_string | A string to be searched. It should not be an empty string and should be UTF-8 encoding.
  [in] | rank_mode | The ranking mode used for searching results. Please refer to values starting from foxit.fts.FullTextSearch.RankMode.e_RankNone and this should be one of these values.
  [in] | callback | A SearchCallback object. It should not be null. User should implement it and use it to retrieve the searching results.

Returns
  true means success, while false means failure.

## ◆ SetDataBasePath()

void foxit.fts.FullTextSearch.SetDataBasePath | ( | string | path_of_data_base | ) |
| inline

Set a file path as sqlite data base which is used for storing the indexed data.

This function is only useful before updating the index of PDF files for the first time by function FullTextSearch.StartUpdateIndex or FullTextSearch.UpdateIndexWithFilePath . Once the updating has been done, this function will be useless.
If this function has never called for current full text search object successfully, the default file for sqlite data would be named as "fts.db" and located with application file.

Parameters

  [in] | path_of_data_base | A file path to specify a file as sqlite data base. It should not be an empty string and should be UTF-8 encoding.

Returns
  None.

## ◆ StartUpdateIndex()

Progressive foxit.fts.FullTextSearch.StartUpdateIndex | ( | DocumentsSource | source,
|  | PauseCallback | pause,
|  | bool | reupdate
| ) |  |
| inline

Start to update the index of PDF files defined in a documents source object.

It may take a long time to do this updating, so Foxit PDF SDK uses a progressive process to do this.
Only PDF files under the specified directory (including sub-directory) defined in documents source can be indexed. The index of PDF files in the database that are not located in the specified directory (including sub-directory) defined in the document source will be deleted.

Parameters

  [in] | source | A documents source object, which defines a directory to be indexed.
  [in] | pause | Pause callback object which decides if the updating process needs to be paused. This can be null which means not to pause during the updating process. If this is not null, it should be a valid pause object implemented by user. Default value: null.
  [in] | reupdate | true means to re-update the existing index information in the database, and false means not to re-update the existing index information in the database. Default value: false.

Returns
  A progressive object. Please check the rate of current progress by function common.Progressive.GetRateOfProgress . If the rate is not 100 yet, call function common.Progressive.Continue to continue the progress until the progress is finished.

## ◆ UpdateIndexWithFilePath()

bool foxit.fts.FullTextSearch.UpdateIndexWithFilePath | ( | string | file_path | ) |
| inline

Update the index result of a specified PDF file.

This function can be used to update the index result of a single PDF file.

Parameters

  [in] | file_path | An existed PDF file path. It should not be an empty string and should be UTF-8 encoding.

Returns
  true means success, while false means failure.