services.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  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. <parameters>
  6. <parameter key="jms_serializer.metadata.file_locator.class">Metadata\Driver\FileLocator</parameter>
  7. <parameter key="jms_serializer.metadata.annotation_driver.class">JMS\SerializerBundle\Metadata\Driver\AnnotationDriver</parameter>
  8. <parameter key="jms_serializer.metadata.chain_driver.class">Metadata\Driver\DriverChain</parameter>
  9. <parameter key="jms_serializer.metadata.yaml_driver.class">JMS\SerializerBundle\Metadata\Driver\YamlDriver</parameter>
  10. <parameter key="jms_serializer.metadata.xml_driver.class">JMS\SerializerBundle\Metadata\Driver\XmlDriver</parameter>
  11. <parameter key="jms_serializer.metadata.php_driver.class">JMS\SerializerBundle\Metadata\Driver\PhpDriver</parameter>
  12. <parameter key="jms_serializer.metadata.lazy_loading_driver.class">Metadata\Driver\LazyLoadingDriver</parameter>
  13. <parameter key="jms_serializer.metadata.metadata_factory.class">Metadata\MetadataFactory</parameter>
  14. <parameter key="jms_serializer.metadata.cache.file_cache.class">Metadata\Cache\FileCache</parameter>
  15. <parameter key="jms_serializer.camel_case_naming_strategy.class">JMS\SerializerBundle\Serializer\Naming\CamelCaseNamingStrategy</parameter>
  16. <parameter key="jms_serializer.serialized_name_annotation_strategy.class">JMS\SerializerBundle\Serializer\Naming\SerializedNameAnnotationStrategy</parameter>
  17. <parameter key="jms_serializer.unserialize_object_constructor.class">JMS\SerializerBundle\Serializer\Construction\UnserializeObjectConstructor</parameter>
  18. <parameter key="jms_serializer.version_exclusion_strategy.class">JMS\SerializerBundle\Serializer\Exclusion\VersionExclusionStrategy</parameter>
  19. <parameter key="jms_serializer.serializer.class">JMS\SerializerBundle\Serializer\LazyLoadingSerializer</parameter>
  20. <parameter key="jms_serializer.json_serialization_visitor.class">JMS\SerializerBundle\Serializer\JsonSerializationVisitor</parameter>
  21. <parameter key="jms_serializer.json_deserialization_visitor.class">JMS\SerializerBundle\Serializer\JsonDeserializationVisitor</parameter>
  22. <parameter key="jms_serializer.xml_serialization_visitor.class">JMS\SerializerBundle\Serializer\XmlSerializationVisitor</parameter>
  23. <parameter key="jms_serializer.xml_deserialization_visitor.class">JMS\SerializerBundle\Serializer\XmlDeserializationVisitor</parameter>
  24. <parameter key="jms_serializer.datetime_handler.class">JMS\SerializerBundle\Serializer\Handler\DateTimeHandler</parameter>
  25. <parameter key="jms_serializer.array_collection_handler.class">JMS\SerializerBundle\Serializer\Handler\ArrayCollectionHandler</parameter>
  26. <parameter key="jms_serializer.form_error_handler.class">JMS\SerializerBundle\Serializer\Handler\FormErrorHandler</parameter>
  27. </parameters>
  28. <services>
  29. <!-- Metadata Drivers -->
  30. <service id="jms_serializer.metadata.file_locator" class="%jms_serializer.metadata.file_locator.class%" public="false">
  31. <argument type="collection" /><!-- Namespace Prefixes mapping to Directories -->
  32. </service>
  33. <service id="jms_serializer.metadata.yaml_driver" class="%jms_serializer.metadata.yaml_driver.class%" public="false">
  34. <argument type="service" id="jms_serializer.metadata.file_locator" />
  35. </service>
  36. <service id="jms_serializer.metadata.xml_driver" class="%jms_serializer.metadata.xml_driver.class%" public="false">
  37. <argument type="service" id="jms_serializer.metadata.file_locator" />
  38. </service>
  39. <service id="jms_serializer.metadata.php_driver" class="%jms_serializer.metadata.php_driver.class%" public="false">
  40. <argument type="service" id="jms_serializer.metadata.file_locator" />
  41. </service>
  42. <service id="jms_serializer.metadata.annotation_driver" class="%jms_serializer.metadata.annotation_driver.class%" public="false">
  43. <argument type="service" id="annotation_reader" />
  44. </service>
  45. <service id="jms_serializer.metadata.chain_driver" class="%jms_serializer.metadata.chain_driver.class%" public="false">
  46. <argument type="collection">
  47. <argument type="service" id="jms_serializer.metadata.yaml_driver" />
  48. <argument type="service" id="jms_serializer.metadata.xml_driver" />
  49. <argument type="service" id="jms_serializer.metadata.php_driver" />
  50. <argument type="service" id="jms_serializer.metadata.annotation_driver" />
  51. </argument>
  52. </service>
  53. <service id="jms_serializer.metadata.lazy_loading_driver" class="%jms_serializer.metadata.lazy_loading_driver.class%">
  54. <argument type="service" id="service_container" />
  55. <argument>jms_serializer.metadata_driver</argument>
  56. </service>
  57. <service id="jms_serializer.metadata_driver" alias="jms_serializer.metadata.chain_driver" />
  58. <!-- Metadata Factory -->
  59. <service id="jms_serializer.metadata.cache.file_cache" class="%jms_serializer.metadata.cache.file_cache.class%" public="false">
  60. <argument /><!-- Directory -->
  61. </service>
  62. <service id="jms_serializer.metadata.cache" alias="jms_serializer.metadata.cache.file_cache" public="false" />
  63. <service id="jms_serializer.metadata_factory" class="%jms_serializer.metadata.metadata_factory.class%" public="false">
  64. <argument type="service" id="jms_serializer.metadata.lazy_loading_driver" />
  65. <argument>Metadata\ClassHierarchyMetadata</argument>
  66. <argument />
  67. <call method="setCache">
  68. <argument type="service" id="jms_serializer.metadata.cache" on-invalid="ignore" />
  69. </call>
  70. </service>
  71. <!-- Exclusion Strategies -->
  72. <service id="jms_serializer.version_exclusion_strategy"
  73. class="%jms_serializer.version_exclusion_strategy.class%"
  74. public="false"
  75. abstract="true" />
  76. <!-- Naming Strategies -->
  77. <service id="jms_serializer.camel_case_naming_strategy" class="%jms_serializer.camel_case_naming_strategy.class%" public="false" />
  78. <service id="jms_serializer.serialized_name_annotation_strategy" class="%jms_serializer.serialized_name_annotation_strategy.class%" public="false">
  79. <argument type="service" id="jms_serializer.camel_case_naming_strategy" />
  80. </service>
  81. <service id="jms_serializer.naming_strategy" alias="jms_serializer.serialized_name_annotation_strategy" public="false" />
  82. <!-- Object Constructors -->
  83. <service id="jms_serializer.unserialize_object_constructor" class="%jms_serializer.unserialize_object_constructor.class%" public="false" />
  84. <service id="jms_serializer.object_constructor" alias="jms_serializer.unserialize_object_constructor" public="false" />
  85. <!-- Serializer -->
  86. <service id="jms_serializer.serializer" class="%jms_serializer.serializer.class%" public="false">
  87. <argument type="service" id="jms_serializer.metadata_factory" />
  88. <argument type="collection" /><!-- Serialization Visitors -->
  89. <argument type="collection" /><!-- Deserialization Visitors -->
  90. <call method="setContainer">
  91. <argument type="service" id="service_container" />
  92. </call>
  93. <tag name="jms_serializer.serializer" />
  94. </service>
  95. <service id="serializer" alias="jms_serializer.serializer" />
  96. <!-- Visitors -->
  97. <service id="jms_serializer.json_serialization_visitor" class="%jms_serializer.json_serialization_visitor.class%" public="false">
  98. <argument type="service" id="jms_serializer.naming_strategy" />
  99. <argument type="collection" /><!-- Custom Handlers -->
  100. <tag name="jms_serializer.serialization_visitor" format="json" />
  101. </service>
  102. <service id="jms_serializer.json_deserialization_visitor" class="%jms_serializer.json_deserialization_visitor.class%" public="false">
  103. <argument type="service" id="jms_serializer.naming_strategy" />
  104. <argument type="collection" /><!-- Custom Handlers -->
  105. <argument type="service" id="jms_serializer.object_constructor" />
  106. <tag name="jms_serializer.deserialization_visitor" format="json" />
  107. </service>
  108. <service id="jms_serializer.xml_serialization_visitor" class="%jms_serializer.xml_serialization_visitor.class%" public="false">
  109. <argument type="service" id="jms_serializer.naming_strategy" />
  110. <argument type="collection" /><!-- Custom Handlers -->
  111. <tag name="jms_serializer.serialization_visitor" format="xml" />
  112. </service>
  113. <service id="jms_serializer.xml_deserialization_visitor" class="%jms_serializer.xml_deserialization_visitor.class%" public="false">
  114. <argument type="service" id="jms_serializer.naming_strategy" />
  115. <argument type="collection" /><!-- Custom Handlers -->
  116. <argument type="service" id="jms_serializer.object_constructor" />
  117. <tag name="jms_serializer.deserialization_visitor" format="xml" />
  118. </service>
  119. <!-- Custom Handlers -->
  120. <service id="jms_serializer.datetime_handler" class="%jms_serializer.datetime_handler.class%" public="false">
  121. <tag name="jms_serializer.serialization_handler" />
  122. <tag name="jms_serializer.deserialization_handler" />
  123. </service>
  124. <service id="jms_serializer.array_collection_handler" class="%jms_serializer.array_collection_handler.class%" public="false">
  125. <tag name="jms_serializer.deserialization_handler" />
  126. </service>
  127. <service id="jms_serializer.form_error_handler" class="%jms_serializer.form_error_handler.class%" public="false">
  128. <argument type="service" id="translator" />
  129. <tag name="jms_serializer.serialization_handler" />
  130. </service>
  131. </services>
  132. </container>