Class Library
Represents a Library of indexed PDFs that can be searched.
This class implements System.IDisposable.
Don't forget to use using
or class `System.IDisposable.Dispose() manually.
Inheritance
Implements
Namespace: PSPDFKit.Search
Assembly: PSPDFKit.dll
Syntax
public sealed class Library : IDisposable
Properties
LibraryName
The name of the library.
Declaration
public string LibraryName { get; }
Property Value
Type | Description |
---|---|
System.String |
SearchTimeout
The time span after which a search should time out. Any changes to this property only affect subsequent searches. Default is two minutes.
Declaration
public TimeSpan SearchTimeout { get; set; }
Property Value
Type | Description |
---|---|
System.TimeSpan |
Methods
CancelAllPreviewTextOperationsAsync()
Cancel all preview text search tasks.
Declaration
public IAsyncAction CancelAllPreviewTextOperationsAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
CancelAllTasksAsync()
Cancel all search tasks.
Declaration
public IAsyncAction CancelAllTasksAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
ClearAllIndexesAsync()
Clear all indices in this library.
Declaration
public IAsyncAction ClearAllIndexesAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
DeleteAllLibrariesAsync()
Deletes all current libraries. If libraries have not been disposed when this command is run a System.IO.FileLoadException will be thrown.
Declaration
public static IAsyncAction DeleteAllLibrariesAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
Dispose()
Implements System.IDisposable.Dispose().
Declaration
public void Dispose()
EnableOnPageIndexedEventsAsync(Boolean)
Sets if the event OnPageIndexed is raised. Default is false.
Declaration
public IAsyncAction EnableOnPageIndexedEventsAsync(bool enable)
Parameters
Type | Name | Description |
---|---|---|
System.Boolean | enable |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
EnqueueDocumentsFromProviderAsync(IList<IDataProvider>)
Queues a group of IDataProviders for indexing.
Note that these IDataProviders are not tracked internally.
Declaration
public IAsyncAction EnqueueDocumentsFromProviderAsync(IList<IDataProvider> providers)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IList<IDataProvider> | providers | The System.Collections.Generic.IList<T> of IDataProviders to be indexed. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
EnqueueDocumentsInFolderAsync(StorageFolder)
Queues a folder of documents for indexing. All files in the folder with the extension '.pdf' will be queued.
Declaration
public IAsyncAction EnqueueDocumentsInFolderAsync(StorageFolder folder)
Parameters
Type | Name | Description |
---|---|---|
Windows.Storage.StorageFolder | folder | The folder to query for matching documents. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
EnqueueDocumentsInFolderAsync(StorageFolder, QueryOptions)
Queues a folder of documents for indexing using Windows.Storage.StorageFiles.
Declaration
public IAsyncAction EnqueueDocumentsInFolderAsync(StorageFolder folder, QueryOptions options)
Parameters
Type | Name | Description |
---|---|---|
Windows.Storage.StorageFolder | folder | The folder to query for matching documents. |
Windows.Storage.Search.QueryOptions | options | The query identifying the documents in the folder. Note that Windows.Storage.Search.FolderDepth.Deep is not yet supported. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
GetIndexDocumentStatusAsync(String)
Returns indexing status for a document with passed Uid.
Declaration
public IAsyncOperation<LibraryIndexStatus> GetIndexDocumentStatusAsync(string uid)
Parameters
Type | Name | Description |
---|---|---|
System.String | uid | Uid of document. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<LibraryIndexStatus> | Index status of document. |
GetIndexedUidsAsync()
Returns a list of UIDs of documents currently indexed.
Declaration
public IAsyncOperation<IList<string>> GetIndexedUidsAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<System.Collections.Generic.IList<System.String>> | The list of document UIDs. |
IsIndexingAsync()
Indicates if the library is currently being indexed.
Declaration
public IAsyncOperation<bool> IsIndexingAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<System.Boolean> | True if the library is currently being indexed. |
OpenLibraryAsync(String)
Open a library with the provided name. If it doesn't yet exist it will be created.
Declaration
public static IAsyncOperation<Library> OpenLibraryAsync(string name)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the library. Only use names which are valid file names. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<Library> | The opened or created Library. Note that this must be disposed. |
OpenLibraryAsync(String, CreationCollisionOption)
Open a library with the provided name with the specified Windows.Storage.CreationCollisionOption.
Declaration
public static IAsyncOperation<Library> OpenLibraryAsync(string name, CreationCollisionOption option)
Parameters
Type | Name | Description |
---|---|---|
System.String | name | The name of the library. Only use names which are valid file names. |
Windows.Storage.CreationCollisionOption | option | Determines how to handle the collision if a library with the specified name already exists. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<Library> | The opened or created Library. Note that this must be disposed. |
RemoveDocumentAsync(String)
Removes the specified document from the index if is in it.
Declaration
public IAsyncAction RemoveDocumentAsync(string documentUid)
Parameters
Type | Name | Description |
---|---|---|
System.String | documentUid |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
RemoveDocumentsAsync(IList<String>)
Removes the specified documents from the index if they are in it.
Declaration
public IAsyncAction RemoveDocumentsAsync(IList<string> documentUids)
Parameters
Type | Name | Description |
---|---|---|
System.Collections.Generic.IList<System.String> | documentUids |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
SearchAsync(LibraryQuery)
Searches the index with the supplied LibraryQuery for matches. Collect the results with the handler OnSearchComplete
Declaration
public IAsyncOperation<bool> SearchAsync(LibraryQuery query)
Parameters
Type | Name | Description |
---|---|---|
LibraryQuery | query | The LibraryQuery defining the search criteria. |
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncOperation<System.Boolean> | True if it succeeded and False if it timed out. |
WaitForAllIndexingTasksToFinishAsync()
Wait until all queued index tasks are complete.
Declaration
public IAsyncAction WaitForAllIndexingTasksToFinishAsync()
Returns
Type | Description |
---|---|
Windows.Foundation.IAsyncAction |
Events
OnFinishedIndexingDocument
Invoked when a document finished indexing. The owning library, the UID of the document and if indexing was successful is passed. This handler is not called on the UI thread.
Declaration
public event TypedEventHandler<Library, LibraryIndexingSuccess> OnFinishedIndexingDocument
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, LibraryIndexingSuccess> |
OnPageIndexed
Invoked for each page indexed if EnableOnPageIndexedEvents() returns true. The owning library and the result is passed. This handler is not called on the UI thread.
Declaration
public event TypedEventHandler<Library, PageIndexed> OnPageIndexed
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, PageIndexed> |
OnPasswordRequested
Invoked when a document requires a password to be indexed. The owning library and PasswordRequest of the document is passed. To unlock the document set Password
Declaration
public event TypedEventHandler<Library, PasswordRequest> OnPasswordRequested
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, PasswordRequest> |
OnSearchComplete
Invoked once search completes with the map of search results. LibraryQueryResult
Declaration
public event TypedEventHandler<Library, IDictionary<string, LibraryQueryResult>> OnSearchComplete
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, System.Collections.Generic.IDictionary<System.String, LibraryQueryResult>> |
OnSearchPreviewComplete
Invoked once search completes with the list of search preview results. LibraryPreviewResult
Declaration
public event TypedEventHandler<Library, IList<LibraryPreviewResult>> OnSearchPreviewComplete
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, System.Collections.Generic.IList<LibraryPreviewResult>> |
OnSearchTimedOut
Invoked if a search timed out.
Declaration
public event TypedEventHandler<Library, LibraryQuery> OnSearchTimedOut
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, LibraryQuery> |
OnStartIndexingDocument
Invoked when a document starts indexing. The owning library and UID of the document is passed. This handler is not called on the UI thread.
Declaration
public event TypedEventHandler<Library, string> OnStartIndexingDocument
Event Type
Type | Description |
---|---|
Windows.Foundation.TypedEventHandler<Library, System.String> |