class GmailTool::Compose::GenerateComposeUrl

Attributes

options[R]
params_formatter[R]

Public Class Methods

new(options={}, params_formatter=nil) click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 7
def initialize(options={}, params_formatter=nil)
  @options = default_options.merge(options)
  @params_formatter = params_formatter || FormatParams
end

Public Instance Methods

execute() click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 12
def execute
  base_compose_url + query_params
end

Private Instance Methods

base_compose_url() click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 36
def base_compose_url
  "https://mail.google.com/mail?"
end
default_options() click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 32
def default_options
  {view: 'cm'}
end
encoded_query_string(options) click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 28
def encoded_query_string(options)
  URI.encode_www_form(options)
end
gmail_formatted_options() click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 24
def gmail_formatted_options
  params_formatter.new(options).execute
end
query_params() click to toggle source
# File lib/gmail_tool/compose/generate_compose_url.rb, line 20
def query_params
  encoded_query_string(gmail_formatted_options)
end