CatalogWorker
extends AbstractWorker
in package
implements
CatalogWorkerInterface
Clase para la exploración genérica de repositorios de datos.
Attributes
- #[Worker]
- $name: 'catalog'
- $component: 'repository'
- $package: 'system'
Table of Contents
Interfaces
- CatalogWorkerInterface
- Interfaz para la exploración genérica de repositorios de datos.
Constants
- EXAMPLE_REPOSITORY : mixed = 'libredte\lib\Core\Package\Billing\Component\Do...
Properties
- $repositoryManager : RepositoryManagerInterface
Methods
- __construct() : mixed
- count() : int
- Cuenta los elementos de un repositorio que cumplen ciertos criterios.
- find() : object|null
- Busca un elemento de un repositorio por su identificador.
- findAll() : array<string|int, object>
- Entrega todos los elementos de un repositorio.
- findBy() : array<string|int, object>
- Busca elementos de un repositorio según criterios de coincidencia.
- findOneBy() : object|null
- Busca un único elemento de un repositorio según criterios de coincidencia.
- list() : array<string|int, string>
- Entrega los identificadores de los repositorios disponibles.
- resolveRepository() : RepositoryInterface
- Resuelve el repositorio solicitado, traduciendo cualquier error de resolución a una excepción propia de este worker.
Constants
EXAMPLE_REPOSITORY
private
mixed
EXAMPLE_REPOSITORY
= 'libredte\lib\Core\Package\Billing\Component\Document\Entity\Comuna'
Properties
$repositoryManager read-only
private
RepositoryManagerInterface
$repositoryManager
Methods
__construct()
public
__construct(RepositoryManagerInterface $repositoryManager) : mixed
Parameters
- $repositoryManager : RepositoryManagerInterface
count()
Cuenta los elementos de un repositorio que cumplen ciertos criterios.
public
count(string $repository[, array<string|int, mixed> $criteria = [] ]) : int
Parameters
- $repository : string
-
Identificador del repositorio.
- $criteria : array<string|int, mixed> = []
-
Criterios de búsqueda (ver
findBy()). Vacío para contar todos los elementos del repositorio.
Attributes
- #[Operation]
- $parameters: ['repository' => ['example' => self::EXAMPLE_REPOSITORY]]
Return values
intfind()
Busca un elemento de un repositorio por su identificador.
public
find(string $repository, int|string $id) : object|null
Parameters
- $repository : string
-
Identificador del repositorio (FQCN de la entidad o de su interfaz).
- $id : int|string
-
Identificador del elemento buscado.
Attributes
- #[Operation]
- $parameters: ['repository' => ['example' => self::EXAMPLE_REPOSITORY], 'id' => ['example' => 'RM']]
Return values
object|null —El elemento encontrado o null si no existe.
findAll()
Entrega todos los elementos de un repositorio.
public
findAll(string $repository) : array<string|int, object>
Parameters
- $repository : string
-
Identificador del repositorio.
Attributes
- #[Operation]
- $parameters: ['repository' => ['example' => self::EXAMPLE_REPOSITORY]]
Return values
array<string|int, object>findBy()
Busca elementos de un repositorio según criterios de coincidencia.
public
findBy(string $repository[, array<string|int, mixed> $criteria = [] ][, array<string|int, mixed>|null $orderBy = null ][, int|null $limit = null ][, int|null $offset = null ]) : array<string|int, object>
Parameters
- $repository : string
-
Identificador del repositorio.
- $criteria : array<string|int, mixed> = []
-
Criterios de búsqueda, formato
['campo' => 'valor'](o['campo' => ['valor1', 'valor2']]para coincidencia con cualquiera de varios valores). - $orderBy : array<string|int, mixed>|null = null
-
Orden de los resultados, formato
['campo' => 'ASC'|'DESC']. - $limit : int|null = null
-
Cantidad máxima de resultados.
- $offset : int|null = null
-
Cantidad de resultados a saltar.
Attributes
- #[Operation]
- $parameters: ['repository' => ['example' => self::EXAMPLE_REPOSITORY]]
Return values
array<string|int, object>findOneBy()
Busca un único elemento de un repositorio según criterios de coincidencia.
public
findOneBy(string $repository[, array<string|int, mixed> $criteria = [] ][, array<string|int, mixed>|null $orderBy = null ]) : object|null
Parameters
- $repository : string
-
Identificador del repositorio.
- $criteria : array<string|int, mixed> = []
-
Criterios de búsqueda (ver
findBy()). - $orderBy : array<string|int, mixed>|null = null
-
Orden usado para elegir el primer resultado.
Attributes
- #[Operation]
- $parameters: ['repository' => ['example' => self::EXAMPLE_REPOSITORY]]
Return values
object|null —El primer elemento que cumple los criterios o
null si no hay ninguno.
list()
Entrega los identificadores de los repositorios disponibles.
public
list() : array<string|int, string>
Attributes
- #[Operation]
Return values
array<string|int, string>resolveRepository()
Resuelve el repositorio solicitado, traduciendo cualquier error de resolución a una excepción propia de este worker.
private
resolveRepository(string $repository) : RepositoryInterface
Parameters
- $repository : string
-
Identificador del repositorio.