All Data Structures Functions Variables Pages
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
ModelJoinBuilder Class Reference
Inheritance diagram for ModelJoinBuilder:
ModelWhereAndJoinBuilder ReadOptimizationModelWhereAndJoinBuilder

Public Member Functions

 __construct (RedBeanModelAttributeToDataProviderAdapter $modelAttributeToDataProviderAdapter, RedBeanModelJoinTablesQueryAdapter $joinTablesAdapter, $setDistinct=false)
 
 getTableAliasNameForBaseModel ()
 
 getTableAliasNameForRelatedModel ()
 
 resolveJoins ($onTableAliasName=null, $canUseFromJoins=true)
 
 resolveOnlyAttributeJoins ($onTableAliasName=null, $canUseFromJoins=true)
 
 resolveOnTableAliasName ($onTableAliasName=null)
 

Static Public Member Functions

static makeColumnNameWithTableAlias ($tableAliasName, $columnName)
 

Protected Member Functions

 resolveJoinsForAttribute ($onTableAliasName, $canUseFromJoins=true)
 
 resolveJoinsForDerivedRelationViaCastedUpModel ($onTableAliasName, $canUseFromJoins=true)
 
 resolveJoinsForDerivedRelationViaCastedUpModelThatIsCastedUp ($onTableAliasName, $canUseFromJoins=true)
 
 resolveJoinsForDerivedRelationViaCastedUpModelThatIsManyToMany ($onTableAliasName)
 
 resolveJoinsForInferredRelation ($onTableAliasName, $canUseFromJoins=true)
 
 resolveJoinsForInferredRelationThatIsCastedUp ($onTableAliasName, $canUseFromJoins=true)
 
 resolveAttributeModelClassNameWithCastingHintForCastingDown ($attributeModelClassName)
 
 resolveJoinsForAttributeOnDifferentModel ($onTableAliasName, $canUseFromJoins=true)
 
 resolveJoinsForAttributeOnSameModelThatIsARelation ($onTableAliasName)
 
 resolveJoinsForAttributeOnSameModelThatIsNotARelation ($onTableAliasName)
 
 resolveJoinsForAttributeOnDifferentModelThatIsARelation ($onTableAliasName, $canUseFromJoins=true)
 
 resolveLeftJoinsForARelationAttribute ($onTableAliasName)
 
 resolveJoinsForAttributeOnDifferentModelThatIsNotARelation ($onTableAliasName, $canUseFromJoins=true)
 
 addMixedInOrCastedUpFromJoinsForAttribute ($onTableAliasName)
 
 addMixedInOrCastedUpLeftJoinsForAttribute ($onTableAliasName)
 
 addFromJoinsForAttributeThatIsMixedIn ($onTableAliasName)
 
 addFromJoinsForAttributeThatIsCastedUp ()
 
 addLeftJoinsForAttributeThatIsMixedIn ($onTableAliasName)
 
 addLeftJoinForMixedInAttribute ($onTableAliasName, $attributeTableName)
 
 addLeftJoinsForAttributeThatIsCastedUp ($onTableAliasName)
 
 addLeftJoinsForARelationAttribute ($onTableAliasName)
 
 resolveSettingDistinctForARelationAttributeThatIsHasMany ()
 
 resolveSetToDistinct ()
 
 resolveJoinsForForARelationAttributeThatIsManyToMany ($onTableAliasName)
 
 resolveJoinsForForARelationAttributeThatIsAHasManyVariant ($onTableAliasName)
 
 resolveJoinsForForARelationAttributeThatIsAHasOne ($onTableAliasName)
 
 resolveAndProcessLeftJoinsForAttributeThatIsCastedDownOrUp ($modelClassName, $castedDownModelClassName, $onTableAliasName)
 
 processLeftJoinsForAttributeThatIsCastedDown ($modelClassName, $castedDownModelClassName, $onTableAliasName)
 
 resolveModelDerivationPathToItemForCastingDown ($modelClassName, $castedDownModelClassName)
 

Static Protected Member Functions

static resolveForeignKey ($idName)
 
static resolveModelClassNameThatCanHaveTable ($modelClassName, $castedDownModelClassName)
 

Protected Attributes

 $modelAttributeToDataProviderAdapter
 
 $joinTablesAdapter
 
 $setDistinct
 
 $resolvedOnTableAliasName
 
 $tableAliasNameForBaseModel
 
 $tableAliasNameForRelatedModel
 

Detailed Description

Base Builder for creating joins.

Definition at line 40 of file ModelJoinBuilder.php.

Constructor & Destructor Documentation

__construct ( RedBeanModelAttributeToDataProviderAdapter  $modelAttributeToDataProviderAdapter,
RedBeanModelJoinTablesQueryAdapter  $joinTablesAdapter,
  $setDistinct = false 
)
Parameters
RedBeanModelAttributeToDataProviderAdapter$modelAttributeToDataProviderAdapter
RedBeanModelJoinTablesQueryAdapter$joinTablesAdapter
boolean$setDistinct

Definition at line 106 of file ModelJoinBuilder.php.

Member Function Documentation

static makeColumnNameWithTableAlias (   $tableAliasName,
  $columnName 
)
static
Parameters
string$tableAliasName
string$columnName
Returns
string

Definition at line 83 of file ModelJoinBuilder.php.

static resolveForeignKey (   $idName)
staticprotected
Parameters
string$idName
Returns
string

Definition at line 95 of file ModelJoinBuilder.php.

