22 #ifndef _SML_SESSION_H_
23 #define _SML_SESSION_H_
25 typedef enum SmlSessionType {
26 SML_SESSION_TYPE_SERVER,
27 SML_SESSION_TYPE_CLIENT
30 typedef enum SmlSessionEventType {
31 SML_SESSION_EVENT_ERROR,
32 SML_SESSION_EVENT_COMMAND_START,
33 SML_SESSION_EVENT_CHILD_COMMAND,
34 SML_SESSION_EVENT_HEADER_REPLY,
35 SML_SESSION_EVENT_FINAL,
36 SML_SESSION_EVENT_END,
37 SML_SESSION_EVENT_FLUSH,
38 SML_SESSION_EVENT_COMMAND_END,
39 SML_SESSION_EVENT_RESPONSE_URI,
40 SML_SESSION_EVENT_ESTABLISHED,
41 } SmlSessionEventType;
50 void smlSessionSetEventCallback(
SmlSession *session, SmlSessionEventCallback callback,
void *userdata);
51 void smlSessionSetDataCallback(
SmlSession *session, SmlSessionDataCallback callback,
void *userdata);
56 void smlSessionUseStringTable(
SmlSession *session, SmlBool useStringtable);
57 void smlSessionUseOnlyReplace(
SmlSession *session, SmlBool onlyReplace);
58 void smlSessionUseNumberOfChanges(
SmlSession *session, SmlBool support);
59 void smlSessionUseLargeObjects(
SmlSession *session, SmlBool support);
61 void smlSessionSetRemoteMaxMsgSize(
SmlSession *session,
unsigned int size);
62 void smlSessionSetLocalMaxMsgSize(
SmlSession *session,
unsigned int size);
63 unsigned int smlSessionGetRemoteMaxMsgSize(
SmlSession *session);
64 unsigned int smlSessionGetLocalMaxMsgSize(
SmlSession *session);
68 unsigned int smlSessionGetLocalMaxObjSize(
SmlSession *session);
71 const char *smlSessionGetSessionID(
SmlSession *session);
72 void smlSessionSetSessionID(
SmlSession *session,
const char *sessionID);
73 SmlProtocolVersion smlSessionGetVersion(
SmlSession *session);
96 void smlSessionSetSendingLimit(
SmlSession *session,
unsigned int limit) LIBSYNCML_DEPRECATED;
97 void smlSessionSetReceivingLimit(
SmlSession *session,
unsigned int limit) LIBSYNCML_DEPRECATED;
98 unsigned int smlSessionGetSendingLimit(
SmlSession *session) LIBSYNCML_DEPRECATED;
101 void smlSessionSetSendingMaxMsgSize(
SmlSession *session,
unsigned int size) LIBSYNCML_DEPRECATED;
102 void smlSessionSetReceivingMaxMsgSize(
SmlSession *session,
unsigned int size) LIBSYNCML_DEPRECATED;
103 unsigned int smlSessionGetSendingMaxMsgSize(
SmlSession *session) LIBSYNCML_DEPRECATED;
106 void smlSessionSetSendingMaxObjSize(
SmlSession *session,
int limit) LIBSYNCML_DEPRECATED;
107 void smlSessionSetRequestedMaxObjSize(
SmlSession *session,
int limit) LIBSYNCML_DEPRECATED;
108 int smlSessionGetSendingMaxObjSize(
SmlSession *session) LIBSYNCML_DEPRECATED;
109 void smlSessionSetReceivingMaxObjSize(
SmlSession *session,
unsigned int limit) LIBSYNCML_DEPRECATED;
110 unsigned int smlSessionGetReceivingMaxObjSize(
SmlSession *session) LIBSYNCML_DEPRECATED;
112 #endif //_SML_SESSION_H_
SmlBool smlSessionSendReply(SmlSession *session, SmlStatus *status, SmlError **error)
Sends a reply to a command.
void smlSessionSetLocalMaxObjSize(SmlSession *session, unsigned int limit)
SmlBool smlSessionFlush(SmlSession *session, SmlBool final, SmlError **error)
Flushes a session.
SmlBool smlSessionEndCommand(SmlSession *session, SmlCommand *parent, SmlError **error)
ends a command
unsigned int smlSessionGetRemoteMaxObjSize(SmlSession *session)
void smlSessionSetRemoteMaxObjSize(SmlSession *session, unsigned int limit)
SmlBool smlSessionEnd(SmlSession *session, SmlError **error)
Ends the session.
SmlBool smlSessionSendCommand(SmlSession *session, SmlCommand *cmd, SmlCommand *parent, SmlStatusReplyCb callback, void *userdata, SmlError **error)
Sends a command with a parent.
SmlBool smlSessionStartCommand(SmlSession *session, SmlCommand *cmd, SmlCommand *parent, SmlStatusReplyCb callback, void *userdata, SmlError **error)
starts a command with a parent
SmlSession * smlSessionNew(SmlSessionType sessionType, SmlMimeType mimetype, SmlProtocolVersion version, SmlProtocolType protocol, SmlLocation *target, SmlLocation *source, const char *sessionID, unsigned int messageID, SmlError **error)
Creates a new session.