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

import static java.util.Objects.nonNull;

import de.ivu.elect.business.gebietsbaum.entity.Gebietsart;
import de.ivu.elect.jee.faces.Messages;
import de.ivu.elect.jee.presentation.dynamictable.ColumnType;
import de.ivu.elect.presentation.gebietsbaum.form.GebietsartViewFormBuilder;

public class GebietsartDarstellungColumn extends AbstractGebietsartColumn<Gebietsart> {

  private static final long serialVersionUID = 1L;

  private final AbstractGebietsartColumn<Gebietsart> column;

  public GebietsartDarstellungColumn(Messages messages, AbstractGebietsartColumn<Gebietsart> column) {
    super(null, messages, null, null, null);

    this.column = column;
  }

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

  @Override
  public String getHeader() {
    return column.getHeader();
  }

  @Override
  public Object getValue(Gebietsart gebietsart) {
    return column.getValue(gebietsart);
  }

  @Override
  public String getTooltip(Gebietsart gebietsart) {
    if (nonNull(gebietsart)) {
      return GebietsartViewFormBuilder.getDarstellungTooltip(getMessages());
    }

    return super.getTooltip(gebietsart);
  }
}
