If the callback is already registered, this is a NOOP.
public addLifecycleCallback ( string $callback, string $event ) | ||
$callback | string | |
$event | string |
public function generateBookDocumentFixture() { $metadata = new ClassMetadataInfo($this->namespace . '\\DocumentGeneratorBook'); $metadata->namespace = $this->namespace; $metadata->customRepositoryClassName = $this->namespace . '\\DocumentGeneratorBookRepository'; $metadata->collection = 'book'; $metadata->mapField(array('fieldName' => 'name', 'type' => 'string')); $metadata->mapField(array('fieldName' => 'status', 'type' => 'string')); $metadata->mapField(array('fieldName' => 'id', 'type' => 'integer', 'id' => true)); $metadata->mapOneReference(array('fieldName' => 'author', 'targetDocument' => 'Doctrine\\ODM\\MongoDB\\Tests\\Tools\\DocumentGeneratorAuthor')); $metadata->mapManyReference(array('fieldName' => 'comments', 'targetDocument' => 'Doctrine\\ODM\\MongoDB\\Tests\\Tools\\DocumentGeneratorComment')); $metadata->addLifecycleCallback('loading', 'postLoad'); $metadata->addLifecycleCallback('willBeRemoved', 'preRemove'); $metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_AUTO); $this->generator->writeDocumentClass($metadata, $this->tmpDir); return $metadata; }