org.simpleflatmapper.reflect.getter.OrdinalEnumGetter Maven / Gradle / Ivy
package org.simpleflatmapper.reflect.getter;
import org.simpleflatmapper.reflect.Getter;
import org.simpleflatmapper.reflect.primitive.IntGetter;
import java.util.Arrays;
public final class OrdinalEnumGetter> implements Getter {
private final IntGetter getter;
private final E[] values;
public OrdinalEnumGetter(IntGetter getter, final Class enumType) {
this.getter = getter;
this.values = enumType.getEnumConstants();
}
@Override
public E get(final R target) throws Exception {
return values[getter.getInt(target)];
}
@Override
public String toString() {
return "OrdinalEnumResultSetGetter{" +
"getter=" + getter +
", values=" + Arrays.toString(values) +
'}';
}
}