lintel 0.2.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
lintel::JsonSerializable Class Referenceabstract

#include <JsonSerializable.h>

Inheritance diagram for lintel::JsonSerializable:
lintel::GroupDto lintel::GroupsDto lintel::HistoryDto lintel::HistoryDtos lintel::MessageQueueDto lintel::MessageQueueDtos lintel::MessageQueuesPageDto lintel::ProcessGroupDto lintel::ProcessGroupsDto lintel::ProcessInfoDto lintel::ProcessInfosDto lintel::PropertiesDto lintel::PropertyDataDao lintel::PropertyDto lintel::PropertyValueDto lintel::SharedMemoryRepositoriesDto lintel::SharedMemoryRepository lintel::SharedMemoryRepositoryDto lintel::SharedMemorySegmentDto lintel::SharedMemorySegmentsDto lintel::UserDto lintel::UserGroupDto lintel::UserLoginDto lintel::UserNameDto lintel::UserNamesDto lintel::UserPasswordChangeDto lintel::UserSessionDto lintel::UserSessionsDto lintel::UserTokenDto lintel::UsersDto lintel::UsersPageDto

Public Member Functions

 JsonSerializable ()=default
 
virtual ~JsonSerializable ()=default
 
virtual bool deserialize (const rapidjson::Value &obj)
 
virtual void serialize (rapidjson::Writer< rapidjson::StringBuffer > *writer) const =0
 
virtual std::string serialize () const
 
virtual void deserialize (const std::string &json)
 

Detailed Description

Class for serialization and deserialization of Json Types

Constructor & Destructor Documentation

◆ JsonSerializable()

lintel::JsonSerializable::JsonSerializable ( )
default

Default constructor

◆ ~JsonSerializable()

virtual lintel::JsonSerializable::~JsonSerializable ( )
virtualdefault

Virtual destructor

Member Function Documentation

◆ deserialize() [1/2]

virtual bool lintel::JsonSerializable::deserialize ( const rapidjson::Value &  obj)
inlinevirtual

◆ deserialize() [2/2]

virtual void lintel::JsonSerializable::deserialize ( const std::string &  json)
inlinevirtual

Deserializes the object from a JSON string.

Parameters
jsonJSON string to deserialize

Reimplemented in lintel::HistoryDtos, lintel::MessageQueueDtos, lintel::MessageQueuesPageDto, lintel::ProcessGroupsDto, lintel::SharedMemoryRepositoriesDto, lintel::SharedMemorySegmentsDto, and lintel::PropertiesDto.

◆ serialize() [1/2]

virtual std::string lintel::JsonSerializable::serialize ( ) const
inlinevirtual

helper function to serialize json directly to string without the knowledge of rapidjson itself.

Returns
serialized string of object itself.

◆ serialize() [2/2]

virtual void lintel::JsonSerializable::serialize ( rapidjson::Writer< rapidjson::StringBuffer > *  writer) const
pure virtual

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