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

import javax.annotation.Nullable;

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

public class GebietsartIconMitIconColumn extends AbstractGebietsartColumn<Gebietsart> {

  private static final long serialVersionUID = 1L;

  private final AbstractGebietsartColumn<Gebietsart> column;

  public GebietsartIconMitIconColumn(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.getDisplayValue(gebietsart);
  }

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

  @Override
  public boolean isIconRendered(Gebietsart entity) {
    return true;
  }

  @Nullable
  @Override
  public String getIcon(Gebietsart gebietsart) {
    if (gebietsart == null) {
      return "";
    }

    return gebietsart.getIcon().getIcon();
  }
}
