Example usage for org.springframework.util MimeTypeUtils parseMimeType

List of usage examples for org.springframework.util MimeTypeUtils parseMimeType

Introduction

In this page you can find the example usage for org.springframework.util MimeTypeUtils parseMimeType.

Prototype

public static MimeType parseMimeType(String mimeType) 

Source Link

Document

Parse the given String into a single MimeType .

Usage

From source file:org.springframework.cloud.schema.avro.AvroMessageConverterSerializationTests.java

@Test
public void sourceWriteSameVersion() throws Exception {
    User specificRecord = new User();
    specificRecord.setName("joe");
    Schema v1 = new Schema.Parser().parse(AvroMessageConverterSerializationTests.class.getClassLoader()
            .getResourceAsStream("schemas/user.avsc"));
    GenericRecord genericRecord = new GenericData.Record(v1);
    genericRecord.put("name", "joe");
    SchemaRegistryClient client = new DefaultSchemaRegistryClient();
    AvroSchemaRegistryClientMessageConverter converter = new AvroSchemaRegistryClientMessageConverter(client);
    converter.setDynamicSchemaGenerationEnabled(false);
    converter.setContentTypeResolver(new StringConvertingContentTypeResolver());
    converter.setCacheManager(new ConcurrentMapCacheManager());
    converter.afterPropertiesSet();//w  w  w . ja va2s  .co m

    Message specificMessage = converter.toMessage(specificRecord,
            new MutableMessageHeaders(Collections.<String, Object>emptyMap()),
            MimeTypeUtils.parseMimeType("application/*+avro"));
    SchemaReference specificRef = extractSchemaReference(
            MimeTypeUtils.parseMimeType(specificMessage.getHeaders().get("contentType").toString()));

    Message genericMessage = converter.toMessage(genericRecord,
            new MutableMessageHeaders(Collections.<String, Object>emptyMap()),
            MimeTypeUtils.parseMimeType("application/*+avro"));
    SchemaReference genericRef = extractSchemaReference(
            MimeTypeUtils.parseMimeType(genericMessage.getHeaders().get("contentType").toString()));

    Assert.assertEquals(genericRef, specificRef);
    Assert.assertEquals(1, genericRef.getVersion());
}

From source file:org.springframework.cloud.stream.converter.JsonUnmarshallingConverter.java

private boolean canConvertFromBasedOnContentTypeHeader(Message<?> message) {
    Object contentTypeHeader = message.getHeaders().get(MessageHeaders.CONTENT_TYPE);
    if (contentTypeHeader instanceof String) {
        return MimeTypeUtils.APPLICATION_JSON.includes(MimeTypeUtils.parseMimeType((String) contentTypeHeader));
    } else if (contentTypeHeader instanceof MimeType) {
        return MimeTypeUtils.APPLICATION_JSON.includes((MimeType) contentTypeHeader);
    } else {//from w ww .  j a va 2s.  c  o  m
        return contentTypeHeader == null;
    }
}

From source file:org.springframework.messaging.handler.annotation.reactive.PayloadMethodArgumentResolver.java

/**
 * Return the mime type for the content. By default this method checks the
 * {@link MessageHeaders#CONTENT_TYPE} header expecting to find a
 * {@link MimeType} value or a String to parse to a {@link MimeType}.
 * @param message the input message/*from   w  w w.j  av  a 2 s. c  om*/
 */
@Nullable
protected MimeType getMimeType(Message<?> message) {
    Object headerValue = message.getHeaders().get(MessageHeaders.CONTENT_TYPE);
    if (headerValue == null) {
        return null;
    } else if (headerValue instanceof String) {
        return MimeTypeUtils.parseMimeType((String) headerValue);
    } else if (headerValue instanceof MimeType) {
        return (MimeType) headerValue;
    } else {
        throw new IllegalArgumentException("Unexpected MimeType value: " + headerValue);
    }
}