libkazv
Kazv::Api::CheckUsernameAvailabilityJob Class Reference

Checks to see if a username is available on the server. More...

#include <registration.hpp>

Inheritance diagram for Kazv::Api::CheckUsernameAvailabilityJob:
Collaboration diagram for Kazv::Api::CheckUsernameAvailabilityJob:

Classes

class  JobResponse
 

Public Member Functions

 CheckUsernameAvailabilityJob (std::string serverUrl, std::string username)
 Checks to see if a username is available on the server. More...
 
CheckUsernameAvailabilityJob withData (JsonWrap j) &&
 
CheckUsernameAvailabilityJob 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::string username)
 
static BaseJob::Body buildBody (std::string username)
 
- 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

Checks to see if a username is available on the server.

Checks to see if a username is available, and valid, for the server.

The server should check to ensure that, at the time of the request, the username requested is available for use. This includes verifying that an application service has not claimed the username and that the username fits the server's desired requirements (for example, a server could dictate that it does not permit usernames with underscores).

Matrix clients may wish to use this API prior to attempting registration, however the clients must also be aware that using this API does not normally reserve the username. This can mean that the username becomes unavailable between checking its availability and attempting to register it.

Constructor & Destructor Documentation

◆ CheckUsernameAvailabilityJob()

Kazv::Api::CheckUsernameAvailabilityJob::CheckUsernameAvailabilityJob ( std::string  serverUrl,
std::string  username 
)
explicit

Checks to see if a username is available on the server.

Parameters
usernameThe username to check the availability of.

Member Function Documentation

◆ buildBody()

BaseJob::Body Kazv::Api::CheckUsernameAvailabilityJob::buildBody ( std::string  username)
static

◆ buildQuery()

BaseJob::Query Kazv::Api::CheckUsernameAvailabilityJob::buildQuery ( std::string  username)
static

◆ needsAuth()

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

◆ withData() [1/2]

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

◆ withData() [2/2]

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

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