com\setasign\Konquadrat\Object\ObjectSet

MagicResolver

File: /Konquadrat/src/Object/ObjectSet/MagicResolver.php

Class hierarchy

Summary

Properties

$db

private MagicResolver::$db

$languageManager

$objectConfig

$objectFinder

$objectTableManager


Methods

__construct()

public MagicResolver::__construct (
\com\setasign\Konquadrat\Object\ObjectConfig $objectConfig,
\com\setasign\Konquadrat\Object\ObjectFinder $objectFinder,
\com\setasign\Konquadrat\LanguageManager $languageManager,
\com\setasign\SetaFramework\Database\Database $db,
\com\setasign\Konquadrat\Object\ObjectTableManager $objectTableManager
)
Parameters
$objectConfig : \com\setasign\Konquadrat\Object\ObjectConfig
 
$objectFinder : \com\setasign\Konquadrat\Object\ObjectFinder
 
$languageManager : \com\setasign\Konquadrat\LanguageManager
 
$db : \com\setasign\SetaFramework\Database\Database
 
$objectTableManager : \com\setasign\Konquadrat\Object\ObjectTableManager
 

fetchMagicFields()

private MagicResolver::fetchMagicFields (
array $groups
): array
Parameters
$groups : array
 

generateSql()

private MagicResolver::generateSql (
string $type,
string $fieldName
): string
Parameters
$type : string
 
$fieldName : string
 

resolve()

The $fieldNames array need to look like this:
$fieldNames = [
    'EventRelation' => ['Event', 'Count'],
    'SomeThing' => 'Count',
    'Event' => null, // resolve all magic fields of containing event objects
];

Parameters
$objectSet : \com\setasign\Konquadrat\Object\ObjectSet
 
$instancePool : \com\setasign\Konquadrat\Object\InstancePoolInterface
 
$fieldNames : ?string[]
 

resolveSmart()

public MagicResolver::resolveSmart (
\com\setasign\Konquadrat\Object\SmartObjectSet $objectSet,
?array $fieldNames
): void
Parameters
$objectSet : \com\setasign\Konquadrat\Object\SmartObjectSet
 
$fieldNames : ?array
 

validateAndResolveFieldNames()

private MagicResolver::validateAndResolveFieldNames (
array $types,
?string[] $fieldNames
): array
Parameters
$types : array
 
$fieldNames : ?string[]