Oihana PHP Arango

HasHierarchicalFilter uses \oihana\traits\ContainerTrait, \Psr\Log\LoggerAwareTrait

Table of Contents

Methods

prepareHierarchicalFilter()  : string|null
Prepare hierarchical filter from declarative configuration
buildArrayTraversal()  : string|null
Build array expansion traversal.
buildDocumentTraversal()  : string|null
Build document traversal (nested object)
buildEdgeTraversal()  : string|null
Build edge traversal
buildFilterRecursive()  : string|null
Build filter condition recursively through path segments.
buildJoinTraversal()  : string|null
Build join traversal
buildLeafCondition()  : string|null
Build leaf condition by delegating to existing filter logic

Methods

prepareHierarchicalFilter()

Prepare hierarchical filter from declarative configuration

protected prepareHierarchicalFilter(array<string|int, mixed> $init, array<string|int, mixed> &$binds[, string $docRef = AQL::DOC ]) : string|null
Parameters
$init : array<string|int, mixed>
$binds : array<string|int, mixed>
$docRef : string = AQL::DOC
Tags
throws
BindException
ConstantException
ContainerExceptionInterface
DependencyException
NotFoundException
NotFoundExceptionInterface
ReflectionException
UnsupportedOperationException
ValidationException
Return values
string|null

buildArrayTraversal()

Build array expansion traversal.

private buildArrayTraversal(array<string|int, mixed> $remainingSegments, FilterPath $segmentInfo, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef) : string|null
Parameters
$remainingSegments : array<string|int, mixed>
$segmentInfo : FilterPath
$init : array<string|int, mixed>
$binds : array<string|int, mixed>
$docRef : string
Tags
throws
BindException
UnsupportedOperationException
ValidationException
Return values
string|null

buildDocumentTraversal()

Build document traversal (nested object)

private buildDocumentTraversal(array<string|int, mixed> $remainingSegments, FilterPath $segmentInfo, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef) : string|null
Parameters
$remainingSegments : array<string|int, mixed>
$segmentInfo : FilterPath
$init : array<string|int, mixed>
$binds : array<string|int, mixed>
$docRef : string
Tags
throws
BindException
ConstantException
ContainerExceptionInterface
DependencyException
NotFoundException
NotFoundExceptionInterface
ReflectionException
UnsupportedOperationException
ValidationException
Return values
string|null

buildEdgeTraversal()

Build edge traversal

private buildEdgeTraversal(array<string|int, mixed> $remainingSegments, FilterPath $segmentInfo, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef[, array<string|int, mixed> $availableEdges = [] ]) : string|null
Parameters
$remainingSegments : array<string|int, mixed>

The remaining path segments to process.

$segmentInfo : FilterPath

The current segment information with nested relations.

$init : array<string|int, mixed>

The original filter parameters.

$binds : array<string|int, mixed>

The bind variables array.

$docRef : string

The current document reference.

$availableEdges : array<string|int, mixed> = []
Tags
throws
BindException
ConstantException
ContainerExceptionInterface
DependencyException
NotFoundException
NotFoundExceptionInterface
ReflectionException

If edge configuration is invalid or not found.

UnsupportedOperationException
ValidationException
Return values
string|null

The AQL condition for edge traversal, or null on failure.

buildFilterRecursive()

Build filter condition recursively through path segments.

private buildFilterRecursive(array<string|int, mixed> $segments, array<string|int, mixed> $filters, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef[, array<string|int, mixed> $parentPath = [] ][, array<string|int, mixed> $currentEdges = [] ][, array<string|int, mixed> $currentJoins = [] ]) : string|null
Parameters
$segments : array<string|int, mixed>

Remaining segments to process.

$filters : array<string|int, mixed>

Current level filter configuration.

$init : array<string|int, mixed>

Original filter parameters.

$binds : array<string|int, mixed>

Bind variables array.

$docRef : string

Current document reference.

$parentPath : array<string|int, mixed> = []

Accumulated path from parent segments.

$currentEdges : array<string|int, mixed> = []

The current edges definitions.

$currentJoins : array<string|int, mixed> = []

The current joins definitions.

Tags
throws
BindException
ConstantException
ContainerExceptionInterface
DependencyException
NotFoundException
NotFoundExceptionInterface
ReflectionException
UnsupportedOperationException
ValidationException
Return values
string|null

buildJoinTraversal()

Build join traversal

private buildJoinTraversal(array<string|int, mixed> $remainingSegments, FilterPath $segmentInfo, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef[, array<string|int, mixed> $availableJoins = [] ]) : string|null
Parameters
$remainingSegments : array<string|int, mixed>

The remaining path segments to process.

$segmentInfo : FilterPath

The current segment information with nested relations.

$init : array<string|int, mixed>

The original filter parameters.

$binds : array<string|int, mixed>

The bind variables array.

$docRef : string

The current document reference.

$availableJoins : array<string|int, mixed> = []
Tags
throws
BindException
ConstantException
ContainerExceptionInterface
DependencyException
NotFoundException
NotFoundExceptionInterface
ReflectionException
UnsupportedOperationException
ValidationException
Return values
string|null

The AQL condition for join traversal, or null on failure.

buildLeafCondition()

Build leaf condition by delegating to existing filter logic

private buildLeafCondition(FilterPath $segmentInfo, array<string|int, mixed> $init, array<string|int, mixed> &$binds, string $docRef) : string|null
Parameters
$segmentInfo : FilterPath

The segment information with type and path.

$init : array<string|int, mixed>

The original filter parameters.

$binds : array<string|int, mixed>

The bind variables array.

$docRef : string

The current document reference.

Return values
string|null

The AQL condition string, or null on failure.

On this page

Search results