@Override
  public void set(File file, String view, String attribute, Object value, boolean create) {
    switch (attribute) {
      case "creationTime":
        checkNotCreate(view, attribute, create);
        file.setCreationTime(checkType(view, attribute, value, FileTime.class));
        break;
      case "lastAccessTime":
        checkNotCreate(view, attribute, create);
        file.setLastAccessTime(checkType(view, attribute, value, FileTime.class));
        break;
      case "lastModifiedTime":
        checkNotCreate(view, attribute, create);
        file.setLastModifiedTime(checkType(view, attribute, value, FileTime.class));
        break;
      case "size":
      case "fileKey":
      case "isDirectory":
      case "isRegularFile":
      case "isSymbolicLink":
      case "isOther":
        throw unsettable(view, attribute, create);
      default:
    }
  }
Attribute provider that provides attributes common to all file systems, the {@link
BasicFileAttributeView} ("basic" or no view prefix), and allows the reading of {@link
BasicFileAttributes}.

@author Colin Decker
jimfs/src/main/java/com/google/common/jimfs/BasicAttributeProvider.java