Adding configuration getters.
parent
d83ff98365
commit
fb43dccea6
|
@ -2,6 +2,7 @@ from datetime import datetime
|
|||
import json
|
||||
import os
|
||||
import requests
|
||||
import urllib
|
||||
|
||||
class Replay:
|
||||
"""
|
||||
|
@ -246,3 +247,89 @@ class Replay:
|
|||
|
||||
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