/** * Sets the metadata. * * @param Builder $builder The archive builder. * * @return BuildCommand For method chaining. */ private function setMetadata(Builder $builder) { $event = new PreMetadataEvent($builder, $this->config['build']['metadata']); $this->dispatcher->dispatch(Events::PRE_BUILD_METADATA, $event); if (null === $event->getMetadata()) { $builder->delMetadata(); } else { $builder->setMetadata($event->getMetadata()); } $this->dispatcher->dispatch(Events::POST_BUILD_METADATA, new PostMetadataEvent($builder, $event->getMetadata())); return $this; }