# File lib/amqp/channel.rb, line 231
    def direct(name = 'amq.direct', opts = {}, &block)
      if exchange = self.exchanges.find { |exchange| exchange.name == name }
        extended_opts = Exchange.add_default_options(:direct, name, opts, block)

        validate_parameters_match!(exchange, extended_opts)

        exchange
      else
        self.exchanges << Exchange.new(self, :direct, name, opts, &block)
      end
    end