getTableAliasNameForBaseModel ( )
Returns
string

Definition at line 120 of file ModelJoinBuilder.php.

getTableAliasNameForRelatedModel ( )
Returns
string
Exceptions
NotSupportedException

Definition at line 129 of file ModelJoinBuilder.php.

resolveJoins (   $onTableAliasName = null,
  $canUseFromJoins = true 
)
Parameters
null$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 143 of file ModelJoinBuilder.php.

resolveOnlyAttributeJoins (   $onTableAliasName = null,
  $canUseFromJoins = true 
)
Parameters
null$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 172 of file ModelJoinBuilder.php.

resolveOnTableAliasName (   $onTableAliasName = null)
Parameters
null$onTableAliasName
Returns
null | string

Definition at line 186 of file ModelJoinBuilder.php.

resolveJoinsForAttribute (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 200 of file ModelJoinBuilder.php.

resolveJoinsForDerivedRelationViaCastedUpModel (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 231 of file ModelJoinBuilder.php.

resolveJoinsForDerivedRelationViaCastedUpModelThatIsCastedUp (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 260 of file ModelJoinBuilder.php.

resolveJoinsForDerivedRelationViaCastedUpModelThatIsManyToMany (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 279 of file ModelJoinBuilder.php.

resolveJoinsForInferredRelation (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string
Exceptions
NotImplementedException

Definition at line 302 of file ModelJoinBuilder.php.

resolveJoinsForInferredRelationThatIsCastedUp (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 329 of file ModelJoinBuilder.php.

resolveAttributeModelClassNameWithCastingHintForCastingDown (   $attributeModelClassName)
protected
Parameters
$attributeModelClassName
Returns
string

Definition at line 351 of file ModelJoinBuilder.php.

resolveJoinsForAttributeOnDifferentModel (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 366 of file ModelJoinBuilder.php.

resolveJoinsForAttributeOnSameModelThatIsARelation (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 385 of file ModelJoinBuilder.php.

resolveJoinsForAttributeOnSameModelThatIsNotARelation (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
mixed

Definition at line 395 of file ModelJoinBuilder.php.

resolveJoinsForAttributeOnDifferentModelThatIsARelation (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 406 of file ModelJoinBuilder.php.

resolveLeftJoinsForARelationAttribute (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 425 of file ModelJoinBuilder.php.

resolveJoinsForAttributeOnDifferentModelThatIsNotARelation (   $onTableAliasName,
  $canUseFromJoins = true 
)
protected
Parameters
$onTableAliasName
bool$canUseFromJoins
Returns
null|string

Definition at line 437 of file ModelJoinBuilder.php.

addMixedInOrCastedUpFromJoinsForAttribute (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
string

Definition at line 455 of file ModelJoinBuilder.php.

addMixedInOrCastedUpLeftJoinsForAttribute (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 472 of file ModelJoinBuilder.php.

addFromJoinsForAttributeThatIsMixedIn (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
string

Definition at line 489 of file ModelJoinBuilder.php.

addFromJoinsForAttributeThatIsCastedUp ( )
protected
Returns
string

Definition at line 507 of file ModelJoinBuilder.php.

addLeftJoinsForAttributeThatIsMixedIn (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 518 of file ModelJoinBuilder.php.

addLeftJoinForMixedInAttribute (   $onTableAliasName,
  $attributeTableName 
)
protected
Parameters
$onTableAliasName
$attributeTableName
Returns
null|string

Definition at line 530 of file ModelJoinBuilder.php.

addLeftJoinsForAttributeThatIsCastedUp (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 545 of file ModelJoinBuilder.php.

addLeftJoinsForARelationAttribute (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string
Exceptions
NotSupportedException

Definition at line 557 of file ModelJoinBuilder.php.

resolveJoinsForForARelationAttributeThatIsManyToMany (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 600 of file ModelJoinBuilder.php.

resolveJoinsForForARelationAttributeThatIsAHasManyVariant (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 630 of file ModelJoinBuilder.php.

resolveJoinsForForARelationAttributeThatIsAHasOne (   $onTableAliasName)
protected
Parameters
$onTableAliasName
Returns
null|string

Definition at line 647 of file ModelJoinBuilder.php.

resolveAndProcessLeftJoinsForAttributeThatIsCastedDownOrUp (   $modelClassName,
  $castedDownModelClassName,
  $onTableAliasName 
)
protected
Parameters
$modelClassName
$castedDownModelClassName
$onTableAliasName
Returns
null|string

Definition at line 666 of file ModelJoinBuilder.php.

processLeftJoinsForAttributeThatIsCastedDown (   $modelClassName,
  $castedDownModelClassName,
  $onTableAliasName 
)
protected
Parameters
$modelClassName
$castedDownModelClassName
$onTableAliasName
Returns
null|string

Definition at line 702 of file ModelJoinBuilder.php.

resolveModelDerivationPathToItemForCastingDown (   $modelClassName,
  $castedDownModelClassName 
)
protected
Parameters
$modelClassName
$castedDownModelClassName
Returns
array

Definition at line 730 of file ModelJoinBuilder.php.

static resolveModelClassNameThatCanHaveTable (   $modelClassName,
  $castedDownModelClassName 
)
staticprotected
Parameters
$modelClassName
$castedDownModelClassName
Returns
mixed
Exceptions
NotSupportedException

Definition at line 756 of file ModelJoinBuilder.php.


The documentation for this class was generated from the following file:
Generated on Wed Apr 1 2020 07:11:12