class Poto::API

Public Class Methods

configure(repository:) click to toggle source
# File lib/poto/api.rb, line 56
def self.configure(repository:)
  global_setting(:proxy, FileRepository::Proxy.new(repository))

  new
end

Public Instance Methods

id() click to toggle source
# File lib/poto/api.rb, line 39
def id
  Base64.urlsafe_decode64(params[:id])
end
page() click to toggle source
# File lib/poto/api.rb, line 47
def page
  params[:page]
end
per_page() click to toggle source
# File lib/poto/api.rb, line 51
def per_page
  params.fetch(:per_page, 25).to_i
end
prefix() click to toggle source
# File lib/poto/api.rb, line 43
def prefix
  params[:prefix]
end
url_for(opts, path, query = {}) click to toggle source
# File lib/poto/api.rb, line 27
def url_for(opts, path, query = {})
  request = Grape::Request.new(opts[:env])

  URI::Generic.build(
    host:   request.host,
    port:   request.port,
    path:   File.join(opts[:env]['SCRIPT_NAME'], path),
    query:  query.to_param,
    scheme: request.scheme
  ).to_s.gsub(/\?$/, '')
end