Package org.refcodes.net
Class JsonMediaTypeFactory
- java.lang.Object
-
- org.refcodes.net.JsonMediaTypeFactory
-
- All Implemented Interfaces:
org.refcodes.factory.MarshalFactory<java.lang.String>
,org.refcodes.factory.MarshalFactory.MarshalFactoryComplement<java.lang.String>
,org.refcodes.factory.MarshalFactory.MarshalFactoryComposite<java.lang.String,java.io.InputStream>
,org.refcodes.factory.UnmarshalFactory<java.lang.String>
,org.refcodes.factory.UnmarshalFactory.UnmarshalFactoryComplement<java.lang.String>
,org.refcodes.factory.UnmarshalFactory.UnmarshalFactoryComposite<java.lang.String,java.io.InputStream>
,MediaTypeFactory
,MediaTypesAccessor
public class JsonMediaTypeFactory extends java.lang.Object implements MediaTypeFactory
Implements theMediaTypeFactory
for Media-Type "application/json" (MediaType.APPLICATION_JSON
). CAUTION: This implementation uses field resolution instead of getter/setter property resolution as of the used marshaling API.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.refcodes.factory.MarshalFactory
org.refcodes.factory.MarshalFactory.MarshalFactoryComplement<C extends java.lang.Object>, org.refcodes.factory.MarshalFactory.MarshalFactoryComposite<T extends java.lang.Object,C extends java.lang.Object>
-
Nested classes/interfaces inherited from interface org.refcodes.net.MediaTypesAccessor
MediaTypesAccessor.MediaTypesBuilder<B extends MediaTypesAccessor.MediaTypesBuilder<B>>, MediaTypesAccessor.MediaTypesMutator, MediaTypesAccessor.MediaTypesProperty
-
Nested classes/interfaces inherited from interface org.refcodes.factory.UnmarshalFactory
org.refcodes.factory.UnmarshalFactory.UnmarshalFactoryComplement<C extends java.lang.Object>, org.refcodes.factory.UnmarshalFactory.UnmarshalFactoryComposite<T extends java.lang.Object,C extends java.lang.Object>
-
-
Field Summary
-
Fields inherited from interface org.refcodes.net.MediaTypeFactory
ARRAY_SELECTOR, COLLECTION_SELECTOR, TYPE_ANNOTATION, VALUE_SELECTOR
-
-
Constructor Summary
Constructors Constructor Description JsonMediaTypeFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MediaType[]
getMediaTypes()
Retrieves the Media-Types from the Media-Types property.protected java.lang.String
toElementName(java.lang.Class<?> aClass)
Creates an element name for the class.java.lang.String
toMarshaled(java.lang.Object aObject)
protected java.lang.String
toPlainJson(java.lang.String aJson)
Removes any prefixed variable declaration.protected java.lang.String
toUnboxed(java.lang.String aJson)
Unboxes any enveloped JSON.<T> T
toUnmarshaled(java.lang.String aHttpBody, java.lang.Class<T> aType)
protected java.lang.String
toVariableDeclaration(java.lang.Class<?> aClass)
Returns the JSON specific assignment declaration for the given class.-
Methods inherited from interface org.refcodes.net.MediaTypeFactory
fromMarshaled, fromMarshaled, fromMarshaled, fromMarshaled, fromUnmarshaled, fromUnmarshaled
-
-
-
-
Method Detail
-
getMediaTypes
public MediaType[] getMediaTypes()
Retrieves the Media-Types from the Media-Types property.- Specified by:
getMediaTypes
in interfaceMediaTypesAccessor
- Returns:
- The Media-Types stored by the Media-Types property.
-
toMarshaled
public java.lang.String toMarshaled(java.lang.Object aObject) throws org.refcodes.exception.MarshalException
- Specified by:
toMarshaled
in interfaceorg.refcodes.factory.MarshalFactory<java.lang.String>
- Throws:
org.refcodes.exception.MarshalException
-
toUnmarshaled
public <T> T toUnmarshaled(java.lang.String aHttpBody, java.lang.Class<T> aType) throws org.refcodes.exception.UnmarshalException
- Specified by:
toUnmarshaled
in interfaceorg.refcodes.factory.UnmarshalFactory<java.lang.String>
- Throws:
org.refcodes.exception.UnmarshalException
-
toPlainJson
protected java.lang.String toPlainJson(java.lang.String aJson)
Removes any prefixed variable declaration.- Parameters:
aJson
- The JSON from which to remove any prefixed variable declaration.- Returns:
- The JSON without any prefixed variable declaration.
-
toUnboxed
protected java.lang.String toUnboxed(java.lang.String aJson)
Unboxes any enveloped JSON.- Parameters:
aJson
- The JSON to be unboxed.- Returns:
- The unboxed JSON.
-
toElementName
protected java.lang.String toElementName(java.lang.Class<?> aClass)
Creates an element name for the class.- Parameters:
aClass
- The class from which to retrieve the element name.- Returns:
- The element name for the class.
-
toVariableDeclaration
protected java.lang.String toVariableDeclaration(java.lang.Class<?> aClass)
Returns the JSON specific assignment declaration for the given class.- Parameters:
aClass
- The class for which to construct the assignment declaration.- Returns:
- The according assignment declaration.
-
-