
package de.ivu.elect.dokumente.stimmzettel;

public enum StimmzettelExportCodeFormatDarstellung {

  KENNZAHL_NUMERISCH {

    @Override
    public boolean isKennzahlCodiertRendered() {
      return false;
    }

    @Override
    public boolean isKennzahlNumerischNewlineRequired() {
      return false;
    }
  },

  KENNZAHL_CODIERT_INLINE_KENNZAHL_NUMERISCH {

    @Override
    public boolean isKennzahlCodiertRendered() {
      return true;
    }

    @Override
    public boolean isKennzahlNumerischNewlineRequired() {
      return false;
    }
  },

  KENNZAHL_CODIERT_NEWLINE_KENNZAHL_NUMERISCH {

    @Override
    public boolean isKennzahlCodiertRendered() {
      return true;
    }

    @Override
    public boolean isKennzahlNumerischNewlineRequired() {
      return true;
    }
  },

  ;

  private StimmzettelExportCodeFormatDarstellung() {
  }

  public boolean isKennzahlRendered() {
    return isKennzahlCodiertRendered() || isKennzahlNumerischRendered();
  }

  public abstract boolean isKennzahlCodiertRendered();

  public boolean isKennzahlNumerischRendered() {
    return true;
  }

  public abstract boolean isKennzahlNumerischNewlineRequired();
}
