org.springframework.messaging.MessageHeaders.CONTENT_TYPE

Here are the examples of the java api org.springframework.messaging.MessageHeaders.CONTENT_TYPE taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.

119 Examples 7

19 Source : SenderService.java
with Apache License 2.0
from zlt2000

/**
 * 发送带tag的对象消息
 */
public <T> void sendWithTags(T msg, String tag) {
    Message message = MessageBuilder.withPayload(msg).setHeader(MessageConst.PROPERTY_TAGS, tag).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    source.output().send(message);
}

19 Source : DownloadTask.java
with MIT License
from xwlcn

@Override
public void run() {
    // 由于下载线程消费的速度总是比 dht server 生产的速度慢,所以要做一下时间限制,否则程序越跑越慢
    if (SystemClock.now() - msgInfo.getTimestamp() >= Constants.MAX_LOSS_TIME) {
        return;
    }
    PeerWireClient wireClient = new PeerWireClient();
    // 设置下载完成监听器
    wireClient.setOnFinishedListener((torrent) -> {
        if (torrent == null) {
            // 下载失败
            return;
        }
        RedisTemplate redisTemplate = (RedisTemplate) SpringContextUtil.getBean("redisTemplate");
        torrent.setCreateDate(msgInfo.getTimestamp());
        redisTemplate.opsForValue().set(msgInfo.getInfoHash(), new byte[0]);
        messageStreams = (MessageStreams) SpringContextUtil.getBean(MessageStreams.clreplaced);
        // 丢进 kafka 消息队列进行入库及索引操作
        messageStreams.torrentMessageOutput().send(MessageBuilder.withPayload(torrent).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build());
        log.info("[{}:{}] Download torrent success, info hash is {}", msgInfo.getIp(), msgInfo.getPort(), torrent.getInfoHash());
    });
    wireClient.downloadMetadata(new InetSocketAddress(msgInfo.getIp(), msgInfo.getPort()), msgInfo.getNodeId(), msgInfo.getInfoHash());
}

19 Source : DHTServerHandler.java
with MIT License
from xwlcn

/**
 * 回复 announce_peer 请求,该请求中包含了对方正在下载的 torrent 的 info_hash 以及 端口号
 * Response = {"t":"aa", "y":"r", "r": {"id":"mnopqrstuvwxyz123456"}}
 *
 * @param t
 * @param a      请求参数 a:
 *               {
 *               "id" : "",
 *               "implied_port": <0 or 1>,    //为1时表示当前自身的端口就是下载端口
 *               "info_hash" : "<20-byte infohash of target torrent>",
 *               "port" : ,
 *               "token" : "" //get_peer 中回复的 token,用于检测是否一致
 *               }
 * @param sender
 */
private void responseAnnouncePeer(byte[] t, Map a, InetSocketAddress sender) {
    byte[] info_hash = (byte[]) a.get("info_hash");
    byte[] token = (byte[]) a.get("token");
    byte[] id = (byte[]) a.get("id");
    if (token.length != 2 || info_hash[0] != token[0] || info_hash[1] != token[1])
        return;
    int port;
    if (a.containsKey("implied_port") && ((BigInteger) a.get("implied_port")).shortValue() != 0) {
        port = sender.getPort();
    } else {
        port = ((BigInteger) a.get("port")).intValue();
    }
    HashMap<String, Object> r = new HashMap<>();
    byte[] nodeId = NodeIdUtil.getNeighbor(DHTServer.SELF_NODE_ID, id);
    r.put("id", nodeId);
    DatagramPacket packet = createPacket(t, "r", r, sender);
    dhtServer.sendKRPC(packet);
    // check exists, if exists then add to bloom filter
    if (redisTemplate.hasKey(info_hash)) {
        dhtServer.bloomFilter.add(ByteUtil.byteArrayToHex(info_hash));
        return;
    }
    log.error("info_hash[AnnouncePeer] : {}:{} - {}", sender.getHostString(), port, ByteUtil.byteArrayToHex(info_hash));
    // send to kafka
    messageStreams.downloadMessageOutput().send(MessageBuilder.withPayload(new DownloadMsgInfo(sender.getHostString(), port, nodeId, info_hash)).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build());
}

19 Source : MessageHeaderAccessorTests.java
with MIT License
from Vip-Augus

