class RTsung::Option

Constants

TYPE
USER_AGENT_PROBABILITY

Public Class Methods

new(name, options = {}, &block) click to toggle source
# File lib/rtsung/option.rb, line 7
def initialize(name, options = {}, &block)
  @attrs = {
    :name => name,
    :type => options[:type] || TYPE
  }

  @user_agents = []

  instance_eval(&block) if block_given?
end

Public Instance Methods

name(name, options = {}) click to toggle source
# File lib/rtsung/option.rb, line 25
def name(name, options = {})
  user_agent(name, options)
end
to_xml(xml) click to toggle source
# File lib/rtsung/option.rb, line 29
def to_xml(xml)
  if @user_agents.empty?
    xml.option @attrs
  else
    xml.option(@attrs) do
      @user_agents.each { |u|
        xml.user_agent({ :probability => u[:probability] }) do
          xml.text! u[:name]
        end
      }
    end
  end
end
user_agent(name, options = {}) click to toggle source
# File lib/rtsung/option.rb, line 18
def user_agent(name, options = {})
  @user_agents << {
    :name => name,
    :probability => options[:probability] || USER_AGENT_PROBABILITY
  }
end