package fr.umlv.conc;

import java.util.ArrayList;
import java.util.List;

public class MountainTrain {
  private final int capacity;
  private final ArrayList<String> train = new ArrayList<>();

  public MountainTrain(int capacity) {
    this.capacity = capacity;
  }
  
  public void getOn(String name) {
    if (train.size() == capacity) {
        throw new IllegalStateException();
    }
    train.add(name);
  }
  
  public void getAllOf(List<? super String> list) {
    list.addAll(train);
    train.clear();
  }
}
