meetingrequest/mragnversit2/src/cesmragnversit2.cpp
changeset 0 8466d47a6819
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/meetingrequest/mragnversit2/src/cesmragnversit2.cpp	Thu Dec 17 08:39:21 2009 +0200
@@ -0,0 +1,151 @@
+/*
+* Copyright (c) 2002-2004 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: This file implements class CESMRAgnVersit2.
+*
+*/
+
+
+// Class include.
+#include "emailtrace.h"
+#include "cesmragnversit2.h"					//CESMRAgnVersit2
+
+// User includes.
+#include "cesmragnversit2importer.h"			//CESMRAgnVersit2Importer
+#include "cesmragnversit2exporter.h"			//CESMRAgnVersit2Exporter
+#include "cesmragnversit2stringprovider.h"	//CESMRAgnVersit2StringProvider
+
+//<cmail>
+//</cmail>
+
+// ======== MEMBER FUNCTIONS ========
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::NewL
+// ---------------------------------------------------------------------------
+//
+CESMRAgnVersit2* CESMRAgnVersit2::NewL()
+    {
+    FUNC_LOG;
+
+    CESMRAgnVersit2* self = new (ELeave) CESMRAgnVersit2;
+    CleanupStack::PushL(self);
+    self->ConstructL();
+    CleanupStack::Pop(self);
+
+
+    return self;
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::NewL
+// ---------------------------------------------------------------------------
+//
+CESMRAgnVersit2::~CESMRAgnVersit2()
+    {
+    FUNC_LOG;
+
+    delete iImporter;
+    delete iExporter;
+    delete iStringProvider;
+
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::ImportL
+// ---------------------------------------------------------------------------
+//
+void CESMRAgnVersit2::ImportL( RPointerArray<CCalEntry>& aEntries,
+                           RReadStream& aReadStream,
+                           TUint /*aFlags*/,
+                           MESMRAgnImportObserver& aObserver )
+    {
+    FUNC_LOG;
+
+    if (!iImporter)
+        {
+        iImporter =  CESMRAgnVersit2Importer::NewL(*iStringProvider);
+        }
+
+    iImporter->ImportL(aEntries, aReadStream, aObserver);
+
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::ExportL
+// ---------------------------------------------------------------------------
+//
+void CESMRAgnVersit2::ExportL( const CCalEntry& aEntry,
+                           RWriteStream& aWriteStream,
+                           TUint aFlags,
+                           MESMRAgnExportObserver& aObserver )
+    {
+    FUNC_LOG;
+
+    if (!iExporter)
+        {
+        iExporter = CESMRAgnVersit2Exporter::NewL(*iStringProvider);
+        }
+
+    iExporter->ExportL(aEntry, aWriteStream, aFlags, aObserver);
+
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::ExportL
+// ---------------------------------------------------------------------------
+//
+void CESMRAgnVersit2::ExportL( RPointerArray<CCalEntry>& aEntries,
+                           RWriteStream& aWriteStream,
+                           TUint aFlags,
+                           MESMRAgnExportObserver& aObserver )
+    {
+    FUNC_LOG;
+
+    if (!iExporter)
+        {
+        iExporter = CESMRAgnVersit2Exporter::NewL(*iStringProvider);
+        }
+
+    iExporter->ExportL(aEntries, aWriteStream, aFlags, aObserver);
+
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::CESMRAgnVersit2
+// ---------------------------------------------------------------------------
+//
+CESMRAgnVersit2::CESMRAgnVersit2()
+    {
+    FUNC_LOG;
+    //do nothing
+    }
+
+// ---------------------------------------------------------------------------
+// CESMRAgnVersit2::ConstructL
+// ---------------------------------------------------------------------------
+//
+void CESMRAgnVersit2::ConstructL()
+    {
+    FUNC_LOG;
+
+    iStringProvider = CESMRAgnVersit2StringProvider::NewL();
+    // Initialise the importer and exporter straight away in debug mode
+    // This prevents problems when memory testing
+    __DEBUG_ONLY(iImporter =  CESMRAgnVersit2Importer::NewL(*iStringProvider));
+    __DEBUG_ONLY(iExporter =  CESMRAgnVersit2Exporter::NewL(*iStringProvider));
+
+    }
+
+// End of file.
+