--- a/homescreenplugins/videochplugin/src/videocontentharvesterplugin.cpp Mon Mar 15 12:40:47 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,235 +0,0 @@
-/*
-* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: CVcxNsContentHarvesterPlugin class definition*
-*/
-
-
-// INCLUDE FILES
-#include <e32std.h>
-#include <e32def.h>
-#include <e32cmn.h>
-
-#include <liwservicehandler.h>
-#include <liwvariant.h>
-#include <liwgenericparam.h>
-
-#include <vcxmyvideosdefs.h>
-#include <vcxmyvideosuids.h>
-
-#include <mpxcommandgeneraldefs.h>
-
-#include "IptvDebug.h"
-
-
-#include "videocontentharvesterplugin.h"
-#include "videocontentharvestermpxclient.h"
-#include "videocontentharvesterservicelistener.h"
-#include "videonotificationlauncher.h"
-#include "videochpublishabledata.h"
-#include "videochpublisher.h"
-#include "vcxnsmediatorids.h"
-#include "videochmcategorylistener.h"
-#include "videochiptvserverclient.h"
-#include "videochlastwatchedupdater.h"
-#include "iptvlastwatchedapi.h"
-#include "iptvlastwatcheddata.h"
-
-// ============================ MEMBER FUNCTIONS ==============================
-
-// ----------------------------------------------------------------------------
-// Constructor
-// ----------------------------------------------------------------------------
-//
-CVcxNsContentHarvesterPlugin::CVcxNsContentHarvesterPlugin( MLiwInterface* aCPSInterface ) :
- iCPSInterface( aCPSInterface )
- {
- }
-
-// ----------------------------------------------------------------------------
-// Symbian 2nd phase constructor can leave.
-// ----------------------------------------------------------------------------
-//
-void CVcxNsContentHarvesterPlugin::ConstructL()
- {
- IPTVLOGSTRING_LOW_LEVEL("CVcxNsContentHarvesterPlugin::ConstructL IN");
-
- iPublishableData = CVcxNsChPublishableData::NewL();
-
- iPublisher = CVcxNsChPublisher::NewL( iCPSInterface, iPublishableData );
-
- iMpxClient = CVcxNsContentHarvesterMpxClient::NewL( iPublisher, iPublishableData, this );
-
- iServiceListener = CVcxNsContentHarvesterServiceListener::NewL( iPublisher, iPublishableData );
-
- iNotificationLauncer = CVcxNsNotificationLauncher::NewL( iPublishableData, iPublisher );
-
- iLwUpdater = CVcxNsChLastWatchedUpdater::NewL( iPublishableData, iPublisher );
-
- iIptvServerClient = CVcxNsChIptvServerClient::NewL( iPublisher, iPublishableData );
-
- IPTVLOGSTRING_LOW_LEVEL("CVcxNsContentHarvesterPlugin::ConstructL OUT");
- }
-
-// ----------------------------------------------------------------------------
-// Two-phased constructor.
-// ----------------------------------------------------------------------------
-//
-CVcxNsContentHarvesterPlugin* CVcxNsContentHarvesterPlugin::NewL( MLiwInterface* aCPSInterface )
- {
- CVcxNsContentHarvesterPlugin* self = new ( ELeave ) CVcxNsContentHarvesterPlugin(
- aCPSInterface );
- CleanupStack::PushL( self );
- self->ConstructL();
- CleanupStack::Pop( self );
- return self;
- }
-
-// ---------------------------------------------------------------------------
-// Destructor
-// ---------------------------------------------------------------------------
-//
-CVcxNsContentHarvesterPlugin::~CVcxNsContentHarvesterPlugin()
- {
- delete iIptvServerClient;
- delete iLwUpdater;
- delete iNotificationLauncer;
- delete iServiceListener;
- delete iMpxClient;
- delete iPublisher;
- delete iPublishableData;
- }
-
-// ----------------------------------------------------------------------------
-// CVcxNsContentHarvesterPlugin::UpdateL()
-// ----------------------------------------------------------------------------
-//
-void CVcxNsContentHarvesterPlugin::UpdateL()
- {
- IPTVLOGSTRING_LOW_LEVEL("CVcxNsContentHarvesterPlugin::UpdateL in");
- // check and update data content that needs refreshing during boot.
- // in case something fails, there's nothing to do
-
- // last watched
- UpdateLastWatchedL();
-
- // preloaded video
- UpdatePreloadedVideoL();
-
- // predefined service group
- iIptvServerClient->StartIPTVServerInterfaceL();
- TRAPD( err, UpdatePredefinedServiceL() );
- iIptvServerClient->StopIPTVServerInterface();
- User::LeaveIfError( err );
-
- IPTVLOGSTRING_LOW_LEVEL("CVcxNsContentHarvesterPlugin::UpdateL out");
- }
-
-// ----------------------------------------------------------------------------
-// CVcxNsContentHarvesterPlugin::UpdateLastWatchedL()
-// ----------------------------------------------------------------------------
-//
-void CVcxNsContentHarvesterPlugin::UpdateLastWatchedL()
- {
- iPublisher->ReadContentL( EVCxNsCPContentLastWatched );
-
- TPtrC name = iPublishableData->GetDesCDataL( EVCxNsCPContentLastWatched,
- TPtrC8( KTvVideoName ) );
- TInt lastWType =
- iPublishableData->GetIntDataL( EVCxNsCPContentLastWatched,
- TPtrC8( KTvVideoLastWatchedType ) );
-
- if( name.Length() > 0 && lastWType == EVCxNsCPContentLastWatched )
- {
- // check last watched from the filesystem
- CIptvLastWatchedData* data = CIptvLastWatchedData::NewL();
- CleanupStack::PushL( data );
- iPublishableData->LastWatchedApi().GetLastWatchedDataL( *data );
-
- if( data->MpxId() != KIdUndefined &&
- !iPublishableData->FileExists( data->Uri() ) )
- {
- // clear and publish empty content
- iPublishableData->ClearData( EVCxNsCPContentLastWatched );
- iPublisher->PublishContentL( EVCxNsCPContentLastWatched );
- }
- CleanupStack::PopAndDestroy( data );
- }
- else
- {
- // clear and publish empty content
- iPublishableData->ClearData( EVCxNsCPContentLastWatched );
- iPublisher->PublishContentL( EVCxNsCPContentLastWatched );
- }
- }
-
-// ----------------------------------------------------------------------------
-// CVcxNsContentHarvesterPlugin::UpdatePreloadedVideoL()
-// ----------------------------------------------------------------------------
-//
-void CVcxNsContentHarvesterPlugin::UpdatePreloadedVideoL()
- {
- // read preloaded content from the CP and from the filesystem
- iPublisher->ReadContentL( EVCxNsCPContentPreloaded );
-
- TPtrC preName =
- iPublishableData->GetDesCDataL( EVCxNsCPContentPreloaded,
- TPtrC8( KTvVideoName ) );
- TPtrC prePath =
- iPublishableData->GetDesCDataL( EVCxNsCPContentPreloaded,
- TPtrC8( KTvVideoPath ) );
-
- if( preName.Length() == 0 ||
- !iPublishableData->FileExists( prePath ) )
- {
- // file does not exists, remove it's data from the CP so
- // that item is not shown
- iPublisher->DeleteContentL( EVCxNsCPContentPreloaded );
- }
- }
-
-// ----------------------------------------------------------------------------
-// CVcxNsContentHarvesterPlugin::UpdatePredefinedServiceL()
-// ----------------------------------------------------------------------------
-//
-void CVcxNsContentHarvesterPlugin::UpdatePredefinedServiceL()
- {
- iPublisher->ReadContentL( EVCxNsCPContentServiceGroup );
-
- TPtrC serviceUri = iPublishableData->GetDesCDataL( EVCxNsCPContentServiceGroup,
- TPtrC8( KTvVideoPath ) );
- TInt id = iIptvServerClient->GetServiceGroupIdL( serviceUri );
-
- if(id != KErrNotFound )
- {
- // save ID and publish
- iPublishableData->SetDataL( EVCxNsCPContentServiceGroup,
- TPtrC8( KTvVideoId ), id);
- iPublisher->PublishContentL( EVCxNsCPContentServiceGroup );
- }
- else
- {
- // Restore backed up data
- iPublisher->RestoreBackupL( EVCxNsCPContentServiceGroup );
- }
- }
-
-// ----------------------------------------------------------------------------
-// CVcxNsContentHarvesterPlugin::NotificationLauncher()
-// ----------------------------------------------------------------------------
-//
-CVcxNsNotificationLauncher* CVcxNsContentHarvesterPlugin::NotificationLauncher()
- {
- return iNotificationLauncer;
- }
-