diff options
| author | 2012-03-06 10:23:51 -0800 | |
|---|---|---|
| committer | 2012-03-06 10:23:51 -0800 | |
| commit | bc6b837a60b2b08033c425de4576cf378a3f8c2c (patch) | |
| tree | ad8915f33ee13d8f8573e003f62f6d9f7d957c2c | |
| parent | aa521412126953f55a04b1fece9444779156e714 (diff) | |
| parent | 9864b25bd8ac2c68f290817ac5fe73077e130b45 (diff) | |
Merge "There was copy and paste code in JNI to create a DrmConvertedStatus object."
| -rw-r--r-- | drm/jni/android_drm_DrmManagerClient.cpp | 65 | 
1 files changed, 25 insertions, 40 deletions
diff --git a/drm/jni/android_drm_DrmManagerClient.cpp b/drm/jni/android_drm_DrmManagerClient.cpp index 191648cb8e47..14ec4d6eb84f 100644 --- a/drm/jni/android_drm_DrmManagerClient.cpp +++ b/drm/jni/android_drm_DrmManagerClient.cpp @@ -620,17 +620,8 @@ static jint android_drm_DrmManagerClient_openConvertSession(      return convertId;  } -static jobject android_drm_DrmManagerClient_convertData( -            JNIEnv* env, jobject thiz, jint uniqueId, jint convertId, jbyteArray inputData) { -    ALOGV("convertData Enter"); - -    int dataLength = 0; -    char* mData = Utility::getByteArrayValue(env, inputData, &dataLength); -    const DrmBuffer buffer(mData, dataLength); - -    DrmConvertedStatus* pDrmConvertedStatus -            = getDrmManagerClientImpl(env, thiz)->convertData(uniqueId, convertId, &buffer); - +static jobject GetConvertedStatus(JNIEnv* env, DrmConvertedStatus* pDrmConvertedStatus) { +    ALOGV("GetConvertedStatus - Enter");      jclass localRef = env->FindClass("android/drm/DrmConvertedStatus");      jobject drmConvertedStatus = NULL; @@ -642,8 +633,8 @@ static jobject android_drm_DrmManagerClient_convertData(          if (NULL != pDrmConvertedStatus->convertedData) {              int length = pDrmConvertedStatus->convertedData->length;              dataArray = env->NewByteArray(length); -            env->SetByteArrayRegion(dataArray, 0, length, -                            (jbyte*) pDrmConvertedStatus->convertedData->data); +            env->SetByteArrayRegion( +                dataArray, 0, length, (jbyte*) pDrmConvertedStatus->convertedData->data);              delete [] pDrmConvertedStatus->convertedData->data;              delete pDrmConvertedStatus->convertedData; pDrmConvertedStatus->convertedData = NULL; @@ -654,48 +645,42 @@ static jobject android_drm_DrmManagerClient_convertData(                               statusCode, dataArray, pDrmConvertedStatus->offset);      } -    delete[] mData; mData = NULL;      delete pDrmConvertedStatus; pDrmConvertedStatus = NULL; -    ALOGV("convertData - Exit"); +    ALOGV("GetConvertedStatus - Exit");      return drmConvertedStatus;  } -static jobject android_drm_DrmManagerClient_closeConvertSession( -            JNIEnv* env, jobject thiz, int uniqueId, jint convertId) { +static jobject android_drm_DrmManagerClient_convertData( +            JNIEnv* env, jobject thiz, jint uniqueId, jint convertId, jbyteArray inputData) { +    ALOGV("convertData Enter"); -    ALOGV("closeConvertSession Enter"); +    int dataLength = 0; +    char* mData = Utility::getByteArrayValue(env, inputData, &dataLength); +    const DrmBuffer buffer(mData, dataLength);      DrmConvertedStatus* pDrmConvertedStatus -                = getDrmManagerClientImpl(env, thiz)->closeConvertSession(uniqueId, convertId); - -    jclass localRef = env->FindClass("android/drm/DrmConvertedStatus"); +            = getDrmManagerClientImpl(env, thiz)->convertData(uniqueId, convertId, &buffer); +    jobject status = GetConvertedStatus(env, pDrmConvertedStatus); -    jobject drmConvertedStatus = NULL; +    delete[] mData; +    mData = NULL; -    if (NULL != localRef && NULL != pDrmConvertedStatus) { -        int statusCode = pDrmConvertedStatus->statusCode; +    ALOGV("convertData - Exit"); +    return status; +} -        jbyteArray dataArray = NULL; -        if (NULL != pDrmConvertedStatus->convertedData) { -            int length = pDrmConvertedStatus->convertedData->length; -            dataArray = env->NewByteArray(length); -            env->SetByteArrayRegion( -                dataArray, 0, length, (jbyte*) pDrmConvertedStatus->convertedData->data); +static jobject android_drm_DrmManagerClient_closeConvertSession( +            JNIEnv* env, jobject thiz, int uniqueId, jint convertId) { -            delete [] pDrmConvertedStatus->convertedData->data; -            delete pDrmConvertedStatus->convertedData; pDrmConvertedStatus->convertedData = NULL; -        } -        jmethodID constructorId = env->GetMethodID(localRef, "<init>", "(I[BI)V"); -        drmConvertedStatus -            = env->NewObject(localRef, constructorId, -                             statusCode, dataArray, pDrmConvertedStatus->offset); -    } +    ALOGV("closeConvertSession Enter"); -    delete pDrmConvertedStatus; pDrmConvertedStatus = NULL; +    DrmConvertedStatus* pDrmConvertedStatus +                = getDrmManagerClientImpl(env, thiz)->closeConvertSession(uniqueId, convertId); +    jobject status = GetConvertedStatus(env, pDrmConvertedStatus);      ALOGV("closeConvertSession - Exit"); -    return drmConvertedStatus; +    return status;  }  static JNINativeMethod nativeMethods[] = {  |