1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/epoc32/include/SyncMLDef.h Tue Mar 16 16:12:26 2010 +0000
1.3 @@ -0,0 +1,200 @@
1.4 +/*
1.5 +* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
1.6 +* All rights reserved.
1.7 +* This component and the accompanying materials are made available
1.8 +* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
1.9 +* which accompanies this distribution, and is available
1.10 +* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
1.11 +*
1.12 +* Initial Contributors:
1.13 +* Nokia Corporation - initial contribution.
1.14 +*
1.15 +* Contributors:
1.16 +*
1.17 +* Description: Definition of Constants. This is part of remotemgmt_plat
1.18 +*
1.19 +*/
1.20 +///////////////////////////////////////////////////////////////////////////////
1.21 +// SyncMLDef.h
1.22 +//
1.23 +// v09
1.24 +//
1.25 +///////////////////////////////////////////////////////////////////////////////
1.26 +#ifndef __SYNCMLDEF_H__
1.27 +#define __SYNCMLDEF_H__
1.28 +
1.29 +#include <e32std.h>
1.30 +
1.31 +/**
1.32 + Maximum length of a transport property name.
1.33 +*/
1.34 +const TInt KSmlMaxTransportPropertyNameLen = 32;
1.35 +
1.36 +/** Profile ID typedef. */
1.37 +typedef TInt TSmlProfileId;
1.38 +/** Task ID typedef. */
1.39 +typedef TInt TSmlTaskId;
1.40 +/** Transport ID typedef. */
1.41 +typedef TInt TSmlTransportId;
1.42 +/** Connection ID typedef. */
1.43 +typedef TInt TSmlConnectionId;
1.44 +/** Data provider ID typedef. */
1.45 +typedef TInt TSmlDataProviderId;
1.46 +/** Profile creator ID typedef. */
1.47 +typedef TInt TSmlCreatorId;
1.48 +/** Job ID typedef. */
1.49 +typedef TInt TSmlJobId;
1.50 +
1.51 +/**
1.52 + Invalid (null) identifier.
1.53 +*/
1.54 +const TInt KSmlNullId = 0;
1.55 +
1.56 +/**
1.57 + Unused parameter from a session event
1.58 +*/
1.59 +const TInt32 KUnusedAdditionalData = -1;
1.60 +
1.61 +/**
1.62 + Setting for action to take as a result of a SyncML push message, (e.g. a server-alerted synchronisation request).
1.63 + Note that certain types of push message, (e.g. DevMan Bootstrap), will override this setting.
1.64 +*/
1.65 +enum TSmlServerAlertedAction
1.66 + {
1.67 + /** Allow the push message parser plugin to specify user interaction type. */
1.68 + ESmlUseSANRequestedSetting,
1.69 + /** Automatically run the synchronisation without user intervention. */
1.70 + ESmlEnableSync,
1.71 + /** Prevent the synchronisation. */
1.72 + ESmlDisableSync,
1.73 + /** Inform the user of the synchronisation. */
1.74 + ESmlInformSync,
1.75 + /** Get confirmation of the synchronisation from the user. */
1.76 + ESmlConfirmSync,
1.77 + /** Use the global user interaction type (only allowed for the profile setting) */
1.78 + ESmlUseGlobalSetting,
1.79 + };
1.80 +
1.81 +/**
1.82 + Flags for synchronisation types.
1.83 +*/
1.84 +enum TSmlSyncType
1.85 + {
1.86 + /** Two-way sync.
1.87 +
1.88 + A normal sync type in which the client and the server exchange information about modified data in these devices.
1.89 + The client sends the modifications first.
1.90 + */
1.91 + ESmlTwoWay,
1.92 + /** One-way sync from server.
1.93 +
1.94 + A sync type in which the client gets all modifications from the server, but the client does not send
1.95 + its modifications to the server. */
1.96 + ESmlOneWayFromServer,
1.97 + /** One-way sync from client.
1.98 +
1.99 + A sync type in which the client sends its modifications to the server, but the server does not send
1.100 + its modifications back to the client. */
1.101 + ESmlOneWayFromClient,
1.102 + /** Slow sync.
1.103 +
1.104 + A form of two-way sync in which the client sends all its data to the server, and the server does
1.105 + the sync analysis for this data and the data in the server. The server may undertake a field by field analysis. */
1.106 + ESmlSlowSync,
1.107 + /** Refresh sync from server.
1.108 +
1.109 + A sync type in which the client exports all its data to the server. The server replaces all data in
1.110 + the target database with the data sent by the client. */
1.111 + ESmlRefreshFromServer,
1.112 + /** Refresh sync from client.
1.113 +
1.114 + A sync type in which the client exports all its data to the server. The server replaces all data in
1.115 + the target database with the data sent by the client.*/
1.116 + ESmlRefreshFromClient,
1.117 + };
1.118 +
1.119 +/**
1.120 + Protocol types.
1.121 +*/
1.122 +enum TSmlUsageType
1.123 + {
1.124 + /** Data synchronisation. */
1.125 + ESmlDataSync,
1.126 + /** Device management. */
1.127 + ESmlDevMan,
1.128 + };
1.129 +
1.130 +
1.131 +/**
1.132 + Protocol versions.
1.133 +*/
1.134 +enum TSmlProtocolVersion
1.135 + {
1.136 + /** Version 1.1.2 */
1.137 + ESmlVersion1_1_2,
1.138 + /** Version 1.2 */
1.139 + ESmlVersion1_2,
1.140 + };
1.141 +
1.142 +
1.143 +/**
1.144 + Transport capabilities.
1.145 +*/
1.146 +enum TSmlTransportCap
1.147 + {
1.148 + /** Transport can listen for incoming connections. */
1.149 + ESmlCapCanListen,
1.150 + /** Transport can make outgoing connections. */
1.151 + ESmlCapCanConnect,
1.152 + };
1.153 +
1.154 +/**
1.155 + Flags specifying how background synchronisation results are displayed to the user.
1.156 +*/
1.157 +enum TSmlDisplayResult
1.158 + {
1.159 + /** Do not display results. */
1.160 + ESmlDisplayNoResults,
1.161 + /** Display all results. */
1.162 + ESmlDisplayAllResults,
1.163 + /** Display errors only. */
1.164 + ESmlDisplayErrorsOnly,
1.165 + };
1.166 +
1.167 +/**
1.168 + Flags specifying how background synchronisation progress is displayed to the user.
1.169 +*/
1.170 +enum TSmlDisplayProgress
1.171 + {
1.172 + /** Never display the progress notifier. */
1.173 + ESmlDisplayNoProgress,
1.174 + /** Display progress notifier if a job is in progress, but only if no clients are observing the progress. */
1.175 + ESmlDisplayUnObservedProgress,
1.176 + /** Always display the progress notifier when a job is in progress. */
1.177 + ESmlDisplayAllProgress,
1.178 + };
1.179 +
1.180 +/**
1.181 + Global settings supported by the RSyncMLSettings class.
1.182 + @see RSyncMLSettings
1.183 +*/
1.184 +enum TSmlGlobalSetting
1.185 + {
1.186 + /**
1.187 + Specifies how users are notified of synchronisations completing.
1.188 + Value is one of TSmlDisplayResult.
1.189 + */
1.190 + ESmlSettingDisplayBgResult,
1.191 + /**
1.192 + Specifies whether progress should be displayed in a notifier.
1.193 + Value is one of TSmlDisplayProgress.
1.194 + */
1.195 + ESmlSettingDisplayBgProgress,
1.196 + /**
1.197 + Specifies the default action to take in response to a server alert.
1.198 + Value is one of TSmlServerAlertedAction.
1.199 + */
1.200 + ESmlSettingDefaultSAAction,
1.201 + };
1.202 +
1.203 +#endif // __SYNCMLDEF_H__