jnr.posix.windows.WindowsByHandleFileInformation Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of cassandra-driver Show documentation
Show all versions of cassandra-driver Show documentation
Shaded version of DataStax Java Driver for Apache Cassandra
The newest version!
package jnr.posix.windows;
/**
* BY_HANDLE_FILE_INFORMATION
*/
public class WindowsByHandleFileInformation extends CommonFileInformation {
final Unsigned32 dwFileAttributes = new Unsigned32();
// FIXME: I have no idea why I could not include FileTime here but having it do its own layout seems to change
// something.
final UnsignedLong chigh = new UnsignedLong();
final UnsignedLong clow = new UnsignedLong();
final UnsignedLong ahigh = new UnsignedLong();
final UnsignedLong alow = new UnsignedLong();
final UnsignedLong uhigh = new UnsignedLong();
final UnsignedLong ulow = new UnsignedLong();
final Unsigned32 dwVolumeSerialNumber = new Unsigned32();
final Unsigned32 nFileSizeHigh = new Unsigned32();
final Unsigned32 nFileSizeLow = new Unsigned32();
final Unsigned32 nNumberOfLinks = new Unsigned32();
final Unsigned32 nFileIndexHigh = new Unsigned32();
final Unsigned32 nFileIndexLow = new Unsigned32();
public WindowsByHandleFileInformation(jnr.ffi.Runtime runtime) {
super(runtime);
}
public HackyFileTime getCreationTime() {
return new HackyFileTime(chigh, clow);
}
public HackyFileTime getLastAccessTime() {
return new HackyFileTime(ahigh, alow);
}
public HackyFileTime getLastWriteTime() {
return new HackyFileTime(uhigh, ulow);
}
public int getFileAttributes() {
return dwFileAttributes.intValue();
}
public long getFileSizeHigh() {
return nFileSizeHigh.intValue();
}
public long getFileSizeLow() {
return nFileSizeLow.intValue();
}
}