diff -r 000000000000 -r 951a5db380a0 videditor/VideoEditorCommon/src/VeiMGFetchVerifier.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videditor/VideoEditorCommon/src/VeiMGFetchVerifier.cpp Fri Jan 29 14:08:33 2010 +0200 @@ -0,0 +1,112 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "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: +* Ixonos Plc +* +* Description: +* +*/ + + +#include +#include +#include +#include +#include + +#include +#include "VeiMGFetchVerifier.h" +#include "VideoEditorCommon.h" +#include "VideoEditorDebugUtils.h" + +// CONSTANTS +_LIT(KResourceFile, "VideoEditorCommon.rsc"); + + +EXPORT_C CVeiMGFetchVerifier* CVeiMGFetchVerifier::NewLC() + { + CVeiMGFetchVerifier* self = new ( ELeave ) CVeiMGFetchVerifier; + CleanupStack::PushL( self ); + self->ConstructL(); + return self; + } + +CVeiMGFetchVerifier::CVeiMGFetchVerifier() : iResLoader( *CCoeEnv::Static() ) + { + } + +EXPORT_C CVeiMGFetchVerifier::~CVeiMGFetchVerifier() + { + iResLoader.Close(); + } + +EXPORT_C TBool CVeiMGFetchVerifier::VerifySelectionL( const MDesCArray* aSelectedFiles ) + { + LOG(KVideoEditorLogFile, "CVeiMGFetchVerifier::VerifySelectionL: in"); + + TBool selectionAccepted( ETrue ); + + DRMCommon* drmCommon = DRMCommon::NewL(); + CleanupStack::PushL (drmCommon); + + User::LeaveIfError( drmCommon->Connect() ); + + TUint itemCount = aSelectedFiles->MdcaCount(); + for (TUint i=0;iMdcaPoint(i); + + drmCommon->IsProtectedFile( fileName, fileProtectionStatus ); + + if ( fileProtectionStatus != EFalse ) + { + LOGFMT(KVideoEditorLogFile, "CVeiMGFetchVerifier::VerifySelectionL: File (%S) is protected. Show error note.", &fileName); + HBufC* stringholder; + CCoeEnv* coeEnv = CCoeEnv::Static(); + + stringholder = StringLoader::LoadLC( R_VEI_NOTE_DRM_NOT_ALLOWED, coeEnv ); + + CAknInformationNote* note = new ( ELeave ) CAknInformationNote( ETrue ); + note->ExecuteLD( *stringholder ); + + CleanupStack::PopAndDestroy( stringholder ); + selectionAccepted = EFalse; + break; + } + LOGFMT(KVideoEditorLogFile, "CVeiMGFetchVerifier::VerifySelectionL: File (%S) is not protected.", &fileName); + } + drmCommon->Disconnect(); + CleanupStack::PopAndDestroy (drmCommon); + + LOGFMT(KVideoEditorLogFile, "CVeiMGFetchVerifier::VerifySelectionL: out: %d", selectionAccepted); + return selectionAccepted; + } + + +void CVeiMGFetchVerifier::ConstructL() + { + // Locate and open the resource file + TFileName fileName; + TParse p; + + Dll::FileName(fileName); + p.Set(KResourceFile, &KDC_RESOURCE_FILES_DIR, &fileName); + fileName = p.FullName(); + + LOGFMT(KVideoEditorLogFile, "\tLoading resource file: %S", &fileName); + iResLoader.OpenL( fileName ); // RConeResourceLoader selects the correct language file + + } + +// End of file