InfiniSQL  v0.1.2-alpha
Massive Scale Transaction Processing
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MessageUserSchema Class Reference

Message variant for UserSchemaMgr activities. More...

#include <Message.h>

Inheritance diagram for MessageUserSchema:
Collaboration diagram for MessageUserSchema:

Classes

struct  userschema_s
 MessageUserSchema POD (serializable by memcpy) data members. More...
 

Public Member Functions

 MessageUserSchema ()
 
 MessageUserSchema (topic_e topicarg)
 Message variant for UserSchemaMgr activities. More...
 
virtual ~MessageUserSchema ()
 
size_t size ()
 get Message size More...
 
string * ser ()
 create string with serialized message More...
 
void package (class SerializedMessage &serobj)
 serialize this More...
 
void unpack (SerializedMessage &serobj)
 deserialize into this More...
 
void clear ()
 clear contents of this More...
 
- Public Member Functions inherited from Message
 Message ()
 
virtual ~Message ()
 
size_t size ()
 get Message size More...
 
std::string * ser ()
 create string with serialized message More...
 
void package (class SerializedMessage &serobj)
 serialize this More...
 
void unpack (SerializedMessage &serobj)
 deserialize into this More...
 
void clear ()
 clear contents of this More...
 
string * sermsg ()
 return serialized Message variant string More...
 
void setEnvelope (const Topology::addressStruct &source, const Topology::addressStruct &dest, class Message &msg)
 put addresses in Message variant envelope More...
 

Public Attributes

userschema_s userschemaStruct
 
procedures_s procs
 
std::string argstring
 
std::string pathname
 
std::string procname
 
std::string username
 
std::string domainname
 
std::string password
 
- Public Attributes inherited from Message
__int128 nextmsg
 
message_s messageStruct
 

Additional Inherited Members

- Static Public Member Functions inherited from Message
static class Messagedes (string *serstr)
 deserialize entire message More...
 

Detailed Description

Message variant for UserSchemaMgr activities.

Returns

Definition at line 233 of file Message.h.

Constructor & Destructor Documentation

MessageUserSchema::MessageUserSchema ( )

Definition at line 258 of file Message.cc.

259 {
260 }
MessageUserSchema::MessageUserSchema ( topic_e  topicarg)

Message variant for UserSchemaMgr activities.

Parameters
topicargtopic
Returns

Definition at line 262 of file Message.cc.

References Message::messageStruct, Message::message_s::payloadtype, PAYLOADUSERSCHEMA, and Message::message_s::topic.

262  :
263  procs()
264 {
265  messageStruct.topic = topicarg;
267 }
MessageUserSchema::~MessageUserSchema ( )
virtual

Definition at line 269 of file Message.cc.

270 {
271 }

Member Function Documentation

void MessageUserSchema::clear ( )

clear contents of this

Definition at line 324 of file Message.cc.

References Message::clear(), domainname, password, pathname, procname, procs, username, and userschemaStruct.

325 {
326  Message::clear();
327  userschemaStruct={};
328  procs={};
329  pathname.clear();
330  procname.clear();
331  username.clear();
332  domainname.clear();
333  password.clear();
334 }

Here is the call graph for this function:

void MessageUserSchema::package ( class SerializedMessage serobj)

serialize this

Parameters
serobjSerializedMessage

Definition at line 298 of file Message.cc.

References argstring, domainname, Message::package(), password, pathname, procname, procs, SerializedMessage::ser(), username, and userschemaStruct.

Referenced by ser().

299 {
300  Message::package(serobj);
301  serobj.ser(userschemaStruct);
302  serobj.ser(procs);
303  serobj.ser(argstring);
304  serobj.ser(pathname);
305  serobj.ser(procname);
306  serobj.ser(username);
307  serobj.ser(domainname);
308  serobj.ser(password);
309 }

Here is the call graph for this function:

Here is the caller graph for this function:

string * MessageUserSchema::ser ( )

create string with serialized message

Returns
serialized message string

Definition at line 286 of file Message.cc.

References SerializedMessage::data, SerializedMessage::getpayloadtype(), logfile, package(), and SerializedMessage::pos.

287 {
288  class SerializedMessage serobj(size());
289  package(serobj);
290  if (serobj.data->size() != serobj.pos)
291  {
292  fprintf(logfile, "%s %i ser %i size %lu pos %lu\n", __FILE__, __LINE__,
293  serobj.getpayloadtype(), serobj.data->size(), serobj.pos);
294  }
295  return serobj.data;
296 }

Here is the call graph for this function:

size_t MessageUserSchema::size ( )
void MessageUserSchema::unpack ( SerializedMessage serobj)

deserialize into this

Parameters
serobjSerializedMessage

Definition at line 311 of file Message.cc.

References argstring, SerializedMessage::des(), domainname, password, pathname, procname, procs, Message::unpack(), username, and userschemaStruct.

Referenced by Message::des().

312 {
313  Message::unpack(serobj);
314  serobj.des(userschemaStruct);
315  serobj.des(procs);
316  serobj.des(argstring);
317  serobj.des(pathname);
318  serobj.des(procname);
319  serobj.des(username);
320  serobj.des(domainname);
321  serobj.des(password);
322 }

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

std::string MessageUserSchema::domainname
std::string MessageUserSchema::password

Definition at line 311 of file Message.h.

Referenced by clear(), Pg::cont(), UserSchemaMgr::operationHandler(), package(), size(), and unpack().

std::string MessageUserSchema::pathname

Definition at line 307 of file Message.h.

Referenced by clear(), TransactionAgent::newprocedure(), package(), size(), and unpack().

std::string MessageUserSchema::procname
procedures_s MessageUserSchema::procs

Definition at line 305 of file Message.h.

Referenced by clear(), TransactionAgent::newprocedure(), package(), size(), and unpack().

std::string MessageUserSchema::username

Definition at line 309 of file Message.h.

Referenced by clear(), Pg::cont(), UserSchemaMgr::operationHandler(), package(), size(), and unpack().


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