epoc32/include/SyncMLDef.h
branchSymbian2
changeset 2 2fe1408b6811
child 4 837f303aceeb
     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__