Skip to content

Commit 19a27d0

Browse files
authored
Merge pull request #98 from sherlockode/feature/sf-4-sf-5-compatibility
Symfony 4.4 & Symfony 5.0 compatibility
2 parents dd21304 + fcaa0b2 commit 19a27d0

25 files changed

+181
-160
lines changed

DependencyInjection/Configuration.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,10 @@ class Configuration implements ConfigurationInterface
2020
/**
2121
* {@inheritdoc}
2222
*/
23-
public function getConfigTreeBuilder()
23+
public function getConfigTreeBuilder(): TreeBuilder
2424
{
2525
$tb = new TreeBuilder('sherlockode_advanced_form');
26-
// BC layer for symfony/config < 4.2
27-
$root = \method_exists($tb, 'getRootNode') ? $tb->getRootNode() : $tb->root('sherlockode_advanced_form');
26+
$root = $tb->getRootNode();
2827

2928
$this->addStorageSection($root);
3029
$this->addUploaderSection($root);

DependencyInjection/SherlockodeAdvancedFormExtension.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
use Symfony\Component\Config\FileLocator;
88
use Symfony\Component\DependencyInjection\ContainerBuilder;
99
use Symfony\Component\DependencyInjection\Definition;
10-
use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
10+
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
1111
use Symfony\Component\DependencyInjection\Reference;
1212
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
1313

@@ -76,12 +76,12 @@ private function getStorageDefinition($name, $config)
7676
*/
7777
private function loadServices(ContainerBuilder $container)
7878
{
79-
$loader = new YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
79+
$loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
8080
$toBeLoaded = [
81-
'command.yml',
82-
'controller.yml',
83-
'form.yml',
84-
'manager.yml',
81+
'command.xml',
82+
'controller.xml',
83+
'form.xml',
84+
'manager.xml',
8585
];
8686
foreach ($toBeLoaded as $file) {
8787
$loader->load($file);

Form/DataTransformer/TemporaryUploadFileTransformer.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ public function reverseTransform($data)
6565
$data->getFilename(),
6666
null,
6767
null,
68-
null,
6968
true
7069
);
7170
}

Form/Type/DependentEntityType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public function __construct(
6161
$this->router = $router;
6262
}
6363

64-
public function getParent()
64+
public function getParent(): ?string
6565
{
6666
return EntityType::class;
6767
}

Form/Type/FileCollectionType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public function configureOptions(OptionsResolver $resolver)
5959
$resolver->setRequired('mapping');
6060
}
6161

62-
public function getParent()
62+
public function getParent(): ?string
6363
{
6464
return CollectionType::class;
6565
}

Form/Type/FileType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ public function buildForm(FormBuilderInterface $builder, array $options)
168168
/**
169169
* {@inheritdoc}
170170
*/
171-
public function getBlockPrefix()
171+
public function getBlockPrefix(): string
172172
{
173173
return 'afb_file';
174174
}

Form/Type/RemoveFileType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public function buildForm(FormBuilderInterface $builder, array $options)
3838
/**
3939
* @return string
4040
*/
41-
public function getBlockPrefix()
41+
public function getBlockPrefix(): string
4242
{
4343
return 'afb_remove_file';
4444
}

Form/Type/TemporaryUploadedFileType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ public function configureOptions(OptionsResolver $resolver)
7676
/**
7777
* @return string
7878
*/
79-
public function getBlockPrefix()
79+
public function getBlockPrefix(): string
8080
{
8181
return 'afb_temporary_uploaded_file';
8282
}

Form/Type/UploadFileType.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public function configureOptions(OptionsResolver $optionsResolver)
115115
/**
116116
* @return string
117117
*/
118-
public function getBlockPrefix()
118+
public function getBlockPrefix(): string
119119
{
120120
return 'afb_upload_file';
121121
}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Import the routing in `config/routes.yml`
3737

3838
```yaml
3939
sherlockode_advanced_form:
40-
resource: "@SherlockodeAdvancedFormBundle/Resources/config/routing/all.yml"
40+
resource: "@SherlockodeAdvancedFormBundle/Resources/config/routing/all.xml"
4141
```
4242
4343
### Step 4: Publish assets

