Skip to content
This repository was archived by the owner on Sep 16, 2021. It is now read-only.

Commit 1074722

Browse files
committed
Cannot serialize in context
1 parent 7181de8 commit 1074722

File tree

3 files changed

+10
-3
lines changed

3 files changed

+10
-3
lines changed

Enhancer/PayloadEnhancer.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,12 @@ class PayloadEnhancer implements EnhancerInterface
2727
public function enhance(array $data, Context $context, Resource $resource)
2828
{
2929
$visitor = $context->getVisitor();
30-
$data['payload'] = $context->accept($resource->getPayload());
30+
$payload = $resource->getPayload();
31+
32+
$context->startVisiting($payload);
33+
$data['payload'] = $context->accept($payload);
34+
$context->stopVisiting($payload);
35+
3136
return $data;
3237
}
3338
}

Resources/config/enhancer.payload.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
<services>
1212

1313
<service id="cmf_resource_rest.enhancer.payload" class="%cmf_resource_rest.enhancer.payload.class%">
14+
<argument type="service" id="jms_serializer.metadata_factory" />
1415
<tag name="cmf_resource_rest.enhancer" alias="payload" />
1516
</service>
1617

Serializer/Handler/ResourceHandler.php

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ public function serializeResource(
6565
array $type,
6666
Context $context
6767
) {
68-
$data = array();
6968

69+
$data = array();
7070
$repositoryAlias = $this->registry->getRepositoryAlias($resource->getRepository());
7171

7272
$data['repository_alias'] = $repositoryAlias;
@@ -75,7 +75,8 @@ public function serializeResource(
7575
$data['payload_type'] = $resource->getPayloadType();
7676
$data['path'] = $resource->getPath();
7777
$data['repository_path'] = $resource->getRepositoryPath();
78-
$data['children'] = $context->accept($resource->listChildren());
78+
$children = $resource->listChildren();
79+
$data['children'] = $context->accept($children);
7980

8081
$enhancers = $this->enhancerRegistry->getEnhancers($repositoryAlias);
8182

0 commit comments

Comments
 (0)