diff options
Diffstat (limited to 'java')
-rw-r--r-- | java/com/redhat/et/libguestfs/GuestFS.java | 54 | ||||
-rw-r--r-- | java/com_redhat_et_libguestfs_GuestFS.c | 60 |
2 files changed, 114 insertions, 0 deletions
diff --git a/java/com/redhat/et/libguestfs/GuestFS.java b/java/com/redhat/et/libguestfs/GuestFS.java index dc414d6a..515fc77b 100644 --- a/java/com/redhat/et/libguestfs/GuestFS.java +++ b/java/com/redhat/et/libguestfs/GuestFS.java @@ -2433,4 +2433,58 @@ public class GuestFS { private native void _grub_install (long g, String root, String device) throws LibGuestFSException; + /** + * copy a file + * + * This copies a file from "src" to "dest" where "dest" is + * either a destination filename or destination directory. + * + * @throws LibGuestFSException + */ + public void cp (String src, String dest) + throws LibGuestFSException + { + if (g == 0) + throw new LibGuestFSException ("cp: handle is closed"); + _cp (g, src, dest); + } + private native void _cp (long g, String src, String dest) + throws LibGuestFSException; + + /** + * copy a file or directory recursively + * + * This copies a file or directory from "src" to "dest" + * recursively using the "cp -a" command. + * + * @throws LibGuestFSException + */ + public void cp_a (String src, String dest) + throws LibGuestFSException + { + if (g == 0) + throw new LibGuestFSException ("cp_a: handle is closed"); + _cp_a (g, src, dest); + } + private native void _cp_a (long g, String src, String dest) + throws LibGuestFSException; + + /** + * move a file + * + * This moves a file from "src" to "dest" where "dest" is + * either a destination filename or destination directory. + * + * @throws LibGuestFSException + */ + public void mv (String src, String dest) + throws LibGuestFSException + { + if (g == 0) + throw new LibGuestFSException ("mv: handle is closed"); + _mv (g, src, dest); + } + private native void _mv (long g, String src, String dest) + throws LibGuestFSException; + } diff --git a/java/com_redhat_et_libguestfs_GuestFS.c b/java/com_redhat_et_libguestfs_GuestFS.c index d70f88a9..0f20d844 100644 --- a/java/com_redhat_et_libguestfs_GuestFS.c +++ b/java/com_redhat_et_libguestfs_GuestFS.c @@ -2457,3 +2457,63 @@ Java_com_redhat_et_libguestfs_GuestFS__1grub_1install } } +JNIEXPORT void JNICALL +Java_com_redhat_et_libguestfs_GuestFS__1cp + (JNIEnv *env, jobject obj, jlong jg, jstring jsrc, jstring jdest) +{ + guestfs_h *g = (guestfs_h *) (long) jg; + int r; + const char *src; + const char *dest; + + src = (*env)->GetStringUTFChars (env, jsrc, NULL); + dest = (*env)->GetStringUTFChars (env, jdest, NULL); + r = guestfs_cp (g, src, dest); + (*env)->ReleaseStringUTFChars (env, jsrc, src); + (*env)->ReleaseStringUTFChars (env, jdest, dest); + if (r == -1) { + throw_exception (env, guestfs_last_error (g)); + return ; + } +} + +JNIEXPORT void JNICALL +Java_com_redhat_et_libguestfs_GuestFS__1cp_1a + (JNIEnv *env, jobject obj, jlong jg, jstring jsrc, jstring jdest) +{ + guestfs_h *g = (guestfs_h *) (long) jg; + int r; + const char *src; + const char *dest; + + src = (*env)->GetStringUTFChars (env, jsrc, NULL); + dest = (*env)->GetStringUTFChars (env, jdest, NULL); + r = guestfs_cp_a (g, src, dest); + (*env)->ReleaseStringUTFChars (env, jsrc, src); + (*env)->ReleaseStringUTFChars (env, jdest, dest); + if (r == -1) { + throw_exception (env, guestfs_last_error (g)); + return ; + } +} + +JNIEXPORT void JNICALL +Java_com_redhat_et_libguestfs_GuestFS__1mv + (JNIEnv *env, jobject obj, jlong jg, jstring jsrc, jstring jdest) +{ + guestfs_h *g = (guestfs_h *) (long) jg; + int r; + const char *src; + const char *dest; + + src = (*env)->GetStringUTFChars (env, jsrc, NULL); + dest = (*env)->GetStringUTFChars (env, jdest, NULL); + r = guestfs_mv (g, src, dest); + (*env)->ReleaseStringUTFChars (env, jsrc, src); + (*env)->ReleaseStringUTFChars (env, jdest, dest); + if (r == -1) { + throw_exception (env, guestfs_last_error (g)); + return ; + } +} + |