@Test
public void serializeMutableHeaders() throws Exception {
    Map<String, Object> headers = new HashMap<>();
    headers.put("foo", "bar");
    Message<String> message = new GenericMessage<>("test", headers);
    MessageHeaderAccessor mutableAccessor = MessageHeaderAccessor.getMutableAccessor(message);
    mutableAccessor.setContentType(MimeTypeUtils.TEXT_PLAIN);
    message = new GenericMessage<>(message.getPayload(), mutableAccessor.getMessageHeaders());
    Message<?> output = (Message<?>) SerializationTestUtils.serializeAndDeserialize(message);
    replacedertEquals("test", output.getPayload());
    replacedertEquals("bar", output.getHeaders().get("foo"));
    replacedertNotNull(output.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}

19 Source : MessageSendingTemplateTests.java
with MIT License
from Vip-Augus

@Test
public void convertAndSendPayloadAndMutableHeadersToDestination() {
    MessageHeaderAccessor accessor = new MessageHeaderAccessor();
    accessor.setHeader("foo", "bar");
    accessor.setLeaveMutable(true);
    MessageHeaders messageHeaders = accessor.getMessageHeaders();
    this.template.setMessageConverter(new StringMessageConverter());
    this.template.convertAndSend("somewhere", "payload", messageHeaders);
    MessageHeaders actual = this.template.message.getHeaders();
    replacedertSame(messageHeaders, actual);
    replacedertEquals(new MimeType("text", "plain", StandardCharsets.UTF_8), actual.get(MessageHeaders.CONTENT_TYPE));
    replacedertEquals("bar", actual.get("foo"));
}

19 Source : MessageSendingTemplateTests.java
with MIT License
from Vip-Augus

@Test(expected = MessageConversionException.clreplaced)
public void convertAndSendNoMatchingConverter() {
    MessageConverter converter = new CompositeMessageConverter(Arrays.<MessageConverter>asList(new MappingJackson2MessageConverter()));
    this.template.setMessageConverter(converter);
    this.headers.put(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_XML);
    this.template.convertAndSend("home", "payload", new MessageHeaders(this.headers));
}

19 Source : StringMessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void fromMessageCharset() {
    String payload = "H\u00e9llo W\u00f6rld";
    Message<byte[]> message = MessageBuilder.withPayload(payload.getBytes(StandardCharsets.ISO_8859_1)).setHeader(MessageHeaders.CONTENT_TYPE, new MimeType("text", "plain", StandardCharsets.ISO_8859_1)).build();
    replacedertEquals(payload, this.converter.fromMessage(message, String.clreplaced));
}

19 Source : StringMessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessage() {
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN);
    MessageHeaders headers = new MessageHeaders(map);
    Message<?> message = this.converter.toMessage("ABC", headers);
    replacedertEquals("ABC", new String(((byte[]) message.getPayload())));
}

19 Source : StringMessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void fromStringMessage() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build();
    replacedertEquals("ABC", this.converter.fromMessage(message, String.clreplaced));
}

