Fixes messaging
This commit is contained in:
@@ -1,31 +0,0 @@
|
||||
/*
|
||||
* Copyright 2013-2020 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* https://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.cloud.contract.verifier.messaging;
|
||||
|
||||
/**
|
||||
* Core interface that allows you to build, send and receive messages.
|
||||
*
|
||||
* Destination is relevant to the underlying implementation. Might be a channel, queue,
|
||||
* topic etc.
|
||||
*
|
||||
* @param <M> message type
|
||||
* @author Marcin Grzejszczak
|
||||
* @since 1.0.0
|
||||
*/
|
||||
public interface MessageVerifier<M> extends MessageVerifierSender<M>, MessageVerifierReceiver<M> {
|
||||
|
||||
}
|
||||
@@ -29,14 +29,15 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender;
|
||||
import org.springframework.cloud.contract.verifier.messaging.internal.ContractVerifierMessageMetadata;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
/**
|
||||
* @author Marcin Grzejszczak
|
||||
*/
|
||||
public class CamelStubMessages implements MessageVerifier<Message> {
|
||||
public class CamelStubMessages implements MessageVerifierSender<Message>, MessageVerifierReceiver<Message> {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(CamelStubMessages.class);
|
||||
|
||||
|
||||
@@ -50,7 +50,8 @@ public class ContractVerifierIntegrationConfiguration {
|
||||
@ConditionalOnMissingBean(MessageVerifierSender.class)
|
||||
public MessageVerifierSender<Message<?>> integrationContractVerifierMessageSender(
|
||||
ApplicationContext applicationContext) {
|
||||
SpringIntegrationStubMessages springIntegrationStubMessages = new SpringIntegrationStubMessages(applicationContext);
|
||||
SpringIntegrationStubMessages springIntegrationStubMessages = new SpringIntegrationStubMessages(
|
||||
applicationContext);
|
||||
return new MessageVerifierSender<>() {
|
||||
@Override
|
||||
public void send(Message<?> message, String destination, @Nullable YamlContract contract) {
|
||||
@@ -58,7 +59,8 @@ public class ContractVerifierIntegrationConfiguration {
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination, @Nullable YamlContract contract) {
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination,
|
||||
@Nullable YamlContract contract) {
|
||||
springIntegrationStubMessages.send(payload, headers, destination, contract);
|
||||
}
|
||||
};
|
||||
@@ -68,10 +70,12 @@ public class ContractVerifierIntegrationConfiguration {
|
||||
@ConditionalOnMissingBean(MessageVerifierReceiver.class)
|
||||
public MessageVerifierReceiver<Message<?>> integrationContractVerifierMessageReceiver(
|
||||
ApplicationContext applicationContext) {
|
||||
SpringIntegrationStubMessages springIntegrationStubMessages = new SpringIntegrationStubMessages(applicationContext);
|
||||
SpringIntegrationStubMessages springIntegrationStubMessages = new SpringIntegrationStubMessages(
|
||||
applicationContext);
|
||||
return new MessageVerifierReceiver<>() {
|
||||
@Override
|
||||
public Message<?> receive(String destination, long timeout, TimeUnit timeUnit, @Nullable YamlContract contract) {
|
||||
public Message<?> receive(String destination, long timeout, TimeUnit timeUnit,
|
||||
@Nullable YamlContract contract) {
|
||||
return springIntegrationStubMessages.receive(destination, timeout, timeUnit, contract);
|
||||
}
|
||||
|
||||
|
||||
@@ -23,7 +23,6 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.messaging.Message;
|
||||
import org.springframework.messaging.MessageChannel;
|
||||
@@ -32,7 +31,9 @@ import org.springframework.messaging.PollableChannel;
|
||||
/**
|
||||
* @author Marcin Grzejszczak
|
||||
*/
|
||||
public class SpringIntegrationStubMessages implements MessageVerifier<Message<?>> {
|
||||
public class SpringIntegrationStubMessages
|
||||
implements org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender<Message<?>>,
|
||||
org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver<Message<?>> {
|
||||
|
||||
private static final Log log = LogFactory.getLog(SpringIntegrationStubMessages.class);
|
||||
|
||||
|
||||
@@ -24,14 +24,13 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender;
|
||||
|
||||
/**
|
||||
* Wrapper around messaging. Abstracts all message related operations like sending,
|
||||
* converting and receiving. Delegates the actual work to an implementation of a
|
||||
* {@link MessageVerifier}.
|
||||
* {@link MessageVerifierSender} and {@link MessageVerifierReceiver}.
|
||||
*
|
||||
* @param <M> message type
|
||||
* @author Dave Syer
|
||||
|
||||
@@ -67,7 +67,8 @@ public class ContractVerifierJmsConfiguration {
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination, @Nullable YamlContract contract) {
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination,
|
||||
@Nullable YamlContract contract) {
|
||||
jmsStubMessages.send(payload, headers, destination, contract);
|
||||
}
|
||||
};
|
||||
@@ -81,7 +82,8 @@ public class ContractVerifierJmsConfiguration {
|
||||
JmsStubMessages jmsStubMessages = new JmsStubMessages(jmsTemplate);
|
||||
return new MessageVerifierReceiver<>() {
|
||||
@Override
|
||||
public Message receive(String destination, long timeout, TimeUnit timeUnit, @Nullable YamlContract contract) {
|
||||
public Message receive(String destination, long timeout, TimeUnit timeUnit,
|
||||
@Nullable YamlContract contract) {
|
||||
return jmsStubMessages.receive(destination, timeout, timeUnit, contract);
|
||||
}
|
||||
|
||||
|
||||
@@ -27,11 +27,11 @@ import jakarta.jms.Message;
|
||||
import jakarta.jms.Session;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
import org.springframework.jms.core.JmsTemplate;
|
||||
import org.springframework.jms.core.MessagePostProcessor;
|
||||
|
||||
class JmsStubMessages implements MessageVerifier<Message> {
|
||||
class JmsStubMessages implements org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender<Message>,
|
||||
org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver<Message> {
|
||||
|
||||
private final JmsTemplate jmsTemplate;
|
||||
|
||||
|
||||
@@ -55,7 +55,8 @@ public class NoOpContractVerifierAutoConfiguration {
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination, @Nullable YamlContract contract) {
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination,
|
||||
@Nullable YamlContract contract) {
|
||||
noOpStubMessages.send(payload, headers, destination, contract);
|
||||
}
|
||||
};
|
||||
@@ -68,7 +69,8 @@ public class NoOpContractVerifierAutoConfiguration {
|
||||
return new MessageVerifierReceiver<>() {
|
||||
|
||||
@Override
|
||||
public Object receive(String destination, long timeout, TimeUnit timeUnit, @Nullable YamlContract contract) {
|
||||
public Object receive(String destination, long timeout, TimeUnit timeUnit,
|
||||
@Nullable YamlContract contract) {
|
||||
return noOpStubMessages.receive(destination, timeout, timeUnit, contract);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,13 @@ import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
|
||||
/**
|
||||
* @author Marcin Grzejszczak
|
||||
*/
|
||||
public class NoOpStubMessages<U> implements MessageVerifier<U> {
|
||||
public class NoOpStubMessages<U>
|
||||
implements org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender<U>,
|
||||
org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver<U> {
|
||||
|
||||
@Override
|
||||
public void send(U message, String destination, YamlContract contract) {
|
||||
|
||||
@@ -72,7 +72,8 @@ public class ContractVerifierStreamAutoConfiguration {
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination, @Nullable YamlContract contract) {
|
||||
public <T> void send(T payload, Map<String, Object> headers, String destination,
|
||||
@Nullable YamlContract contract) {
|
||||
stubMessages.send(payload, headers, destination, contract);
|
||||
}
|
||||
};
|
||||
@@ -86,7 +87,8 @@ public class ContractVerifierStreamAutoConfiguration {
|
||||
new StreamOutputDestinationMessageReceiver(context));
|
||||
return new MessageVerifierReceiver<>() {
|
||||
@Override
|
||||
public Message<?> receive(String destination, long timeout, TimeUnit timeUnit, @Nullable YamlContract contract) {
|
||||
public Message<?> receive(String destination, long timeout, TimeUnit timeUnit,
|
||||
@Nullable YamlContract contract) {
|
||||
return stubMessages.receive(destination, timeout, timeUnit, contract);
|
||||
}
|
||||
|
||||
|
||||
@@ -20,7 +20,6 @@ import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
import org.springframework.cloud.contract.verifier.converter.YamlContract;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifier;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierReceiver;
|
||||
import org.springframework.cloud.contract.verifier.messaging.MessageVerifierSender;
|
||||
import org.springframework.messaging.Message;
|
||||
@@ -28,7 +27,7 @@ import org.springframework.messaging.Message;
|
||||
/**
|
||||
* @author Marcin Grzejszczak
|
||||
*/
|
||||
public class StreamStubMessages implements MessageVerifier<Message<?>> {
|
||||
public class StreamStubMessages implements MessageVerifierSender<Message<?>>, MessageVerifierReceiver<Message<?>> {
|
||||
|
||||
private final MessageVerifierSender<Message<?>> sender;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user