sPFShared/src/main/java/it/polimi/spf/shared/model/ProfileFieldConverter.java
@SuppressWarnings("unchecked")
	public static <E> ProfileFieldConverter<E> forField(ProfileField<E> field) {
		Class<?> fieldClass = field.getFieldClass();

		if (fieldClass == String.class) {
			return (ProfileFieldConverter<E>) STRING_CONVERTER;
		} else if (fieldClass == Date.class) {
			return (ProfileFieldConverter<E>) DATE_CONVERTER;
		} else if (fieldClass == String[].class) {
			return (ProfileFieldConverter<E>) STRING_ARRAY_CONVERTER;
		} else if (fieldClass == Bitmap.class) {
			return (ProfileFieldConverter<E>) BITMAP_CONVERTER;
		}

		throw new IllegalArgumentException("Field type " + fieldClass.getSimpleName() + " not supported");
	}
@SuppressWarnings("unchecked")
	public static <E> ProfileFieldConverter<E> forField(ProfileField<E> field) {
		Class<?> fieldClass = field.getFieldClass();

		if (fieldClass == String.class) {
			return (ProfileFieldConverter<E>) STRING_CONVERTER;
		} else if (fieldClass == Date.class) {
			return (ProfileFieldConverter<E>) DATE_CONVERTER;
		} else if (fieldClass == String[].class) {
			return (ProfileFieldConverter<E>) STRING_ARRAY_CONVERTER;
		} else if (fieldClass == Bitmap.class) {
			return (ProfileFieldConverter<E>) BITMAP_CONVERTER;
		}

		throw new IllegalArgumentException("Field type " + fieldClass.getSimpleName() + " not supported");
	}
Returns a {@link ProfileFieldConverter} that can handle the value of a
given {@link ProfileField}

@param field
- the field whose values should be handled
@return - the {@link ProfileFieldConverter} that can handle those values