Sha256: 863645614e0ccfd42cbbd520fad30a607522e93828a9bb65ecca2bcab5cb5bcb

Contents?: true

Size: 845 Bytes

Versions: 58

Compression:

Stored size: 845 Bytes

Contents

use Rack::CommonLogger

require "bundler"
Bundler.setup

$:.unshift(File.expand_path("../../../../lib", __FILE__))

require 'amqp'
require 'amqp/utilities/event_loop_helper'

puts "EventMachine.reactor_running? => #{EventMachine.reactor_running?.inspect}"

AMQP::Utilities::EventLoopHelper.run do
  AMQP.start

  exchange          = AMQP.channel.fanout("amq.fanout")

  q = AMQP.channel.queue("", :auto_delete => true, :exclusive => true)
  q.bind(exchange)
  AMQP::channel.default_exchange.publish("Started!", :routing_key => q.name)
end

app = proc do |env|
  AMQP.channel.fanout("amq.fanout").publish("Served a request at (#{Time.now.to_i})")

  [
    200,          # Status code
    {             # Response headers
      'Content-Type' => 'text/html',
      'Content-Length' => '2',
    },
    ['hi']        # Response body
  ]
end

run app

Version data entries

58 entries across 58 versions & 1 rubygems

Version Path
amqp-1.8.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.7.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.6.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.5.3 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.5.2 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.5.1 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.5.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.4.2 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.4.1 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.4.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.3.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.2.1 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.2.0 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.8 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.7 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.6 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.5 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.4 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.1.3 examples/rack/publish_a_message_on_request/thin.ru
amqp-1.0.4 examples/rack/publish_a_message_on_request/thin.ru