Class ExchangeBuilder


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

      • ExchangeBuilder

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

      • directExchange

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

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

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

        public static ExchangeBuilder headersExchange​(java.lang.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​(java.lang.String key,
                                            java.lang.Object value)
        Add an argument.
        Parameters:
        key - the argument key.
        value - the argument value.
        Returns:
        the builder.
      • withArguments

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

        public ExchangeBuilder alternate​(java.lang.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​(java.lang.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()