Move Spring AMQP 0.9 support to spring-boot-rabbitmq

Now that Spring AMQP supports AMQP 1.0 as well, we need to straighten
out our existing support. AMQP 0.9 is RabbitMQ specific, so we can no
longer refer it to "amqp". This commit migrates the existing support
to spring-boot-rabbitmq and renames the starters as well.

For continuity, users should migrate from "spring-boot-starter-amqp"
to "spring-boot-starter-rabbitmq". While the root package has been
changed for consistency, most names are the same, including
configuration properties still in the "spring.rabbitmq" namespace.

Keys to configure the version of the RabbitMQ clients have migrated to
'rabbitmq.client' and 'rabbitmq.stream.client' respectively.

Closes gh-49677
This commit is contained in:
Stéphane Nicoll
2026-07-15 15:10:09 +02:00
parent 467fde153f
commit f48cc3ac10
110 changed files with 286 additions and 284 deletions
+1 -1
View File
@@ -94,7 +94,6 @@ dependencies {
implementation(project(path: ":loader:spring-boot-loader-tools"))
implementation(project(path: ":module:spring-boot-actuator"))
implementation(project(path: ":module:spring-boot-actuator-autoconfigure"))
implementation(project(path: ":module:spring-boot-amqp"))
implementation(project(path: ":module:spring-boot-cache"))
implementation(project(path: ":module:spring-boot-cache-test"))
implementation(project(path: ":module:spring-boot-data-cassandra"))
@@ -130,6 +129,7 @@ dependencies {
implementation(project(path: ":module:spring-boot-micrometer-metrics"))
implementation(project(path: ":module:spring-boot-persistence"))
implementation(project(path: ":module:spring-boot-r2dbc"))
implementation(project(path: ":module:spring-boot-rabbitmq"))
implementation(project(path: ":module:spring-boot-restdocs"))
implementation(project(path: ":module:spring-boot-reactor-netty"))
implementation(project(path: ":module:spring-boot-restclient"))
@@ -673,7 +673,7 @@ with the `key` listed in the following table:
| Always responds with `UP`.
| `rabbit`
| javadoc:org.springframework.boot.amqp.health.RabbitHealthIndicator[]
| javadoc:org.springframework.boot.rabbitmq.health.RabbitHealthIndicator[]
| Checks that a Rabbit server is up.
| `redis`
@@ -125,10 +125,10 @@ The following service connections are currently supported:
| javadoc:org.springframework.boot.r2dbc.autoconfigure.R2dbcConnectionDetails[]
| Containers named "clickhouse/clickhouse-server", "gvenzl/oracle-free", "gvenzl/oracle-xe", "mariadb", "mssql/server", "mysql", or "postgres"
| javadoc:org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails[]
| javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails[]
| Containers named "rabbitmq" with container port 5672 mapped
| javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails[]
| javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails[]
| Containers named "rabbitmq" with container port 5552 mapped, or port 5551 mapped when SSL is configured
| javadoc:org.springframework.boot.data.redis.autoconfigure.DataRedisConnectionDetails[]
@@ -3,7 +3,7 @@
The Advanced Message Queuing Protocol (AMQP) is a platform-neutral, wire-level protocol for message-oriented middleware.
The Spring AMQP project applies core Spring concepts to the development of AMQP-based messaging solutions.
Spring Boot offers several conveniences for working with AMQP through RabbitMQ, including the `spring-boot-starter-amqp` starter.
Spring Boot offers several conveniences for working with AMQP through RabbitMQ, including the `spring-boot-starter-rabbitmq` starter.
@@ -38,12 +38,12 @@ spring:
NOTE: When specifying addresses that way, the `host` and `port` properties are ignored.
If the address uses the `amqps` protocol, SSL support is enabled automatically.
See javadoc:org.springframework.boot.amqp.autoconfigure.RabbitProperties[] for more of the supported property-based configuration options.
To configure lower-level details of the RabbitMQ javadoc:com.rabbitmq.client.ConnectionFactory[] that is used by Spring AMQP, define a javadoc:org.springframework.boot.amqp.autoconfigure.ConnectionFactoryCustomizer[] bean.
See javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties[] for more of the supported property-based configuration options.
To configure lower-level details of the RabbitMQ javadoc:com.rabbitmq.client.ConnectionFactory[] that is used by Spring AMQP, define a javadoc:org.springframework.boot.rabbitmq.autoconfigure.ConnectionFactoryCustomizer[] bean.
If a javadoc:org.springframework.amqp.rabbit.connection.ConnectionNameStrategy[] bean exists in the context, it will be automatically used to name connections created by the auto-configured javadoc:org.springframework.amqp.rabbit.connection.CachingConnectionFactory[].
To make an application-wide, additive customization to the javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[], use a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitTemplateCustomizer[] bean.
To make an application-wide, additive customization to the javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[], use a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitTemplateCustomizer[] bean.
TIP: See https://spring.io/blog/2010/06/14/understanding-amqp-the-protocol-used-by-rabbitmq/[Understanding AMQP, the protocol used by RabbitMQ] for more details.
@@ -74,9 +74,9 @@ spring:
----
Retries are disabled by default.
You can also customize the javadoc:org.springframework.core.retry.RetryTemplate[] programmatically by declaring a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitTemplateRetrySettingsCustomizer[] bean.
You can also customize the javadoc:org.springframework.core.retry.RetryTemplate[] programmatically by declaring a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitTemplateRetrySettingsCustomizer[] bean.
If you need to create more javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitTemplateConfigurer[] bean that you can use to initialize a javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[] with the same settings as the factories used by the auto-configuration.
If you need to create more javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitTemplateConfigurer[] bean that you can use to initialize a javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[] with the same settings as the factories used by the auto-configuration.
If there's a bean of type javadoc:org.springframework.amqp.rabbit.support.micrometer.RabbitTemplateObservationConvention[] in the context, it will automatically be configured on the javadoc:org.springframework.amqp.rabbit.core.RabbitTemplate[].
@@ -97,7 +97,7 @@ spring:
If a javadoc:org.springframework.amqp.support.converter.MessageConverter[], javadoc:org.springframework.rabbit.stream.support.converter.StreamMessageConverter[], javadoc:org.springframework.rabbit.stream.producer.ProducerCustomizer[] or javadoc:org.springframework.rabbit.stream.micrometer.RabbitStreamTemplateObservationConvention[] bean is defined, it is associated automatically to the auto-configured javadoc:org.springframework.rabbit.stream.producer.RabbitStreamTemplate[].
If you need to create more javadoc:org.springframework.rabbit.stream.producer.RabbitStreamTemplate[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamTemplateConfigurer[] bean that you can use to initialize a javadoc:org.springframework.rabbit.stream.producer.RabbitStreamTemplate[] with the same settings as the factories used by the auto-configuration.
If you need to create more javadoc:org.springframework.rabbit.stream.producer.RabbitStreamTemplate[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamTemplateConfigurer[] bean that you can use to initialize a javadoc:org.springframework.rabbit.stream.producer.RabbitStreamTemplate[] with the same settings as the factories used by the auto-configuration.
@@ -120,7 +120,7 @@ include-code::MyBean[]
TIP: See javadoc:org.springframework.amqp.rabbit.annotation.EnableRabbit[format=annotation] for more details.
If you need to create more javadoc:org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.amqp.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer[] and a javadoc:org.springframework.boot.amqp.autoconfigure.DirectRabbitListenerContainerFactoryConfigurer[] that you can use to initialize a javadoc:org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory[] and a javadoc:org.springframework.amqp.rabbit.config.DirectRabbitListenerContainerFactory[] with the same settings as the factories used by the auto-configuration.
If you need to create more javadoc:org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory[] instances or if you want to override the default, Spring Boot provides a javadoc:org.springframework.boot.rabbitmq.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer[] and a javadoc:org.springframework.boot.rabbitmq.autoconfigure.DirectRabbitListenerContainerFactoryConfigurer[] that you can use to initialize a javadoc:org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory[] and a javadoc:org.springframework.amqp.rabbit.config.DirectRabbitListenerContainerFactory[] with the same settings as the factories used by the auto-configuration.
TIP: It does not matter which container type you chose.
Those two beans are exposed by the auto-configuration.
@@ -137,7 +137,7 @@ You can enable retries to handle situations where your listener throws an except
By default, javadoc:org.springframework.amqp.rabbit.retry.RejectAndDontRequeueRecoverer[] is used, but you can define a javadoc:org.springframework.amqp.rabbit.retry.MessageRecoverer[] of your own.
When retries are exhausted, the message is rejected and either dropped or routed to a dead-letter exchange if the broker is configured to do so.
By default, retries are disabled.
You can also customize the javadoc:org.springframework.core.retry.RetryPolicy[] programmatically by declaring a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitListenerRetrySettingsCustomizer[] bean.
You can also customize the javadoc:org.springframework.core.retry.RetryPolicy[] programmatically by declaring a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitListenerRetrySettingsCustomizer[] bean.
IMPORTANT: By default, if retries are disabled and the listener throws an exception, the delivery is retried indefinitely.
You can modify this behavior in two ways: Set the `defaultRequeueRejected` property to `false` so that zero re-deliveries are attempted or throw an javadoc:org.springframework.amqp.AmqpRejectAndDontRequeueException[] to signal the message should be rejected.
@@ -179,11 +179,11 @@ javadoc:org.testcontainers.clickhouse.ClickHouseContainer[],
javadoc:{url-testcontainers-mariadb-javadoc}/org.testcontainers.mariadb.MariaDBContainer[], javadoc:{url-testcontainers-mssqlserver-javadoc}/org.testcontainers.mssqlserver.MSSQLServerContainer[], javadoc:{url-testcontainers-mysql-javadoc}/org.testcontainers.mysql.MySQLContainer[],
javadoc:org.testcontainers.oracle.OracleContainer[OracleContainer (free)], javadoc:{url-testcontainers-oracle-xe-javadoc}/org.testcontainers.containers.OracleContainer[OracleContainer (XE)] or javadoc:{url-testcontainers-postgresql-javadoc}/org.testcontainers.postgresql.PostgreSQLContainer[]
| javadoc:org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails[]
| javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails[]
| Containers of type javadoc:{url-testcontainers-rabbitmq-javadoc}/org.testcontainers.rabbitmq.RabbitMQContainer[]
| javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails[]
| Containers of type javadoc:{url-testcontainers-rabbitmq-javadoc}/org.testcontainers.rabbitmq.RabbitMQContainer[] when the `@ServiceConnection` `type` attribute includes javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails[]
| javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails[]
| Containers of type javadoc:{url-testcontainers-rabbitmq-javadoc}/org.testcontainers.rabbitmq.RabbitMQContainer[] when the `@ServiceConnection` `type` attribute includes javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails[]
| javadoc:org.springframework.boot.data.redis.autoconfigure.DataRedisConnectionDetails[]
| Containers of type javadoc:com.redis.testcontainers.RedisContainer[] or javadoc:com.redis.testcontainers.RedisStackContainer[], or containers named "redis", "redis/redis-stack" or "redis/redis-stack-server"
@@ -194,12 +194,12 @@ javadoc:org.testcontainers.oracle.OracleContainer[OracleContainer (free)], javad
[TIP]
====
By default, with the exception of javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails[], all applicable connection details beans will be created for a given javadoc:org.testcontainers.containers.Container[].
By default, with the exception of javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails[], all applicable connection details beans will be created for a given javadoc:org.testcontainers.containers.Container[].
For example, a javadoc:{url-testcontainers-postgresql-javadoc}/org.testcontainers.postgresql.PostgreSQLContainer[] will create both javadoc:org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails[] and javadoc:org.springframework.boot.r2dbc.autoconfigure.R2dbcConnectionDetails[].
If you want to create only a subset of the applicable types, you can use the `type` attribute of javadoc:org.springframework.boot.testcontainers.service.connection.ServiceConnection[format=annotation].
To create a javadoc:org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails[] bean from a javadoc:{url-testcontainers-rabbitmq-javadoc}/org.testcontainers.rabbitmq.RabbitMQContainer[], you must opt in using the `type` attribute of javadoc:org.springframework.boot.testcontainers.service.connection.ServiceConnection[format=annotation].
To create a javadoc:org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails[] bean from a javadoc:{url-testcontainers-rabbitmq-javadoc}/org.testcontainers.rabbitmq.RabbitMQContainer[], you must opt in using the `type` attribute of javadoc:org.springframework.boot.testcontainers.service.connection.ServiceConnection[format=annotation].
The container must also expose port 5552, or port 5551 when SSL is configured, for RabbitMQ Streams.
====
@@ -18,7 +18,7 @@ package org.springframework.boot.docs.messaging.amqp.receiving.custom;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.boot.amqp.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.boot.rabbitmq.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -19,7 +19,7 @@ package org.springframework.boot.docs.messaging.amqp.receiving.custom
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory
import org.springframework.amqp.rabbit.connection.ConnectionFactory
import org.springframework.boot.amqp.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer
import org.springframework.boot.rabbitmq.autoconfigure.SimpleRabbitListenerContainerFactoryConfigurer
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
@@ -1,8 +0,0 @@
# Connection Details Factories
org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\
org.springframework.boot.amqp.docker.compose.RabbitDockerComposeConnectionDetailsFactory,\
org.springframework.boot.amqp.docker.compose.RabbitStreamDockerComposeConnectionDetailsFactory,\
org.springframework.boot.amqp.testcontainers.DeprecatedRabbitContainerConnectionDetailsFactory,\
org.springframework.boot.amqp.testcontainers.RabbitContainerConnectionDetailsFactory,\
org.springframework.boot.amqp.testcontainers.RabbitStreamContainerConnectionDetailsFactory
@@ -1,3 +0,0 @@
org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration
org.springframework.boot.amqp.autoconfigure.health.RabbitHealthContributorAutoConfiguration
org.springframework.boot.amqp.autoconfigure.metrics.RabbitMetricsAutoConfiguration
@@ -28,9 +28,6 @@ dependencies {
api(project(":module:spring-boot-activemq")) {
transitive = false
}
api(project(":module:spring-boot-amqp")) {
transitive = false
}
api(project(":module:spring-boot-artemis")) {
transitive = false
}
@@ -226,6 +223,9 @@ dependencies {
api(project(":module:spring-boot-r2dbc")) {
transitive = false
}
api(project(":module:spring-boot-rabbitmq")) {
transitive = false
}
api(project(":module:spring-boot-reactor")) {
transitive = false
}
@@ -23,7 +23,7 @@ plugins {
id "org.springframework.boot.optional-dependencies"
}
description = "Spring Boot AMQP"
description = "Spring Boot RabbitMQ"
dependencies {
api(project(":core:spring-boot"))
@@ -14,25 +14,25 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.testsupport.container.TestImage;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Integration tests for {@link RabbitDockerComposeConnectionDetailsFactory} and
* {@link RabbitStreamDockerComposeConnectionDetailsFactory} when used in combination.
* Integration tests for {@link RabbitMqDockerComposeConnectionDetailsFactory} and
* {@link RabbitMqStreamDockerComposeConnectionDetailsFactory} when used in combination.
*
* @author Andy Wilkinson
*/
class RabbitAndRabbitStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
class RabbitMqAndRabbitMqStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
@DockerComposeTest(composeFile = "rabbit-and-rabbit-stream-separate-services-compose.yaml",
@DockerComposeTest(composeFile = "rabbitmq-and-rabbitmq-stream-separate-services-compose.yaml",
image = TestImage.RABBITMQ)
void runCreatesConnectionDetailsFromSeparateServices(RabbitConnectionDetails connectionDetails,
RabbitStreamConnectionDetails streamConnectionDetails) {
@@ -40,7 +40,8 @@ class RabbitAndRabbitStreamDockerComposeConnectionDetailsFactoryIntegrationTests
assertConnectionDetails(streamConnectionDetails);
}
@DockerComposeTest(composeFile = "rabbit-and-rabbit-stream-single-service-compose.yaml", image = TestImage.RABBITMQ)
@DockerComposeTest(composeFile = "rabbitmq-and-rabbitmq-stream-single-service-compose.yaml",
image = TestImage.RABBITMQ)
void runCreatesConnectionDetailsFromSingleService(RabbitConnectionDetails connectionDetails,
RabbitStreamConnectionDetails streamConnectionDetails) {
assertConnectionDetails(connectionDetails);
@@ -14,33 +14,33 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.testsupport.container.TestImage;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Integration tests for {@link RabbitDockerComposeConnectionDetailsFactory}.
* Integration tests for {@link RabbitMqDockerComposeConnectionDetailsFactory}.
*
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Phillip Webb
* @author Scott Frederick
*/
class RabbitDockerComposeConnectionDetailsFactoryIntegrationTests {
class RabbitMqDockerComposeConnectionDetailsFactoryIntegrationTests {
@DockerComposeTest(composeFile = "rabbit-compose.yaml", image = TestImage.RABBITMQ)
@DockerComposeTest(composeFile = "rabbitmq-compose.yaml", image = TestImage.RABBITMQ)
void runCreatesConnectionDetails(RabbitConnectionDetails connectionDetails) {
assertConnectionDetails(connectionDetails);
assertThat(connectionDetails.getSslBundle()).isNull();
}
@DockerComposeTest(composeFile = "rabbit-ssl-compose.yaml", image = TestImage.RABBITMQ,
@DockerComposeTest(composeFile = "rabbitmq-ssl-compose.yaml", image = TestImage.RABBITMQ,
additionalResources = { "../../ca.crt", "../../server.crt", "../../server.key", "../../client.crt",
"../../client.key", "rabbitmq-ssl.conf" })
void runWithSslCreatesConnectionDetails(RabbitConnectionDetails connectionDetails) {
@@ -14,28 +14,28 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.testsupport.container.TestImage;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Integration tests for {@link RabbitStreamDockerComposeConnectionDetailsFactory}.
* Integration tests for {@link RabbitMqStreamDockerComposeConnectionDetailsFactory}.
*
* @author Andy Wilkinson
*/
class RabbitStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
class RabbitMqStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
@DockerComposeTest(composeFile = "rabbit-stream-compose.yaml", image = TestImage.RABBITMQ)
@DockerComposeTest(composeFile = "rabbitmq-stream-compose.yaml", image = TestImage.RABBITMQ)
void runCreatesConnectionDetails(RabbitStreamConnectionDetails connectionDetails) {
assertConnectionDetails(connectionDetails);
}
@DockerComposeTest(composeFile = "rabbit-stream-ssl-compose.yaml", image = TestImage.RABBITMQ,
@DockerComposeTest(composeFile = "rabbitmq-stream-ssl-compose.yaml", image = TestImage.RABBITMQ,
additionalResources = { "../../ca.crt", "../../server.crt", "../../server.key", "../../client.crt",
"../../client.key", "rabbitmq-stream-ssl.conf" })
void runWithSslCreatesConnectionDetails(RabbitStreamConnectionDetails connectionDetails) {
@@ -14,26 +14,27 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.testsupport.container.TestImage;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Integration tests for {@link RabbitDockerComposeConnectionDetailsFactory} and
* {@link RabbitStreamDockerComposeConnectionDetailsFactory} when using a single service
* Integration tests for {@link RabbitMqDockerComposeConnectionDetailsFactory} and
* {@link RabbitMqStreamDockerComposeConnectionDetailsFactory} when using a single service
* for standard and stream-based messaging.
*
* @author Andy Wilkinson
*/
class SingleServiceRabbitAndRabbitStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
class SingleServiceRabbitAndRabbitMqStreamDockerComposeConnectionDetailsFactoryIntegrationTests {
@DockerComposeTest(composeFile = "rabbit-and-rabbit-stream-single-service-compose.yaml", image = TestImage.RABBITMQ)
@DockerComposeTest(composeFile = "rabbitmq-and-rabbitmq-stream-single-service-compose.yaml",
image = TestImage.RABBITMQ)
void runCreatesConnectionDetails(RabbitConnectionDetails connectionDetails,
RabbitStreamConnectionDetails streamConnectionDetails) {
assertConnectionDetails(connectionDetails);
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.time.Duration;
import java.util.ArrayList;
@@ -30,9 +30,9 @@ import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
import org.springframework.boot.testsupport.container.TestImage;
import org.springframework.context.annotation.Bean;
@@ -48,7 +48,7 @@ import static org.assertj.core.api.Assertions.assertThat;
* @author Andy Wilkinson
* @author Phillip Webb
* @deprecated since 4.0.0 for removal in 4.2.0 in favor of
* {@link RabbitContainerConnectionDetailsFactoryIntegrationTests}.
* {@link RabbitMqContainerConnectionDetailsFactoryIntegrationTests}.
*/
@SpringJUnitConfig
@Testcontainers(disabledWithoutDocker = true)
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.time.Duration;
import java.util.ArrayList;
@@ -30,9 +30,9 @@ import org.springframework.amqp.rabbit.annotation.Queue;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
import org.springframework.boot.testsupport.container.TestImage;
import org.springframework.context.annotation.Bean;
@@ -42,7 +42,7 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitContainerConnectionDetailsFactory}.
* Tests for {@link RabbitMqContainerConnectionDetailsFactory}.
*
* @author Moritz Halbritter
* @author Andy Wilkinson
@@ -50,7 +50,7 @@ import static org.assertj.core.api.Assertions.assertThat;
*/
@SpringJUnitConfig
@Testcontainers(disabledWithoutDocker = true)
class RabbitContainerConnectionDetailsFactoryIntegrationTests {
class RabbitMqContainerConnectionDetailsFactoryIntegrationTests {
@Container
@ServiceConnection
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.time.Duration;
import java.util.ArrayList;
@@ -31,13 +31,13 @@ import org.testcontainers.rabbitmq.RabbitMQContainer;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
import org.springframework.boot.testsupport.container.TestImage;
import org.springframework.context.annotation.Bean;
@@ -50,8 +50,8 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitStreamContainerConnectionDetailsFactory} with a single container
* that's only used for streams.
* Tests for {@link RabbitMqStreamContainerConnectionDetailsFactory} with a single
* container that's only used for streams.
*
* @author Eddú Meléndez
* @author Andy Wilkinson
@@ -60,7 +60,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@TestPropertySource(
properties = { "spring.rabbitmq.stream.name=stream.queue1", "spring.rabbitmq.listener.type=stream" })
@Testcontainers(disabledWithoutDocker = true)
class RabbitStreamContainerConnectionDetailsFactoryIntegrationTests {
class RabbitMqStreamContainerConnectionDetailsFactoryIntegrationTests {
private static final int RABBITMQ_STREAMS_PORT = 5552;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.time.Duration;
import java.util.ArrayList;
@@ -32,13 +32,13 @@ import org.testcontainers.utility.MountableFile;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.PemKeyStore;
import org.springframework.boot.testcontainers.service.connection.PemTrustStore;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
@@ -53,7 +53,7 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitStreamContainerConnectionDetailsFactory} with SSL.
* Tests for {@link RabbitMqStreamContainerConnectionDetailsFactory} with SSL.
*
* @author Eddú Meléndez
* @author Andy Wilkinson
@@ -62,15 +62,15 @@ import static org.assertj.core.api.Assertions.assertThat;
@TestPropertySource(
properties = { "spring.rabbitmq.stream.name=stream.queue1", "spring.rabbitmq.listener.type=stream" })
@Testcontainers(disabledWithoutDocker = true)
class RabbitStreamWithSslContainerConnectionDetailsFactoryIntegrationTests {
class RabbitMqStreamWithSslContainerConnectionDetailsFactoryIntegrationTests {
private static final int RABBITMQ_STREAMS_TLS_PORT = 5551;
@Container
@ServiceConnection(type = RabbitStreamConnectionDetails.class)
@PemTrustStore(certificate = "classpath:org/springframework/boot/amqp/ca.crt")
@PemKeyStore(certificate = "classpath:org/springframework/boot/amqp/client.crt",
privateKey = "classpath:org/springframework/boot/amqp/client.key")
@PemTrustStore(certificate = "classpath:org/springframework/boot/rabbitmq/ca.crt")
@PemKeyStore(certificate = "classpath:org/springframework/boot/rabbitmq/client.crt",
privateKey = "classpath:org/springframework/boot/rabbitmq/client.key")
static final RabbitMQContainer rabbit = getRabbitMqStreamContainer();
private static RabbitMQContainer getRabbitMqStreamContainer() {
@@ -80,15 +80,15 @@ class RabbitStreamWithSslContainerConnectionDetailsFactoryIntegrationTests {
container.withCopyToContainer(Transferable.of(enabledPlugins), "/etc/rabbitmq/enabled_plugins");
container.withCopyFileToContainer(
MountableFile
.forClasspathResource("org/springframework/boot/amqp/testcontainers/rabbitmq-stream-ssl.conf"),
.forClasspathResource("org/springframework/boot/rabbitmq/testcontainers/rabbitmq-stream-ssl.conf"),
"/etc/rabbitmq/rabbitmq.conf");
container.withCopyFileToContainer(MountableFile.forClasspathResource("org/springframework/boot/amqp/ca.crt"),
"/etc/rabbitmq/ca.crt");
container.withCopyFileToContainer(
MountableFile.forClasspathResource("org/springframework/boot/amqp/server.key"),
MountableFile.forClasspathResource("org/springframework/boot/rabbitmq/ca.crt"), "/etc/rabbitmq/ca.crt");
container.withCopyFileToContainer(
MountableFile.forClasspathResource("org/springframework/boot/rabbitmq/server.key"),
"/etc/rabbitmq/server.key");
container.withCopyFileToContainer(
MountableFile.forClasspathResource("org/springframework/boot/amqp/server.crt"),
MountableFile.forClasspathResource("org/springframework/boot/rabbitmq/server.crt"),
"/etc/rabbitmq/server.crt");
return container;
}
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
@@ -35,13 +35,13 @@ import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
import org.springframework.boot.testsupport.container.TestImage;
import org.springframework.context.annotation.Bean;
@@ -54,7 +54,7 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitStreamContainerConnectionDetailsFactory} with two containers,
* Tests for {@link RabbitMqStreamContainerConnectionDetailsFactory} with two containers,
* one for streams and one for standard messaging.
*
* @author Eddú Meléndez
@@ -64,7 +64,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@TestPropertySource(
properties = { "spring.rabbitmq.stream.name=stream.queue1", "spring.rabbitmq.listener.type=stream" })
@Testcontainers(disabledWithoutDocker = true)
class SeparateContainersRabbitAndRabbitStreamContainerConnectionDetailsFactoryIntegrationTests {
class SeparateContainersRabbitMqAndRabbitMqStreamContainerConnectionDetailsFactoryIntegrationTests {
private static final int RABBITMQ_STREAMS_PORT = 5552;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
@@ -35,13 +35,13 @@ import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.annotation.RabbitListener;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.amqp.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.amqp.testcontainers.RabbitStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.EnvironmentBuilderCustomizer;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqContainerConnectionDetailsFactory.RabbitMqContainerConnectionDetails;
import org.springframework.boot.rabbitmq.testcontainers.RabbitMqStreamContainerConnectionDetailsFactory.RabbitMqStreamContainerConnectionDetails;
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
import org.springframework.boot.testsupport.container.TestImage;
import org.springframework.context.annotation.Bean;
@@ -54,8 +54,8 @@ import org.springframework.test.context.junit.jupiter.SpringJUnitConfig;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitStreamContainerConnectionDetailsFactory} with a single container
* used for both streams and standard messaging.
* Tests for {@link RabbitMqStreamContainerConnectionDetailsFactory} with a single
* container used for both streams and standard messaging.
*
* @author Eddú Meléndez
* @author Andy Wilkinson
@@ -64,7 +64,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@TestPropertySource(
properties = { "spring.rabbitmq.stream.name=stream.queue1", "spring.rabbitmq.listener.type=stream" })
@Testcontainers(disabledWithoutDocker = true)
class SingleContainerRabbitAndRabbitStreamContainerConnectionDetailsFactoryIntegrationTests {
class SingleContainerRabbitAndRabbitMqStreamContainerConnectionDetailsFactoryIntegrationTests {
private static final int RABBITMQ_STREAMS_PORT = 5552;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.stream.Collectors;
@@ -33,7 +33,7 @@ import org.springframework.util.Assert;
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Phillip Webb
* @since 4.0.0
* @since 4.2.0
*/
public abstract class AbstractConnectionFactoryConfigurer<T extends AbstractConnectionFactory> {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.List;
import java.util.concurrent.Executor;
@@ -28,8 +28,8 @@ import org.springframework.amqp.rabbit.retry.MessageRecoverer;
import org.springframework.amqp.rabbit.retry.RejectAndDontRequeueRecoverer;
import org.springframework.amqp.rabbit.support.micrometer.RabbitListenerObservationConvention;
import org.springframework.amqp.support.converter.MessageConverter;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.ListenerRetry;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.Retry;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.ListenerRetry;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.Retry;
import org.springframework.boot.retry.RetryPolicySettings;
import org.springframework.core.retry.RetryPolicy;
import org.springframework.util.Assert;
@@ -41,7 +41,7 @@ import org.springframework.util.Assert;
* @param <T> the container factory type.
* @author Gary Russell
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
*/
public abstract class AbstractRabbitListenerContainerFactoryConfigurer<T extends AbstractRabbitListenerContainerFactory<?>> {
@@ -102,7 +102,7 @@ public abstract class AbstractRabbitListenerContainerFactoryConfigurer<T extends
/**
* Sets the observation convention to use.
* @param observationConvention the observation convention to use
* @since 4.1.0
* @since 4.2.0
*/
protected void setObservationConvention(@Nullable RabbitListenerObservationConvention observationConvention) {
this.observationConvention = observationConvention;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.time.Duration;
@@ -33,7 +33,7 @@ import org.springframework.boot.context.properties.PropertyMapper;
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Phillip Webb
* @since 4.0.0
* @since 4.2.0
*/
public class CachingConnectionFactoryConfigurer extends AbstractConnectionFactoryConfigurer<CachingConnectionFactory> {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import com.rabbitmq.client.ConnectionFactory;
@@ -23,7 +23,7 @@ import com.rabbitmq.client.ConnectionFactory;
* {@link ConnectionFactory} to fine-tune its auto-configuration.
*
* @author Andy Wilkinson
* @since 4.0.0
* @since 4.2.0
*/
@FunctionalInterface
public interface ConnectionFactoryCustomizer {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.amqp.rabbit.config.DirectRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
@@ -30,7 +30,7 @@ import org.springframework.boot.context.properties.PropertyMapper;
*
* @author Gary Russell
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
*/
public final class DirectRabbitListenerContainerFactoryConfigurer
extends AbstractRabbitListenerContainerFactoryConfigurer<DirectRabbitListenerContainerFactory> {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import com.rabbitmq.stream.Environment;
import com.rabbitmq.stream.EnvironmentBuilder;
@@ -25,7 +25,7 @@ import com.rabbitmq.stream.EnvironmentBuilder;
* {@link Environment}.
*
* @author Andy Wilkinson
* @since 4.0.0
* @since 4.2.0
*/
@FunctionalInterface
public interface EnvironmentBuilderCustomizer {
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.ArrayList;
import java.util.List;
import org.jspecify.annotations.Nullable;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.Ssl;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.Ssl;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.ssl.SslBundles;
import org.springframework.util.Assert;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.amqp.rabbit.annotation.EnableRabbit;
import org.springframework.amqp.rabbit.config.ContainerCustomizer;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.impl.CredentialsProvider;
@@ -72,7 +72,7 @@ import org.springframework.core.io.ResourceLoader;
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Scott Frederick
* @since 4.0.0
* @since 4.2.0
*/
@AutoConfiguration
@ConditionalOnClass({ RabbitTemplate.class, Channel.class })
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.List;
@@ -30,7 +30,7 @@ import org.springframework.util.Assert;
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Phillip Webb
* @since 4.0.0
* @since 4.2.0
*/
public interface RabbitConnectionDetails extends ConnectionDetails {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.time.Duration;
@@ -23,8 +23,8 @@ import com.rabbitmq.client.impl.CredentialsRefreshService;
import org.jspecify.annotations.Nullable;
import org.springframework.amqp.rabbit.connection.RabbitConnectionFactoryBean;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.context.properties.PropertyMapper;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.ssl.SslBundles;
import org.springframework.core.io.ResourceLoader;
@@ -44,7 +44,7 @@ import org.springframework.util.unit.DataSize;
* @author Andy Wilkinson
* @author Phillip Webb
* @author Scott Frederick
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitConnectionFactoryBeanConfigurer {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.boot.retry.RetryPolicySettings;
import org.springframework.core.retry.RetryPolicy;
@@ -24,7 +24,7 @@ import org.springframework.core.retry.RetryPolicy;
* settings} used by message listeners.
*
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
* @see RetryPolicy
*/
@FunctionalInterface
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.time.Duration;
import java.time.temporal.ChronoUnit;
@@ -53,7 +53,7 @@ import org.springframework.util.unit.DataSize;
* @author Lasse Wulff
* @author Yanming Zhou
* @author Jay Choi
* @since 4.0.0
* @since 4.2.0
*/
@ConfigurationProperties("spring.rabbitmq")
public class RabbitProperties {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.LinkedList;
@@ -26,7 +26,7 @@ import org.springframework.core.retry.RetryTemplate;
* Define the settings of a {@link RetryTemplate}.
*
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitRetryTemplateSettings {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import javax.net.ssl.SSLException;
@@ -27,13 +27,13 @@ import org.jspecify.annotations.Nullable;
import org.springframework.amqp.rabbit.config.ContainerCustomizer;
import org.springframework.amqp.support.converter.MessageConverter;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.Stream;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.Stream.Ssl;
import org.springframework.boot.amqp.autoconfigure.RabbitProperties.StreamContainer;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.PropertyMapper;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.Stream;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.Stream.Ssl;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitProperties.StreamContainer;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.ssl.SslBundles;
import org.springframework.boot.ssl.SslManagerBundle;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.jspecify.annotations.Nullable;
@@ -26,7 +26,7 @@ import org.springframework.boot.ssl.SslBundle;
*
* @author Eddú Meléndez
* @author Jay Choi
* @since 4.1.0
* @since 4.2.0
*/
public interface RabbitStreamConnectionDetails extends ConnectionDetails {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.jspecify.annotations.Nullable;
@@ -32,7 +32,7 @@ import org.springframework.rabbit.stream.support.converter.StreamMessageConverte
* auto-configuration.
*
* @author Eddú Meléndez
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitStreamTemplateConfigurer {
@@ -73,7 +73,7 @@ public class RabbitStreamTemplateConfigurer {
/**
* Set the observation convention to use.
* @param observationConvention the observation convention to use
* @since 4.1.0
* @since 4.2.0
*/
public void setObservationConvention(@Nullable RabbitStreamTemplateObservationConvention observationConvention) {
this.observationConvention = observationConvention;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.time.Duration;
import java.util.List;
@@ -45,7 +45,7 @@ import org.springframework.util.CollectionUtils;
*
* @author Stephane Nicoll
* @author Yanming Zhou
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitTemplateConfigurer {
@@ -87,7 +87,7 @@ public class RabbitTemplateConfigurer {
/**
* Sets the observation convention to use.
* @param observationConvention the observation convention to use
* @since 4.1.0
* @since 4.2.0
*/
public void setObservationConvention(@Nullable RabbitTemplateObservationConvention observationConvention) {
this.observationConvention = observationConvention;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
@@ -22,7 +22,7 @@ import org.springframework.amqp.rabbit.core.RabbitTemplate;
* Callback interface that can be used to customize a {@link RabbitTemplate}.
*
* @author dang zhicairang
* @since 4.0.0
* @since 4.2.0
*/
@FunctionalInterface
public interface RabbitTemplateCustomizer {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.core.retry.RetryTemplate;
@@ -24,7 +24,7 @@ import org.springframework.core.retry.RetryTemplate;
* {@linkplain RabbitRetryTemplateSettings retry settings} used by {@link RabbitTemplate}.
*
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
* @see RabbitTemplateConfigurer
* @see RetryTemplate
*/
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.springframework.amqp.rabbit.config.SimpleRabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
@@ -30,7 +30,7 @@ import org.springframework.boot.context.properties.PropertyMapper;
*
* @author Stephane Nicoll
* @author Gary Russell
* @since 4.0.0
* @since 4.2.0
*/
public final class SimpleRabbitListenerContainerFactoryConfigurer
extends AbstractRabbitListenerContainerFactoryConfigurer<SimpleRabbitListenerContainerFactory> {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.jspecify.annotations.Nullable;
@@ -14,12 +14,10 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.health;
package org.springframework.boot.rabbitmq.autoconfigure.health;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.health.RabbitHealthIndicator;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
@@ -28,13 +26,15 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
import org.springframework.boot.health.autoconfigure.contributor.CompositeHealthContributorConfiguration;
import org.springframework.boot.health.autoconfigure.contributor.ConditionalOnEnabledHealthIndicator;
import org.springframework.boot.health.contributor.HealthContributor;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.health.RabbitHealthIndicator;
import org.springframework.context.annotation.Bean;
/**
* {@link EnableAutoConfiguration Auto-configuration} for {@link RabbitHealthIndicator}.
*
* @author Christian Dupuis
* @since 4.0.0
* @since 4.2.0
*/
@AutoConfiguration(after = RabbitAutoConfiguration.class)
@ConditionalOnClass({ RabbitHealthIndicator.class, RabbitTemplate.class, ConditionalOnEnabledHealthIndicator.class })
@@ -18,6 +18,6 @@
* Auto-configuration for RabbitMQ health.
*/
@NullMarked
package org.springframework.boot.amqp.autoconfigure.health;
package org.springframework.boot.rabbitmq.autoconfigure.health;
import org.jspecify.annotations.NullMarked;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.metrics;
package org.springframework.boot.rabbitmq.autoconfigure.metrics;
import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.MetricsCollector;
@@ -24,7 +24,7 @@ import org.jspecify.annotations.Nullable;
import org.springframework.amqp.rabbit.connection.AbstractConnectionFactory;
import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.boot.amqp.metrics.RabbitMetrics;
import org.springframework.boot.rabbitmq.metrics.RabbitMetrics;
import org.springframework.context.ApplicationContext;
import org.springframework.core.Ordered;
import org.springframework.util.StringUtils;
@@ -14,17 +14,17 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.metrics;
package org.springframework.boot.rabbitmq.autoconfigure.metrics;
import com.rabbitmq.client.ConnectionFactory;
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.amqp.rabbit.connection.AbstractConnectionFactory;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
@@ -33,7 +33,7 @@ import org.springframework.context.annotation.Bean;
* {@link ConnectionFactory connection factories}.
*
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
*/
@AutoConfiguration(
afterName = "org.springframework.boot.micrometer.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration",
@@ -18,6 +18,6 @@
* Auto-configuration for RabbitMQ metrics.
*/
@NullMarked
package org.springframework.boot.amqp.autoconfigure.metrics;
package org.springframework.boot.rabbitmq.autoconfigure.metrics;
import org.jspecify.annotations.NullMarked;
@@ -18,6 +18,6 @@
* Auto-configuration for RabbitMQ.
*/
@NullMarked
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import org.jspecify.annotations.NullMarked;
@@ -14,17 +14,17 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import java.util.List;
import org.jspecify.annotations.Nullable;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.docker.compose.core.RunningService;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionDetailsFactory;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionSource;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
/**
@@ -33,12 +33,12 @@ import org.springframework.boot.ssl.SslBundle;
*
* @author Andy Wilkinson
*/
class RabbitDockerComposeConnectionDetailsFactory
class RabbitMqDockerComposeConnectionDetailsFactory
extends DockerComposeConnectionDetailsFactory<RabbitConnectionDetails> {
private static final int RABBITMQ_PORT = 5672;
protected RabbitDockerComposeConnectionDetailsFactory() {
protected RabbitMqDockerComposeConnectionDetailsFactory() {
super("rabbitmq");
}
@@ -60,7 +60,7 @@ class RabbitDockerComposeConnectionDetailsFactory
static class RabbitDockerComposeConnectionDetails extends DockerComposeConnectionDetails
implements RabbitConnectionDetails {
private final RabbitEnvironment environment;
private final RabbitMqEnvironment environment;
private final List<Address> addresses;
@@ -68,7 +68,7 @@ class RabbitDockerComposeConnectionDetailsFactory
protected RabbitDockerComposeConnectionDetails(RunningService service) {
super(service);
this.environment = new RabbitEnvironment(service.env());
this.environment = new RabbitMqEnvironment(service.env());
this.sslBundle = getSslBundle(service);
this.addresses = List.of(new Address(service.host(), service.ports().get(RABBITMQ_PORT)));
}
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import java.util.Map;
@@ -28,13 +28,13 @@ import org.jspecify.annotations.Nullable;
* @author Phillip Webb
* @author Scott Frederick
*/
class RabbitEnvironment {
class RabbitMqEnvironment {
private final @Nullable String username;
private final @Nullable String password;
RabbitEnvironment(Map<String, @Nullable String> env) {
RabbitMqEnvironment(Map<String, @Nullable String> env) {
this.username = env.getOrDefault("RABBITMQ_DEFAULT_USER", env.getOrDefault("RABBITMQ_USERNAME", "guest"));
this.password = env.getOrDefault("RABBITMQ_DEFAULT_PASS", env.getOrDefault("RABBITMQ_PASSWORD", "guest"));
}
@@ -14,15 +14,15 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.jspecify.annotations.Nullable;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.docker.compose.core.RunningService;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionDetailsFactory;
import org.springframework.boot.docker.compose.service.connection.DockerComposeConnectionSource;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
/**
@@ -35,10 +35,10 @@ import org.springframework.boot.ssl.SslBundle;
* @author Scott Frederick
* @author Jay Choi
*/
class RabbitStreamDockerComposeConnectionDetailsFactory
class RabbitMqStreamDockerComposeConnectionDetailsFactory
extends DockerComposeConnectionDetailsFactory<RabbitStreamConnectionDetails> {
protected RabbitStreamDockerComposeConnectionDetailsFactory() {
protected RabbitMqStreamDockerComposeConnectionDetailsFactory() {
super("rabbitmq");
}
@@ -64,7 +64,7 @@ class RabbitStreamDockerComposeConnectionDetailsFactory
private static final int STREAMS_TLS_PORT = 5551;
private final RabbitEnvironment environment;
private final RabbitMqEnvironment environment;
private final String host;
@@ -74,7 +74,7 @@ class RabbitStreamDockerComposeConnectionDetailsFactory
protected RabbitStreamDockerComposeConnectionDetails(RunningService service) {
super(service);
this.environment = new RabbitEnvironment(service.env());
this.environment = new RabbitMqEnvironment(service.env());
this.host = service.host();
this.sslBundle = getSslBundle(service);
this.port = service.ports().get((this.sslBundle != null) ? STREAMS_TLS_PORT : STREAMS_PORT);
@@ -18,6 +18,6 @@
* Support for Docker Compose RabbitMQ service connections.
*/
@NullMarked
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import org.jspecify.annotations.NullMarked;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.health;
package org.springframework.boot.rabbitmq.health;
import org.jspecify.annotations.Nullable;
@@ -29,7 +29,7 @@ import org.springframework.util.Assert;
* RabbitMQ messaging system.
*
* @author Christian Dupuis
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitHealthIndicator extends AbstractHealthIndicator {
@@ -18,6 +18,6 @@
* Health integration for AMQP and RabbitMQ.
*/
@NullMarked
package org.springframework.boot.amqp.health;
package org.springframework.boot.rabbitmq.health;
import org.jspecify.annotations.NullMarked;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.metrics;
package org.springframework.boot.rabbitmq.metrics;
import java.util.Collections;
@@ -32,7 +32,7 @@ import org.springframework.util.Assert;
*
* @author Arnaud Cogoluègnes
* @author Stephane Nicoll
* @since 4.0.0
* @since 4.2.0
*/
public class RabbitMetrics implements MeterBinder {
@@ -18,6 +18,6 @@
* Metrics for AMQP and RabbitMQ.
*/
@NullMarked
package org.springframework.boot.amqp.metrics;
package org.springframework.boot.rabbitmq.metrics;
import org.jspecify.annotations.NullMarked;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.net.URI;
import java.util.List;
@@ -22,7 +22,7 @@ import java.util.List;
import org.jspecify.annotations.Nullable;
import org.testcontainers.containers.RabbitMQContainer;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource;
@@ -37,7 +37,7 @@ import org.springframework.boot.testcontainers.service.connection.ServiceConnect
* @author Andy Wilkinson
* @author Phillip Webb
* @deprecated since 4.0.0 for removal in 4.2.0 in favor of
* {@link RabbitContainerConnectionDetailsFactory}.
* {@link RabbitMqContainerConnectionDetailsFactory}.
*/
@Deprecated(since = "4.0.0", forRemoval = true)
class DeprecatedRabbitContainerConnectionDetailsFactory
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import java.net.URI;
import java.util.List;
@@ -22,7 +22,7 @@ import java.util.List;
import org.jspecify.annotations.Nullable;
import org.testcontainers.rabbitmq.RabbitMQContainer;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource;
@@ -37,7 +37,7 @@ import org.springframework.boot.testcontainers.service.connection.ServiceConnect
* @author Andy Wilkinson
* @author Phillip Webb
*/
class RabbitContainerConnectionDetailsFactory
class RabbitMqContainerConnectionDetailsFactory
extends ContainerConnectionDetailsFactory<RabbitMQContainer, RabbitConnectionDetails> {
@Override
@@ -14,12 +14,12 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import org.jspecify.annotations.Nullable;
import org.testcontainers.rabbitmq.RabbitMQContainer;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConnectionDetails;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory;
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource;
@@ -33,10 +33,10 @@ import org.springframework.boot.testcontainers.service.connection.ServiceConnect
* @author Eddú Meléndez
* @author Jay Choi
*/
class RabbitStreamContainerConnectionDetailsFactory
class RabbitMqStreamContainerConnectionDetailsFactory
extends ContainerConnectionDetailsFactory<RabbitMQContainer, RabbitStreamConnectionDetails> {
RabbitStreamContainerConnectionDetailsFactory() {
RabbitMqStreamContainerConnectionDetailsFactory() {
super(ANY_CONNECTION_NAME, "org.springframework.rabbit.stream.producer.RabbitStreamTemplate");
}
@@ -18,6 +18,6 @@
* Support for testcontainers RabbitMQ service connections.
*/
@NullMarked
package org.springframework.boot.amqp.testcontainers;
package org.springframework.boot.rabbitmq.testcontainers;
import org.jspecify.annotations.NullMarked;
@@ -0,0 +1,8 @@
# Connection Details Factories
org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\
org.springframework.boot.rabbitmq.docker.compose.RabbitMqDockerComposeConnectionDetailsFactory,\
org.springframework.boot.rabbitmq.docker.compose.RabbitMqStreamDockerComposeConnectionDetailsFactory,\
org.springframework.boot.rabbitmq.testcontainers.DeprecatedRabbitContainerConnectionDetailsFactory,\
org.springframework.boot.rabbitmq.testcontainers.RabbitMqContainerConnectionDetailsFactory,\
org.springframework.boot.rabbitmq.testcontainers.RabbitMqStreamContainerConnectionDetailsFactory
@@ -0,0 +1,3 @@
org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration
org.springframework.boot.rabbitmq.autoconfigure.health.RabbitHealthContributorAutoConfiguration
org.springframework.boot.rabbitmq.autoconfigure.metrics.RabbitMetricsAutoConfiguration
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.List;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.springframework.boot.amqp.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitConnectionDetails.Address;
import org.springframework.boot.ssl.DefaultSslBundleRegistry;
import org.springframework.boot.ssl.SslBundle;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.io.IOException;
import java.security.NoSuchAlgorithmException;
@@ -961,7 +961,7 @@ class RabbitAutoConfigurationTests {
void enableSslWithBundle() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.bundle=test-bundle",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.password=secret")
.run((context) -> {
com.rabbitmq.client.ConnectionFactory rabbitConnectionFactory = getTargetConnectionFactory(context);
@@ -974,7 +974,7 @@ class RabbitAutoConfigurationTests {
void enableSslWithBundleAndWithoutHostnameVerification() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.bundle=test-bundle", "spring.rabbitmq.ssl.verify-hostname=false",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.password=secret")
.run((context) -> {
com.rabbitmq.client.ConnectionFactory rabbitConnectionFactory = getTargetConnectionFactory(context);
@@ -987,9 +987,9 @@ class RabbitAutoConfigurationTests {
void enableSslWithKeystoreTypeAndTrustStoreTypeShouldWork() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.enabled:true",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store-type=jks", "spring.rabbitmq.ssl.key-store-password=secret",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store-type=jks", "spring.rabbitmq.ssl.trust-store-password=secret")
.run((context) -> assertThat(context).hasNotFailed());
}
@@ -1021,10 +1021,10 @@ class RabbitAutoConfigurationTests {
void enableSslWithValidStoreAlgorithmShouldWork() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.enabled:true",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store-type=jks", "spring.rabbitmq.ssl.key-store-password=secret",
"spring.rabbitmq.ssl.key-store-algorithm=PKIX",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store-type=jks", "spring.rabbitmq.ssl.trust-store-password=secret",
"spring.rabbitmq.ssl.trust-store-algorithm=PKIX")
.run((context) -> assertThat(context).hasNotFailed());
@@ -1034,7 +1034,7 @@ class RabbitAutoConfigurationTests {
void enableSslWithInvalidKeyStoreAlgorithmShouldFail() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.enabled:true",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.key-store-type=jks", "spring.rabbitmq.ssl.key-store-password=secret",
"spring.rabbitmq.ssl.key-store-algorithm=test-invalid-algo")
.run((context) -> {
@@ -1048,7 +1048,7 @@ class RabbitAutoConfigurationTests {
void enableSslWithInvalidTrustStoreAlgorithmShouldFail() {
this.contextRunner.withUserConfiguration(TestConfiguration.class)
.withPropertyValues("spring.rabbitmq.ssl.enabled:true",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store=/org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.rabbitmq.ssl.trust-store-type=jks", "spring.rabbitmq.ssl.trust-store-password=secret",
"spring.rabbitmq.ssl.trust-store-algorithm=test-invalid-algo")
.run((context) -> {
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.util.List;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure;
package org.springframework.boot.rabbitmq.autoconfigure;
import java.time.Duration;
import java.util.List;
@@ -34,9 +34,9 @@ import org.springframework.amqp.rabbit.config.ContainerCustomizer;
import org.springframework.amqp.rabbit.listener.RabbitListenerContainerFactory;
import org.springframework.amqp.rabbit.listener.RabbitListenerEndpointRegistry;
import org.springframework.amqp.support.converter.MessageConverter;
import org.springframework.boot.amqp.autoconfigure.RabbitStreamConfiguration.PropertiesRabbitStreamConnectionDetails;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.autoconfigure.ssl.SslAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitStreamConfiguration.PropertiesRabbitStreamConnectionDetails;
import org.springframework.boot.ssl.NoSuchSslBundleException;
import org.springframework.boot.ssl.SslBundle;
import org.springframework.boot.ssl.SslBundles;
@@ -352,7 +352,7 @@ class RabbitStreamConfigurationTests {
@Test
void whenStreamSslBundleIsConfiguredThenTlsIsUsed() {
this.contextRunner.withPropertyValues("spring.rabbitmq.stream.ssl.bundle=test-bundle",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.password=secret")
.run((context) -> {
assertThat(context).hasNotFailed();
@@ -388,7 +388,7 @@ class RabbitStreamConfigurationTests {
void whenConnectionDetailsSslBundleIsProvidedThenTlsIsUsedWithoutProperties() {
this.contextRunner.withUserConfiguration(CustomConnectionDetails.class)
.withPropertyValues(
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/amqp/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.location=classpath:org/springframework/boot/rabbitmq/autoconfigure/test.jks",
"spring.ssl.bundle.jks.test-bundle.keystore.password=secret")
.run((context) -> {
assertThat(context).hasNotFailed();
@@ -14,14 +14,14 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.health;
package org.springframework.boot.rabbitmq.autoconfigure.health;
import org.junit.jupiter.api.Test;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.amqp.health.RabbitHealthIndicator;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.health.autoconfigure.contributor.HealthContributorAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.rabbitmq.health.RabbitHealthIndicator;
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import static org.assertj.core.api.Assertions.assertThat;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.metrics;
package org.springframework.boot.rabbitmq.autoconfigure.metrics;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.binder.MeterBinder;
@@ -22,8 +22,8 @@ import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
import org.junit.jupiter.api.Test;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.micrometer.metrics.autoconfigure.MetricsAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.autoconfigure.metrics;
package org.springframework.boot.rabbitmq.autoconfigure.metrics;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.core.instrument.simple.SimpleMeterRegistry;
@@ -22,9 +22,9 @@ import org.junit.jupiter.api.Test;
import org.springframework.amqp.rabbit.connection.CachingConnectionFactory;
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.micrometer.metrics.autoconfigure.MetricsAutoConfiguration;
import org.springframework.boot.rabbitmq.autoconfigure.RabbitAutoConfiguration;
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.docker.compose;
package org.springframework.boot.rabbitmq.docker.compose;
import java.util.Collections;
import java.util.Map;
@@ -24,48 +24,48 @@ import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
/**
* Tests for {@link RabbitEnvironment}.
* Tests for {@link RabbitMqEnvironment}.
*
* @author Moritz Halbritter
* @author Andy Wilkinson
* @author Phillip Webb
* @author Scott Frederick
*/
class RabbitEnvironmentTests {
class RabbitMqEnvironmentTests {
@Test
void getUsernameWhenNoRabbitmqDefaultUser() {
RabbitEnvironment environment = new RabbitEnvironment(Collections.emptyMap());
void getUsernameWhenNoRabbitMqDefaultUser() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Collections.emptyMap());
assertThat(environment.getUsername()).isEqualTo("guest");
}
@Test
void getUsernameWhenHasRabbitmqDefaultUser() {
RabbitEnvironment environment = new RabbitEnvironment(Map.of("RABBITMQ_DEFAULT_USER", "me"));
void getUsernameWhenHasRabbitMqDefaultUser() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Map.of("RABBITMQ_DEFAULT_USER", "me"));
assertThat(environment.getUsername()).isEqualTo("me");
}
@Test
void getUsernameWhenHasRabbitmqUsername() {
RabbitEnvironment environment = new RabbitEnvironment(Map.of("RABBITMQ_USERNAME", "me"));
void getUsernameWhenHasRabbitMqUsername() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Map.of("RABBITMQ_USERNAME", "me"));
assertThat(environment.getUsername()).isEqualTo("me");
}
@Test
void getUsernameWhenNoRabbitmqDefaultPass() {
RabbitEnvironment environment = new RabbitEnvironment(Collections.emptyMap());
void getUsernameWhenNoRabbitMqDefaultPass() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Collections.emptyMap());
assertThat(environment.getPassword()).isEqualTo("guest");
}
@Test
void getUsernameWhenHasRabbitmqDefaultPass() {
RabbitEnvironment environment = new RabbitEnvironment(Map.of("RABBITMQ_DEFAULT_PASS", "secret"));
void getUsernameWhenHasRabbitMqDefaultPass() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Map.of("RABBITMQ_DEFAULT_PASS", "secret"));
assertThat(environment.getPassword()).isEqualTo("secret");
}
@Test
void getUsernameWhenHasRabbitmqPassword() {
RabbitEnvironment environment = new RabbitEnvironment(Map.of("RABBITMQ_PASSWORD", "secret"));
void getUsernameWhenHasRabbitMqPassword() {
RabbitMqEnvironment environment = new RabbitMqEnvironment(Map.of("RABBITMQ_PASSWORD", "secret"));
assertThat(environment.getPassword()).isEqualTo("secret");
}
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.health;
package org.springframework.boot.rabbitmq.health;
import java.util.Collections;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.amqp.metrics;
package org.springframework.boot.rabbitmq.metrics;
import com.rabbitmq.client.ConnectionFactory;
import io.micrometer.core.instrument.Tags;
@@ -2055,7 +2055,7 @@ bom {
releaseNotes("https://github.com/r2dbc/r2dbc-spi/releases/tag/v{version}")
}
}
library("Rabbit AMQP Client", "5.30.0") {
library("RabbitMQ Client", "5.30.0") {
group("com.rabbitmq") {
modules = [
"amqp-client"
@@ -2067,7 +2067,7 @@ bom {
releaseNotes("https://github.com/rabbitmq/rabbitmq-java-client/releases/tag/v{version}")
}
}
library("Rabbit Stream Client", "1.6.0") {
library("RabbitMQ Stream Client", "1.6.0") {
group("com.rabbitmq") {
modules = [
"stream-client"
@@ -2123,7 +2123,6 @@ bom {
"spring-boot-activemq",
"spring-boot-actuator",
"spring-boot-actuator-autoconfigure",
"spring-boot-amqp",
"spring-boot-artemis",
"spring-boot-autoconfigure",
"spring-boot-autoconfigure-classic",
@@ -2219,6 +2218,7 @@ bom {
"spring-boot-pulsar",
"spring-boot-quartz",
"spring-boot-r2dbc",
"spring-boot-rabbitmq",
"spring-boot-reactor",
"spring-boot-reactor-netty",
"spring-boot-restclient",
@@ -2244,8 +2244,6 @@ bom {
"spring-boot-starter-activemq-test",
"spring-boot-starter-actuator",
"spring-boot-starter-actuator-test",
"spring-boot-starter-amqp",
"spring-boot-starter-amqp-test",
"spring-boot-starter-artemis",
"spring-boot-starter-artemis-test",
"spring-boot-starter-aspectj",
@@ -2364,6 +2362,8 @@ bom {
"spring-boot-starter-quartz-test",
"spring-boot-starter-r2dbc",
"spring-boot-starter-r2dbc-test",
"spring-boot-starter-rabbitmqmq",
"spring-boot-starter-rabbitmqmq-test",
"spring-boot-starter-reactor-netty",
"spring-boot-starter-restclient",
"spring-boot-starter-restclient-test",
+4 -4
View File
@@ -80,7 +80,6 @@ include "core:spring-boot-testcontainers"
include "module:spring-boot-activemq"
include "module:spring-boot-actuator"
include "module:spring-boot-actuator-autoconfigure"
include "module:spring-boot-amqp"
include "module:spring-boot-artemis"
include "module:spring-boot-autoconfigure-classic"
include "module:spring-boot-autoconfigure-classic-modules"
@@ -167,6 +166,7 @@ include "module:spring-boot-persistence"
include "module:spring-boot-pulsar"
include "module:spring-boot-quartz"
include "module:spring-boot-r2dbc"
include "module:spring-boot-rabbitmq"
include "module:spring-boot-reactor"
include "module:spring-boot-reactor-netty"
include "module:spring-boot-restclient"
@@ -211,8 +211,6 @@ include "starter:spring-boot-starter-activemq"
include "starter:spring-boot-starter-activemq-test"
include "starter:spring-boot-starter-actuator"
include "starter:spring-boot-starter-actuator-test"
include "starter:spring-boot-starter-amqp"
include "starter:spring-boot-starter-amqp-test"
include "starter:spring-boot-starter-artemis"
include "starter:spring-boot-starter-artemis-test"
include "starter:spring-boot-starter-aspectj"
@@ -332,6 +330,8 @@ include "starter:spring-boot-starter-quartz"
include "starter:spring-boot-starter-quartz-test"
include "starter:spring-boot-starter-r2dbc"
include "starter:spring-boot-starter-r2dbc-test"
include "starter:spring-boot-starter-rabbitmq"
include "starter:spring-boot-starter-rabbitmq-test"
include "starter:spring-boot-starter-reactor-netty"
include "starter:spring-boot-starter-restclient"
include "starter:spring-boot-starter-restclient-test"
@@ -401,7 +401,6 @@ include ":smoke-test:spring-boot-smoke-test-actuator-extension"
include ":smoke-test:spring-boot-smoke-test-actuator-log4j2"
include ":smoke-test:spring-boot-smoke-test-actuator-noweb"
include ":smoke-test:spring-boot-smoke-test-actuator-ui"
include ":smoke-test:spring-boot-smoke-test-amqp"
include ":smoke-test:spring-boot-smoke-test-ant"
include ":smoke-test:spring-boot-smoke-test-artemis"
include ":smoke-test:spring-boot-smoke-test-aspectj"
@@ -458,6 +457,7 @@ include ":smoke-test:spring-boot-smoke-test-prometheus"
include ":smoke-test:spring-boot-smoke-test-property-validation"
include ":smoke-test:spring-boot-smoke-test-pulsar"
include ":smoke-test:spring-boot-smoke-test-quartz"
include ":smoke-test:spring-boot-smoke-test-rabbitmq"
include ":smoke-test:spring-boot-smoke-test-reactive-oauth2-client"
include ":smoke-test:spring-boot-smoke-test-reactive-oauth2-resource-server"
include ":smoke-test:spring-boot-smoke-test-restclient"
@@ -19,13 +19,13 @@ plugins {
id "org.springframework.boot.docker-test"
}
description = "Spring Boot AMQP smoke test"
description = "Spring Boot RabbitMQ smoke test"
dependencies {
implementation(project(":starter:spring-boot-starter-amqp"))
implementation(project(":starter:spring-boot-starter-rabbitmq"))
dockerTestImplementation(project(":core:spring-boot-testcontainers"))
dockerTestImplementation(project(":starter:spring-boot-starter-amqp-test"))
dockerTestImplementation(project(":starter:spring-boot-starter-rabbitmq-test"))
dockerTestImplementation(project(":test-support:spring-boot-docker-test-support"))
dockerTestImplementation("org.awaitility:awaitility")
dockerTestImplementation("org.testcontainers:testcontainers-junit-jupiter")
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package smoketest.amqp;
package smoketest.rabbitmq;
import java.time.Duration;
@@ -43,7 +43,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest
@Testcontainers(disabledWithoutDocker = true)
@ExtendWith(OutputCaptureExtension.class)
class SampleAmqpSimpleApplicationSslTests {
class SampleRabbitApplicationSslTests {
@Container
@ServiceConnection
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package smoketest.amqp;
package smoketest.rabbitmq;
import java.time.Duration;
@@ -37,7 +37,7 @@ import static org.assertj.core.api.Assertions.assertThat;
@SpringBootTest
@Testcontainers(disabledWithoutDocker = true)
@ExtendWith(OutputCaptureExtension.class)
class SampleAmqpSimpleApplicationTests {
class SampleRabbitApplicationTests {
@Container
@ServiceConnection
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package smoketest.amqp;
package smoketest.rabbitmq;
import org.testcontainers.rabbitmq.RabbitMQContainer;
import org.testcontainers.utility.DockerImageName;
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package smoketest.amqp;
package smoketest.rabbitmq;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -30,9 +30,9 @@ import org.springframework.messaging.handler.annotation.Payload;
@SpringBootApplication
@RabbitListener(queues = "foo")
public class SampleAmqpSimpleApplication {
public class SampleRabbitApplication {
private static final Log logger = LogFactory.getLog(SampleAmqpSimpleApplication.class);
private static final Log logger = LogFactory.getLog(SampleRabbitApplication.class);
@Bean
public Sender mySender() {
@@ -55,7 +55,7 @@ public class SampleAmqpSimpleApplication {
}
public static void main(String[] args) {
SpringApplication.run(SampleAmqpSimpleApplication.class, args);
SpringApplication.run(SampleRabbitApplication.class, args);
}
}
@@ -14,7 +14,7 @@
* limitations under the License.
*/
package smoketest.amqp;
package smoketest.rabbitmq;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;

Some files were not shown because too many files have changed in this diff Show More