private Object convertToUrlEncoded(Object content, MediaType contentType) { if (contentType.match(APPLICATION_OCTET_STREAM)) { return StandardConversions.convertOctetStreamToUrlEncoded(content, contentType); } if (contentType.match(APPLICATION_OBJECT)) { return StandardConversions.convertUrlEncodedToObject(content); } if (contentType.match(TEXT_PLAIN)) { return StandardConversions.convertTextToUrlEncoded(content, contentType); } if (contentType.match(APPLICATION_WWW_FORM_URLENCODED)) { return content; } throw log.unsupportedContent(content); }
private Object convertToObject(Object content, MediaType contentType, MediaType destinationType) { if (contentType.match(APPLICATION_OCTET_STREAM)) { byte[] decoded = StandardConversions.decodeOctetStream(content, destinationType); return StandardConversions.convertOctetStreamToJava(decoded, destinationType, javaMarshaller); } if (contentType.match(APPLICATION_OBJECT)) { return StandardConversions.decodeObjectContent(content, contentType); } if (contentType.match(TEXT_PLAIN)) { return StandardConversions.convertTextToObject(content, contentType); } if (contentType.match(APPLICATION_WWW_FORM_URLENCODED)) { return StandardConversions.convertUrlEncodedToObject(content); } if (contentType.equals(MediaType.APPLICATION_UNKNOWN)) { if (content instanceof byte[]) { return tryDeserialize((byte[]) content); } if (content instanceof WrappedByteArray) { return tryDeserialize(((WrappedByteArray) content).getBytes()); } return content; } throw log.unsupportedContent(content); }