Documentación de Proyecto Sincro

ConfigDao
in package

FinalYes

ConfigDao — Configuración global del sistema persistida en fichero JSON.

El fichero JSON es AUTODESCRIPTIVO: cada variable contiene tanto su definición (tipo, label, descripción, default, rango/opciones) como su valor actual. No hay catálogo en código — añadir una variable es editar solo el JSON.

Fichero: backend/variable/config/config.json

Estructura de cada entrada: "clave": { "tipo": "enum|bool|int|text", "label": "...", "descripcion": "...", "default": , "valor": , // opcional; si falta se usa default "opciones": { "0": "...", "1": "..." }, // solo enum "min": , "max": // solo int }

Table of Contents

Constants

RUTA  = __DIR__ . '/../variable/config.json'

Methods

get()  : mixed
Devuelve el valor actual de una clave (su 'valor', o 'default' si falta).
getAll()  : array<int, array<string, mixed>>
Devuelve todas las variables con su definición y valor actual.
set()  : array{ok: bool, error?: string}
Guarda el valor de una clave, validándolo contra su definición en el JSON.
castear()  : mixed
Castea un valor crudo al tipo declarado en su definición.
escribirJson()  : bool
Escribe el JSON completo (creando el directorio si no existe).
leerJson()  : array<string, array<string, mixed>>
Lee el JSON completo. Devuelve [] si no existe o está corrupto.

Constants

RUTA

private mixed RUTA = __DIR__ . '/../variable/config.json'

Methods

get()

Devuelve el valor actual de una clave (su 'valor', o 'default' si falta).

public static get(string $clave) : mixed

null si la clave no existe en el fichero.

Parameters
$clave : string

getAll()

Devuelve todas las variables con su definición y valor actual.

public static getAll() : array<int, array<string, mixed>>

Para el panel de configuración.

Return values
array<int, array<string, mixed>>

set()

Guarda el valor de una clave, validándolo contra su definición en el JSON.

public static set(string $clave, mixed $valor) : array{ok: bool, error?: string}

Solo se actualiza el campo 'valor'; la definición se mantiene intacta.

Parameters
$clave : string
$valor : mixed
Return values
array{ok: bool, error?: string}

castear()

Castea un valor crudo al tipo declarado en su definición.

private static castear(array<string, mixed> $def, mixed $valor) : mixed
Parameters
$def : array<string, mixed>
$valor : mixed

escribirJson()

Escribe el JSON completo (creando el directorio si no existe).

private static escribirJson(array<string, mixed> $config) : bool

Escritura atómica: temporal + rename.

Parameters
$config : array<string, mixed>
Return values
bool

leerJson()

Lee el JSON completo. Devuelve [] si no existe o está corrupto.

private static leerJson() : array<string, array<string, mixed>>
Return values
array<string, array<string, mixed>>

        
On this page

Search results