Module: Wso2Toolbox::TokenManager::Adapters::LocalFileAdapter

Extended by:
LockFile
Defined in:
lib/wso2_toolbox/token_manager/adapters/local_file_adapter.rb

Constant Summary collapse

FILE_PATH =
'tmp/localstorage.json'
TOKEN_DELAY =
5.minutes

Constants included from LockFile

Wso2Toolbox::TokenManager::Adapters::LockFile::ATTEMPTS, Wso2Toolbox::TokenManager::Adapters::LockFile::LOCK_PATH, Wso2Toolbox::TokenManager::Adapters::LockFile::LockFileExistError, Wso2Toolbox::TokenManager::Adapters::LockFile::TIME_INTERVAL

Class Method Summary collapse

Methods included from LockFile

lock_file, lock_valid?, try_unlock

Class Method Details

.generate_tokenObject



18
19
20
21
# File 'lib/wso2_toolbox/token_manager/adapters/local_file_adapter.rb', line 18

def generate_token
  new_token unless active_token?
  store_token(read(:token_for_job))
end

.read(key) ⇒ Object



23
24
25
26
27
28
29
# File 'lib/wso2_toolbox/token_manager/adapters/local_file_adapter.rb', line 23

def read(key)
  try_unlock

  lock_file do
    local_storage { |store| return store.try(:[], key.to_s) }
  end
end

.write(key, value) ⇒ Object



31
32
33
34
35
36
37
# File 'lib/wso2_toolbox/token_manager/adapters/local_file_adapter.rb', line 31

def write(key, value)
  try_unlock

  lock_file do
    local_storage { |store| store.merge!(key => value) }
  end
end