calendarengines/caldav/inc/caldavenginemgr.h
author Maximilian Odendahl <maximilian.odendahl@sun.com>
Fri, 05 Feb 2010 10:16:42 +0100
changeset 1 4927282092b4
child 6 5a04f2ceabfe
permissions -rw-r--r--
Bug 208: inital CalDAV support for Symbian
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     1
/*
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     2
* Copyright (c) 2010 Sun Microsystems, Inc. and/or its subsidiary(-ies).
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     3
* All rights reserved.
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     8
*
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
     9
* Initial Contributor:
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    10
* Maximilian Odendahl
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    11
*
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    12
* Contributors:
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    13
* 
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    14
* Description: provides a manager to keep track of all available engines
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    15
*
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    16
*/
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    17
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    18
#ifndef CCALDAVENGINEMGR_H
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    19
#define CCALDAVENGINEMGR_H
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    20
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    21
// INCLUDES
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    22
#include <e32std.h>
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    23
#include <e32base.h>
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    24
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    25
#include <calprogresscallback.h>
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    26
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    27
class CCalDavEngine;
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    28
/**
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    29
 *  CCalDavEngineMgr
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    30
 * 
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    31
 */
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    32
class CCalDavEngineMgr : public CBase, MCalProgressCallBack
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    33
	{
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    34
public:
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    35
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    36
	~CCalDavEngineMgr();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    37
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    38
	static CCalDavEngineMgr* NewL();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    39
	static CCalDavEngineMgr* NewLC();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    40
	
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    41
	void Progress(TInt aPercentageCompleted);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    42
	void Completed(TInt aError);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    43
	TBool NotifyProgress();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    44
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    45
	TInt SyncL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    46
	TInt SyncAllL();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    47
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    48
	TInt EnableL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    49
	TInt DisableL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    50
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    51
	TBool EnabledSyncL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    52
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    53
	TPtrC8 UrlL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    54
	void SetUrlL(const TDesC &aCalendar, const TDesC8 &aUrl);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    55
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    56
	TPtrC8 UsernameL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    57
	void SetUsernameL(const TDesC &aCalendar, const TDesC8 &aUsername);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    58
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    59
	TPtrC8 PasswordL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    60
	void SetPasswordL(const TDesC &aCalendar, const TDesC8 &aPassword);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    61
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    62
	// TODO do also if enable was not called yet? if yes, create CalDavEngine and store settings
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    63
	TTimeIntervalMinutes SyncIntervalL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    64
	void SetSyncIntervalL(const TDesC &aCalendar,
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    65
			TTimeIntervalMinutes aSyncInterval);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    66
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    67
	TTimeIntervalDays PastDaysL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    68
	void SetPastDaysL(const TDesC &aCalendar, TTimeIntervalDays aDays);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    69
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    70
	TBool ImmediateSyncL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    71
	void SetImmediateSyncL(const TDesC &aCalendar, TBool aImmediateSyc);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    72
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    73
	TBool KeepServerEntryL(const TDesC &aCalendar);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    74
	void SetKeepServerEntryL(const TDesC &aCalendar, TBool aKeepServerEntry);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    75
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    76
private:
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    77
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    78
	CCalDavEngineMgr();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    79
	void ConstructL();
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    80
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    81
	TInt FindEngineL(const TDesC &aName, TBool aCreate = EFalse);
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    82
	RPointerArray<CCalDavEngine> iEngines;
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    83
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    84
	};
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    85
4927282092b4 Bug 208: inital CalDAV support for Symbian
Maximilian Odendahl <maximilian.odendahl@sun.com>
parents:
diff changeset
    86
#endif // CCALDAVENGINEMGR_H