19 Source : StringMessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void fromMessageByteArray() {
    Message<byte[]> message = MessageBuilder.withPayload("ABC".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build();
    replacedertEquals("ABC", this.converter.fromMessage(message, String.clreplaced));
}

19 Source : StringMessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void fromByteArrayMessage() {
    Message<byte[]> message = MessageBuilder.withPayload("ABC".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build();
    replacedertEquals("ABC", this.converter.fromMessage(message, String.clreplaced));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void supportsMimeType() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build();
    replacedertEquals("success-from", this.converter.fromMessage(message, String.clreplaced));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessageWithHeaders() {
    Map<String, Object> map = new HashMap<>();
    map.put("foo", "bar");
    MessageHeaders headers = new MessageHeaders(map);
    Message<?> message = this.converter.toMessage("ABC", headers);
    replacedertNotNull(message.getHeaders().getId());
    replacedertNotNull(message.getHeaders().getTimestamp());
    replacedertEquals(MimeTypeUtils.TEXT_PLAIN, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
    replacedertEquals("bar", message.getHeaders().get("foo"));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessageContentTypeHeader() {
    Message<?> message = this.converter.toMessage("ABC", null);
    replacedertEquals(MimeTypeUtils.TEXT_PLAIN, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessageWithMutableMessageHeaders() {
    SimpMessageHeaderAccessor accessor = SimpMessageHeaderAccessor.create(SimpMessageType.MESSAGE);
    accessor.setHeader("foo", "bar");
    accessor.setNativeHeader("fooNative", "barNative");
    accessor.setLeaveMutable(true);
    MessageHeaders headers = accessor.getMessageHeaders();
    Message<?> message = this.converter.toMessage("ABC", headers);
    replacedertSame(headers, message.getHeaders());
    replacedertNull(message.getHeaders().getId());
    replacedertNull(message.getHeaders().getTimestamp());
    replacedertEquals(MimeTypeUtils.TEXT_PLAIN, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void supportsMimeTypeNotSupported() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    replacedertNull(this.converter.fromMessage(message, String.clreplaced));
}

19 Source : MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void supportsMimeTypeNoneConfigured() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    this.converter = new TestMessageConverter(Collections.<MimeType>emptyList());
    replacedertEquals("success-from", this.converter.fromMessage(message, String.clreplaced));
}

19 Source : MappingJackson2MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessageUtf16String() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    converter.setSerializedPayloadClreplaced(String.clreplaced);
    MimeType contentType = new MimeType("application", "json", StandardCharsets.UTF_16BE);
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, contentType);
    MessageHeaders headers = new MessageHeaders(map);
    String payload = "H\u00e9llo W\u00f6rld";
    Message<?> message = converter.toMessage(payload, headers);
    replacedertEquals("\"" + payload + "\"", message.getPayload());
    replacedertEquals(contentType, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}

19 Source : MappingJackson2MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessage() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    MyBean payload = new MyBean();
    payload.setString("Foo");
    payload.setNumber(42);
    payload.setFraction(42F);
    payload.setArray(new String[] { "Foo", "Bar" });
    payload.setBool(true);
    payload.setBytes(new byte[] { 0x1, 0x2 });
    Message<?> message = converter.toMessage(payload, null);
    String actual = new String((byte[]) message.getPayload(), StandardCharsets.UTF_8);
    replacedertTrue(actual.contains("\"string\":\"Foo\""));
    replacedertTrue(actual.contains("\"number\":42"));
    replacedertTrue(actual.contains("fraction\":42.0"));
    replacedertTrue(actual.contains("\"array\":[\"Foo\",\"Bar\"]"));
    replacedertTrue(actual.contains("\"bool\":true"));
    replacedertTrue(actual.contains("\"bytes\":\"AQI=\""));
    replacedertEquals("Invalid content-type", new MimeType("application", "json"), message.getHeaders().get(MessageHeaders.CONTENT_TYPE, MimeType.clreplaced));
}

19 Source : MappingJackson2MessageConverterTests.java
with MIT License
from Vip-Augus

@Test
public void toMessageUtf16() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    MimeType contentType = new MimeType("application", "json", StandardCharsets.UTF_16BE);
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, contentType);
    MessageHeaders headers = new MessageHeaders(map);
    String payload = "H\u00e9llo W\u00f6rld";
    Message<?> message = converter.toMessage(payload, headers);
    replacedertEquals("\"" + payload + "\"", new String((byte[]) message.getPayload(), StandardCharsets.UTF_16BE));
    replacedertEquals(contentType, message.getHeaders().get(MessageHeaders.CONTENT_TYPE));
}

19 Source : DefaultContentTypeResolverTests.java
with MIT License
from Vip-Augus

@Test(expected = IllegalArgumentException.clreplaced)
public void resolveUnknownHeaderType() {
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, new Integer(1));
    MessageHeaders headers = new MessageHeaders(map);
    this.resolver.resolve(headers);
}

19 Source : DefaultContentTypeResolverTests.java
with MIT License
from Vip-Augus

@Test
public void resolve() {
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON);
    MessageHeaders headers = new MessageHeaders(map);
    replacedertEquals(MimeTypeUtils.APPLICATION_JSON, this.resolver.resolve(headers));
}

19 Source : DefaultContentTypeResolverTests.java
with MIT License
from Vip-Augus

@Test
public void resolveStringContentType() {
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON_VALUE);
    MessageHeaders headers = new MessageHeaders(map);
    replacedertEquals(MimeTypeUtils.APPLICATION_JSON, this.resolver.resolve(headers));
}

19 Source : MessageHeaderAccessor.java
with MIT License
from Vip-Augus

@Nullable
public MimeType getContentType() {
    Object value = getHeader(MessageHeaders.CONTENT_TYPE);
    if (value == null) {
        return null;
    }
    return (value instanceof MimeType ? (MimeType) value : MimeType.valueOf(value.toString()));
}

