package org.webpieces.router.impl.params;
import java.util.function.Function;
import org.webpieces.router.api.ObjectStringConverter;
public class PrimitiveConverter<T> implements ObjectStringConverter<T> {
private Function<String, T> toObj;
private Function<T, String> toStr;
private Class<T> clazz;
public PrimitiveConverter(Class<T> clazz, Function<String, T> toObj, Function<T, String> toStr) {
this.clazz = clazz;
this.toObj = toObj;
this.toStr = toStr;
}
@Override
public Class<T> getConverterType() {
return clazz;
}
@Override
public T stringToObject(String value) {
return toObj.apply(value);
}
@Override
public String objectToString(T value) {
return toStr.apply(value);
}
}