libkazv
Kazv::Api::RedactEventJob Class Reference

Strips all non-integrity-critical information out of an event. More...

#include <redaction.hpp>

Inheritance diagram for Kazv::Api::RedactEventJob:
Collaboration diagram for Kazv::Api::RedactEventJob:

Classes

class  JobResponse
 

Public Member Functions

 RedactEventJob (std::string serverUrl, std::string _accessToken, std::string roomId, std::string eventId, std::string txnId, std::optional< std::string > reason=std::nullopt)
 Strips all non-integrity-critical information out of an event. More...
 
RedactEventJob withData (JsonWrap j) &&
 
RedactEventJob 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 ()
 
static BaseJob::Body buildBody (std::string roomId, std::string eventId, std::string txnId, std::optional< std::string > reason)
 
- 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

Strips all non-integrity-critical information out of an event.

Strips all information out of an event which isn't critical to the integrity of the server-side representation of the room.

This cannot be undone.

Any user with a power level greater than or equal to the m.room.redaction event power level may send redaction events in the room. If the user's power level greater is also greater than or equal to the redact power level of the room, the user may redact events sent by other users.

Server administrators may redact events sent by users on their server.

Constructor & Destructor Documentation

◆ RedactEventJob()

Kazv::Api::RedactEventJob::RedactEventJob ( std::string  serverUrl,
std::string  _accessToken,
std::string  roomId,
std::string  eventId,
std::string  txnId,
std::optional< std::string >  reason = std::nullopt 
)
explicit

Strips all non-integrity-critical information out of an event.

Parameters
roomIdThe room from which to redact the event.
eventIdThe ID of the event to redact
txnIdThe transaction ID for this event. Clients should generate a unique ID; it will be used by the server to ensure idempotency of requests.
reasonThe reason for the event being redacted.

Member Function Documentation

◆ buildBody()

BaseJob::Body Kazv::Api::RedactEventJob::buildBody ( std::string  roomId,
std::string  eventId,
std::string  txnId,
std::optional< std::string >  reason 
)
static

◆ buildQuery()

BaseJob::Query Kazv::Api::RedactEventJob::buildQuery ( )
static

◆ needsAuth()

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

◆ withData() [1/2]

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

◆ withData() [2/2]

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

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