import java.util.ArrayList;
import java.util.Objects;
import java.util.stream.Stream;

public class File {
  private final String name;
  private final ArrayList<String> lines = new ArrayList<>();

  public File(String name) {
    this.name = Objects.requireNonNull(name);
  }

  public String getName() {
    return name;
  }

  /**
   * @param line
   * @throws NPE if line is null
   */
  public void append(String line) {
    Objects.requireNonNull(line);
    lines.add(line);
  }

  public Stream<String> lines() {
    return lines.stream();
  }
}
