Module: ShedCloud::PartnerApi::Hosts

Defined in:
lib/shedcloud/partner_api/hosts.rb

Constant Summary collapse

HOST_PRODUCTION =
'https://go.shedcloud.com'
HOST_SANDBOX =
'https://api.shedcloudtest.com'
DEFAULT_BASE_URL =
HOST_PRODUCTION
ENVIRONMENT_PRODUCTION =
'production'
ENVIRONMENT_SANDBOX =
'sandbox'

Class Method Summary collapse

Class Method Details

.resolve_base_url(base_url: nil, environment: nil) ⇒ Object



15
16
17
18
19
20
21
22
23
24
# File 'lib/shedcloud/partner_api/hosts.rb', line 15

def resolve_base_url(base_url: nil, environment: nil)
  trimmed = trim_trailing_slashes(base_url.to_s)
  return trimmed unless trimmed.empty?

  case environment
  when ENVIRONMENT_SANDBOX then HOST_SANDBOX
  when ENVIRONMENT_PRODUCTION, nil, '' then HOST_PRODUCTION
  else HOST_PRODUCTION
  end
end

.trim_trailing_slashes(value) ⇒ Object



26
27
28
# File 'lib/shedcloud/partner_api/hosts.rb', line 26

def trim_trailing_slashes(value)
  value.to_s.sub(%r{/+\z}, '')
end