2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
14 * Description: Definition of Constants. This is part of remotemgmt_plat
17 ///////////////////////////////////////////////////////////////////////////////
22 ///////////////////////////////////////////////////////////////////////////////
23 #ifndef __SYNCMLDEF_H__
24 #define __SYNCMLDEF_H__
29 Maximum length of a transport property name.
31 const TInt KSmlMaxTransportPropertyNameLen = 32;
33 /** Profile ID typedef. */
34 typedef TInt TSmlProfileId;
35 /** Task ID typedef. */
36 typedef TInt TSmlTaskId;
37 /** Transport ID typedef. */
38 typedef TInt TSmlTransportId;
39 /** Connection ID typedef. */
40 typedef TInt TSmlConnectionId;
41 /** Data provider ID typedef. */
42 typedef TInt TSmlDataProviderId;
43 /** Profile creator ID typedef. */
44 typedef TInt TSmlCreatorId;
45 /** Job ID typedef. */
46 typedef TInt TSmlJobId;
49 Invalid (null) identifier.
51 const TInt KSmlNullId = 0;
54 Unused parameter from a session event
56 const TInt32 KUnusedAdditionalData = -1;
59 Setting for action to take as a result of a SyncML push message, (e.g. a server-alerted synchronisation request).
60 Note that certain types of push message, (e.g. DevMan Bootstrap), will override this setting.
62 enum TSmlServerAlertedAction
64 /** Allow the push message parser plugin to specify user interaction type. */
65 ESmlUseSANRequestedSetting,
66 /** Automatically run the synchronisation without user intervention. */
68 /** Prevent the synchronisation. */
70 /** Inform the user of the synchronisation. */
72 /** Get confirmation of the synchronisation from the user. */
74 /** Use the global user interaction type (only allowed for the profile setting) */
79 Flags for synchronisation types.
85 A normal sync type in which the client and the server exchange information about modified data in these devices.
86 The client sends the modifications first.
89 /** One-way sync from server.
91 A sync type in which the client gets all modifications from the server, but the client does not send
92 its modifications to the server. */
94 /** One-way sync from client.
96 A sync type in which the client sends its modifications to the server, but the server does not send
97 its modifications back to the client. */
101 A form of two-way sync in which the client sends all its data to the server, and the server does
102 the sync analysis for this data and the data in the server. The server may undertake a field by field analysis. */
104 /** Refresh sync from server.
106 A sync type in which the client exports all its data to the server. The server replaces all data in
107 the target database with the data sent by the client. */
108 ESmlRefreshFromServer,
109 /** Refresh sync from client.
111 A sync type in which the client exports all its data to the server. The server replaces all data in
112 the target database with the data sent by the client.*/
113 ESmlRefreshFromClient,
121 /** Data synchronisation. */
123 /** Device management. */
131 enum TSmlProtocolVersion
141 Transport capabilities.
143 enum TSmlTransportCap
145 /** Transport can listen for incoming connections. */
147 /** Transport can make outgoing connections. */
152 Flags specifying how background synchronisation results are displayed to the user.
154 enum TSmlDisplayResult
156 /** Do not display results. */
157 ESmlDisplayNoResults,
158 /** Display all results. */
159 ESmlDisplayAllResults,
160 /** Display errors only. */
161 ESmlDisplayErrorsOnly,
165 Flags specifying how background synchronisation progress is displayed to the user.
167 enum TSmlDisplayProgress
169 /** Never display the progress notifier. */
170 ESmlDisplayNoProgress,
171 /** Display progress notifier if a job is in progress, but only if no clients are observing the progress. */
172 ESmlDisplayUnObservedProgress,
173 /** Always display the progress notifier when a job is in progress. */
174 ESmlDisplayAllProgress,
178 Global settings supported by the RSyncMLSettings class.
181 enum TSmlGlobalSetting
184 Specifies how users are notified of synchronisations completing.
185 Value is one of TSmlDisplayResult.
187 ESmlSettingDisplayBgResult,
189 Specifies whether progress should be displayed in a notifier.
190 Value is one of TSmlDisplayProgress.
192 ESmlSettingDisplayBgProgress,
194 Specifies the default action to take in response to a server alert.
195 Value is one of TSmlServerAlertedAction.
197 ESmlSettingDefaultSAAction,
200 #endif // __SYNCMLDEF_H__