First public contribution.
2 * Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of the License "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
26 #ifndef __REFCAFHELPER_H__
27 #define __REFCAFHELPER_H__
30 #include <caf/cafhelperinterface.h>
32 using namespace ContentAccess;
34 This is a reference implementation of the polymorphic interface defined by
35 UID KCAFHelperInterfaceUID.
42 NONSHARABLE_CLASS(CReferenceCafHelper) : public CBase, public MCAFHelperInterface
46 IMPORT_C MCAFHelperInterface* NewCafHelperImplL();
48 CReferenceCafHelper();
51 This method handles the CAF error received for a given file.
52 @param aError One of the CAF errors.
53 @param aFileName File name or file URI for which the error is received
54 @return KErrNone if the error is handled successfully.Otherwise one of the other system-wide
56 @capability DRM Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted
58 IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, const TDesC& aFileName);
61 This method handles the CAF error received for a given file .
62 @param aError One of the CAF errors.
63 @param aFileHandle File handle for which the error is received
64 @return KErrNone if the error is handled successfully.Otherwise one of the other system-wide
66 @capability DRM Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted
68 IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, RFile& aFileHandle);
71 This method handles the CAF error received for WMDRM content .
72 @param aError One of the CAF errors.
73 @param aHeaderData The header data of the content for which the error is received
74 @return KErrNone if the error is handled successfully.Otherwise one of the other system-wide
76 @capability DRM Access to DRM protected content is not permitted for processes without DRM capability. Access to unprotected content is unrestricted
78 IMPORT_C virtual TInt HandleCAFErrorL(TInt aError, const TDesC8& aHeaderData);
80 IMPORT_C virtual void Release();
82 virtual ~CReferenceCafHelper();