Skip to main content

AirLibrary/Client/AirServiceProvider/
SearchFiles.rs

1//! `AirServiceProvider::SearchFiles` - query Air's full-text index.
2//! Wraps [`crate::Client::AirClient::AirClient::SearchFiles`].
3
4use crate::{
5	AirError,
6	Client::{AirClient::FileResult, AirServiceProvider::AirServiceProvider},
7	dev_log,
8};
9
10impl AirServiceProvider {
11	/// Searches for `query` under `path`. `max_results` of `0` is
12	/// unlimited.
13	pub async fn SearchFiles(
14		&self,
15
16		query:String,
17
18		path:String,
19
20		max_results:u32,
21	) -> Result<Vec<FileResult::Struct>, AirError> {
22		let RequestID = crate::Utility::GenerateRequestId();
23
24		dev_log!(
25			"grpc",
26			"[AirServiceProvider] SearchFiles (request_id: {}, query: {})",
27			RequestID,
28			query
29		);
30
31		self.client.SearchFiles(RequestID, query, path, max_results).await
32	}
33}