diff --git a/src/Hydrators/FlatNum.php b/src/Hydrators/FlatNum.php index b669fb9..7cade44 100644 --- a/src/Hydrators/FlatNum.php +++ b/src/Hydrators/FlatNum.php @@ -6,16 +6,13 @@ use PDOStatement; use Respect\Data\Hydrators\Flat; -use Respect\Data\Styles\Stylable; /** Resolves column names from PDOStatement column metadata for numeric-indexed rows */ final class FlatNum extends Flat { public function __construct( private readonly PDOStatement $statement, - Stylable $style, ) { - parent::__construct($style); } protected function resolveColumnName(mixed $reference, mixed $raw): string diff --git a/src/Mapper.php b/src/Mapper.php index b302e3f..acd2320 100644 --- a/src/Mapper.php +++ b/src/Mapper.php @@ -103,7 +103,7 @@ public function flush(): void protected function defaultHydrator(Collection $collection): Hydrator { - return new FlatNum($this->lastStatement, $this->style); + return new FlatNum($this->lastStatement); } private function flushSingle(object $entity): void @@ -460,17 +460,8 @@ private function fetchHydrated(Collection $collection, PDOStatement $statement): $this->lastStatement = $statement; $hydrator = $this->resolveHydrator($collection); $row = $statement->fetch(PDO::FETCH_NUM); - $entities = $hydrator->hydrate($row, $collection, $this->entityFactory); - if ($entities === false) { - return false; - } - - if ($entities->count() > 1) { - $this->postHydrate($entities); - } - - return $entities; + return $hydrator->hydrate($row, $collection, $this->entityFactory); } private function createStatement( diff --git a/tests/Hydrators/FlatNumTest.php b/tests/Hydrators/FlatNumTest.php index a2de3d8..e70a493 100644 --- a/tests/Hydrators/FlatNumTest.php +++ b/tests/Hydrators/FlatNumTest.php @@ -11,7 +11,6 @@ use Respect\Data\Collections\Collection; use Respect\Data\Collections\Typed; use Respect\Data\EntityFactory; -use Respect\Data\Styles\Standard; use stdClass; #[CoversClass(FlatNum::class)] @@ -39,7 +38,7 @@ public function hydrateSingleEntityFromNumericRow(): void $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_NUM); - $hydrator = new FlatNum($stmt, new Standard()); + $hydrator = new FlatNum($stmt); $result = $hydrator->hydrate($row, Collection::author(), $this->factory); $this->assertNotFalse($result); @@ -60,7 +59,7 @@ public function hydrateMultipleEntitiesFromJoinedRow(): void $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_NUM); - $hydrator = new FlatNum($stmt, new Standard()); + $hydrator = new FlatNum($stmt); $collection = Collection::author()->post; $result = $hydrator->hydrate($row, $collection, $this->factory); @@ -75,7 +74,7 @@ public function hydrateReturnsFalseForEmptyResult(): void $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_NUM); - $hydrator = new FlatNum($stmt, new Standard()); + $hydrator = new FlatNum($stmt); $this->assertFalse($hydrator->hydrate($row, Collection::author(), $this->factory)); } @@ -91,7 +90,7 @@ public function hydrateResolvesTypedEntity(): void $row = $stmt->fetch(PDO::FETCH_NUM); $factory = new EntityFactory(entityNamespace: 'Respect\Relational\Hydrators\\'); - $hydrator = new FlatNum($stmt, new Standard()); + $hydrator = new FlatNum($stmt); $collection = Typed::by('type')->issue(); $result = $hydrator->hydrate($row, $collection, $factory);