LibreDTE

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
int

find()

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.

Tags
throws
CatalogException

Si el repositorio no existe o no se puede resolver.

Return values
RepositoryInterface
On this page

Search results