pimappservices/calendar/client/src/caluser.cpp
changeset 0 f979ecb2b13e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pimappservices/calendar/client/src/caluser.cpp	Tue Feb 02 10:12:19 2010 +0200
@@ -0,0 +1,316 @@
+// Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+
+#include "caluserimpl.h"
+
+/** Constructor.
+@internalComponent
+*/
+CCalUser::CCalUser(CCalUserImpl* aImpl)
+	: iImpl(aImpl)
+	{
+	}
+
+/** Constructor.
+All variables are implicitly set to default values due to CBase derivation.
+iRole set to TCalRole::EReqParticipant.
+iStatus set to TCalStatus::ENeedsAction.
+The default value must be at index position 0 of the enum.
+@internalComponent
+*/
+CCalUser::CCalUser()
+	{
+	}
+
+/** Destructor.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalUser::~CCalUser()
+	{
+	delete iImpl;
+	}
+
+/** Allocates and constructs a new user with the specified email address.
+
+@param aAddress The address of the user.
+@return The newly constructed object.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalUser* CCalUser::NewL(const TDesC& aAddress)
+	{
+	CCalUser* self = new (ELeave) CCalUser();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAddress);
+	CleanupStack::Pop(self);
+	return self;
+	}
+
+/** Allocates and constructs a new user with the specified email address and sender.
+
+@param aAddress The address of the user.
+@param aSentBy The sender.
+@return The newly constructed object.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalUser* CCalUser::NewL(const TDesC& aAddress, const TDesC& aSentBy)
+	{
+	CCalUser* self = new (ELeave) CCalUser();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAddress, aSentBy);
+	CleanupStack::Pop(self);
+	return self;
+	}
+// Takes ownership of the implementation class
+CCalUser* CCalUser::NewL(CCalUserImpl* aImpl)
+	{
+	CCalUser* self = new (ELeave) CCalUser(aImpl);
+	return self;
+	}
+
+/** Second phase constructor.
+@internalComponent
+*/
+void CCalUser::ConstructL(const TDesC& aAddress)
+	{
+	iImpl = CCalUserImpl::NewL(aAddress);
+	}
+
+/** Second phase constructor.
+@internalComponent
+*/
+void CCalUser::ConstructL(const TDesC& aAddress, const TDesC& aSentBy)
+	{
+	iImpl = CCalUserImpl::NewL(aAddress, aSentBy);
+	}
+
+/** Gets the email address of the user.
+
+@return The address.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C const TDesC& CCalUser::Address() const
+	{
+	return iImpl->Address();
+	}
+
+/** Gets the iCalendar-defined common name (CN) of the user.
+
+@return The common name.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C const TDesC& CCalUser::CommonName() const
+	{
+	return iImpl->CommonName();
+	}
+
+/** Gets the sender of the user.
+
+@return The sender.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C const TDesC& CCalUser::SentBy() const
+	{
+	return iImpl->SentBy();
+	}
+
+CCalUserImpl* CCalUser::Impl() const
+	{
+	return iImpl;
+	}
+
+/** Sets the iCalendar-defined common name (CN) of the user.
+
+@param aCommonName The common name.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C void CCalUser::SetCommonNameL(const TDesC& aCommonName)
+	{
+	iImpl->SetCommonNameL(aCommonName);
+	}
+
+CCalAttendee::CCalAttendee()
+	{
+	}
+
+CCalAttendee::CCalAttendee(CCalUserImpl* aImpl)
+	: CCalUser(aImpl)
+	{
+	}
+
+/** Allocates and constructs a new attendee with the specified email address.
+
+@param aAddress The address of the attendee.
+@return Pointer to newly constructed object
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalAttendee* CCalAttendee::NewL(const TDesC& aAddress)
+
+	{
+	CCalAttendee* self = new (ELeave) CCalAttendee();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAddress);
+	CleanupStack::Pop(self);
+	return self;
+	}
+
+/** Allocates and constructs a new attendee with the specified email address and sender.
+
+@param aAddress The address of the attendee.
+@param aSentby The sender.
+@return Pointer to newly constructed object
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalAttendee* CCalAttendee::NewL(const TDesC& aAddress, const TDesC& aSentBy)
+	{
+	CCalAttendee* self = new (ELeave) CCalAttendee();
+	CleanupStack::PushL(self);
+	self->ConstructL(aAddress, aSentBy);
+	CleanupStack::Pop(self);
+	return self;
+	}
+
+
+CCalAttendee* CCalAttendee::NewL(CCalUserImpl* aImpl)
+	{
+	CCalAttendee* self = new (ELeave) CCalAttendee(aImpl);
+	return self;
+	}
+
+/** Get the role of this attendee.
+
+@return The role.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalAttendee::TCalRole CCalAttendee::RoleL() const
+	{
+	return iImpl->RoleL();
+	}
+
+/** Get the status of this attendee.
+
+@return The status.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalAttendee::TCalStatus CCalAttendee::StatusL() const
+	{
+	return iImpl->StatusL();
+	}
+
+/** Gets whether or not a response was requested for this attendee.
+@publishedAll
+@released
+@capability None
+@return ETrue if a response was requested, EFalse if not. */
+EXPORT_C TBool CCalAttendee::ResponseRequested() const
+	{
+	return iImpl->ResponseRequested();
+	}
+
+/** Set the role of this attendee.
+
+@param aRole The role.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C void CCalAttendee::SetRoleL(TCalRole aRole)
+	{
+	iImpl->SetRoleL(aRole);
+	}
+
+/** Set the status of this attendee.
+
+@param aStatus The status.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C void CCalAttendee::SetStatusL(TCalStatus aStatus)
+	{
+	iImpl->SetStatusL(aStatus);
+	}
+
+/** Sets whether or not a response was requested for this attendee.
+
+@param aRsvp ETrue if a response was requested, EFalse if not.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C void CCalAttendee::SetResponseRequested(TBool aRsvp)
+	{
+	iImpl->SetResponseRequested(aRsvp);
+	}
+
+/** Sets the expected response of this attendee.
+This property is supported in vCalendar only.
+@param aExpected The expected response.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C void CCalAttendee::SetVCalExpect(TVCalExpect aExpected)
+	{
+	iImpl->SetVCalExpect(aExpected);
+	}
+	
+/** Gets the expected response of this attendee.
+This property is supported in vCalendar only.
+@return The expected response.
+
+@publishedAll
+@released
+@capability None
+*/
+EXPORT_C CCalAttendee::TVCalExpect CCalAttendee::VCalExpect() const
+	{
+	return iImpl->VCalExpect();
+	}
+