Skip to content

Commit 3f59a5b

Browse files
committed
wip
1 parent 317d40a commit 3f59a5b

File tree

5 files changed

+0
-339
lines changed

5 files changed

+0
-339
lines changed

packages/database/src/Builder/ModelDefinition.php

Lines changed: 0 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,7 @@
55
namespace Tempest\Database\Builder;
66

77
use ReflectionException;
8-
use Tempest\Database\BelongsTo;
9-
use Tempest\Database\Builder\Relations\BelongsToRelation;
10-
use Tempest\Database\Builder\Relations\HasManyRelation;
11-
use Tempest\Database\Builder\Relations\HasOneRelation;
128
use Tempest\Database\Config\DatabaseConfig;
13-
use Tempest\Database\Eager;
14-
use Tempest\Database\HasMany;
15-
use Tempest\Database\HasOne;
169
use Tempest\Database\Table;
1710
use Tempest\Reflection\ClassReflector;
1811
use Tempest\Support\Arr\ImmutableArray;
@@ -41,47 +34,6 @@ public function __construct(string|object $model)
4134
}
4235
}
4336

44-
/** @return \Tempest\Database\Builder\Relations\Relation[] */
45-
public function getRelations(string $relationName): array
46-
{
47-
$relations = [];
48-
$relationNames = explode('.', $relationName);
49-
$alias = $this->getTableDefinition()->name;
50-
$class = $this->modelClass;
51-
52-
foreach ($relationNames as $relationNamePart) {
53-
$property = $class->getProperty($relationNamePart);
54-
55-
if ($property->hasAttribute(HasMany::class)) {
56-
/** @var HasMany $relationAttribute */
57-
$relationAttribute = $property->getAttribute(HasMany::class);
58-
$relations[] = HasManyRelation::fromAttribute($relationAttribute, $property, $alias);
59-
$class = HasManyRelation::getRelationModelClass($property, $relationAttribute)->getType()->asClass();
60-
$alias .= ".{$property->getName()}";
61-
} elseif ($property->getType()->isIterable()) {
62-
$relations[] = HasManyRelation::fromInference($property, $alias);
63-
$class = $property->getIterableType()->asClass();
64-
$alias .= ".{$property->getName()}[]";
65-
} elseif ($property->hasAttribute(HasOne::class)) {
66-
$relations[] = new HasOneRelation($property, $alias);
67-
$class = $property->getType()->asClass();
68-
$alias .= ".{$property->getName()}";
69-
} elseif ($property->hasAttribute(BelongsTo::class)) {
70-
/** @var BelongsTo $relationAttribute */
71-
$relationAttribute = $property->getAttribute(BelongsTo::class);
72-
$relations[] = BelongsToRelation::fromAttribute($relationAttribute, $property, $alias);
73-
$class = $property->getType()->asClass();
74-
$alias .= ".{$property->getName()}";
75-
} else {
76-
$relations[] = BelongsToRelation::fromInference($property, $alias);
77-
$class = $property->getType()->asClass();
78-
$alias .= ".{$property->getName()}";
79-
}
80-
}
81-
82-
return $relations;
83-
}
84-
8537
public function getTableDefinition(): TableDefinition
8638
{
8739
$specificName = $this->modelClass

packages/database/src/Builder/Relations/BelongsToRelation.php

Lines changed: 0 additions & 67 deletions
This file was deleted.

packages/database/src/Builder/Relations/HasManyRelation.php

Lines changed: 0 additions & 97 deletions
This file was deleted.

packages/database/src/Builder/Relations/HasOneRelation.php

Lines changed: 0 additions & 109 deletions
This file was deleted.

packages/database/src/Builder/Relations/Relation.php

Lines changed: 0 additions & 18 deletions
This file was deleted.

0 commit comments

Comments
 (0)