Skip to main content

Librería de configuraciones y ajustes con tipos de datos ricos

Project description

Presentacion

Configurations es una libreria que proporciona una manera abstracta y rica para manejar configuraciones, estructuradas como un conjunto de ajustes compuestos. Hace uso de la libreria DataValue y sus clases PrimitiveData y ComplexData para ofrecer una definicion fuertemente estructurada y rigida para una validacion robusta.

Donde Configurations provee una representacion completa, cada Setting presenta un contexto de cada ajuste, y cada DataValue aplica validacion estricta de valores. Ademas, se ofrecen funciones de serializacion para la normalizacion, almacenamiento y transporte de datos entre sistemas.

Instalacion

Para instalar la libreria unicamente ejecuta en un terminal:

$ pip install configurations-stc

Uso

Su uso es tan simple como:

  1. Importar configuraciones
from configurations import Configurations
  1. Importar ajustes
from configurations import Setting
  1. Definir ajustes
# Library import
from datavalue import PrimitiveData

# Data definition
data = PrimitiveData(
  data_type=str,
  value=None,
  maximum_length=10, minimum_length=1,
  possible_values=None,
  regular_expression=None,
  data_class=True
)

# Setting field definition
setting = Setting(
  value=data, # Debera cumplir con el esquema definido por **PrimitiveData**
  system_name="SETTING", # Nombre con el cual sera accedido por el sistema
  symbolic_name="Ajuste", # Nombre simbolico legible para el ajuste (representativo)
  description="Descripcion del ajuste", # Descripcion del ajuste (descriptivo)
  optional=False # Indicacion de ajuste opcional/obligatorio
)
  1. Definir configuraciones
# Create configurations instance
configurations = Configurations()

# Add settings to the configurations instance
configurations.add_setting(setting)
  1. Utilizar
# Show configurations requirements
configurations.to_dict()

Casos de uso

La libreria permite la descripcion de configuraciones ricas y estructuradas, ademas de la normalizacion y serializacion para su presentacion y transporte. Permite elaborar configuraciones completas para cualquier uso, como:

  1. Descripcion de APIs: Utilizable para describir datos en APIs, y tambien para su validacion de envio/recepcion
  2. Descripcion de configuraciones: Utilizable para describir configuraciones de dispositivos, o sistemas
  3. Definicion de politicas: Como politicas de seguridad, control de permisos, perfiles de usuario, etcetera

Dependencias

Depende de la libreria DataValue

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

configurations_stc-0.1.6.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

configurations_stc-0.1.6-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file configurations_stc-0.1.6.tar.gz.

File metadata

  • Download URL: configurations_stc-0.1.6.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for configurations_stc-0.1.6.tar.gz
Algorithm Hash digest
SHA256 321f0f8e9fa5f7625c2d0d66bd75048f005ce34e86f7eec67a24ae34c69982b1
MD5 2cfc61a15fc9d7f8ee715fa1bfd73de0
BLAKE2b-256 65fc9481ca67a3822eb0b637dec682e60e24b3c95f430236c7236e24bafae5e2

See more details on using hashes here.

File details

Details for the file configurations_stc-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for configurations_stc-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 e6e26deba23996290dae69d18808f907d01859b5e17e38221207f8a5ded97419
MD5 cfac1a03f04d015309729c3bfbe059ea
BLAKE2b-256 2beae0e5c55d2ee1c1333f674aa74c5b04dd19a798f28dceb09b311ac09ffe08

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page