javacommons/fileutils/src.s60/filedrmhandlerjni.cpp
branchRCL_3
changeset 19 04becd199f91
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/javacommons/fileutils/src.s60/filedrmhandlerjni.cpp	Tue Apr 27 16:30:29 2010 +0300
@@ -0,0 +1,72 @@
+/*
+* 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 "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:  JNI Layer for File DRM Handler
+ *
+*/
+
+#include "logger.h"
+#include "jstringutils.h"
+
+#include "com_nokia_mj_impl_fileutils_FileDRMContentHandler.h"
+#include "filedrmcontenthandler.h"
+#include "fileextendedcommon.h" // To be removed once common utility is fixed
+
+using namespace java::fileutils;
+
+/*
+ * Class:     com_nokia_mj_impl_fileutils_FileDRMContentHandler
+ * Method:    _isProtectedFile
+ * Signature: (Ljava/lang/String;)Z
+ */
+JNIEXPORT jboolean JNICALL Java_com_nokia_mj_impl_fileutils_FileDRMContentHandler__1isProtectedFile
+(JNIEnv *aJni, jclass, jstring aName)
+{
+    JStringUtils name(*aJni, aName);
+    return FileDRMContentHandler::isDRMProtectedFile(name);
+}
+
+/*
+ * Class:     com_nokia_mj_impl_fileutils_FileDRMContentHandler
+ * Method:    _setDrmArguments
+ * Signature: (IZI)I
+ */
+JNIEXPORT void JNICALL Java_com_nokia_mj_impl_fileutils_FileDRMContentHandler__1setDrmArguments
+(JNIEnv *, jobject, jint aHandle, jboolean aExecuteIntent, jint aIntent)
+{
+    FileDRMContentHandler* handler =
+        reinterpret_cast<FileDRMContentHandler*>(aHandle);
+    return handler->setDrmArguments(aIntent, aExecuteIntent);
+}
+
+/*
+ * Class:     com_nokia_mj_impl_fileutils_FileDRMContentHandler
+ * Method:    _createDrmHandler
+ * Signature: (Ljava/lang/String;)I
+ */
+JNIEXPORT jint JNICALL Java_com_nokia_mj_impl_fileutils_FileDRMContentHandler__1createDrmHandler
+(JNIEnv *aJni, jobject, jstring aName)
+{
+    try
+    {
+        std::wstring name = java::fileutility::FileUtil::jstringToWstring(aJni, aName);
+        FileDRMContentHandler* handler = new FileDRMContentHandler(name);
+        return reinterpret_cast<jint>(handler);
+    }
+    catch (...)
+    {
+        ELOG(EJavaFile,
+             "FileDRMContentHandler: JNI: exists caught exception. Return 0");
+        return 0;
+    }
+}