summaryrefslogtreecommitdiff
path: root/libjava/java/nio/channels/natVMChannels.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/nio/channels/natVMChannels.cc')
-rw-r--r--libjava/java/nio/channels/natVMChannels.cc37
1 files changed, 37 insertions, 0 deletions
diff --git a/libjava/java/nio/channels/natVMChannels.cc b/libjava/java/nio/channels/natVMChannels.cc
new file mode 100644
index 000000000..d40a51653
--- /dev/null
+++ b/libjava/java/nio/channels/natVMChannels.cc
@@ -0,0 +1,37 @@
+// natVMChannels.cc - Native part of VMChannels class.
+
+/* Copyright (C) 2004, 2006 Free Software Foundation
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+#include <config.h>
+#include <gcj/cni.h>
+
+#include <java/nio/channels/VMChannels.h>
+#include <java/nio/channels/Channels.h>
+#include <java/io/FileInputStream.h>
+#include <java/io/FileOutputStream.h>
+#include <gnu/java/nio/channels/FileChannelImpl.h>
+
+using java::nio::channels::VMChannels;
+using java::io::FileInputStream;
+using java::io::FileOutputStream;
+using gnu::java::nio::channels::FileChannelImpl;
+
+FileInputStream*
+VMChannels::newInputStream(FileChannelImpl* ch)
+{
+ // Needs to be native to bypass Java access protection.
+ return new FileInputStream (ch);
+}
+
+FileOutputStream*
+VMChannels::newOutputStream(FileChannelImpl* ch)
+{
+ // Needs to be native to bypass Java access protection.
+ return new FileOutputStream (ch);
+}