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

Commit c678fbd

Browse files
committed
Serialization almost works
1 parent 7067e25 commit c678fbd

File tree

4 files changed

+28
-26
lines changed

4 files changed

+28
-26
lines changed

DependencyInjection/CmfResourceRestExtension.php

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,28 @@
1818
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
1919
use Symfony\Component\DependencyInjection\Definition;
2020
use Symfony\Component\DependencyInjection\Reference;
21+
use Symfony\Component\DependencyInjection\Extension\PrependExtensionInterface;
2122

22-
class CmfResourceRestExtension extends Extension
23+
class CmfResourceRestExtension extends Extension implements PrependExtensionInterface
2324
{
25+
public function prepend(ContainerBuilder $container)
26+
{
27+
$container->prependExtensionConfig('jms_serializer', array(
28+
'metadata' => array(
29+
'directories' => array(
30+
array(
31+
'path' => __DIR__ . '/../Resources/config/serializer',
32+
'namespace_prefix' => 'Symfony\Cmf\Component\Resource\Repository\Resource',
33+
),
34+
array(
35+
'path' => __DIR__ . '/../Resources/config/serializer',
36+
'namespace_prefix' => 'Puli\Repository\Resource',
37+
),
38+
),
39+
),
40+
));
41+
}
42+
2443
/**
2544
* {@inheritDoc}
2645
*/

Resources/config/resource.xml

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<serializer>
3+
<class name="Puli\Repository\Resource\GenericResource" xmlns:h="https://github.com/willdurand/Hateoas">
4+
<property name="repo" exclude="true" />
5+
</class>
6+
</serializer>
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,12 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<serializer>
3-
<class name="Symfony\Cmf\Component\Resource\Repository\Resource\PhpcrOdmResource" exclusion-policy="ALL" exclude="true">
3+
<class name="Symfony\Cmf\Component\Resource\Repository\Resource\PhpcrOdmResource" xmlns:h="https://github.com/willdurand/Hateoas">
44
<h:relation rel="self">
55
<h:href route="_cmf_resource">
66
<h:parameter name="repositoryName" value="testrepo" />
77
<h:parameter name="path" value="expr(object.getPath())" />
88
</h:href>
99
</h:relation>
10-
<h:relation rel="children">
11-
<h:embedded>
12-
<h:content>expr(object.listChildren())</h:content>
13-
</h:embedded>
14-
</h:relation>
10+
<virtual-property serialized-name="children" max-depth="1" method="listChildren" />
1511
</class>
1612
</serializer>

0 commit comments

Comments
 (0)