FileLockImpl.java (fd): Remove field, replacing it by:
authorPer Bothner <bothner@gcc.gnu.org>
Sun, 29 Feb 2004 19:13:45 +0000 (11:13 -0800)
committerPer Bothner <bothner@gcc.gnu.org>
Sun, 29 Feb 2004 19:13:45 +0000 (11:13 -0800)
* gnu/java/nio/FileLockImpl.java (fd):  Remove field, replacing it by:
(ch):  New FileChannelImpl field.  Update constructor to match.
(releaseImpl):  Remove native method.  Instead ...
(release):  Call unlock on channel.
* gnu/java/nio/natFileLockImpl.cc:  Removed file.

From-SVN: r78663

libjava/gnu/java/nio/FileLockImpl.java
libjava/gnu/java/nio/natFileLockImpl.cc [deleted file]

index eff3320770f4fdc01a40d6d65296d852bc549251..23f67b8ded23ea64b233630e3015660f5c76686b 100644 (file)
@@ -40,9 +40,9 @@ package gnu.java.nio;
 
 import java.io.FileDescriptor;
 import java.io.IOException;
-import java.nio.channels.FileChannel;
-import java.nio.channels.FileLock;
+import java.nio.channels.*;
 import gnu.classpath.Configuration;
+import gnu.java.nio.channels.FileChannelImpl;
 
 /**
  * @author Michael Koch
@@ -59,13 +59,13 @@ public class FileLockImpl extends FileLock
       }
   }
   
-  private FileDescriptor fd;
+  private FileChannelImpl ch;
   
-  public FileLockImpl (FileDescriptor fd, FileChannel channel, long position,
+  public FileLockImpl (FileChannelImpl channel, long position,
                        long size, boolean shared)
   {
     super (channel, position, size, shared);
-    this.fd = fd;
+    ch = channel;
   }
 
   protected void finalize()
@@ -85,10 +85,8 @@ public class FileLockImpl extends FileLock
     return !channel().isOpen();
   }
 
-  private native void releaseImpl () throws IOException;
-
   public synchronized void release () throws IOException
   {
-    releaseImpl ();
+    ch.unlock(position(), size());
   }
 }
diff --git a/libjava/gnu/java/nio/natFileLockImpl.cc b/libjava/gnu/java/nio/natFileLockImpl.cc
deleted file mode 100644 (file)
index d3d01a1..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-// natFileLockImpl.cc
-
-/* Copyright (C) 2003  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 <jvm.h>
-#include <errno.h>
-
-#include <gnu/java/nio/FileLockImpl.h>
-#include <java/io/FileDescriptor.h>
-#include <java/io/IOException.h>
-
-void
-gnu::java::nio::FileLockImpl::releaseImpl ()
-{
-  fd->unlock(position(), size());
-}