public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); $type = $event->getType(); // If the set type name is not an actual class, but a faked type for which a custom handler exists, we do not // modify it with this subscriber. Also, we forgo autoloading here as an instance of this type is already created, // so it must be loaded if its a real class. $virtualType = !class_exists($type['name'], false); if ($object instanceof PersistentCollection) { if (!$virtualType) { $event->setType('ArrayCollection'); } return; } if (!$object instanceof Proxy && !$object instanceof ORMProxy) { return; } // following lines are commented to stop lazy loading associations // if(!$object->__isInitialized()){ // $object->__load(); // } if (!$virtualType) { $event->setType(get_parent_class($object)); } }
/** * {@InheritDoc} */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); $type = $event->getType(); // If the set type name is not an actual class, but a faked type for which a custom handler exists, we do not // modify it with this subscriber. // Also, we forgo autoloading here as an instance of this type is already created, // so it must be loaded if its a real class. $virtualType = !class_exists($type['name'], false); if ($object instanceof PersistentCollection || $object instanceof MongoDBPersistentCollection || $object instanceof PHPCRPersistentCollection) { if (!$virtualType) { $event->setType('ArrayCollection'); } return; } if (!$object instanceof Proxy && !$object instanceof ORMProxy) { return; } if ($this->enableLazyLoading) { $object->__load(); } if (!$virtualType) { if ($object->__isInitialized()) { $event->setType(get_parent_class($object)); } else { $event->setType(SerializerProxyType::class, array('id' => $object->getId())); } } }
public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof PersistentCollection) { $event->setType('ArrayCollection'); return; } if (!$object instanceof Proxy && !$object instanceof ORMProxy) { return; } $object->__load(); $event->setType(get_parent_class($object)); }
/** * @param PreSerializeEvent $event */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof Structure) { $event->setType(Structure::class); } }
/** * @param PreSerializeEvent $event */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof LazyLoadingInterface) { $event->setType(ClassNameInflector::getUserClassName(get_class($object))); } }
/** * @param PreSerializeEvent $event */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof NodeInterface) { $event->setType('PHPCR\\NodeInterface'); } }
/** * @param PreSerializeEvent $event */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof ExtensionContainer) { $event->setType(ExtensionContainer::class); } }
/** * @param PreSerializeEvent $event */ public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); if ($object instanceof PuliResource) { $event->setType('Puli\\Repository\\Api\\Resource\\PuliResource'); } }
public function onPreSerialize(PreSerializeEvent $event) { $object = $event->getObject(); $type = $event->getType(); // If the set type name is not an actual class, but a faked type for which a custom handler exists, we do not // modify it with this subscriber. Also, we forgo autoloading here as an instance of this type is already created, // so it must be loaded if its a real class. if (!class_exists($type['name'], false)) { return; } if ($object instanceof PersistentCollection || $object instanceof MongoDBPersistentCollection || $object instanceof PHPCRPersistentCollection) { $event->setType('ArrayCollection'); return; } if (!$object instanceof Proxy && !$object instanceof ORMProxy) { return; } $object->__load(); $event->setType(get_parent_class($object)); }
public function onPreSerialize(PreSerializeEvent $event) { /** @var object $object */ $object = $event->getObject(); if (!is_object($object)) { return; } $type = $event->getType(); $polymorphicTypes = array('Xabbuh\\XApi\\Model\\Actor', 'Xabbuh\\XApi\\Model\\Object'); if (in_array($type['name'], $polymorphicTypes)) { $event->setType(get_class($object)); } }
/** * @param PreSerializeEvent $event */ public function onSerializerPreSerialize(PreSerializeEvent $event) { $event->setType($this->typeName); }