EnumConverter.java
/*
* CSVeed (https://github.com/42BV/CSVeed)
*
* Copyright 2013-2023 CSVeed.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of The Apache Software License,
* Version 2.0 which accompanies this distribution, and is available at
* https://www.apache.org/licenses/LICENSE-2.0.txt
*/
package org.csveed.bean.conversion;
/**
* The Class EnumConverter.
*
* @param <T>
* the generic type
*/
public class EnumConverter<T extends Enum> extends AbstractConverter<T> {
/** The enum class. */
public final Class<T> enumClass;
/**
* Instantiates a new enum converter.
*
* @param enumClass
* the enum class
*/
public EnumConverter(Class<T> enumClass) {
super(enumClass);
this.enumClass = enumClass;
}
@Override
public T fromString(String text) throws Exception {
return (T) Enum.valueOf(this.enumClass, text);
}
@Override
public String toString(T value) throws Exception {
return value.toString();
}
}