package org.ovirt.engine.ui.common.widget.table.column; import org.ovirt.engine.ui.uicommonweb.models.EntityModel; /** * Enum column based on {@link EntityModel}'s entity value. * * @param <T> * Entity value type. * @param <E> * Enum type. */ public abstract class AbstractEntityModelEnumColumn<T, E extends Enum<E>> extends AbstractEnumColumn<EntityModel, E> { @SuppressWarnings("unchecked") @Override protected E getRawValue(EntityModel object) { return object == null ? null : getEnum((T) object.getEntity()); } /** * Get the enum wrapped inside the entity. */ protected abstract E getEnum(T entity); }