Lines Matching refs:env

97 static jint copyValue(JNIEnv* env, jobject outValue, const ResTable* table,
101 jint copyValue(JNIEnv* env, jobject outValue, const ResTable* table,
105 env->SetIntField(outValue, gTypedValueOffsets.mType, value.dataType);
106 env->SetIntField(outValue, gTypedValueOffsets.mAssetCookie,
108 env->SetIntField(outValue, gTypedValueOffsets.mData, value.data);
109 env->SetObjectField(outValue, gTypedValueOffsets.mString, NULL);
110 env->SetIntField(outValue, gTypedValueOffsets.mResourceId, ref);
111 env->SetIntField(outValue, gTypedValueOffsets.mChangingConfigurations,
114 env->SetIntField(outValue, gTypedValueOffsets.mDensity, config->density);
179 AssetManager* assetManagerForJavaObject(JNIEnv* env, jobject obj)
181 jlong amHandle = env->GetLongField(obj, gAssetManagerOffsets.mObject);
186 jniThrowException(env, "java/lang/IllegalStateException", "AssetManager has been finalized!");
190 static jlong android_content_AssetManager_openAsset(JNIEnv* env, jobject clazz,
193 AssetManager* am = assetManagerForJavaObject(env, clazz);
200 ScopedUtfChars fileName8(env, fileName);
202 jniThrowException(env, "java/lang/IllegalArgumentException", "Empty file name");
208 jniThrowException(env, "java/lang/IllegalArgumentException", "Bad access mode");
215 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
224 static jobject returnParcelFileDescriptor(JNIEnv* env, Asset* a, jlongArray outOffsets)
231 jniThrowException(env, "java/io/FileNotFoundException",
236 jlong* offsets = (jlong*)env->GetPrimitiveArrayCritical(outOffsets, 0);
245 env->ReleasePrimitiveArrayCritical(outOffsets, offsets, 0);
247 jobject fileDesc = jniCreateFileDescriptor(env, fd);
253 return newParcelFileDescriptor(env, fileDesc);
256 static jobject android_content_AssetManager_openAssetFd(JNIEnv* env, jobject clazz,
259 AssetManager* am = assetManagerForJavaObject(env, clazz);
266 ScopedUtfChars fileName8(env, fileName);
274 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
280 return returnParcelFileDescriptor(env, a, outOffsets);
283 static jlong android_content_AssetManager_openNonAssetNative(JNIEnv* env, jobject clazz,
288 AssetManager* am = assetManagerForJavaObject(env, clazz);
295 ScopedUtfChars fileName8(env, fileName);
302 jniThrowException(env, "java/lang/IllegalArgumentException", "Bad access mode");
312 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
321 static jobject android_content_AssetManager_openNonAssetFdNative(JNIEnv* env, jobject clazz,
326 AssetManager* am = assetManagerForJavaObject(env, clazz);
333 ScopedUtfChars fileName8(env, fileName);
343 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
349 return returnParcelFileDescriptor(env, a, outOffsets);
352 static jobjectArray android_content_AssetManager_list(JNIEnv* env, jobject clazz,
355 AssetManager* am = assetManagerForJavaObject(env, clazz);
360 ScopedUtfChars fileName8(env, fileName);
368 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
374 jobjectArray array = env->NewObjectArray(dir->getFileCount(),
383 jstring str = env->NewStringUTF(name.string());
388 env->SetObjectArrayElement(array, i, str);
389 env->DeleteLocalRef(str);
397 static void android_content_AssetManager_destroyAsset(JNIEnv* env, jobject clazz,
405 jniThrowNullPointerException(env, "asset");
412 static jint android_content_AssetManager_readAssetChar(JNIEnv* env, jobject clazz,
418 jniThrowNullPointerException(env, "asset");
427 static jint android_content_AssetManager_readAsset(JNIEnv* env, jobject clazz,
434 jniThrowNullPointerException(env, "asset");
442 jsize bLen = env->GetArrayLength(bArray);
444 jniThrowException(env, "java/lang/IndexOutOfBoundsException", "");
448 jbyte* b = env->GetByteArrayElements(bArray, NULL);
450 env->ReleaseByteArrayElements(bArray, b, 0);
455 jniThrowException(env, "java/io/IOException", "");
460 static jlong android_content_AssetManager_seekAsset(JNIEnv* env, jobject clazz,
467 jniThrowNullPointerException(env, "asset");
475 static jlong android_content_AssetManager_getAssetLength(JNIEnv* env, jobject clazz,
481 jniThrowNullPointerException(env, "asset");
488 static jlong android_content_AssetManager_getAssetRemainingLength(JNIEnv* env, jobject clazz,
494 jniThrowNullPointerException(env, "asset");
501 static jint android_content_AssetManager_addAssetPath(JNIEnv* env, jobject clazz,
504 ScopedUtfChars path8(env, path);
509 AssetManager* am = assetManagerForJavaObject(env, clazz);
520 static jint android_content_AssetManager_addOverlayPath(JNIEnv* env, jobject clazz,
523 ScopedUtfChars idmapPath8(env, idmapPath);
528 AssetManager* am = assetManagerForJavaObject(env, clazz);
539 static jboolean android_content_AssetManager_isUpToDate(JNIEnv* env, jobject clazz)
541 AssetManager* am = assetManagerForJavaObject(env, clazz);
548 static void android_content_AssetManager_setLocale(JNIEnv* env, jobject clazz,
551 ScopedUtfChars locale8(env, locale);
556 AssetManager* am = assetManagerForJavaObject(env, clazz);
564 static jobjectArray android_content_AssetManager_getLocales(JNIEnv* env, jobject clazz)
568 AssetManager* am = assetManagerForJavaObject(env, clazz);
577 jobjectArray result = env->NewObjectArray(N, g_stringClass, NULL);
583 jstring str = env->NewStringUTF(locales[i].string());
587 env->SetObjectArrayElement(result, i, str);
588 env->DeleteLocalRef(str);
594 static void android_content_AssetManager_setConfiguration(JNIEnv* env, jobject clazz,
606 AssetManager* am = assetManagerForJavaObject(env, clazz);
614 const char* locale8 = locale != NULL ? env->GetStringUTFChars(locale, NULL) : NULL;
635 if (locale != NULL) env->ReleaseStringUTFChars(locale, locale8);
638 static jint android_content_AssetManager_getResourceIdentifier(JNIEnv* env, jobject clazz,
643 ScopedStringChars name16(env, name);
648 AssetManager* am = assetManagerForJavaObject(env, clazz);
654 ? env->GetStringChars(defType, NULL) : NULL;
656 ? env->GetStringLength(defType) : 0;
658 ? env->GetStringChars(defPackage, NULL) : NULL;
660 ? env->GetStringLength(defPackage) : 0;
666 env->ReleaseStringChars(defPackage, defPackage16);
669 env->ReleaseStringChars(defType, defType16);
675 static jstring android_content_AssetManager_getResourceName(JNIEnv* env, jobject clazz,
678 AssetManager* am = assetManagerForJavaObject(env, clazz);
715 return env->NewString((const jchar*)str.string(), str.size());
718 static jstring android_content_AssetManager_getResourcePackageName(JNIEnv* env, jobject clazz,
721 AssetManager* am = assetManagerForJavaObject(env, clazz);
732 return env->NewString((const jchar*)name.package, name.packageLen);
738 static jstring android_content_AssetManager_getResourceTypeName(JNIEnv* env, jobject clazz,
741 AssetManager* am = assetManagerForJavaObject(env, clazz);
752 return env->NewStringUTF(name.type8);
756 return env->NewString((const jchar*)name.type, name.typeLen);
762 static jstring android_content_AssetManager_getResourceEntryName(JNIEnv* env, jobject clazz,
765 AssetManager* am = assetManagerForJavaObject(env, clazz);
776 return env->NewStringUTF(name.name8);
780 return env->NewString((const jchar*)name.name, name.nameLen);
786 static jint android_content_AssetManager_loadResourceValue(JNIEnv* env, jobject clazz,
793 jniThrowNullPointerException(env, "outValue");
796 AssetManager* am = assetManagerForJavaObject(env, clazz);
808 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
817 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
823 return copyValue(env, outValue, &res, value, ref, block, typeSpecFlags, &config);
829 static jint android_content_AssetManager_loadResourceBagValue(JNIEnv* env, jobject clazz,
833 AssetManager* am = assetManagerForJavaObject(env, clazz);
868 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
874 return copyValue(env, outValue, &res, value, ref, block, typeSpecFlags);
880 static jint android_content_AssetManager_getStringBlockCount(JNIEnv* env, jobject clazz)
882 AssetManager* am = assetManagerForJavaObject(env, clazz);
889 static jlong android_content_AssetManager_getNativeStringBlock(JNIEnv* env, jobject clazz,
892 AssetManager* am = assetManagerForJavaObject(env, clazz);
899 static jstring android_content_AssetManager_getCookieName(JNIEnv* env, jobject clazz,
902 AssetManager* am = assetManagerForJavaObject(env, clazz);
908 jniThrowException(env, "java/lang/IndexOutOfBoundsException", "Empty cookie name");
911 jstring str = env->NewStringUTF(name.string());
915 static jobject android_content_AssetManager_getAssignedPackageIdentifiers(JNIEnv* env, jobject clazz)
917 AssetManager* am = assetManagerForJavaObject(env, clazz);
924 jobject sparseArray = env->NewObject(gSparseArrayOffsets.classObject,
929 env->CallVoidMethod(sparseArray, gSparseArrayOffsets.put, (jint) res.getBasePackageId(i),
930 env->NewString(name, name.size()));
935 static jlong android_content_AssetManager_newTheme(JNIEnv* env, jobject clazz)
937 AssetManager* am = assetManagerForJavaObject(env, clazz);
944 static void android_content_AssetManager_deleteTheme(JNIEnv* env, jobject clazz,
951 static void android_content_AssetManager_applyThemeStyle(JNIEnv* env, jobject clazz,
960 static void android_content_AssetManager_copyTheme(JNIEnv* env, jobject clazz,
969 JNIEnv* env, jobject clazz, jlong themeHandle, jint ident, jobject outValue, jboolean resolve)
983 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
988 return block >= 0 ? copyValue(env, outValue, &res, value, ref, block, typeSpecFlags) : block;
991 static void android_content_AssetManager_dumpTheme(JNIEnv* env, jobject clazz,
1002 static jboolean android_content_AssetManager_resolveAttrs(JNIEnv* env, jobject clazz,
1012 jniThrowNullPointerException(env, "theme token");
1016 jniThrowNullPointerException(env, "attrs");
1020 jniThrowNullPointerException(env, "out values");
1032 const jsize NI = env->GetArrayLength(attrs);
1033 const jsize NV = env->GetArrayLength(outValues);
1035 jniThrowException(env, "java/lang/IndexOutOfBoundsException", "out values too small");
1039 jint* src = (jint*)env->GetPrimitiveArrayCritical(attrs, 0);
1044 jint* srcValues = (jint*)env->GetPrimitiveArrayCritical(inValues, 0);
1045 const jsize NSV = srcValues == NULL ? 0 : env->GetArrayLength(inValues);
1047 jint* baseDest = (jint*)env->GetPrimitiveArrayCritical(outValues, 0);
1050 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1057 if (env->GetArrayLength(outIndices) > NI) {
1058 indices = (jint*)env->GetPrimitiveArrayCritical(outIndices, 0);
1146 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1187 env->ReleasePrimitiveArrayCritical(outIndices, indices, 0);
1189 env->ReleasePrimitiveArrayCritical(outValues, baseDest, 0);
1190 env->ReleasePrimitiveArrayCritical(inValues, srcValues, 0);
1191 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1196 static jboolean android_content_AssetManager_applyStyle(JNIEnv* env, jobject clazz,
1206 jniThrowNullPointerException(env, "theme token");
1210 jniThrowNullPointerException(env, "attrs");
1214 jniThrowNullPointerException(env, "out values");
1227 const jsize NI = env->GetArrayLength(attrs);
1228 const jsize NV = env->GetArrayLength(outValues);
1230 jniThrowException(env, "java/lang/IndexOutOfBoundsException", "out values too small");
1234 jint* src = (jint*)env->GetPrimitiveArrayCritical(attrs, 0);
1239 jint* baseDest = (jint*)env->GetPrimitiveArrayCritical(outValues, 0);
1242 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1249 if (env->GetArrayLength(outIndices) > NI) {
1250 indices = (jint*)env->GetPrimitiveArrayCritical(outIndices, 0);
1392 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1433 env->ReleasePrimitiveArrayCritical(outIndices, indices, 0);
1435 env->ReleasePrimitiveArrayCritical(outValues, baseDest, 0);
1436 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1441 static jboolean android_content_AssetManager_retrieveAttributes(JNIEnv* env, jobject clazz,
1448 jniThrowNullPointerException(env, "xmlParserToken");
1452 jniThrowNullPointerException(env, "attrs");
1456 jniThrowNullPointerException(env, "out values");
1460 AssetManager* am = assetManagerForJavaObject(env, clazz);
1469 const jsize NI = env->GetArrayLength(attrs);
1470 const jsize NV = env->GetArrayLength(outValues);
1472 jniThrowException(env, "java/lang/IndexOutOfBoundsException", "out values too small");
1476 jint* src = (jint*)env->GetPrimitiveArrayCritical(attrs, 0);
1481 jint* baseDest = (jint*)env->GetPrimitiveArrayCritical(outValues, 0);
1484 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1491 if (env->GetArrayLength(outIndices) > NI) {
1492 indices = (jint*)env->GetPrimitiveArrayCritical(outIndices, 0);
1541 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1576 env->ReleasePrimitiveArrayCritical(outIndices, indices, 0);
1579 env->ReleasePrimitiveArrayCritical(outValues, baseDest, 0);
1580 env->ReleasePrimitiveArrayCritical(attrs, src, 0);
1585 static jint android_content_AssetManager_getArraySize(JNIEnv* env, jobject clazz,
1588 AssetManager* am = assetManagerForJavaObject(env, clazz);
1602 static jint android_content_AssetManager_retrieveArray(JNIEnv* env, jobject clazz,
1607 jniThrowNullPointerException(env, "out values");
1611 AssetManager* am = assetManagerForJavaObject(env, clazz);
1620 const jsize NV = env->GetArrayLength(outValues);
1622 jint* baseDest = (jint*)env->GetPrimitiveArrayCritical(outValues, 0);
1625 jniThrowException(env, "java/lang/OutOfMemoryError", "");
1654 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1684 env->ReleasePrimitiveArrayCritical(outValues, baseDest, 0);
1689 static jlong android_content_AssetManager_openXmlAssetNative(JNIEnv* env, jobject clazz,
1693 AssetManager* am = assetManagerForJavaObject(env, clazz);
1700 ScopedUtfChars fileName8(env, fileName);
1711 jniThrowException(env, "java/io/FileNotFoundException", fileName8.c_str());
1723 jniThrowException(env, "java/io/FileNotFoundException", "Corrupt XML binary file");
1730 static jintArray android_content_AssetManager_getArrayStringInfo(JNIEnv* env, jobject clazz,
1733 AssetManager* am = assetManagerForJavaObject(env, clazz);
1745 jintArray array = env->NewIntArray(N * 2);
1766 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1774 env->SetIntArrayRegion(array, j, 1, &stringBlock);
1775 env->SetIntArrayRegion(array, j + 1, 1, &stringIndex);
1782 static jobjectArray android_content_AssetManager_getArrayStringResource(JNIEnv* env, jobject clazz,
1785 AssetManager* am = assetManagerForJavaObject(env, clazz);
1797 jobjectArray array = env->NewObjectArray(N, g_stringClass, NULL);
1798 if (env->ExceptionCheck()) {
1814 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1822 str = env->NewStringUTF(str8);
1825 str = env->NewString(str16, strLen);
1830 if (env->ExceptionCheck()) {
1835 env->SetObjectArrayElement(array, i, str);
1840 env->DeleteLocalRef(str);
1847 static jintArray android_content_AssetManager_getArrayIntResource(JNIEnv* env, jobject clazz,
1850 AssetManager* am = assetManagerForJavaObject(env, clazz);
1862 jintArray array = env->NewIntArray(N);
1877 jniThrowException(env, "java/lang/IllegalStateException", "Bad resource!");
1884 env->SetIntArrayRegion(array, i, 1, &intVal);
1891 static jintArray android_content_AssetManager_getStyleAttributes(JNIEnv* env, jobject clazz,
1894 AssetManager* am = assetManagerForJavaObject(env, clazz);
1906 jintArray array = env->NewIntArray(N);
1916 env->SetIntArrayRegion(array, i, 1, &resourceId);
1922 static void android_content_AssetManager_init(JNIEnv* env, jobject clazz, jboolean isSystem)
1929 jniThrowException(env, "java/lang/OutOfMemoryError", "");
1936 env->SetLongField(clazz, gAssetManagerOffsets.mObject, reinterpret_cast<jlong>(am));
1939 static void android_content_AssetManager_destroy(JNIEnv* env, jobject clazz)
1942 (env->GetLongField(clazz, gAssetManagerOffsets.mObject));
1946 env->SetLongField(clazz, gAssetManagerOffsets.mObject, 0);
1950 static jint android_content_AssetManager_getGlobalAssetCount(JNIEnv* env, jobject clazz)
1955 static jobject android_content_AssetManager_getAssetAllocations(JNIEnv* env, jobject clazz)
1962 jstring str = env->NewStringUTF(alloc.string());
1966 static jint android_content_AssetManager_getGlobalAssetManagerCount(JNIEnv* env, jobject clazz)
2090 int register_android_content_AssetManager(JNIEnv* env)
2092 jclass typedValue = env->FindClass("android/util/TypedValue");
2095 = env->GetFieldID(typedValue, "type", "I");
2098 = env->GetFieldID(typedValue, "data", "I");
2101 = env->GetFieldID(typedValue, "string", "Ljava/lang/CharSequence;");
2104 = env->GetFieldID(typedValue, "assetCookie", "I");
2107 = env->GetFieldID(typedValue, "resourceId", "I");
2110 = env->GetFieldID(typedValue, "changingConfigurations", "I");
2112 gTypedValueOffsets.mDensity = env->GetFieldID(typedValue, "density", "I");
2115 jclass assetFd = env->FindClass("android/content/res/AssetFileDescriptor");
2118 = env->GetFieldID(assetFd, "mFd", "Landroid/os/ParcelFileDescriptor;");
2121 = env->GetFieldID(assetFd, "mStartOffset", "J");
2124 = env->GetFieldID(assetFd, "mLength", "J");
2127 jclass assetManager = env->FindClass("android/content/res/AssetManager");
2130 = env->GetFieldID(assetManager, "mObject", "J");
2133 jclass stringClass = env->FindClass("java/lang/String");
2135 g_stringClass = (jclass)env->NewGlobalRef(stringClass);
2138 jclass sparseArrayClass = env->FindClass("android/util/SparseArray");
2140 gSparseArrayOffsets.classObject = (jclass) env->NewGlobalRef(sparseArrayClass);
2142 env->GetMethodID(gSparseArrayOffsets.classObject, "<init>", "()V");
2145 env->GetMethodID(gSparseArrayOffsets.classObject, "put", "(ILjava/lang/Object;)V");
2148 return AndroidRuntime::registerNativeMethods(env,