Resources/config/command.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<container xmlns="http://symfony.com/schema/dic/services"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"
5+
>
6+
<services>
7+
<service id="sherlockode_afb.command.remove_tmp_files" class="Sherlockode\AdvancedFormBundle\Command\RemoveTemporaryFileCommand">
8+
<argument type="service" id="doctrine.orm.entity_manager"/>
9+
<argument type="service" id="sherlockode_afb.storage.tmp_storage"/>
10+
<argument>%sherlockode_afb.tmp_uploaded_file_class%</argument>
11+
<tag name="console.command"/>
12+
</service>
13+
</services>
14+
</container>

Resources/config/command.yml

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

Resources/config/controller.xml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<container xmlns="http://symfony.com/schema/dic/services"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"
5+
>
6+
<services>
7+
<service id="sherlockode_afb.file_upload.controller" class="Sherlockode\AdvancedFormBundle\Controller\FileUploadController" public="true">
8+
<argument type="service" id="sherlockode_afb.upload_manager"/>
9+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
10+
<argument type="service" id="doctrine.orm.entity_manager"/>
11+
<argument type="service" id="event_dispatcher"/>
12+
<call method="setContainer">
13+
<argument type="service" id="service_container"/>
14+
</call>
15+
</service>
16+
<service id="sherlockode_afb.file_upload.temporary_upload_controller" class="Sherlockode\AdvancedFormBundle\Controller\TemporaryFileUploadController" public="true">
17+
<argument type="service" id="sherlockode_afb.upload_manager"/>
18+
<argument>%sherlockode_afb.tmp_uploaded_file_class%</argument>
19+
<argument type="service" id="sherlockode_afb.storage.tmp_storage"/>
20+
<argument type="service" id="event_dispatcher"/>
21+
<call method="setContainer">
22+
<argument type="service" id="service_container"/>
23+
</call>
24+
</service>
25+
<service id="sherlockode_afb.dependent_entity.controller" class="Sherlockode\AdvancedFormBundle\Controller\DependentEntityController" public="true">
26+
<argument type="service" id="event_dispatcher"/>
27+
<argument type="service" id="sherlockode_afb.dependent_entity.mapper_pool"/>
28+
<call method="setContainer">
29+
<argument type="service" id="service_container"/>
30+
</call>
31+
</service>
32+
</services>
33+
</container>

Resources/config/controller.yml

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

Resources/config/form.xml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<container xmlns="http://symfony.com/schema/dic/services"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"
5+
>
6+
<services>
7+
<service id="sherlockode_afb.file.form_entity_type" class="Sherlockode\AdvancedFormBundle\Form\Type\EntityMappingType">
8+
<argument type="service" id="doctrine.orm.entity_manager"/>
9+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
10+
<tag name="form.type"/>
11+
</service>
12+
<service id="sherlockode_afb.file.form_type" class="Sherlockode\AdvancedFormBundle\Form\Type\FileType">
13+
<argument type="service" id="router"/>
14+
<argument type="service" id="sherlockode_afb.upload_manager"/>
15+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
16+
<argument>%sherlockode_afb.tmp_uploaded_file_dir%</argument>
17+
<tag name="form.type"/>
18+
</service>
19+
<service id="sherlockode_afb.file.collection_type" class="Sherlockode\AdvancedFormBundle\Form\Type\FileCollectionType">
20+
<tag name="form.type"/>
21+
</service>
22+
<service id="sherlockode_afb.file.tmp_type" class="Sherlockode\AdvancedFormBundle\Form\Type\TemporaryUploadedFileType">
23+
<argument type="service" id="doctrine.orm.entity_manager"/>
24+
<argument>%sherlockode_afb.tmp_uploaded_file_class%</argument>
25+
<tag name="form.type"/>
26+
</service>
27+
<service id="sherlockode_afb.file.upload_type" class="Sherlockode\AdvancedFormBundle\Form\Type\UploadFileType">
28+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
29+
<argument type="service" id="translator"/>
30+
<tag name="form.type"/>
31+
</service>
32+
<service id="sherlockode_afb.form.dependent_entity_type" class="Sherlockode\AdvancedFormBundle\Form\Type\DependentEntityType">
33+
<argument type="service" id="doctrine.orm.entity_manager"/>
34+
<argument type="service" id="translator"/>
35+
<argument type="service" id="sherlockode_afb.dependent_entity.mapper_pool"/>
36+
<argument type="service" id="router"/>
37+
<tag name="form.type"/>
38+
</service>
39+
</services>
40+
</container>

