class Drnbench::PublishSubscribe::Configuration
Attributes
engine[RW]
feed_file[RW]
n_publishings[RW]
n_steps[RW]
output_path[RW]
protocol_adapter[RW]
report_progressively[RW]
start_n_subscribers[RW]
subscribe_request_file[RW]
timeout[RW]
Public Class Methods
new()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 25 def initialize @start_n_subscribers = 1000 @n_publishings = 1000 @n_steps = 10 @timeout = 10 @report_progressively = true @output_path = "/tmp/drnbench-pubsub-result.csv" @engine = Server::EngineConfiguration.new @protocol_adapter = Server::ProtocolAdapterConfiguration.new @protocol_adapter.engine = @engine end
Public Instance Methods
feed()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 56 def feed @feed ||= prepare_feed end
new_feed()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 60 def new_feed Marshal.load(Marshal.dump(feed)) end
new_subscribe_request()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 52 def new_subscribe_request Marshal.load(Marshal.dump(subscribe_request)) end
subscribe_request()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 48 def subscribe_request @subscribe_request ||= prepare_subscribe_request end
validate()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 39 def validate if @subscribe_request_file.nil? raise ArgumentError.new("You must specify a JSON file for a message pattern to subscribe.") end if @feed_file.nil? raise ArgumentError.new("You must specify a JSON file for a message pattern to feed.") end end
Private Instance Methods
prepare_feed()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 70 def prepare_feed feed_file = Pathname(@feed_file).expand_path(Dir.pwd) JSON.parse(feed_file.read) end
prepare_subscribe_request()
click to toggle source
# File lib/drnbench/publish-subscribe/configuration.rb, line 65 def prepare_subscribe_request subscribe_request_file = Pathname(@subscribe_request_file).expand_path(Dir.pwd) JSON.parse(subscribe_request_file.read) end