
package de.ivu.elect.presentation.gebietsbaum.table;

import static org.apache.commons.lang3.StringUtils.isNotBlank;

import de.ivu.elect.business.gebietsbaum.entity.Gebiet;
import de.ivu.elect.business.gebietsbaum.entity.GebietConstants;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;
import de.ivu.elect.presentation.table.AbstractColumnEntry;

public class GebietNummerBezirkOderNummerColumn extends AbstractColumnEntry<Gebiet> {

  private static final long serialVersionUID = 1L;

  public GebietNummerBezirkOderNummerColumn(Messages messages) {
    super(messages);
  }

  @Override
  public ColumnType getType() {
    return ColumnType.STRING;
  }

  @Override
  public String getHeader() {
    return getMessage(GebietConstants.MESSAGE_KEY_NUMMER_EINZAHL);
  }

  @Override
  public Object getValue(Gebiet gebiet) {
    if (isNotBlank(gebiet.getNummerBezirk())) {
      return getMessage("gebiet.column.nummer.mit.bezirk.nummer.pattern", gebiet.getNummerBezirk(), gebiet.getNummer());
    }

    return gebiet.getNummer();
  }
}
