public function annotationStampUpdatedOn(AnnotationEventArgs $eventArgs)
 {
     $metadata = $eventArgs->getMetadata();
     if (!isset($metadata->stamp)) {
         $metadata->stamp = [];
     }
     $metadata->stamp['updatedOn'] = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationDojoValidator(AnnotationEventArgs $eventArgs)
 {
     $annotation = $eventArgs->getAnnotation();
     if ($annotation->generate) {
         $metadata = $eventArgs->getMetadata();
         $field = $eventArgs->getReflection()->name;
         $metadata->generator[Generator\Validator::getResourceName($metadata->name, $field)] = ['event' => Generator\Validator::event, 'options' => ['field' => $field, 'mixins' => $annotation->mixins, 'params' => $annotation->params]];
     }
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationFreezeThawedOn(AnnotationEventArgs $eventArgs)
 {
     $eventArgs->getMetadata()->freeze['thawedOn'] = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\EventArgs $eventArgs
  */
 public function annotationZones(AnnotationEventArgs $eventArgs)
 {
     $eventArgs->getMetadata()->zones = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationRoles(AnnotationEventArgs $eventArgs)
 {
     if ($eventArgs->getAnnotation()->value) {
         $eventArgs->getMetadata()->roles = $eventArgs->getReflection()->getName();
     }
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationSoftDeleteRestoredOn(AnnotationEventArgs $eventArgs)
 {
     $eventArgs->getMetadata()->softDelete['restoredOn'] = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationReadonly(AnnotationEventArgs $eventArgs)
 {
     $annotation = $eventArgs->getAnnotation();
     $eventArgs->getMetadata()->fieldMappings[$eventArgs->getReflection()->getName()]['readonly'] = true;
 }
 public function annotationOwner(AnnotationEventArgs $eventArgs)
 {
     $metadata = $eventArgs->getMetadata();
     $metadata->owner = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationAccessControlIgnoreUpdate(AnnotationEventArgs $eventArgs)
 {
     if ($eventArgs->getAnnotation()->value) {
         $eventArgs->getMetadata()->accessControl['ignoreUpdate'][] = $eventArgs->getReflection()->getName();
     }
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationState(AnnotationEventArgs $eventArgs)
 {
     $eventArgs->getMetadata()->state = $eventArgs->getReflection()->getName();
 }
 /**
  *
  * @param \Sds\DoctrineExtensions\Annotation\AnnotationEventArgs $eventArgs
  */
 public function annotationSerializerSimpleLazy(AnnotationEventArgs $eventArgs)
 {
     $metadata = $eventArgs->getMetadata();
     $this->createMetadata($metadata);
     $metadata->serializer['fields'][$eventArgs->getReflection()->getName()]['referenceSerializer'] = 'serializer.reference.simpleLazy';
 }