Class: MusicXrayApi::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/music_xray_api/base.rb

Class Method Summary collapse

Class Method Details

.api_endpointObject



16
17
18
# File 'lib/music_xray_api/base.rb', line 16

def self.api_endpoint
  return @@api_endpoint
end

.api_endpoint=(apiend) ⇒ Object



13
14
15
# File 'lib/music_xray_api/base.rb', line 13

def self.api_endpoint= apiend
  @@api_endpoint = apiend
end

.key=(k) ⇒ Object



7
8
9
# File 'lib/music_xray_api/base.rb', line 7

def self.key= k
  @@key = k
end

.rfc2616(time) ⇒ Object



19
20
21
# File 'lib/music_xray_api/base.rb', line 19

def self.rfc2616(time)
  time.utc.strftime("%a, %d %b %Y %H:%M:%S")+" +0000"
end

.secret=(s) ⇒ Object



10
11
12
# File 'lib/music_xray_api/base.rb', line 10

def self.secret= s
  @@secret = s
end

.sign_https_request(request, date, secret, key) ⇒ Object



22
23
24
# File 'lib/music_xray_api/base.rb', line 22

def self.sign_https_request(request,date,secret,key) 
  return "{'client_key_id':'#{key}', 'algorithm':'HmacSHA256', 'signature':'#{Base64.encode64(OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new("sha256"), secret, date)).strip}'}"
end

.sign_https_requestv3(date) ⇒ Object



25
26
27
# File 'lib/music_xray_api/base.rb', line 25

def self.sign_https_requestv3(date) 
  return "{'client_key_id':'#{@@key}', 'algorithm':'HmacSHA256', 'signature':'#{Base64.encode64(OpenSSL::HMAC.digest(OpenSSL::Digest::Digest.new("sha256"), @@secret, date)).strip}'}"
end