// DO NOT EDIT THIS FILE - it is machine generated -*- c++ -*-

#ifndef __java_nio_channels_FileLock__
#define __java_nio_channels_FileLock__

#pragma interface

#include <java/lang/Object.h>
extern "Java"
{
  namespace java
  {
    namespace nio
    {
      namespace channels
      {
          class FileChannel;
          class FileLock;
      }
    }
  }
}

class java::nio::channels::FileLock : public ::java::lang::Object
{

public: // actually protected
  FileLock(::java::nio::channels::FileChannel *, jlong, jlong, jboolean);
public:
  virtual jboolean isValid() = 0;
  virtual void release() = 0;
  virtual ::java::nio::channels::FileChannel * channel();
  virtual jboolean isShared();
  virtual jboolean overlaps(jlong, jlong);
  virtual jlong position();
  virtual jlong size();
  virtual ::java::lang::String * toString();
private:
  ::java::nio::channels::FileChannel * __attribute__((aligned(__alignof__( ::java::lang::Object)))) channel__;
  jlong position__;
  jlong size__;
  jboolean shared;
public:
  static ::java::lang::Class class$;
};

#endif // __java_nio_channels_FileLock__