Adding configuration getters.
parent
d83ff98365
commit
fb43dccea6
|
@ -2,6 +2,7 @@ from datetime import datetime
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import requests
|
import requests
|
||||||
|
import urllib
|
||||||
|
|
||||||
class Replay:
|
class Replay:
|
||||||
"""
|
"""
|
||||||
|
@ -246,3 +247,89 @@ class Replay:
|
||||||
|
|
||||||
return self.__request_json_post__ ("/api/v1/log/add", log)
|
return self.__request_json_post__ ("/api/v1/log/add", log)
|
||||||
|
|
||||||
|
def config_get (self, config_name: str):
|
||||||
|
"""
|
||||||
|
## Configuration Getter
|
||||||
|
Este método busca a configuração associada ao nome recebido no repositório atual.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Parâmetros:
|
||||||
|
- config_name: Nome da configuração que se quer procurar o valor.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Retorna:
|
||||||
|
-> O valor associado à configuração procurada.
|
||||||
|
"""
|
||||||
|
|
||||||
|
config_name = urllib.parse.quote(config_name, "")
|
||||||
|
|
||||||
|
return self.__request_get__(f"/api/v1/config/byrepo/{int(os.path.basename(os.getcwd()))}/{config_name}")
|
||||||
|
|
||||||
|
def config_get_global (self, config_name: str):
|
||||||
|
"""
|
||||||
|
## Global Configuration Getter
|
||||||
|
Este método procura em todos os repositórios uma correspondência à configuração recebida.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Parâmetros:
|
||||||
|
- config_name: Nome da configuração que se quer buscar em todos os repositórios instalados.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Retorna:
|
||||||
|
-> O valor da configuração encontrada.
|
||||||
|
"""
|
||||||
|
|
||||||
|
config_name = urllib.parse.quote(config_name, "")
|
||||||
|
|
||||||
|
return self.__request_get__("/api/v1/config/global/"+config_name)
|
||||||
|
|
||||||
|
def config_get_all (self):
|
||||||
|
"""
|
||||||
|
## All Configuration Getter
|
||||||
|
Este método busca por todas as configurações contidas no repositório atual.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Parâmetros:
|
||||||
|
---
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Retorna:
|
||||||
|
-> Uma lista de dicionários contendo todas as configs e informações sobre elas. Por exemplo:
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"id": número associado a config na base de dados do replay,
|
||||||
|
|
||||||
|
"k": nome associado à config na base de dados do replay,
|
||||||
|
|
||||||
|
"v" valor atribuído à config,
|
||||||
|
|
||||||
|
"t": tipo da config em questão (que pode ser 't', 'p' ou 'json'),
|
||||||
|
|
||||||
|
"repo": repositório ao qual a configuração está associada
|
||||||
|
}
|
||||||
|
]
|
||||||
|
"""
|
||||||
|
|
||||||
|
return self.__request_get__(f"/api/v1/config/byrepo/{int(os.path.basename(os.getcwd()))}")
|
||||||
|
|
||||||
|
def config_get_map (self) -> dict[str, dict]:
|
||||||
|
"""
|
||||||
|
## Configuration Getter Mapper
|
||||||
|
Este método executa o método "config_get_all" para conseguir todas as configurações alocadas para o reposiório do projeto atual. Após isso, cria um dicionário de strings para outros dicionários contendo as configurações recebidas. As strings do primeiro dicionário são o nome associado à configuração.
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Parâmetros:
|
||||||
|
---
|
||||||
|
|
||||||
|
---
|
||||||
|
#### Retorna:
|
||||||
|
-> Dicionário de strings (nome da configuração) para dicionários (todas as propriedades da configuração).
|
||||||
|
"""
|
||||||
|
|
||||||
|
dict_configs = {}
|
||||||
|
configs = self.config_get_all()
|
||||||
|
|
||||||
|
for config in configs:
|
||||||
|
dict_configs[config["k"]] = config
|
||||||
|
|
||||||
|
return dict_configs
|
||||||
|
|
Loading…
Reference in New Issue