19 Source : MessageHeaderAccessor.java
with MIT License
from Vip-Augus

public void setContentType(MimeType contentType) {
    setHeader(MessageHeaders.CONTENT_TYPE, contentType);
}

19 Source : PayloadMethodArgumentResolver.java
with MIT License
from Vip-Augus

/**
 * 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
 */
@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);
    }
}

19 Source : DefaultContentTypeResolver.java
with MIT License
from Vip-Augus

@Override
@Nullable
public MimeType resolve(@Nullable MessageHeaders headers) {
    if (headers == null || headers.get(MessageHeaders.CONTENT_TYPE) == null) {
        return this.defaultMimeType;
    }
    Object value = headers.get(MessageHeaders.CONTENT_TYPE);
    if (value == null) {
        return null;
    } else if (value instanceof MimeType) {
        return (MimeType) value;
    } else if (value instanceof String) {
        return MimeType.valueOf((String) value);
    } else {
        throw new IllegalArgumentException("Unknown type for contentType header value: " + value.getClreplaced());
    }
}

19 Source : AbstractMessageConverter.java
with MIT License
from Vip-Augus

@Override
@Nullable
public final Message<?> toMessage(Object payload, @Nullable MessageHeaders headers, @Nullable Object conversionHint) {
    if (!canConvertTo(payload, headers)) {
        return null;
    }
    Object payloadToUse = convertToInternal(payload, headers, conversionHint);
    if (payloadToUse == null) {
        return null;
    }
    MimeType mimeType = getDefaultContentType(payloadToUse);
    if (headers != null) {
        MessageHeaderAccessor accessor = MessageHeaderAccessor.getAccessor(headers, MessageHeaderAccessor.clreplaced);
        if (accessor != null && accessor.isMutable()) {
            if (mimeType != null) {
                accessor.setHeaderIfAbsent(MessageHeaders.CONTENT_TYPE, mimeType);
            }
            return MessageBuilder.createMessage(payloadToUse, accessor.getMessageHeaders());
        }
    }
    MessageBuilder<?> builder = MessageBuilder.withPayload(payloadToUse);
    if (headers != null) {
        builder.copyHeaders(headers);
    }
    if (mimeType != null) {
        builder.setHeaderIfAbsent(MessageHeaders.CONTENT_TYPE, mimeType);
    }
    return builder.build();
}

19 Source : SimpleJmsHeaderMapperTests.java
with MIT License
from Vip-Augus

@Test
public void contentTypePropertyMappedFromHeader() throws JMSException {
    Message<String> message = initBuilder().setHeader(MessageHeaders.CONTENT_TYPE, "foo").build();
    javax.jms.Message jmsMessage = new StubTextMessage();
    mapper.fromHeaders(message.getHeaders(), jmsMessage);
    Object value = jmsMessage.getObjectProperty(JmsHeaderMapper.CONTENT_TYPE_PROPERTY);
    replacedertNotNull(value);
    replacedertEquals("foo", value);
}

19 Source : SimpleJmsHeaderMapperTests.java
with MIT License
from Vip-Augus

@Test
public void contentTypePropertyMappedToHeader() throws JMSException {
    javax.jms.Message jmsMessage = new StubTextMessage();
    jmsMessage.setStringProperty("content_type", "foo");
    replacedertInboundHeader(jmsMessage, MessageHeaders.CONTENT_TYPE, "foo");
}

19 Source : SimpleJmsHeaderMapper.java
with MIT License
from Vip-Augus

/**
 * Add the outbound prefix if necessary.
 * <p>Convert {@link MessageHeaders#CONTENT_TYPE} to {@code content_type} for JMS compliance.
 * @see #CONTENT_TYPE_PROPERTY
 */
@Override
protected String fromHeaderName(String headerName) {
    if (MessageHeaders.CONTENT_TYPE.equals(headerName)) {
        return CONTENT_TYPE_PROPERTY;
    }
    return super.fromHeaderName(headerName);
}

19 Source : SimpleJmsHeaderMapper.java
with MIT License
from Vip-Augus

/**
 * Add the inbound prefix if necessary.
 * <p>Convert the JMS-compliant {@code content_type} to {@link MessageHeaders#CONTENT_TYPE}.
 * @see #CONTENT_TYPE_PROPERTY
 */
