package cactusServer.utils; import java.lang.annotation.Annotation; import java.lang.reflect.Type; import javax.ws.rs.ext.ParamConverter; import javax.ws.rs.ext.ParamConverterProvider; import javax.ws.rs.ext.Provider; /** * Rest系クラスのメソッドにおいて, FormParamアノテーションをつけた仮引数の型がFormParamの制約条件を<br> * 満たしていない場合に, 当該条件を満たさせる役割を担うクラス * @author r-isitani * */ @Provider public class MyParamConverterProvider implements ParamConverterProvider { @Override @SuppressWarnings("unchecked") public <T> ParamConverter<T> getConverter(Class<T> rawType, Type genericType, Annotation[] annotations) { if (rawType != null && !rawType.equals(String.class)) { return (ParamConverter<T>) new MyParamConverter(genericType); } return null; } }