class PortalModule::Configuration

Attributes

base_urls[RW]
browser_timeout[RW]

Browser timeout in seconds. Default: 360 (6 mins).

credentials[RW]
default_environment[RW]
download_dir[R]
download_timeout[RW]
orgs[RW]
page_urls[RW]

Public Class Methods

new() click to toggle source
# File lib/portal_module.rb, line 130
def initialize
  reset
end

Public Instance Methods

base_url() click to toggle source
# File lib/portal_module.rb, line 190
def base_url
  @base_urls[current_env]
end
current_env() click to toggle source

Return the current environment. Will return the default environment if current environment is not set.

# File lib/portal_module.rb, line 177
def current_env
  return @default_environment if @current_env.nil?
  @current_env
end
current_env=(env) click to toggle source

Set the current environment.

# File lib/portal_module.rb, line 162
def current_env=(env)
  env = env.to_sym

  fail "Cannot set current_env to un-configured environment: #{env}" unless @base_urls.key? env

  # This value is NOT included when dumping to YAML.
  # See Configurtion#encode_with
  @current_env = env.to_sym
end
download_dir=(dir) click to toggle source

Set the download directory for the system

# File lib/portal_module.rb, line 186
def download_dir=(dir)
  @download_dir = String(dir)
end
encode_with(coder) click to toggle source

Control which instance vars are emitted when dumped to YAML.

# File lib/portal_module.rb, line 208
def encode_with(coder)
  vars = instance_variables.map { |x| x.to_s }
  vars = vars - ["@current_env"]

  vars.each do |var|
    var_val = eval(var)
    coder[var.gsub('@', '')] = var_val
  end
end
reset() click to toggle source
# File lib/portal_module.rb, line 134
def reset
  @default_environment = :dev
  @current_env = nil

  @credentials = {}
  #@credentials = { dev: [ ENV['DEV_USER'], ENV['DEV_PASSWORD'] ],
  #               }

  @base_urls   = {}
  #@base_urls   = { dev: "http://example.com/Portal",
  #               }

  @page_urls   = { 'DataTransformationPage' => "/Admin/DataTransformation.aspx",
                   'PrequalSetupPage'       => "/Admin/PrequalSetup.aspx",
                }

  @browser_timeout = 360

  @orgs = {}

  @download_dir = ''
  @download_timeout = 360
end
url(page_class) click to toggle source
# File lib/portal_module.rb, line 194
def url page_class
  suffix = @page_urls[page_class.to_s.split('::').last]
  raise "Unkown page [#{page_class.to_s}]" if suffix.nil?
  base_url + suffix
end
user_credentials() click to toggle source
# File lib/portal_module.rb, line 200
def user_credentials
  @credentials[current_env]
end