@Override
protected String toHeaderName(String propertyName) {
    if (CONTENT_TYPE_PROPERTY.equals(propertyName)) {
        return MessageHeaders.CONTENT_TYPE;
    }
    return super.toHeaderName(propertyName);
}

19 Source : KinesisBinderTests.java
with Apache License 2.0
from spring-cloud

@Test
@Override
@SuppressWarnings("unchecked")
public void testAnonymousGroup() throws Exception {
    KinesisTestBinder binder = getBinder();
    ExtendedProducerProperties<KinesisProducerProperties> producerProperties = createProducerProperties();
    DirectChannel output = createBindableChannel("output", createProducerBindingProperties(producerProperties));
    Binding<MessageChannel> producerBinding = binder.bindProducer(String.format("defaultGroup%s0", getDestinationNameDelimiter()), output, producerProperties);
    ExtendedConsumerProperties<KinesisConsumerProperties> consumerProperties = createConsumerProperties();
    consumerProperties.setConcurrency(2);
    consumerProperties.setInstanceCount(3);
    consumerProperties.setInstanceIndex(0);
    QueueChannel input1 = new QueueChannel();
    Binding<MessageChannel> binding1 = binder.bindConsumer(String.format("defaultGroup%s0", getDestinationNameDelimiter()), null, input1, consumerProperties);
    consumerProperties.setInstanceIndex(1);
    QueueChannel input2 = new QueueChannel();
    Binding<MessageChannel> binding2 = binder.bindConsumer(String.format("defaultGroup%s0", getDestinationNameDelimiter()), null, input2, consumerProperties);
    String testPayload1 = "foo-" + UUID.randomUUID().toString();
    output.send(MessageBuilder.withPayload(testPayload1).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build());
    Message<byte[]> receivedMessage1 = (Message<byte[]>) receive(input1);
    replacedertThat(receivedMessage1).isNotNull();
    replacedertThat(new String(receivedMessage1.getPayload())).isEqualTo(testPayload1);
    Message<byte[]> receivedMessage2 = (Message<byte[]>) receive(input2);
    replacedertThat(receivedMessage2).isNotNull();
    replacedertThat(new String(receivedMessage2.getPayload())).isEqualTo(testPayload1);
    binding2.unbind();
    String testPayload2 = "foo-" + UUID.randomUUID().toString();
    output.send(MessageBuilder.withPayload(testPayload2).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build());
    binding2 = binder.bindConsumer(String.format("defaultGroup%s0", getDestinationNameDelimiter()), null, input2, consumerProperties);
    String testPayload3 = "foo-" + UUID.randomUUID().toString();
    output.send(MessageBuilder.withPayload(testPayload3).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build());
    receivedMessage1 = (Message<byte[]>) receive(input1);
    replacedertThat(receivedMessage1).isNotNull();
    replacedertThat(new String(receivedMessage1.getPayload())).isEqualTo(testPayload2);
    receivedMessage1 = (Message<byte[]>) receive(input1);
    replacedertThat(receivedMessage1).isNotNull();
    replacedertThat(new String(receivedMessage1.getPayload())).isNotNull();
    receivedMessage2 = (Message<byte[]>) receive(input2);
    replacedertThat(receivedMessage2).isNotNull();
    replacedertThat(new String(receivedMessage2.getPayload())).isEqualTo(testPayload1);
    receivedMessage2 = (Message<byte[]>) receive(input2);
    replacedertThat(receivedMessage2).isNotNull();
    replacedertThat(new String(receivedMessage2.getPayload())).isEqualTo(testPayload2);
    receivedMessage2 = (Message<byte[]>) receive(input2);
    replacedertThat(receivedMessage2).isNotNull();
    replacedertThat(new String(receivedMessage2.getPayload())).isEqualTo(testPayload3);
    producerBinding.unbind();
    binding1.unbind();
    binding2.unbind();
}

19 Source : SimpleFunctionRegistryTests.java
with Apache License 2.0
from spring-cloud

@SuppressWarnings({ "rawtypes", "unchecked" })
@Test
public void testWithCustomMessageConverter() {
    FunctionCatalog catalog = this.configureCatalog(CustomConverterConfiguration.clreplaced);
    Function function = catalog.lookup("func");
    Object result = function.apply(MessageBuilder.withPayload("Jim Lahey").setHeader(MessageHeaders.CONTENT_TYPE, "text/person").build());
    replacedertThat(result).isEqualTo("Jim Lahey");
}

