Package org.restlet.engine.converter
Class ConverterHelper
java.lang.Object
org.restlet.engine.Helper
org.restlet.engine.converter.ConverterHelper
- Direct Known Subclasses:
DefaultConverter,StatusInfoHtmlConverter
Converter between Representations and regular Java objects.
- Author:
- Jerome Louvel
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddObjectClass(List<Class<?>> objectClasses, Class<?> objectClass) Adds an object class to the given list.protected List<VariantInfo>addVariant(List<VariantInfo> variants, VariantInfo userVariant) Adds a variant to the given list.addVariants(Class<?> sourceClass, Variant targetVariant, List<VariantInfo> variants) Returns the list of variants that can be converted from a given object class.getObjectClasses(Variant source) Returns the list of object classes that can be converted from a given variant.abstract List<VariantInfo>getVariants(Class<?> source) Returns the list of variants that can be converted from a given object class.getVariants(Class<?> sourceClass, Variant targetVariant) Returns the list of variants that can be converted from a given object class by a specific converter helper.abstract floatScores the affinity of this helper with the source class.abstract <T> floatscore(Representation source, Class<T> target, Resource resource) Scores the affinity of this helper with the source class.abstract <T> TtoObject(Representation source, Class<T> target, Resource resource) Converts a Representation into a regular Java object.abstract RepresentationtoRepresentation(Object source, Variant target, Resource resource) Converts a regular Java object into a Representation.<T> voidupdatePreferences(List<Preference<MediaType>> preferences, Class<T> entity) Updates the preferences of the givenClientInfoobject with conversion capabilities for the given entity class.voidupdatePreferences(List<Preference<MediaType>> preferences, MediaType mediaType, float score) Updates the preferences of the givenClientInfoobject with conversion capabilities for the given entity class.
-
Constructor Details
-
ConverterHelper
public ConverterHelper()
-
-
Method Details
-
addObjectClass
Adds an object class to the given list. Creates a new list if necessary.- Parameters:
objectClasses- The object classes list to update or null.objectClass- The object class to add.- Returns:
- The input object classes list or a new one.
-
addVariant
Adds a variant to the given list. Creates a new list if necessary.- Parameters:
variants- The variants list to update or null.userVariant- The variant to add if not null.- Returns:
- The input variants list or a new one.
-
addVariants
public List<VariantInfo> addVariants(Class<?> sourceClass, Variant targetVariant, List<VariantInfo> variants) throws IOException Returns the list of variants that can be converted from a given object class.- Parameters:
sourceClass- The source class.targetVariant- The expected representation metadata.variants- The variants list to update.- Returns:
- The list of variants that can be converted from a given object class.
- Throws:
IOException
-
getObjectClasses
Returns the list of object classes that can be converted from a given variant.- Parameters:
source- The source variant.- Returns:
- The list of object class that can be converted.
-
getVariants
Returns the list of variants that can be converted from a given object class. The preferred variant should be set in first position.- Parameters:
source- The source object class.- Returns:
- The list of variants that can be converted.
- Throws:
IOException
-
getVariants
public List<VariantInfo> getVariants(Class<?> sourceClass, Variant targetVariant) throws IOException Returns the list of variants that can be converted from a given object class by a specific converter helper.- Parameters:
sourceClass- The source class.targetVariant- The expected representation metadata.- Returns:
- The list of variants that can be converted.
- Throws:
IOException
-
score
Scores the affinity of this helper with the source class.- Parameters:
source- The source object to convert.target- The expected representation metadata.resource- The calling resource.- Returns:
- The affinity score of this helper.
-
score
Scores the affinity of this helper with the source class.- Type Parameters:
T- The expected class of the Java object.- Parameters:
source- The source representation to convert.target- The expected class of the Java object.resource- The calling resource.- Returns:
- The affinity score of this helper.
-
toObject
public abstract <T> T toObject(Representation source, Class<T> target, Resource resource) throws IOException Converts a Representation into a regular Java object.- Type Parameters:
T- The expected class of the Java object.- Parameters:
source- The source representation to convert.target- The expected class of the Java object.resource- The calling resource.- Returns:
- The converted Java object.
- Throws:
IOException
-
toRepresentation
public abstract Representation toRepresentation(Object source, Variant target, Resource resource) throws IOException Converts a regular Java object into a Representation.- Parameters:
source- The source object to convert.target- The expected representation metadata.resource- The calling resource.- Returns:
- The converted representation.
- Throws:
IOException
-
updatePreferences
Updates the preferences of the givenClientInfoobject with conversion capabilities for the given entity class.- Parameters:
preferences- The media type preferences.entity- The entity class to convert.
-
updatePreferences
public void updatePreferences(List<Preference<MediaType>> preferences, MediaType mediaType, float score) Updates the preferences of the givenClientInfoobject with conversion capabilities for the given entity class.- Parameters:
preferences- The media type preferences.mediaType- The media type to update to add to the preferences.score- The media type score to use as a quality score.
-