javauis/mmapi_qt/baseline/src/managerimpl.cpp
branchRCL_3
changeset 18 9ac0a0a7da70
parent 17 0fd27995241b
child 19 71c436fe3ce0
--- a/javauis/mmapi_qt/baseline/src/managerimpl.cpp	Tue May 11 16:07:20 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,261 +0,0 @@
-/*
-* Copyright (c) 2002 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 class has ManagerImpl JNI functions
-*
-*/
-
-#include <logger.h>
-
-#include <JniEnvWrapper.h>
-
-#include "com_nokia_microedition_media_ManagerImpl.h"
-#include "cmmamanager.h"
-#include "cmmaplayer.h"
-#include "jstringutils.h"
-#include "s60commonutils.h"
-using namespace java::util;
-
-const TInt KMMADefaultArrayGranularity = 8;
-
-JNIEXPORT void JNICALL Java_com_nokia_microedition_media_ManagerImpl__1dispose
-(JNIEnv* aJni, jobject, jint aEventSourceHandle)
-{
-    LOG(EJavaMMAPI,EInfo,"MMA::ManagerImpl dispose");
-    MMAFunctionServer* eventSource =
-        reinterpret_cast< MMAFunctionServer* >(aEventSourceHandle);
-    delete eventSource; 
-}
-
-LOCAL_C void ReleaseEventSource(MMAFunctionServer* aEventSource)
-{
-    aEventSource->Release();
-}
-
-JNIEXPORT void JNICALL Java_com_nokia_microedition_media_ManagerImpl__1release
-(JNIEnv*, jobject, jint aEventSourceHandle)
-{
-    LOG( EJavaMMAPI, EInfo, "MMA::ManagerImpl release");
-    MMAFunctionServer* eventSource =
-        reinterpret_cast< MMAFunctionServer* >(aEventSourceHandle);
-    eventSource->ExecuteV(&ReleaseEventSource,
-                          eventSource);
-}
-
-/*
- * Class:     javax_microedition_media_Manager
- * Method:    _createManager
- * Signature: (II)I
- */
-JNIEXPORT jint JNICALL Java_com_nokia_microedition_media_ManagerImpl__1createManager
-(JNIEnv*, jobject, jint aEventSourceHandle, jint aMIDletSuiteID)
-{
-	MMAFunctionServer* eventSource =  reinterpret_cast<MMAFunctionServer*>(aEventSourceHandle);
-
-    CMMAManager* manager = NULL;
-    TInt error = eventSource->ExecuteTrap(&CMMAManager::StaticCreateManagerL,
-                                          &manager,
-                                          aMIDletSuiteID);
-    ELOG1( EJavaMMAPI, "MMA::ManagerImpl createManager StaticCreateManagerL %d",
-              error);
-    if (error != KErrNone)
-    {
-        return error;
-    }
-
-    TInt managerHandle( reinterpret_cast<TInt>(manager));
-
-    error = eventSource->ExecuteTrap(MMAFunctionServer::StaticAddObjectFromHandleL,
-                                     eventSource,
-                                     managerHandle);
-
-    ELOG1( EJavaMMAPI, "MMA::ManagerImpl createManager StaticAddObjectFromHandleL %d",
-              error);
-
-    if (error != KErrNone)
-    {
-        // Adding manager to event source failed.
-        delete manager;
-
-        // Error code will be returned to java
-        managerHandle = error;
-    }
-    LOG1( EJavaMMAPI, EInfo, "MMA::ManagerImpl createManager %d",
-              managerHandle);
-    return managerHandle;
-}
-
-
-LOCAL_C void InvokeConstructSvrL(MMAFunctionServer* aEventSource)
-{
-    aEventSource->ConstructSvrL();
-}
-
-/*
- * Class:     javax_microedition_media_Manager
- * Method:    _getEventSource
- */
-JNIEXPORT jint JNICALL Java_com_nokia_microedition_media_ManagerImpl__1createEventSource
-(JNIEnv* aJni, jobject aPeer)
-{
-    TInt eventSourceHandle = MMAFunctionServer::NewL(*aJni, aPeer);
-    if (eventSourceHandle > KErrNone)
-    {
-        MMAFunctionServer* eventSource =
-            reinterpret_cast< MMAFunctionServer* >(eventSourceHandle);
-
-        // third phase construction
-        TInt error = eventSource->ExecuteTrap(&InvokeConstructSvrL,
-                                              eventSource);
-        if (error != KErrNone)
-        {
-            eventSourceHandle = error;
-        }
-    }
-    LOG1( EJavaMMAPI, EInfo, "MMA::ManagerImpl createEventSource %d",
-              eventSourceHandle);
-    return eventSourceHandle;
-}
-
-/**
- * Local function which can be used to call CMMAManager class methods.
- * Type of of the function pointer must be
- * void CMMAManager::aFuncL( RPointerArray< HBufC >&, const TDesC& )
- * Java String array will be created and set to aArray variable.
- *
- * @param aManager CMMAManager instance.
- * @param aFuncL Pointer to the CMMAManager method.
- * @param aJni Used to create an array.
- * @param aArray Values got from aFuncL will be copied to this array.
- * @param aParam Parameter that will be passed to aFuncL method.
- */
-LOCAL_C void GetObjectArrayL(MMAFunctionServer* aEventSource,
-    CMMAManager* aManager,
-    void (CMMAManager::*aFuncL)(const TDesC&,
-                                CDesC16Array&),
-    JNIEnv* aJni,
-    jobjectArray* aArray,
-    const TDesC* aParam)
-{
-    // Temporary descriptor array to be copied to Java array.
-    CDesC16ArrayFlat* values = new(ELeave) CDesC16ArrayFlat(
-        KMMADefaultArrayGranularity);
-    CleanupStack::PushL(values);
-
-    // Call void CMMAManager::aFuncL( const TDesC&, RPointerArray< HBufC >& )
-    // method. Method can leave.
-    // Elements of the array will be owned by this method.
-    (aManager->*aFuncL)(*aParam, *values);
-
-    // JNI interface pointer can't be passed to different thread, so
-    // it is needed to get valid JNI interface pointer for Event Server thread
-  	aJni =aEventSource->getValidJniEnv();
-
-    // Create new java String array and copy values from the values array
-    *aArray = MMAPIUtils::CopyToNewJavaStringArrayL(*aJni, *values);
-    CleanupStack::PopAndDestroy(values);
-}
-
-
-/*
- * Class:     javax_microedition_media_Manager
- * Method:    _getSupportedContentTypes
- * Signature: (II)[[B
- */
-JNIEXPORT jobjectArray JNICALL Java_com_nokia_microedition_media_ManagerImpl__1getSupportedContentTypes
-(JNIEnv* aJni,
- jclass,
- jint aEventSourceHandle,
- jint aManagerHandle,
- jstring aProtocol)
-{
-    MMAFunctionServer* eventSource =
-        reinterpret_cast< MMAFunctionServer * >(aEventSourceHandle);
-    CMMAManager* manager = reinterpret_cast< CMMAManager *>(aManagerHandle);
-
-    jobjectArray contentTypes = NULL;
-
-    // Create descritor from Java String.
-    // JStringUtils is derived from TPtrC16 and is save to cast to TDesC
-    JStringUtils tmp(*aJni, aProtocol);
-    const TDesC* protocol = &tmp;
-    if (aProtocol == NULL)
-    {
-        protocol = &KNullDesC;
-    }
-
-    // Call manager->GetSupportedContentTypesL and create Java array.
-    TInt err = eventSource->ExecuteTrap(&GetObjectArrayL,
-    																	  eventSource,
-                                        manager,
-                                        &CMMAManager::GetSupportedContentTypesL,
-                                        aJni,
-                                        &contentTypes,
-                                        protocol);
-
-    if (err != KErrNone)
-    {
-        // Something failed. Returning NULL, because contentTypes array may not
-        // be complete. contentTypes array is left for carbage collertor,
-        // because it can't be released.
-        return NULL;
-    }
-    return contentTypes;
-}
-
-/*
- * Class:     javax_microedition_media_Manager
- * Method:    _getSupportedProtocols
- * Signature: (II)[[B
- */
-JNIEXPORT jobjectArray JNICALL Java_com_nokia_microedition_media_ManagerImpl__1getSupportedProtocols
-(JNIEnv* aJni,
- jclass,
- jint aEventSourceHandle,
- jint aManagerHandle,
- jstring aContentType)
-{
-    MMAFunctionServer* eventSource =
-        reinterpret_cast< MMAFunctionServer *>(aEventSourceHandle);
-    CMMAManager* manager = reinterpret_cast< CMMAManager *>(aManagerHandle);
-
-    jobjectArray protocols = NULL;
-
-    // Create descritor from Java String.
-    // JStringUtils is derived from TPtrC16 and is save to cast to TDesC
-    JStringUtils tmp(*aJni, aContentType);
-    const TDesC* contentType = &tmp;
-    if (aContentType == NULL)
-    {
-        contentType = &KNullDesC;
-    }
-
-    // Call manager->GetSupportedProtocolsL and create Java array.
-    TInt err = eventSource->ExecuteTrap(&GetObjectArrayL,
-    																		eventSource,
-                                        manager,
-                                        &CMMAManager::GetSupportedProtocolsL,
-                                        aJni,
-                                        &protocols,
-                                        contentType);
-    if (err != KErrNone)
-    {
-        // Something failed. Returning NULL, because contentTypes array may not
-        // be complete. contentTypes array is left for carbage collertor,
-        // because it can't be released.
-        return NULL;
-    }
-    return protocols;
-}
-
-//  END OF FILE