19 Source : BeanFactoryAwareFunctionRegistryTests.java
with Apache License 2.0
from spring-cloud

@Test
public void testGH_611() {
    FunctionCatalog catalog = this.configureCatalog(NegotiatingMessageConverterConfiguration.clreplaced);
    Supplier<Message<Integer>> f = catalog.lookup("supplier", "text/*");
    replacedertThat(f.get().getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeTypeUtils.parseMimeType("text/*"));
}

19 Source : BeanFactoryAwareFunctionRegistryTests.java
with Apache License 2.0
from spring-cloud

@Test
public void testMultipleValuesInOutputHandling() throws Exception {
    FunctionCatalog catalog = this.configureCatalog(CollectionOutConfiguration.clreplaced);
    FunctionInvocationWrapper function = catalog.lookup("parseToList", "application/json");
    replacedertThat(function).isNotNull();
    Object result = function.apply(MessageBuilder.withPayload("1, 2, 3".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, "text/plain").build());
    replacedertThat(result instanceof Message).isTrue();
    function = catalog.lookup("parseToListOfMessages", "application/json");
    replacedertThat(function).isNotNull();
    result = function.apply(MessageBuilder.withPayload("1, 2, 3".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, "text/plain").build());
    replacedertThat(result instanceof Message).isFalse();
}

19 Source : BeanFactoryAwareFunctionRegistryTests.java
with Apache License 2.0
from spring-cloud

@SuppressWarnings("unchecked")
@Test
public void testSerializationWithCompatibleWildcardSubtypeAcceptHeader() {
    FunctionCatalog catalog = this.configureCatalog(NegotiatingMessageConverterConfiguration.clreplaced);
    FunctionInvocationWrapper function = catalog.lookup("echo", "text/*");
    Message<Tuple2<String, String>> tupleResult = (Message<Tuple2<String, String>>) function.apply(MessageBuilder.withPayload(Tuples.of("bonjour", "monde")).setHeader(MessageHeaders.CONTENT_TYPE, MimeType.valueOf("text/csv")).build());
    replacedertThat(tupleResult.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeType.valueOf("text/csv"));
    replacedertThat(tupleResult.getHeaders().get("accept")).isNull();
    Message<Date> dateResult = (Message<Date>) function.apply(MessageBuilder.withPayload(123).setHeader(MessageHeaders.CONTENT_TYPE, MimeType.valueOf("text/integer")).build());
    replacedertThat(dateResult.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeType.valueOf("text/integer"));
    replacedertThat(dateResult.getHeaders().get("accept")).isNull();
}

19 Source : BeanFactoryAwareFunctionRegistryTests.java
with Apache License 2.0
from spring-cloud

@Test
public void testImperativeFunction() {
    FunctionCatalog catalog = this.configureCatalog();
    // Function<String, String> asIs = catalog.lookup("uppercase");
    // replacedertThat(asIs.apply("uppercase")).isEqualTo("UPPERCASE");
    // 
    // Function<Flux<String>, Flux<String>> asFlux = catalog.lookup("uppercase");
    // List<String> result = asFlux.apply(Flux.just("uppercaseFlux", "uppercaseFlux2")).collectList().block();
    // replacedertThat(result.get(0)).isEqualTo("UPPERCASEFLUX");
    // replacedertThat(result.get(1)).isEqualTo("UPPERCASEFLUX2");
    Function<Flux<Message<byte[]>>, Flux<Message<byte[]>>> messageFlux = catalog.lookup("uppercase", "application/json");
    Message<byte[]> message1 = MessageBuilder.withPayload("\"uppercaseFlux\"".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, "application/json").build();
    Message<byte[]> message2 = MessageBuilder.withPayload("\"uppercaseFlux2\"".getBytes()).setHeader(MessageHeaders.CONTENT_TYPE, "application/json").build();
    List<Message<byte[]>> messageResult = messageFlux.apply(Flux.just(message1, message2)).collectList().block();
    replacedertThat(messageResult.get(0).getPayload()).isEqualTo("\"UPPERCASEFLUX\"".getBytes(StandardCharsets.UTF_8));
    replacedertThat(messageResult.get(1).getPayload()).isEqualTo("\"UPPERCASEFLUX2\"".getBytes(StandardCharsets.UTF_8));
}

