Class: Mocloud::Utils::Credentials

Inherits:
Object
  • Object
show all
Defined in:
lib/mocloud/utils/credentials.rb

Instance Method Summary collapse

Constructor Details

#initializeCredentials

Returns a new instance of Credentials.



9
10
11
# File 'lib/mocloud/utils/credentials.rb', line 9

def initialize
	@credentials_directory = "#{File.expand_path('~')}/.mobingi"
end

Instance Method Details

#make_token(time) ⇒ Object



31
32
33
34
35
36
37
38
# File 'lib/mocloud/utils/credentials.rb', line 31

def make_token(time)
	creds = read_credentials()

	key = "#{creds['uid']}#{time}"
	signature = "#{creds['token']}"

	OpenSSL::HMAC.hexdigest('sha256', signature, key)
end

#read_credentialsObject



21
22
23
24
25
26
27
28
29
# File 'lib/mocloud/utils/credentials.rb', line 21

def read_credentials()
	unless File.directory?(@credentials_directory)
		puts "You have not logged in yet. Please type 'mocloud login' to login"
		exit!
	end
	text = File.read("#{@credentials_directory}/credentials")

	JSON.parse(text)
end

#write_credentials(creds) ⇒ Object



13
14
15
16
17
18
19
# File 'lib/mocloud/utils/credentials.rb', line 13

def write_credentials(creds)
	unless File.directory?(@credentials_directory)
		FileUtils.mkdir_p(@credentials_directory)
	end
	File.write("#{@credentials_directory}/credentials", creds.to_json)

end