List of usage examples for org.springframework.messaging.converter CompositeMessageConverter CompositeMessageConverter
public CompositeMessageConverter(Collection<MessageConverter> converters)
From source file:org.springframework.cloud.aws.messaging.core.NotificationMessagingTemplate.java
private void initMessageConverter(MessageConverter messageConverter) { List<MessageConverter> messageConverters = new ArrayList<>(); StringMessageConverter stringMessageConverter = new StringMessageConverter(); stringMessageConverter.setSerializedPayloadClass(String.class); messageConverters.add(stringMessageConverter); if (messageConverter != null) { messageConverters.add(messageConverter); } else if (JACKSON_2_PRESENT) { MappingJackson2MessageConverter mappingJackson2MessageConverter = new MappingJackson2MessageConverter(); mappingJackson2MessageConverter.setSerializedPayloadClass(String.class); messageConverters.add(mappingJackson2MessageConverter); }//from w w w.j a v a 2 s .c om setMessageConverter(new CompositeMessageConverter(messageConverters)); }
From source file:org.springframework.cloud.stream.converter.CompositeMessageConverterFactory.java
/** * Creation method./* w ww . java2s . c o m*/ * @param mimeType the target MIME type * @return a converter for the target MIME type */ public MessageConverter getMessageConverterForType(MimeType mimeType) { List<MessageConverter> converters = new ArrayList<>(); for (MessageConverter converter : this.converters) { if (converter instanceof AbstractMessageConverter) { for (MimeType type : ((AbstractMessageConverter) converter).getSupportedMimeTypes()) { if (type.includes(mimeType)) { converters.add(converter); } } } else { if (this.log.isDebugEnabled()) { this.log.debug("Ommitted " + converter + " of type " + converter.getClass().toString() + " for '" + mimeType.toString() + "' as it is not an AbstractMessageConverter"); } } } if (CollectionUtils.isEmpty(converters)) { throw new ConversionException("No message converter is registered for " + mimeType.toString()); } if (converters.size() > 1) { return new CompositeMessageConverter(converters); } else { return converters.get(0); } }
From source file:org.springframework.cloud.stream.converter.CompositeMessageConverterFactory.java
public CompositeMessageConverter getMessageConverterForAllRegistered() { return new CompositeMessageConverter(new ArrayList<>(this.converters)); }
From source file:org.springframework.cloud.aws.messaging.listener.QueueMessageHandler.java
private CompositeMessageConverter createPayloadArgumentCompositeConverter() { List<MessageConverter> payloadArgumentConverters = new ArrayList<>(); if (JACKSON_2_PRESENT) { MappingJackson2MessageConverter jacksonMessageConverter = new MappingJackson2MessageConverter(); jacksonMessageConverter.setSerializedPayloadClass(String.class); jacksonMessageConverter.setStrictContentTypeMatch(true); payloadArgumentConverters.add(jacksonMessageConverter); }// w w w. j av a 2 s.c om ObjectMessageConverter objectMessageConverter = new ObjectMessageConverter(); objectMessageConverter.setStrictContentTypeMatch(true); payloadArgumentConverters.add(objectMessageConverter); payloadArgumentConverters.add(new SimpleMessageConverter()); return new CompositeMessageConverter(payloadArgumentConverters); }
From source file:org.springframework.messaging.simp.annotation.support.SimpAnnotationMethodMessageHandler.java
/** * Create an instance of SimpAnnotationMethodMessageHandler with the given * message channels and broker messaging template. * @param clientInboundChannel the channel for receiving messages from clients (e.g. WebSocket clients) * @param clientOutboundChannel the channel for messages to clients (e.g. WebSocket clients) * @param brokerTemplate a messaging template to send application messages to the broker *//* ww w. ja va 2 s.c om*/ public SimpAnnotationMethodMessageHandler(SubscribableChannel clientInboundChannel, MessageChannel clientOutboundChannel, SimpMessageSendingOperations brokerTemplate) { Assert.notNull(clientInboundChannel, "clientInboundChannel must not be null"); Assert.notNull(clientOutboundChannel, "clientOutboundChannel must not be null"); Assert.notNull(brokerTemplate, "brokerTemplate must not be null"); this.clientInboundChannel = clientInboundChannel; this.clientMessagingTemplate = new SimpMessagingTemplate(clientOutboundChannel); this.brokerTemplate = brokerTemplate; Collection<MessageConverter> converters = new ArrayList<>(); converters.add(new StringMessageConverter()); converters.add(new ByteArrayMessageConverter()); this.messageConverter = new CompositeMessageConverter(converters); }