diff options
| author | Richard Jones <rjones@trick.home.annexia.org> | 2009-05-19 12:05:43 +0100 |
|---|---|---|
| committer | Richard Jones <rjones@trick.home.annexia.org> | 2009-05-19 12:05:43 +0100 |
| commit | 1fc41b39dac877ccec1284da8bb14baa4df368b8 (patch) | |
| tree | 74d0693b6d97d796b75847ace4815109c17b3198 /java/com_redhat_et_libguestfs_GuestFS.c | |
| parent | d1df2f342489bbbba086cae2bb95971c8e404cad (diff) | |
| download | libguestfs-1fc41b39dac877ccec1284da8bb14baa4df368b8.tar.gz libguestfs-1fc41b39dac877ccec1284da8bb14baa4df368b8.tar.xz libguestfs-1fc41b39dac877ccec1284da8bb14baa4df368b8.zip | |
Generated code for 'find' command.
Diffstat (limited to 'java/com_redhat_et_libguestfs_GuestFS.c')
| -rw-r--r-- | java/com_redhat_et_libguestfs_GuestFS.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/java/com_redhat_et_libguestfs_GuestFS.c b/java/com_redhat_et_libguestfs_GuestFS.c index 1850f214..1e7f9de5 100644 --- a/java/com_redhat_et_libguestfs_GuestFS.c +++ b/java/com_redhat_et_libguestfs_GuestFS.c @@ -2930,3 +2930,36 @@ Java_com_redhat_et_libguestfs_GuestFS__1resize2fs } } +JNIEXPORT jobjectArray JNICALL +Java_com_redhat_et_libguestfs_GuestFS__1find + (JNIEnv *env, jobject obj, jlong jg, jstring jdirectory) +{ + guestfs_h *g = (guestfs_h *) (long) jg; + jobjectArray jr; + int r_len; + jclass cl; + jstring jstr; + char **r; + const char *directory; + int i; + + directory = (*env)->GetStringUTFChars (env, jdirectory, NULL); + r = guestfs_find (g, directory); + (*env)->ReleaseStringUTFChars (env, jdirectory, directory); + if (r == NULL) { + throw_exception (env, guestfs_last_error (g)); + return NULL; + } + for (r_len = 0; r[r_len] != NULL; ++r_len) ; + cl = (*env)->FindClass (env, "java/lang/String"); + jstr = (*env)->NewStringUTF (env, ""); + jr = (*env)->NewObjectArray (env, r_len, cl, jstr); + for (i = 0; i < r_len; ++i) { + jstr = (*env)->NewStringUTF (env, r[i]); + (*env)->SetObjectArrayElement (env, jr, i, jstr); + free (r[i]); + } + free (r); + return jr; +} + |
