Forráskód Böngészése

passes context to handler callback (closes #49)

Johannes M. Schmitt 12 éve
szülő
commit
fb5b402abe

+ 2 - 1
src/JMS/Serializer/GraphNavigator.php

@@ -204,7 +204,8 @@ final class GraphNavigator
                 if (isset($metadata->handlerCallbacks[$context->getDirection()][$context->getFormat()])) {
                     $rs = $object->{$metadata->handlerCallbacks[$context->getDirection()][$context->getFormat()]}(
                         $visitor,
-                        $context instanceof SerializationContext ? null : $data
+                        $context instanceof SerializationContext ? null : $data,
+                        $context
                     );
                     $this->afterVisitingObject($metadata, $object, $type, $context);
 

+ 2 - 1
tests/JMS/Serializer/Tests/Fixtures/Article.php

@@ -18,6 +18,7 @@
 
 namespace JMS\Serializer\Tests\Fixtures;
 
+use JMS\Serializer\Context;
 use JMS\Serializer\JsonDeserializationVisitor;
 use JMS\Serializer\XmlDeserializationVisitor;
 use Symfony\Component\Yaml\Inline;
@@ -32,7 +33,7 @@ class Article
     public $value;
 
     /** @HandlerCallback("xml", direction = "serialization") */
-    public function serializeToXml(XmlSerializationVisitor $visitor)
+    public function serializeToXml(XmlSerializationVisitor $visitor, $data, Context $context)
     {
         if (null === $visitor->document) {
             $visitor->document = $visitor->createDocument(null, null, false);