Newer
Older
CactusServer / src / main / java / cactusServer / utils / MyParamConverterProvider.java
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;
	}
}