code: @Override
    public FSDataOutputStream createNonRecursive(
        Path hadoopPath,
        FsPermission permission,
        EnumSet<org.apache.hadoop.fs.CreateFlag> flags,
        int bufferSize,
        short replication,
        long blockSize,
        Progressable progress)
        throws IOException {
      URI gcsPath = getGcsPath(checkNotNull(hadoopPath, "hadoopPath must not be null"));
      URI parentGcsPath = getGcsFs().getParentPath(gcsPath);
      GoogleCloudStorageItemInfo parentInfo = getGcsFs().getFileInfo(parentGcsPath).getItemInfo();
      if (!parentInfo.isRoot() && !parentInfo.isBucket() && !parentInfo.exists()) {
        throw new FileNotFoundException(
            String.format(
                "Can not create '%s' file, because parent folder does not exist: %s",
                gcsPath, parentGcsPath));
      }
      return create(
          hadoopPath,
          permission,
          flags.contains(org.apache.hadoop.fs.CreateFlag.OVERWRITE),
          bufferSize,
          replication,
          blockSize,
          progress);
    }
docs: {@inheritDoc}