Class ExchangeBuilder

java.lang.Object
org.springframework.amqp.core.AbstractBuilder
org.springframework.amqp.core.ExchangeBuilder

public final class ExchangeBuilder extends AbstractBuilder
Builder providing a fluent API for building Exchanges.
Since:
1.6
Author:
Gary Russell, Artem Bilan
  • Constructor Details

    • ExchangeBuilder

      public ExchangeBuilder(String name, String type)
      Construct an instance of the appropriate type.
      Parameters:
      name - the exchange name
      type - the type name
      Since:
      1.6.7
      See Also:
  • Method Details

    • directExchange

      public static ExchangeBuilder directExchange(String name)
      Return a DirectExchange builder.
      Parameters:
      name - the name.
      Returns:
      the builder.
    • topicExchange

      public static ExchangeBuilder topicExchange(String name)
      Return a TopicExchange builder.
      Parameters:
      name - the name.
      Returns:
      the builder.
    • fanoutExchange

      public static ExchangeBuilder fanoutExchange(String name)
      Return a FanoutExchange builder.
      Parameters:
      name - the name.
      Returns:
      the builder.
    • headersExchange

      public static ExchangeBuilder headersExchange(String name)
      Return a HeadersExchange builder.
      Parameters:
      name - the name.
      Returns:
      the builder.
    • autoDelete

      public ExchangeBuilder autoDelete()
      Set the auto delete flag.
      Returns:
      the builder.
    • durable

      public ExchangeBuilder durable(boolean isDurable)
      Set the durable flag.
      Parameters:
      isDurable - the durable flag (default true).
      Returns:
      the builder.
    • withArgument

      public ExchangeBuilder withArgument(String key, Object value)
      Add an argument.
      Parameters:
      key - the argument key.
      value - the argument value.
      Returns:
      the builder.
    • withArguments

      public ExchangeBuilder withArguments(Map<String,Object> arguments)
      Add the arguments.
      Parameters:
      arguments - the arguments map.
      Returns:
      the builder.
    • alternate

      public ExchangeBuilder alternate(String exchange)
    • internal

      public ExchangeBuilder internal()
      Set the internal flag.
      Returns:
      the builder.
    • delayed

      public ExchangeBuilder delayed()
      Set the delayed flag.
      Returns:
      the builder.
    • ignoreDeclarationExceptions

      public ExchangeBuilder ignoreDeclarationExceptions()
      Switch on ignore exceptions such as mismatched properties when declaring.
      Returns:
      the builder.
      Since:
      2.0
    • suppressDeclaration

      public ExchangeBuilder suppressDeclaration()
      Switch to disable declaration of the exchange by any admin.
      Returns:
      the builder.
      Since:
      2.1
    • admins

      public ExchangeBuilder admins(Object... admins)
      Admin instances, or admin bean names that should declare this exchange.
      Parameters:
      admins - the admins.
      Returns:
      the builder.
      Since:
      2.1
    • build

      public <T extends Exchange> T build()