sulku-fastapi-docker / funciones.py
Moibe's picture
getData Ready!
e5f9727
raw
history blame
2.42 kB
import time
import avaimet
def getData():
#Genera conexi贸n inicial.
sshListo, sftpListo = avaimet.conecta()
#Obtiene la caja donde est谩 guardados los tokens.
dir_data = avaimet.obtenDirData()
data = avaimet.obtenData(sftpListo, dir_data)
#Cierra la conexi贸n.
avaimet.cierraConexion(sshListo, sftpListo)
return data
def getTokens(userfile):
#Genera conexi贸n inicial.
sshListo, sftpListo = avaimet.conecta()
#Obtiene la caja donde est谩 guardados los tokens.
caja = avaimet.obtenCaja(userfile)
#Obtiene los tokens que hay en esa caja.
tokens = avaimet.obtenTokens(sftpListo, caja)
#Cierra la conexi贸n.
avaimet.cierraConexion(sshListo, sftpListo)
return tokens
def authorize(tokens, work):
print(f"Task received : {work}, type: {type(work)} ...")
##脡sta secci贸n se reutilizar谩 si en lugar de pasar el par谩metro token, se pasa el par谩metro userfile.
#Actualmente no lo pedimos porque es el developer el que pone la cantidad de tokens que el usuario tiene para...
#...evitar otra vuelta al server, por mayor certeza o seguridad se puede hacer esa ida.
#En un futuro incluso se pueden hacer los dos tipos de autorizaci贸n en dos endpoints distintos. O en un solo endpoint con...
#...las dos opciones.
#Genera conexi贸n inicial.
#sshListo, sftpListo = avaimet.conecta()
#Obtiene la caja donde est谩 guardados los tokens.
#caja = avaimet.obtenCaja(userfile)
#Obtiene los tokens que hay en esa caja.
#tokens = avaimet.obtenTokens(sftpListo, caja)
#True si autoriza o false si no autoriza.
result = avaimet.autoriza(tokens, work)
#Cierra la conexi贸n.
#avaimet.cierraConexion(sshListo, sftpListo)
return result
def debitTokens(userfile, work):
print(f"Task received : {work}, type: {type(work)} ...")
#Genera conexi贸n inicial.
sshListo, sftpListo = avaimet.conecta()
#Obtiene la caja donde est谩 guardados los tokens.
caja = avaimet.obtenCaja(userfile)
#Obtiene los tokens que hay en esa caja.
tokens = avaimet.obtenTokens(sftpListo, caja)
#Aplica las reglas de 茅sta app para debitar lo correspondiente.
resultado_debitado = avaimet.restaToken(sftpListo, caja, tokens, work)
#Cierra la conexi贸n.
avaimet.cierraConexion(sshListo, sftpListo)
return resultado_debitado