public ZTFilePermissions getPermissions(File file) { ZTFilePermissions permissions = new ZTFilePermissions(); permissions.setDirectory(file.isDirectory()); Set<?> posixFilePermissions = getPosixFilePermissions(file); permissions.setOwnerCanRead( posixFilePermissions.contains(OWNER_READ)); permissions.setOwnerCanWrite( posixFilePermissions.contains(OWNER_WRITE)); permissions.setOwnerCanExecute(posixFilePermissions.contains(OWNER_EXECUTE)); permissions.setGroupCanRead( posixFilePermissions.contains(GROUP_READ)); permissions.setGroupCanWrite( posixFilePermissions.contains(GROUP_WRITE)); permissions.setGroupCanExecute(posixFilePermissions.contains(GROUP_EXECUTE)); permissions.setOthersCanRead( posixFilePermissions.contains(OTHERS_READ)); permissions.setOthersCanWrite( posixFilePermissions.contains(OTHERS_WRITE)); permissions.setOthersCanExecute(posixFilePermissions.contains(OTHERS_EXECUTE)); return permissions; }
/** * Convert Posix mode to {@link ZTFilePermissions} * * @param mode * @return */ static ZTFilePermissions fromPosixFileMode(int mode) { ZTFilePermissions permissions = new ZTFilePermissions(); permissions.setOwnerCanExecute( (mode & OWNER_EXECUTE_FLAG) > 0 ); permissions.setGroupCanExecute( (mode & GROUP_EXECUTE_FLAG) > 0 ); permissions.setOthersCanExecute((mode & OTHERS_EXECUTE_FLAG) > 0 ); permissions.setOwnerCanWrite( (mode & OWNER_WRITE_FLAG) > 0 ); permissions.setGroupCanWrite( (mode & GROUP_WRITE_FLAG) > 0 ); permissions.setOthersCanWrite((mode & OTHERS_WRITE_FLAG) > 0 ); permissions.setOwnerCanRead( (mode & OWNER_READ_FLAG) > 0 ); permissions.setGroupCanRead( (mode & GROUP_READ_FLAG) > 0 ); permissions.setOthersCanRead((mode & OTHERS_READ_FLAG) > 0 ); return permissions; }
public ZTFilePermissions getPermissions(File file) { ZTFilePermissions permissions = new ZTFilePermissions(); permissions.setDirectory(file.isDirectory()); Set<?> posixFilePermissions = getPosixFilePermissions(file); permissions.setOwnerCanRead( posixFilePermissions.contains(OWNER_READ)); permissions.setOwnerCanWrite( posixFilePermissions.contains(OWNER_WRITE)); permissions.setOwnerCanExecute(posixFilePermissions.contains(OWNER_EXECUTE)); permissions.setGroupCanRead( posixFilePermissions.contains(GROUP_READ)); permissions.setGroupCanWrite( posixFilePermissions.contains(GROUP_WRITE)); permissions.setGroupCanExecute(posixFilePermissions.contains(GROUP_EXECUTE)); permissions.setOthersCanRead( posixFilePermissions.contains(OTHERS_READ)); permissions.setOthersCanWrite( posixFilePermissions.contains(OTHERS_WRITE)); permissions.setOthersCanExecute(posixFilePermissions.contains(OTHERS_EXECUTE)); return permissions; }
/** * Convert Posix mode to {@link ZTFilePermissions} * * @param mode * @return */ static ZTFilePermissions fromPosixFileMode(int mode) { ZTFilePermissions permissions = new ZTFilePermissions(); permissions.setOwnerCanExecute( (mode & OWNER_EXECUTE_FLAG) > 0 ); permissions.setGroupCanExecute( (mode & GROUP_EXECUTE_FLAG) > 0 ); permissions.setOthersCanExecute((mode & OTHERS_EXECUTE_FLAG) > 0 ); permissions.setOwnerCanWrite( (mode & OWNER_WRITE_FLAG) > 0 ); permissions.setGroupCanWrite( (mode & GROUP_WRITE_FLAG) > 0 ); permissions.setOthersCanWrite((mode & OTHERS_WRITE_FLAG) > 0 ); permissions.setOwnerCanRead( (mode & OWNER_READ_FLAG) > 0 ); permissions.setGroupCanRead( (mode & GROUP_READ_FLAG) > 0 ); permissions.setOthersCanRead((mode & OTHERS_READ_FLAG) > 0 ); return permissions; }