19 Source : BeanFactoryAwareFunctionRegistryMultiInOutTests.java
with Apache License 2.0
from spring-cloud

/*
	 * This test is identical to the previous one with the exception that the
	 * input is a Message with payload as JSON byte array representation of Person (expected by the target function),
	 * thus demonstrating Message Conversion
	 */
@Test
public void testMultiOutputAsTuplePojoInInputByteArray() {
    FunctionCatalog catalog = this.configureCatalog();
    Function<Flux<Message<byte[]>>, Tuple3<Flux<Person>, Flux<String>, Flux<Integer>>> multiOutputFunction = catalog.lookup("multiOutputAsTuplePojoIn");
    Message<byte[]> uncleSam = MessageBuilder.withPayload("{\"name\":\"Uncle Sam\",\"id\":1}".getBytes(StandardCharsets.UTF_8)).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    Message<byte[]> unclePierre = MessageBuilder.withPayload("{\"name\":\"Oncle Pierre\",\"id\":2}".getBytes(StandardCharsets.UTF_8)).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    Flux<Message<byte[]>> personStream = Flux.just(uncleSam, unclePierre);
    Tuple3<Flux<Person>, Flux<String>, Flux<Integer>> result = multiOutputFunction.apply(personStream);
    result.getT1().subscribe(v -> System.out.println("=> 1: " + v));
    result.getT2().subscribe(v -> System.out.println("=> 2: " + v));
    result.getT3().subscribe(v -> System.out.println("=> 3: " + v));
}

19 Source : BeanFactoryAwareFunctionRegistryMultiInOutTests.java
with Apache License 2.0
from spring-cloud

/*
	 * This is another variation of the above. In this case the signature of the target function is
	 * <Flux<Message<Person>>, Tuple3<Flux<Person>, Flux<String>, Flux<Integer>>> yet we are sending
	 * Message with payload as byte[] which is converted to Person and then embedded in new Message<Person>
	 * preplaceded to a function
	 */
@Test
public void testMultiOutputAsTuplePojoInInputByteArrayInputTypePojoMessage() {
    FunctionCatalog catalog = this.configureCatalog();
    Function<Flux<Message<byte[]>>, Tuple3<Flux<Person>, Flux<String>, Flux<Integer>>> multiOutputFunction = catalog.lookup("multiOutputAsTupleMessageIn");
    Message<byte[]> uncleSam = MessageBuilder.withPayload("{\"name\":\"Uncle Sam\",\"id\":1}".getBytes(StandardCharsets.UTF_8)).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    Message<byte[]> unclePierre = MessageBuilder.withPayload("{\"name\":\"Oncle Pierre\",\"id\":2}".getBytes(StandardCharsets.UTF_8)).setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    Flux<Message<byte[]>> personStream = Flux.just(uncleSam, unclePierre);
    Tuple3<Flux<Person>, Flux<String>, Flux<Integer>> result = multiOutputFunction.apply(personStream);
    result.getT1().subscribe(v -> System.out.println("=> 1: " + v));
    result.getT2().subscribe(v -> System.out.println("=> 2: " + v));
    result.getT3().subscribe(v -> System.out.println("=> 3: " + v));
}

19 Source : MessageHeaderAccessorTests.java
with Apache License 2.0
from SourceHot

