package pt.ist.expenditureTrackingSystem.presentationTier.renderers.dataProvider;
import java.util.ArrayList;
import java.util.List;
import pt.ist.expenditureTrackingSystem.domain.acquisitions.refund.RefundProcess;
import pt.ist.expenditureTrackingSystem.domain.acquisitions.simplified.SimplifiedProcedureProcess;
import pt.ist.fenixWebFramework.renderers.DataProvider;
import pt.ist.fenixWebFramework.renderers.components.converters.BiDirectionalConverter;
import pt.ist.fenixWebFramework.renderers.components.converters.Converter;
public class AcquisitionProcessesTypesProvider implements DataProvider {
@Override
public Converter getConverter() {
return new BiDirectionalConverter() {
@Override
public Object convert(Class type, Object value) {
try {
return Class.forName((String) value);
} catch (ClassNotFoundException e) {
e.printStackTrace();
return null;
}
}
@Override
public String deserialize(Object object) {
return ((Class) object).getName();
}
};
}
@Override
public Object provide(Object arg0, Object arg1) {
List<Class> classes = new ArrayList<Class>();
classes.add(RefundProcess.class);
classes.add(SimplifiedProcedureProcess.class);
return classes;
}
}