throw new Error ("Not implemented");
boolean completed = false;  try { begin(); lockImpl(position, size, shared); completed = true; return new FileLockImpl(fd, this, position, size, shared); } finally { end(completed); }
  public FileLock lock (long position, long size, boolean shared)    throws IOException  {    if (position < 0        || size < 0)      throw new IllegalArgumentException ();    if (!isOpen ())      throw new ClosedChannelException ();    if (shared &&        file_obj instanceof FileOutputStream)      throw new NonReadableChannelException ();	    if (!shared &&        file_obj instanceof FileInputStream)      throw new NonWritableChannelException ();	    throw new Error ("Not implemented");  }