Lines Matching defs:env
47 static void throwExceptionWithRowCol(JNIEnv* env, jint row, jint column) {
52 jniThrowException(env, "java/lang/IllegalStateException", msg.string());
55 static void throwUnknownTypeException(JNIEnv * env, jint type) {
58 jniThrowException(env, "java/lang/IllegalStateException", msg.string());
61 static jint nativeCreate(JNIEnv* env, jclass clazz, jstring nameObj, jint cursorWindowSize) {
63 const char* nameStr = env->GetStringUTFChars(nameObj, NULL);
65 env->ReleaseStringUTFChars(nameObj, nameStr);
79 static jint nativeCreateFromParcel(JNIEnv* env, jclass clazz, jobject parcelObj) {
80 Parcel* parcel = parcelForJavaObject(env, parcelObj);
94 static void nativeDispose(JNIEnv* env, jclass clazz, jint windowPtr) {
102 static jstring nativeGetName(JNIEnv* env, jclass clazz, jint windowPtr) {
104 return env->NewStringUTF(window->name().string());
107 static void nativeWriteToParcel(JNIEnv * env, jclass clazz, jint windowPtr,
110 Parcel* parcel = parcelForJavaObject(env, parcelObj);
116 jniThrowRuntimeException(env, msg.string());
120 static void nativeClear(JNIEnv * env, jclass clazz, jint windowPtr) {
129 static jint nativeGetNumRows(JNIEnv* env, jclass clazz, jint windowPtr) {
134 static jboolean nativeSetNumColumns(JNIEnv* env, jclass clazz, jint windowPtr,
141 static jboolean nativeAllocRow(JNIEnv* env, jclass clazz, jint windowPtr) {
147 static void nativeFreeLastRow(JNIEnv* env, jclass clazz, jint windowPtr) {
152 static jint nativeGetType(JNIEnv* env, jclass clazz, jint windowPtr,
161 //throwExceptionWithRowCol(env, row, column);
167 static jbyteArray nativeGetBlob(JNIEnv* env, jclass clazz, jint windowPtr,
174 throwExceptionWithRowCol(env, row, column);
182 jbyteArray byteArray = env->NewByteArray(size);
184 env->ExceptionClear();
185 throw_sqlite3_exception(env, "Native could not create new byte[]");
188 env->SetByteArrayRegion(byteArray, 0, size, static_cast<const jbyte*>(value));
191 throw_sqlite3_exception(env, "INTEGER data in nativeGetBlob ");
193 throw_sqlite3_exception(env, "FLOAT data in nativeGetBlob ");
197 throwUnknownTypeException(env, type);
202 static jstring nativeGetString(JNIEnv* env, jclass clazz, jint windowPtr,
209 throwExceptionWithRowCol(env, row, column);
224 return env->NewString(reinterpret_cast<const jchar*>(utf16.string()), utf16.size());
229 return env->NewStringUTF(buf);
234 return env->NewStringUTF(buf);
238 throw_sqlite3_exception(env, "Unable to convert BLOB to string");
241 throwUnknownTypeException(env, type);
246 static jcharArray allocCharArrayBuffer(JNIEnv* env, jobject bufferObj, size_t size) {
247 jcharArray dataObj = jcharArray(env->GetObjectField(bufferObj,
250 jsize capacity = env->GetArrayLength(dataObj);
252 env->DeleteLocalRef(dataObj);
261 dataObj = env->NewCharArray(capacity); // might throw OOM
263 env->SetObjectField(bufferObj, gCharArrayBufferClassInfo.data, dataObj);
269 static void fillCharArrayBufferUTF(JNIEnv* env, jobject bufferObj,
275 jcharArray dataObj = allocCharArrayBuffer(env, bufferObj, size);
278 jchar* data = static_cast<jchar*>(env->GetPrimitiveArrayCritical(dataObj, NULL));
281 env->ReleasePrimitiveArrayCritical(dataObj, data, 0);
283 env->SetIntField(bufferObj, gCharArrayBufferClassInfo.sizeCopied, size);
287 static void clearCharArrayBuffer(JNIEnv* env, jobject bufferObj) {
288 jcharArray dataObj = allocCharArrayBuffer(env, bufferObj, 0);
290 env->SetIntField(bufferObj, gCharArrayBufferClassInfo.sizeCopied, 0);
294 static void nativeCopyStringToBuffer(JNIEnv* env, jclass clazz, jint windowPtr,
301 throwExceptionWithRowCol(env, row, column);
310 fillCharArrayBufferUTF(env, bufferObj, value, sizeIncludingNull - 1);
312 clearCharArrayBuffer(env, bufferObj);
318 fillCharArrayBufferUTF(env, bufferObj, buf, strlen(buf));
323 fillCharArrayBufferUTF(env, bufferObj, buf, strlen(buf));
325 clearCharArrayBuffer(env, bufferObj);
327 throw_sqlite3_exception(env, "Unable to convert BLOB to string");
329 throwUnknownTypeException(env, type);
333 static jlong nativeGetLong(JNIEnv* env, jclass clazz, jint windowPtr,
340 throwExceptionWithRowCol(env, row, column);
356 throw_sqlite3_exception(env, "Unable to convert BLOB to long");
359 throwUnknownTypeException(env, type);
364 static jdouble nativeGetDouble(JNIEnv* env, jclass clazz, jint windowPtr,
371 throwExceptionWithRowCol(env, row, column);
387 throw_sqlite3_exception(env, "Unable to convert BLOB to double");
390 throwUnknownTypeException(env, type);
395 static jboolean nativePutBlob(JNIEnv* env, jclass clazz, jint windowPtr,
398 jsize len = env->GetArrayLength(valueObj);
400 void* value = env->GetPrimitiveArrayCritical(valueObj, NULL);
402 env->ReleasePrimitiveArrayCritical(valueObj, value, JNI_ABORT);
413 static jboolean nativePutString(JNIEnv* env, jclass clazz, jint windowPtr,
417 size_t sizeIncludingNull = env->GetStringUTFLength(valueObj) + 1;
418 const char* valueStr = env->GetStringUTFChars(valueObj, NULL);
424 env->ReleaseStringUTFChars(valueObj, valueStr);
435 static jboolean nativePutLong(JNIEnv* env, jclass clazz, jint windowPtr,
449 static jboolean nativePutDouble(JNIEnv* env, jclass clazz, jint windowPtr,
463 static jboolean nativePutNull(JNIEnv* env, jclass clazz, jint windowPtr,
525 var = env->FindClass(className); \
529 var = env->GetFieldID(clazz, fieldName, fieldDescriptor); \
532 int register_android_database_CursorWindow(JNIEnv * env)
542 gEmptyString = jstring(env->NewGlobalRef(env->NewStringUTF("")));
545 return AndroidRuntime::registerNativeMethods(env, "android/database/CursorWindow",