class Drnbench::RequestResponse::RequestPattern::PatternsGroup

Attributes

abstract[R]

Public Class Methods

new(source, abstract) click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 101
def initialize(source, abstract)
  @source = source
  @abstract = abstract
end
valid_source?(source) click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 88
def valid_source?(source)
  if source.is_a?(Array)
    return Pattern.valid_source?(source.first)
  end
  if source.is_a?(Hash)
    return source.has_key?("patterns")
  end
  false
end

Public Instance Methods

frequency() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 106
def frequency
  if @source.is_a?(Hash) and @source.has_key?("frequency")
    return @source["frequency"].to_f
  end
  @abstract.default_group_frequency
end
host() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 113
def host
  return nil unless @source.is_a?(Hash)
  @source["host"]
end
method() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 123
def method
  return nil unless @source.is_a?(Hash)
  @source["method"]
end
patterns() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 133
def patterns
  @patterns ||= prepare_patterns
end
port() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 118
def port
  return nil unless @source.is_a?(Hash)
  @source["port"]
end
timeout() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 128
def timeout
  return nil unless @source.is_a?(Hash)
  @source["timeout"]
end

Private Instance Methods

prepare_patterns() click to toggle source
# File lib/drnbench/request-response/request-pattern.rb, line 138
def prepare_patterns
  if @source.is_a?(Hash)
    if @source.has_key?("pattern")
      return [
        Pattern.new(@source["pattern"], self),
      ]
    else
      return @source["patterns"].collect do |pattern|
        Pattern.new(pattern, self)
      end
    end
  elsif @source.is_a?(Array)
    return @source.collect do |pattern|
      Pattern.new(pattern, self)
    end
  end
end