lib/pubsubstub/application.rb in pubsubstub-0.1.1 vs lib/pubsubstub/application.rb in pubsubstub-0.1.2
- old
+ new
@@ -1,6 +1,22 @@
module Pubsubstub
- class Application < Sinatra::Base
- use PublishAction
- use StreamAction
+ class Application
+ def initialize(*)
+ @publish = PublishAction.new
+ @stream = StreamAction.new
+ end
+
+ def self.call(env)
+ @instance ||= new
+ @instance.call(env)
+ end
+
+ def call(env)
+ request = Rack::Request.new(env)
+ if request.get?
+ @stream.call(env)
+ else
+ @publish.call(env)
+ end
+ end
end
end