class Fnsapi::AuthService
Public Instance Methods
reset_credentials()
click to toggle source
# File lib/fnsapi/auth_service.rb, line 5 def reset_credentials result = client.call(:get_message, message: message_hash) message = result.body.dig(:get_message_response, :message) raise RequestError, message[:fault][:message] if message[:fault] token = message.dig(:auth_response, :result, :token) expired_at = Time.parse(message.dig(:auth_response, :result, :expire_time)) return if token.blank? put_token!(token, expired_at) token end
Private Instance Methods
message_hash()
click to toggle source
# File lib/fnsapi/auth_service.rb, line 33 def message_hash { 'Message' => { 'tns:AuthRequest' => { 'tns:AuthAppInfo' => { 'tns:MasterToken' => Fnsapi.configuration.fnsapi_master_key } } } } end
namespaces()
click to toggle source
Calls superclass method
# File lib/fnsapi/auth_service.rb, line 22 def namespaces super.merge( 'xmlns:tns' => 'urn://x-artefacts-gnivc-ru/ais3/kkt/AuthService/types/1.0', 'targetNamespace' => 'urn://x-artefacts-gnivc-ru/ais3/kkt/AuthService/types/1.0' ) end
put_token!(token, expired_at)
click to toggle source
# File lib/fnsapi/auth_service.rb, line 45 def put_token!(token, expired_at) if redis redis.set(Fnsapi.configuration.redis_key, token) redis.expireat(Fnsapi.configuration.redis_key, expired_at.to_i) else tmp_storage.write_token(token, expired_at) end end
uri()
click to toggle source
# File lib/fnsapi/auth_service.rb, line 29 def uri '/open-api/AuthService/0.1?wsdl' end