ServerSentEvent Unicode C Reference Documentation
ServerSentEvent
Current Version: 11.0.0
Represents a server-sent event (SSE) received from an HTTP text/event-stream.
Create/Dispose
HCkServerSentEventW instance = CkServerSentEventW_Create(); // ... CkServerSentEventW_Dispose(instance);
Creates an instance of the HCkServerSentEventW object and returns a handle ("void *" pointer). The handle is passed in the 1st argument for the functions listed on this page.
Objects created by calling CkServerSentEventW_Create must be freed by calling this method. A memory leak occurs if a handle is not disposed by calling this function. Also, any handle returned by a Chilkat "C" function must also be freed by the application by calling the appropriate Dispose method, such as CkServerSentEventW_Dispose.
Properties
Data
const wchar_t *CkServerSentEventW_data(HCkServerSentEventW cHandle);
The data for the server-side event. (If the "data" field was empty, then this will be empty.)
topDebugLogFilePath
void CkServerSentEventW_putDebugLogFilePath(HCkServerSentEventW cHandle, const wchar_t *newVal);
const wchar_t *CkServerSentEventW_debugLogFilePath(HCkServerSentEventW cHandle);
If set to a file path, this property logs the LastErrorText of each Chilkat method or property call to the specified file. This logging helps identify the context and history of Chilkat calls leading up to any crash or hang, aiding in debugging.
Enabling the VerboseLogging property provides more detailed information. This property is mainly used for debugging rare instances where a Chilkat method call causes a hang or crash, which should generally not happen.
Possible causes of hangs include:
- A timeout property set to 0, indicating an infinite timeout.
- A hang occurring within an event callback in the application code.
- An internal bug in the Chilkat code causing the hang.
EventName
const wchar_t *CkServerSentEventW_eventName(HCkServerSentEventW cHandle);
The name of the server-side event. (If the "event" field was not present, then this will be empty.)
topLastErrorHtml
const wchar_t *CkServerSentEventW_lastErrorHtml(HCkServerSentEventW cHandle);
Provides HTML-formatted information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.
topLastErrorText
const wchar_t *CkServerSentEventW_lastErrorText(HCkServerSentEventW cHandle);
Provides plain text information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.
LastErrorXml
const wchar_t *CkServerSentEventW_lastErrorXml(HCkServerSentEventW cHandle);
Provides XML-formatted information about the last called method or property. If a method call fails or behaves unexpectedly, check this property for details. Note that information is available regardless of the method call's success.
topLastEventId
const wchar_t *CkServerSentEventW_lastEventId(HCkServerSentEventW cHandle);
The content of the "id" field, if present.
topLastMethodSuccess
void CkServerSentEventW_putLastMethodSuccess(HCkServerSentEventW cHandle, BOOL newVal);
Indicates the success or failure of the most recent method call: TRUE
means success, FALSE
means failure. This property remains unchanged by property setters or getters. This method is present to address challenges in checking for null or Nothing returns in certain programming languages.
Retry
The integer value of the "retry" field, if it exists; otherwise, 0.
topVerboseLogging
void CkServerSentEventW_putVerboseLogging(HCkServerSentEventW cHandle, BOOL newVal);
If set to TRUE
, then the contents of LastErrorText (or LastErrorXml, or LastErrorHtml) may contain more verbose information. The default value is FALSE
. Verbose logging should only be used for debugging. The potentially large quantity of logged information may adversely affect peformance.
Version
const wchar_t *CkServerSentEventW_version(HCkServerSentEventW cHandle);
Methods
LoadEvent
Loads the multi-line event text into this object. For example, the eventText for a Firebase event might look like this:
event: put data: {"path": "/c", "data": {"foo": true, "bar": false}}
Returns TRUE for success, FALSE for failure.