class WoodWing::Elvis::Utilities

Public Class Methods

demand_required_options!(command, options) click to toggle source

raise ArgumentError if required options are not present

# File lib/woodwing/elvis/utilities.rb, line 56
def demand_required_options!(command, options)

  raise ArgumentError unless Symbol == command.class
  raise ArgumentError unless Hash == options.class
  raise ArgumentError unless WW::Elvis::COMMANDS.include?(command)

  required_options = WW::Elvis::COMMANDS[command][1]

  answer = true

  return(answer) if required_options.empty?

  required_options.each do |ro|
    answer &&= options.include?(ro)
  end

  raise "ArgumentError: #{caller.first.split().last} requires #{required_options.join(', ')}" unless answer

end
encode_login(username='guest', password='guest') click to toggle source

SMELL: This is not necessary with a session-based logon/off system

HOWEVER, it might still be useful for some cases.  Can this
scheme and a session management scheme work together?
# File lib/woodwing/elvis/utilities.rb, line 43
def encode_login(username='guest', password='guest')

  {
    authcred:     UrlSafeBase64.encode64("#{username}:#{password}"),
    authpersist:  'true',
    authclient:   'api_ruby'
  }

end