Esempio n. 1
0
 /**
  * {@inheritdoc}
  */
 public function serializeEmbeddeds(array $embeddeds, XmlSerializationVisitor $visitor, SerializationContext $context)
 {
     foreach ($embeddeds as $embedded) {
         if ($embedded->getData() instanceof \Traversable || is_array($embedded->getData())) {
             foreach ($embedded->getData() as $data) {
                 $entryNode = $visitor->getDocument()->createElement('resource');
                 $visitor->getCurrentNode()->appendChild($entryNode);
                 $visitor->setCurrentNode($entryNode);
                 $visitor->getCurrentNode()->setAttribute('rel', $embedded->getRel());
                 if (null !== ($node = $context->accept($data))) {
                     $visitor->getCurrentNode()->appendChild($node);
                 }
                 $visitor->revertCurrentNode();
             }
             continue;
         }
         $entryNode = $visitor->getDocument()->createElement('resource');
         $visitor->getCurrentNode()->appendChild($entryNode);
         $visitor->setCurrentNode($entryNode);
         $visitor->getCurrentNode()->setAttribute('rel', $embedded->getRel());
         if (null !== ($node = $context->accept($embedded->getData()))) {
             $visitor->getCurrentNode()->appendChild($node);
         }
         $visitor->revertCurrentNode();
     }
 }
Esempio n. 2
0
 /**
  * {@inheritdoc}
  */
 public function serializeEmbeddeds(array $embeddeds, JsonSerializationVisitor $visitor, SerializationContext $context)
 {
     $serializedEmbeddeds = array();
     $multiple = array();
     foreach ($embeddeds as $embedded) {
         if (!isset($serializedEmbeddeds[$embedded->getRel()])) {
             $serializedEmbeddeds[$embedded->getRel()] = $context->accept($embedded->getData());
         } elseif (!isset($multiple[$embedded->getRel()])) {
             $multiple[$embedded->getRel()] = true;
             $serializedEmbeddeds[$embedded->getRel()] = array($serializedEmbeddeds[$embedded->getRel()], $context->accept($embedded->getData()));
         } else {
             $serializedEmbeddeds[$embedded->getRel()][] = $context->accept($embedded->getData());
         }
     }
     $visitor->addData('_embedded', $serializedEmbeddeds);
 }
 /**
  * {@inheritdoc}
  */
 public function serializeEmbedded(array $embeds, JsonSerializationVisitor $visitor, SerializationContext $context)
 {
     $serializedEmbeds = array();
     foreach ($embeds as $embed) {
         $serializedEmbeds[$embed->getRel()] = $context->accept($embed->getData());
     }
     $visitor->addData('_embedded', $serializedEmbeds);
 }
 /**
  * @param DirectoryEntries $object
  * @param VisitorInterface $visitor
  * @param SerializationContext $context
  * @return string
  */
 public function write($object, VisitorInterface $visitor, SerializationContext $context) {
   return $context->accept($object, $this->getType());
 }
 public function serialize(VisitorInterface $visitor, Form $form, array $type, SerializationContext $context)
 {
     return $context->accept($form->createView());
 }