Resources/config/form.yml

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

Resources/config/manager.xml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<container xmlns="http://symfony.com/schema/dic/services"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd"
5+
>
6+
<services>
7+
<service id="sherlockode_afb.upload_handler.vich" class="Sherlockode\AdvancedFormBundle\UploadHandler\VichUploadHandler">
8+
<argument type="service" id="vich_uploader.upload_handler"/>
9+
<argument type="service" id="annotation_reader"/>
10+
<tag name="sherlockode_afb.upload_handler" alias="vich"/>
11+
</service>
12+
<service id="sherlockode_afb.upload_handler.property" class="Sherlockode\AdvancedFormBundle\UploadHandler\PropertyUploadHandler">
13+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
14+
<argument/>
15+
<tag name="sherlockode_afb.upload_handler" alias="property"/>
16+
</service>
17+
<service id="sherlockode_afb.upload_manager" class="Sherlockode\AdvancedFormBundle\Manager\UploadManager">
18+
<argument type="service" id="doctrine.orm.entity_manager"/>
19+
<argument type="service" id="sherlockode_afb.storage.tmp_storage"/>
20+
<argument>%sherlockode_afb.tmp_uploaded_file_class%</argument>
21+
</service>
22+
<service id="sherlockode_afb.mapping_manager" class="Sherlockode\AdvancedFormBundle\Manager\MappingManager">
23+
<call method="setMappingData">
24+
<argument>%sherlockode_afb.uploader_mappings%</argument>
25+
</call>
26+
</service>
27+
<service id="sherlockode_afb.storage.tmp_storage" class="Sherlockode\AdvancedFormBundle\Storage\FilesystemStorage">
28+
<argument>%sherlockode_afb.tmp_uploaded_file_dir%</argument>
29+
</service>
30+
<service id="sherlockode_afb.twig_extension" class="Sherlockode\AdvancedFormBundle\Twig\Extension\UploaderExtension">
31+
<argument type="service" id="router"/>
32+
<argument type="service" id="sherlockode_afb.mapping_manager"/>
33+
<argument type="service" id="sherlockode_afb.upload_manager"/>
34+
<tag name="twig.extension"/>
35+
</service>
36+
<service id="sherlockode_afb.dependent_entity.mapper_pool" class="Sherlockode\AdvancedFormBundle\DependentEntity\DependentMapperPool">
37+
</service>
38+
</services>
39+
</container>

Resources/config/manager.yml

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

Resources/config/routing/all.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<routes xmlns="http://symfony.com/schema/routing"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd"
5+
>
6+
<import resource="@SherlockodeAdvancedFormBundle/Resources/config/routing/dependent_entity.xml" />
7+
<import resource="@SherlockodeAdvancedFormBundle/Resources/config/routing/upload.xml" />
8+
</routes>

Resources/config/routing/all.yml

Lines changed: 0 additions & 4 deletions
This file was deleted.
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<?xml version="1.0" encoding="UTF-8" ?>
2+
<routes xmlns="http://symfony.com/schema/routing"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd"
5+
>
6+
<route id="sherlockode_afb_dependent_results" path="/sherlockodeadvancedform/dependent-result">
7+
<default key="_controller">sherlockode_afb.dependent_entity.controller:getDependentResultsAction</default>
8+
</route>
9+
</routes>

Resources/config/routing/dependent_entity.yml

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

0 commit comments

Comments
 (0)