@Test
public void serializeMutableHeaders() throws Exception {
    Map<String, Object> headers = new HashMap<>();
    headers.put("foo", "bar");
    Message<String> message = new GenericMessage<>("test", headers);
    MessageHeaderAccessor mutableAccessor = MessageHeaderAccessor.getMutableAccessor(message);
    mutableAccessor.setContentType(MimeTypeUtils.TEXT_PLAIN);
    message = new GenericMessage<>(message.getPayload(), mutableAccessor.getMessageHeaders());
    Message<?> output = (Message<?>) SerializationTestUtils.serializeAndDeserialize(message);
    replacedertThat(output.getPayload()).isEqualTo("test");
    replacedertThat(output.getHeaders().get("foo")).isEqualTo("bar");
    replacedertThat(output.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isNotNull();
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void supportsMimeTypeNoneConfigured() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    this.converter = new TestMessageConverter(new MimeType[0]);
    replacedertThat(this.converter.fromMessage(message, String.clreplaced)).isEqualTo("success-from");
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessageWithHeaders() {
    Map<String, Object> map = new HashMap<>();
    map.put("foo", "bar");
    MessageHeaders headers = new MessageHeaders(map);
    Message<?> message = this.converter.toMessage("ABC", headers);
    replacedertThat(message.getHeaders().getId()).isNotNull();
    replacedertThat(message.getHeaders().getTimestamp()).isNotNull();
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeTypeUtils.TEXT_PLAIN);
    replacedertThat(message.getHeaders().get("foo")).isEqualTo("bar");
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void supportsMimeType() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.TEXT_PLAIN).build();
    replacedertThat(this.converter.fromMessage(message, String.clreplaced)).isEqualTo("success-from");
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessageWithMutableMessageHeaders() {
    SimpMessageHeaderAccessor accessor = SimpMessageHeaderAccessor.create(SimpMessageType.MESSAGE);
    accessor.setHeader("foo", "bar");
    accessor.setNativeHeader("fooNative", "barNative");
    accessor.setLeaveMutable(true);
    MessageHeaders headers = accessor.getMessageHeaders();
    Message<?> message = this.converter.toMessage("ABC", headers);
    replacedertThat(message.getHeaders()).isSameAs(headers);
    replacedertThat(message.getHeaders().getId()).isNull();
    replacedertThat(message.getHeaders().getTimestamp()).isNull();
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeTypeUtils.TEXT_PLAIN);
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void supportsMimeTypeNotSupported() {
    Message<String> message = MessageBuilder.withPayload("ABC").setHeader(MessageHeaders.CONTENT_TYPE, MimeTypeUtils.APPLICATION_JSON).build();
    replacedertThat(this.converter.fromMessage(message, String.clreplaced)).isNull();
}

19 Source : MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessageContentTypeHeader() {
    Message<?> message = this.converter.toMessage("ABC", null);
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(MimeTypeUtils.TEXT_PLAIN);
}

19 Source : MappingJackson2MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessageUtf16String() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    converter.setSerializedPayloadClreplaced(String.clreplaced);
    MimeType contentType = new MimeType("application", "json", StandardCharsets.UTF_16BE);
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, contentType);
    MessageHeaders headers = new MessageHeaders(map);
    String payload = "H\u00e9llo W\u00f6rld";
    Message<?> message = converter.toMessage(payload, headers);
    replacedertThat(message.getPayload()).isEqualTo(("\"" + payload + "\""));
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(contentType);
}

19 Source : MappingJackson2MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessage() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    MyBean payload = new MyBean();
    payload.setString("Foo");
    payload.setNumber(42);
    payload.setFraction(42F);
    payload.setArray(new String[] { "Foo", "Bar" });
    payload.setBool(true);
    payload.setBytes(new byte[] { 0x1, 0x2 });
    Message<?> message = converter.toMessage(payload, null);
    String actual = new String((byte[]) message.getPayload(), StandardCharsets.UTF_8);
    replacedertThat(actual.contains("\"string\":\"Foo\"")).isTrue();
    replacedertThat(actual.contains("\"number\":42")).isTrue();
    replacedertThat(actual.contains("fraction\":42.0")).isTrue();
    replacedertThat(actual.contains("\"array\":[\"Foo\",\"Bar\"]")).isTrue();
    replacedertThat(actual.contains("\"bool\":true")).isTrue();
    replacedertThat(actual.contains("\"bytes\":\"AQI=\"")).isTrue();
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE, MimeType.clreplaced)).as("Invalid content-type").isEqualTo(new MimeType("application", "json"));
}

19 Source : MappingJackson2MessageConverterTests.java
with Apache License 2.0
from SourceHot

@Test
public void toMessageUtf16() {
    MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
    MimeType contentType = new MimeType("application", "json", StandardCharsets.UTF_16BE);
    Map<String, Object> map = new HashMap<>();
    map.put(MessageHeaders.CONTENT_TYPE, contentType);
    MessageHeaders headers = new MessageHeaders(map);
    String payload = "H\u00e9llo W\u00f6rld";
    Message<?> message = converter.toMessage(payload, headers);
    replacedertThat(new String((byte[]) message.getPayload(), StandardCharsets.UTF_16BE)).isEqualTo(("\"" + payload + "\""));
    replacedertThat(message.getHeaders().get(MessageHeaders.CONTENT_TYPE)).isEqualTo(contentType);
}

See More Examples