C12Adapter Opensource C++ Interface
|
Activity monitor object based on a TCP socket. More...
Public Member Functions | |
MMonitorSocket (const MStdString &clientAddress=MVariant::s_emptyString) | |
Constructor that creates a monitor with a socket with the specified host parameter, but which is not connected. More... | |
virtual | ~MMonitorSocket () |
Object destructor. | |
bool | IsSocketOpen () const |
Whether the monitor is currently open and connected to MMonitorSocket object. More... | |
bool | IsAddressLocal () const |
Checks whether the monitor host is a local address or not. | |
virtual void | Attach (const MStdString &mediaIdentification) |
Tell that the application is starting a sequence of events that it would like to monitor, attach by attempting to open the socket. | |
const MStdString & | GetClientAddress () const |
void | SetClientAddress (const MStdString &address) |
![]() | |
MMonitorFile (const MStdString &fileName=MVariant::s_emptyString) | |
Constructor that creates a monitor with the given file name, or without file name, in which case no monitoring will be done. More... | |
virtual | ~MMonitorFile () |
Object destructor. More... | |
virtual void | Detach () |
Detach from the monitor by attempting to close the file, if it was open previously. More... | |
void | DeleteFile () |
Delete the file, if it was previously created. More... | |
virtual void | OnMessage (MessageType code, const char *message, int length) |
Send text message with the specified code. More... | |
virtual void | OnPageBoundHit () |
What to do when the new page is about to be written. More... | |
const MStdString & | GetFileName () const |
void | SetFileName (const MStdString &name) |
unsigned | GetMaxFileSizeKB () const |
void | SetMaxFileSizeKB (unsigned size) |
bool | GetObfuscate () const |
void | SetObfuscate (bool yes) |
![]() | |
MMonitor () | |
Object constructor. | |
virtual | ~MMonitor () |
Object destructor. | |
bool | IsListening () const |
Whether the monitor is interested in any events. | |
virtual void | Write (const MStdString &str) |
Write the user message to the monitor. More... | |
virtual void | OnConnect () |
Notify that the channel has just connected. | |
virtual void | OnDisconnect () |
Notify that the channel is disconnected. | |
virtual void | OnDataLinkLayerSuccess () |
Notifies that the data link layer operation succeeded. More... | |
virtual void | OnDataLinkLayerInformation (const MStdString &msg) |
Notifies about any neutral or positive information during the data link layer operations. More... | |
virtual void | OnDataLinkLayerRetry (const MStdString &reason) |
Notifies that the last data link layer operation failed and will be repeated. More... | |
virtual void | OnDataLinkLayerFail (const MStdString &msg) |
Notifies that the last data link layer operation failed and no other action will be performed. More... | |
virtual void | OnApplicationLayerRetry (const MStdString &reason) |
Notifies that the last application layer operation failed and will be repeated. More... | |
virtual void | OnApplicationLayerFail (const MStdString &service) |
Notifies that the last application layer operation failed and no other action will be performed. More... | |
virtual void | OnApplicationLayerStart (const MStdString &service) |
Notifies that the application layer operation started. More... | |
virtual void | OnApplicationLayerSuccess (const MStdString &service) |
Notifies that the last application layer operation succeeded. More... | |
virtual void | OnEnterUninterruptibleCommunication () |
Notifies that the uninterruptible communication sequence is entered. More... | |
virtual void | OnLeaveUninterruptibleCommunication () |
Notifies that the uninterruptible communication sequence is left. More... | |
virtual void | OnByteRX (const char *data, int length) |
void | OnBytesReceived (const MByteString &data) |
virtual void | OnByteTX (const char *data, int length) |
void | OnBytesSent (const MByteString &data) |
MObject * | GetClient () const |
void | SetClient (MObject *client) |
![]() | |
virtual | ~MObject () |
Object destructor. | |
virtual const MClass * | GetClass () const =0 |
Get the final class of the object. More... | |
virtual unsigned | GetEmbeddedSizeof () const |
For embedded object types, return the size of the class. More... | |
bool | IsEmbeddedObject () const |
Tell if the object is of embedded kind. More... | |
SHOW_INTERNAL MVariant | Call (const MStdString &name, const MVariant ¶ms) |
Call the object service with parameters, given as variant. More... | |
MVariant | Call0 (const MStdString &name) |
Call the object service with no parameters. More... | |
MVariant | Call1 (const MStdString &name, const MVariant &p1) |
Call the object service with one parameter. More... | |
MVariant | Call2 (const MStdString &name, const MVariant &p1, const MVariant &p2) |
Call the object service with two parameter. More... | |
MVariant | Call3 (const MStdString &name, const MVariant &p1, const MVariant &p2, const MVariant &p3) |
Call the object service with three parameter. More... | |
MVariant | Call4 (const MStdString &name, const MVariant &p1, const MVariant &p2, const MVariant &p3, const MVariant &p4) |
Call the object service with four parameter. More... | |
MVariant | Call5 (const MStdString &name, const MVariant &p1, const MVariant &p2, const MVariant &p3, const MVariant &p4, const MVariant &p5) |
Call the object service with five parameter. More... | |
MVariant | Call6 (const MStdString &name, const MVariant &p1, const MVariant &p2, const MVariant &p3, const MVariant &p4, const MVariant &p5, const MVariant &p6) |
Call the object service with six parameter. More... | |
virtual MVariant | CallV (const MStdString &name, const MVariant::VariantVector ¶ms) |
Call the object service with parameters, given as variant vector. More... | |
virtual bool | IsPropertyPresent (const MStdString &name) const |
Tell if the property with the given name exists. | |
virtual bool | IsServicePresent (const MStdString &name) const |
Tell if the service with the given name exists. | |
virtual MVariant | GetProperty (const MStdString &name) const |
Get the property value using name of the property. More... | |
virtual void | SetProperty (const MStdString &name, const MVariant &value) |
Set the property using name of the property, and value. More... | |
virtual MStdStringVector | GetAllPropertyNames () const |
Return the list of publicly available properties, persistent or not. More... | |
virtual MStdStringVector | GetAllPersistentPropertyNames () const |
Return the list of persistent properties. More... | |
virtual void | SetPersistentPropertiesToDefault () |
Set the persistent properties of the object to their default values. More... | |
virtual MVariant | GetPersistentPropertyDefaultValue (const MStdString &name) const |
Get the default value of persistent property with the name given. More... | |
virtual void | SetPersistentPropertyToDefault (const MStdString &name) |
Set the persistent property with the name given to default value. More... | |
virtual const char * | GetType () const |
Get the name of the type for the object (could be the same as class name). | |
virtual void | SetType (const MStdString &) |
Intentionally, it will set the name of the type for the object, but the service will not allow setting the name to anything other than the current name. More... | |
virtual void | Validate () |
Validate internal structures of the object. More... | |
Additional Inherited Members | |
![]() | |
enum | MessageType { MessageChannelAttach = 0x20, MessageChannelConnect = 0x21, MessageChannelDisconnect = 0x22, MessageChannelByteRx = 0x23, MessageChannelByteTx = 0x24, MessageProtocolLinkLayerInformation = 0x35, MessageProtocolLinkLayerRetry = 0x37, MessageProtocolLinkLayerFail = 0x39, MessageProtocolApplicationLayerStart = 0x3B, MessageProtocolApplicationLayerRetry = 0x3D, MessageProtocolApplicationLayerSuccess = 0x3F, MessageProtocolApplicationLayerFail = 0x41, MessageProtocolSynchronize = 0x43, MessageUser = 0x60 } |
Enumeration that defines supported monitor messages, and whether the parameters are expected. More... | |
![]() | |
static const MClass * | GetStaticClass () |
Get the declared class of this particular object. More... | |
static bool | IsClassPresent (const MStdString &name) |
Tells if the given class name is available. More... | |
![]() | |
SHOW_INTERNAL typedef SharedPointer | Pointer |
Pointer type that clients should use to access to monitor. | |
![]() | |
static const MClass | s_class |
Class of MObject. | |
![]() | |
void | DoFileDetach () |
This service finalizes and detaches the file, if it was set up previously. More... | |
void | DoFinish () |
This service shall be called from every destructor of the child class. More... | |
virtual unsigned | DoSendBackgroundBuffer (const MByteString &backgroundThreadBuffer) |
Send the buffer to the monitor entity on the background. More... | |
void | OnIdle () |
Background worker thread callable function which implements monitor communication. More... | |
void | PostSyncMessage () |
Places the synchronization message to message queue. More... | |
![]() | |
void | OnMessageWithText (MessageType code, const MStdString &text) |
Send text message with the specified code. More... | |
![]() | |
MObject () | |
Object constructor, protected as the class is abstract. | |
void | DoSetPersistentPropertiesToDefault (const MClass *staticClass) |
Set the persistent properties to their default values for one object provided the class for that object. More... | |
Activity monitor object based on a TCP socket.
Sharing of monitors among simultaneously communicating channels can produce obscure output or lead to synchronization errors, therefore, each channel should have its own monitor object. The monitor is registered with the client channel object using the service MChannel::SetMonitor.
Note that when M_NO_MCOM_MONITOR_SHARED_POINTER=0 the monitor object should be created on a heap with operator new, and handled through the pointer type MMonitor::Pointer. The deletion of such object will be done through the stared pointer. When M_NO_MCOM_MONITOR_SHARED_POINTER=1 the user will be responsible for deletion of the object, however the monitor object should outlive the channel that it monitors.
MMonitorSocket::MMonitorSocket | ( | const MStdString & | clientAddress = MVariant::s_emptyString | ) |
Constructor that creates a monitor with a socket with the specified host parameter, but which is not connected.
The parameter should denote a valid computer IP address or name. If the parameter is empty, the socket address is determined from configuration.
|
inline |
Client IP address or host name.
bool MMonitorSocket::IsSocketOpen | ( | ) | const |
Whether the monitor is currently open and connected to MMonitorSocket object.
Also please see IsFileOpen of the parent class that tells if the file open for logging.
void MMonitorSocket::SetClientAddress | ( | const MStdString & | address | ) |
Client IP address or host name.