
package de.ivu.elect.business.wahl.entity;

import static java.util.Arrays.stream;
import static java.util.stream.Collectors.toList;

import java.util.Collection;
import java.util.List;

public enum WahlParameterWahlbenachrichtigungStatus {

  EXTERNER_DRUCK_VORGESEHEN,
  EXTERNER_DRUCK_BEAUFTRAGT,
  EXTERNER_DRUCK_VERSANDT,

  ;

  WahlParameterWahlbenachrichtigungStatus() {
  }

  public static <T extends Enum<T>> List<T> valuesOf(T[] values) {
    Collection<String> names = stream(values()).map(WahlParameterWahlbenachrichtigungStatus::name).collect(toList());

    return stream(values).filter(value -> names.contains(value.name())).collect(toList());
  }
}
