libkazv
Kazv::Api::SearchJob Class Reference

Perform a server-side search. More...

#include <search.hpp>

Inheritance diagram for Kazv::Api::SearchJob:
Collaboration diagram for Kazv::Api::SearchJob:

Classes

struct  Categories
 Describes which categories to search in and their criteria. More...
 
struct  EventContext
 Context for result, if requested. More...
 
struct  Group
 Configuration for group. More...
 
struct  Groupings
 Requests that the server partitions the result set based on the provided list of keys. More...
 
struct  GroupValue
 The results for a particular group value. More...
 
struct  IncludeEventContext
 Configures whether any context for the events returned are included in the response. More...
 
class  JobResponse
 
struct  Result
 The result object. More...
 
struct  ResultCategories
 Describes which categories to search in and their criteria. More...
 
struct  ResultRoomEvents
 Mapping of category name to search criteria. More...
 
struct  RoomEventsCriteria
 Mapping of category name to search criteria. More...
 
struct  UserProfile
 Performs a full text search across different categories. More...
 

Public Member Functions

 SearchJob (std::string serverUrl, std::string _accessToken, Categories searchCategories, std::optional< std::string > nextBatch=std::nullopt)
 Perform a server-side search. More...
 
SearchJob withData (JsonWrap j) &&
 
SearchJob withData (JsonWrap j) const &
 
- Public Member Functions inherited from Kazv::BaseJob
 BaseJob (std::string serverUrl, std::string requestUrl, Method method, std::string jobId, std::string token={}, ReturnType returnType=ReturnType::Json, Body body=EmptyBody{}, Query query={}, Header header={}, std::optional< FileDesc > responseFile=std::nullopt)
 
 ~BaseJob ()
 
bool shouldReturnJson () const
 
std::string url () const
 
Body requestBody () const
 
Header requestHeader () const
 
ReturnType returnType () const
 
Query requestQuery () const
 returns the non-encoded query as an array of pairs More...
 
Method requestMethod () const
 
Response genResponse (Response r) const
 
BaseJob withData (JsonWrap j) &&
 
BaseJob withData (JsonWrap j) const &
 
BaseJob withQueue (std::string id, JobQueuePolicy policy=AlwaysContinue) &&
 
BaseJob withQueue (std::string id, JobQueuePolicy policy=AlwaysContinue) const &
 
json dataJson (const std::string &key) const
 
std::string dataStr (const std::string &key) const
 
std::string jobId () const
 
std::optional< std::string > queueId () const
 
JobQueuePolicy queuePolicy () const
 
std::optional< FileDescresponseFile () const
 

Static Public Member Functions

static constexpr auto needsAuth ()
 
static BaseJob::Query buildQuery (std::optional< std::string > nextBatch)
 
static BaseJob::Body buildBody (Categories searchCategories, std::optional< std::string > nextBatch)
 
- Static Public Member Functions inherited from Kazv::BaseJob
static bool contentTypeMatches (immer::array< std::string > expected, std::string actual)
 

Additional Inherited Members

- Public Types inherited from Kazv::BaseJob
enum  ReturnType { Json , File }
 
using Method = std::variant< Get, Post, Put, Delete >
 
using Body = ::Kazv::Body
 
using BytesBody = ::Kazv::BytesBody
 
using JsonBody = ::Kazv::JsonBody
 
using EmptyBody = ::Kazv::EmptyBody
 
using Header = ::Kazv::Header
 
using Response = ::Kazv::Response
 
- Static Public Attributes inherited from Kazv::BaseJob
static Get GET {}
 
static Post POST {}
 
static Put PUT {}
 
static Delete DELETE {}
 
- Protected Member Functions inherited from Kazv::BaseJob
void attachData (JsonWrap data)
 

Detailed Description

Perform a server-side search.

Performs a full text search across different categories.

Constructor & Destructor Documentation

◆ SearchJob()

Kazv::Api::SearchJob::SearchJob ( std::string  serverUrl,
std::string  _accessToken,
Categories  searchCategories,
std::optional< std::string >  nextBatch = std::nullopt 
)
explicit

Perform a server-side search.

Parameters
searchCategoriesDescribes which categories to search in and their criteria.
nextBatchThe point to return events from. If given, this should be a next_batch result from a previous call to this endpoint.

Member Function Documentation

◆ buildBody()

BaseJob::Body Kazv::Api::SearchJob::buildBody ( Categories  searchCategories,
std::optional< std::string >  nextBatch 
)
static

◆ buildQuery()

BaseJob::Query Kazv::Api::SearchJob::buildQuery ( std::optional< std::string >  nextBatch)
static

◆ needsAuth()

static constexpr auto Kazv::Api::SearchJob::needsAuth ( )
inlinestaticconstexpr

◆ withData() [1/2]

SearchJob Kazv::Api::SearchJob::withData ( JsonWrap  j) &&

◆ withData() [2/2]

SearchJob Kazv::Api::SearchJob::withData ( JsonWrap  j) const &

The documentation for this class was generated from the following files: