FileLockImpl.java (fd): Remove field, replacing it by:

* 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
This commit is contained in:
Per Bothner 2004-02-29 11:13:45 -08:00
parent d199feb748
commit 3ae1e52c91
2 changed files with 6 additions and 32 deletions

View 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());
}
}