|
@@ 147-156 (lines=10) @@
|
| 144 |
|
}); |
| 145 |
|
|
| 146 |
|
$hydrators = new FallbackHydratorContainer(); |
| 147 |
|
$hydrators->add(FakeUser::class, function(array $data, Hydrators $handlers) { |
| 148 |
|
$tagHandler = $handlers->getHandler(FakeTag::class); |
| 149 |
|
|
| 150 |
|
$user = new FakeUser($data['id'], $data['name'], $tagHandler($data['tag'], $handlers)); |
| 151 |
|
foreach($data['tags'] as $tag) { |
| 152 |
|
$user->addTag($tagHandler($tag, $handlers)); |
| 153 |
|
} |
| 154 |
|
|
| 155 |
|
return $user; |
| 156 |
|
}); |
| 157 |
|
$hydrators->add(FakeTag::class, function(array $data, Hydrators $handlers) { |
| 158 |
|
return new FakeTag($data['id'], $data['name']); |
| 159 |
|
}); |
|
@@ 234-243 (lines=10) @@
|
| 231 |
|
|
| 232 |
|
return new FakeArticle($data['id'], $data['title'], $user, $tag); |
| 233 |
|
}); |
| 234 |
|
$hydrators->add(FakeUser::class, function(array $data, FallbackHydratorContainer $hydrators) { |
| 235 |
|
$tag = $hydrators->hydrate(FakeTag::class, $data['tag']); |
| 236 |
|
|
| 237 |
|
$user = new FakeUser($data['id'], $data['name'], $tag); |
| 238 |
|
foreach($data['tags'] as $tagData) { |
| 239 |
|
$user->addTag(call_user_func($hydrators->getHandler(FakeTag::class), $tagData, $hydrators)); |
| 240 |
|
} |
| 241 |
|
|
| 242 |
|
return $user; |
| 243 |
|
}); |
| 244 |
|
$hydrators->add(FakeTag::class, function(array $data, HydratorContainerInterface $hydrators) { |
| 245 |
|
return new FakeTag($data['id'], $data['name']); |
| 246 |
|
}); |