RepoAdapterLocal
in package
implements
IRepositorioAdapter
Clase implementa acceso a ficheros locales Implementa interfaz IRepositorioAdapter.
Table of Contents
Interfaces
- IRepositorioAdapter
- Interface que permite conectarse y gestionar repositorios Implementar este interfaz permitiría conectarse a distintos tipos de repositorios.
Properties
- $arrDocumentos : mixed
- $idRepo : mixed
- $maxDeepLevel : mixed
- $rutaRaiz : mixed
- $selectedDocument : mixed
- $timeLastRefresh : mixed
Methods
- __construct() : mixed
- Constructor de repositorio.
- __destruct() : mixed
- Destruye el objeto. No necesario desconectar de repositorios locales.
- conecta() : bool
- Conecta al repositorio. Actualmente accede con credenciales de proceso php.
- desconecta() : mixed
- Desconecta del repositorio. No es necesario desconectar del repositorio local.
- getCampos() : array<string|int, mixed>
- Devuelve como campos los niveles de directorio L1, L2, etc.
- getDocument() : mixed
- Devuelve una copia del documento para descarga
- getDocumentIcon() : object
- Devuelve el icono del documento o tipo de documento indicado
- getDocumentInfo() : object|null
- Recupera información de un documento con ID facilitado.
- getDocuments() : array<string|int, FileUserData>
- Devuelve los documentos recuperados conforme filtro El filtro indica campos tipo "L1" = "2020" en un array asociativo
- getInfo() : object|null|array<string|int, mixed>
- Devuelve un objeto con información básica del repositorio
- selectDocumentID() : bool
- Selecciona el documento indicado
- validaConexion() : bool
- Valida que la ruta sea accesible. No implementado porque no es necesario conectar.
- recorreRuta() : mixed
- rellenaArrDocumentos() : mixed
- Rellena el array de documentos.
Properties
$arrDocumentos
private
mixed
$arrDocumentos
= array()
$idRepo
private
mixed
$idRepo
$maxDeepLevel
private
mixed
$maxDeepLevel
= 0
$rutaRaiz
private
mixed
$rutaRaiz
$selectedDocument
private
mixed
$selectedDocument
= \null
$timeLastRefresh
private
mixed
$timeLastRefresh
= \null
Methods
__construct()
Constructor de repositorio.
public
__construct(int $idRepo, string $direccion[, string $login = null ][, string $pass = null ][, mixed $extra = null ]) : mixed
Parameters
- $idRepo : int
-
ID del repositorio
- $direccion : string
-
Dirección (Ruta local)
- $login : string = null
-
Login empleado - No se utiliza.
- $pass : string = null
-
Contraseña empleada - No se utiliza.
- $extra : mixed = null
-
Datos adicionales para acceso a repositorio. No es necesario en repos locales.
__destruct()
Destruye el objeto. No necesario desconectar de repositorios locales.
public
__destruct() : mixed
conecta()
Conecta al repositorio. Actualmente accede con credenciales de proceso php.
public
conecta(string $direccion[, string $login = null ][, string $pass = null ][, mixed $extra = null ]) : bool
Parameters
- $direccion : string
-
Dirección / URL del repositorio
- $login : string = null
-
Login. No se usa. Mantiene por compatibilidad con Interfaz.
- $pass : string = null
-
Contraseña. No se usa. Mantiene por compatibilidad con Interfaz.
- $extra : mixed = null
-
Datos adicionales. No se usan en repositorio local.
Return values
booldesconecta()
Desconecta del repositorio. No es necesario desconectar del repositorio local.
public
desconecta() : mixed
getCampos()
Devuelve como campos los niveles de directorio L1, L2, etc.
public
getCampos() : array<string|int, mixed>
Return values
array<string|int, mixed> —con los niveles de directorios numerados (["L1","L2", etc...]) hasta máxima profundidad de directorios.
getDocument()
Devuelve una copia del documento para descarga
public
getDocument(string $idDocumento) : mixed
Parameters
- $idDocumento : string
-
ID del documento a recuperar
Return values
mixed —El fichero con ID indicado.
getDocumentIcon()
Devuelve el icono del documento o tipo de documento indicado
public
getDocumentIcon(string $idDocumento) : object
Parameters
- $idDocumento : string
-
ID del documento a recuperar
Return values
object —Icono del documento.
getDocumentInfo()
Recupera información de un documento con ID facilitado.
public
getDocumentInfo(string $idDocumento) : object|null
Parameters
- $idDocumento : string
-
ID del documento que queramos recuperar información.
Return values
object|null —Objeto (stdClass) con propiedades indicando información del documento pasado.
getDocuments()
Devuelve los documentos recuperados conforme filtro El filtro indica campos tipo "L1" = "2020" en un array asociativo
public
getDocuments(array<string|int, mixed> $camposFiltro) : array<string|int, FileUserData>
Parameters
- $camposFiltro : array<string|int, mixed>
-
Array asociativo con campos => valores para filtrar.
Return values
array<string|int, FileUserData> —con datos de los ficheros devueltos.
getInfo()
Devuelve un objeto con información básica del repositorio
public
getInfo() : object|null|array<string|int, mixed>
Return values
object|null|array<string|int, mixed> —con datos generales del repositorio.
selectDocumentID()
Selecciona el documento indicado
public
selectDocumentID(string $idDocumento) : bool
Parameters
- $idDocumento : string
-
ID del documento a seleccionar. El ID en este caso es el id del documento generado por el hash.
Return values
bool —true si logra seleccionarlo correctamente.
validaConexion()
Valida que la ruta sea accesible. No implementado porque no es necesario conectar.
public
validaConexion() : bool
TODO: Posible validar que validaConexion() en repositorio locales compruebe si la ruta existe.
Return values
bool —True si se está conectado al repositorio.
recorreRuta()
private
recorreRuta(string $ruta[, int $nivel = 0 ]) : mixed
Parameters
- $ruta : string
- $nivel : int = 0
rellenaArrDocumentos()
Rellena el array de documentos.
private
rellenaArrDocumentos([string $ruta = null ][, int $nivel = 0 ]) : mixed
Cada item del array tendrá: En el elemento 0 el nombre del fichero En los siguientes elementos en nombre de la carpeta de ese nivel (Ej. /2024/fiscal/publico => [1]='2024' [2]='fiscal' [3]='publico') Relleno con Null hasta el máximo de niveles de carpeta ($this->maxDeepLevel)
Parameters
- $ruta : string = null
- $nivel : int = 0