Module: Loripsum::Client

Defined in:
lib/loripsum.rb,
lib/loripsum/version.rb

Constant Summary collapse

BASE_URL =
'loripsum.net/api'
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.generateObject



97
98
99
100
101
102
103
104
105
# File 'lib/loripsum.rb', line 97

def self.generate
  options = OptionsParser.parse!
  if options[:headers]
    generate_with_headers(options)
  else
    url = generate_url(options)
    RestClient.get url
  end
end

.generate_url(options) ⇒ Object



79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# File 'lib/loripsum.rb', line 79

def self.generate_url(options)
  url = BASE_URL
  enabled_options = options.select {|_, value| value }
  if enabled_options.include?(:number)
    url = "#{url}/#{enabled_options[:number]}"
    enabled_options.delete(:number)
  end
  if enabled_options.include?(:length)
    url = "#{url}/#{enabled_options[:length]}"
    enabled_options.delete(:length)
  end

  enabled_options.keys.each do |key|
    url = "#{url}/#{key}"
  end
  url
end

.generate_with_headers(options) ⇒ Object



107
108
109
110
111
112
# File 'lib/loripsum.rb', line 107

def self.generate_with_headers(options)
  url = generate_url(options)
  result = RestClient.get url
  split = result.split("\n\n")
  {header: split[0], body: split[1, split.size]}
end

.run!Object



113
114
115
# File 'lib/loripsum.rb', line 113

def self.run!
  $stdout << self.generate
end