class MultivaluedMapEntityProvider implements EntityProvider<MultivaluedMap<String, String>> {

    @Override
    public boolean isReadable(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) {
        if (type == MultivaluedMap.class) {
            try {
                ParameterizedType parameterizedType = (ParameterizedType)genericType;
                Type[] typeArguments = parameterizedType.getActualTypeArguments();
                return typeArguments.length == 2 && typeArguments[0] == String.class && typeArguments[1] == String.class;
            } catch (ClassCastException e) {
                return false;
            }
        }
        return false;
    }

    public  MultivaluedMapEntityProvider(@Context HttpServletRequest httpRequest);

}