BlogPost.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <?php
  2. use JMS\SerializerBundle\Metadata\ClassMetadata;
  3. use JMS\SerializerBundle\Metadata\PropertyMetadata;
  4. $metadata = new ClassMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost');
  5. $metadata->xmlRootName = 'blog-post';
  6. $pMetadata = new PropertyMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost', 'title');
  7. $pMetadata->type = 'string';
  8. $metadata->addPropertyMetadata($pMetadata);
  9. $pMetadata = new PropertyMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost', 'createdAt');
  10. $pMetadata->type = 'DateTime';
  11. $pMetadata->xmlAttribute = true;
  12. $metadata->addPropertyMetadata($pMetadata);
  13. $pMetadata = new PropertyMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost', 'published');
  14. $pMetadata->type = 'boolean';
  15. $pMetadata->serializedName = 'is_published';
  16. $pMetadata->xmlAttribute = true;
  17. $metadata->addPropertyMetadata($pMetadata);
  18. $pMetadata = new PropertyMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost', 'comments');
  19. $pMetadata->type = 'ArrayCollection<JMS\SerializerBundle\Tests\Fixtures\Comment>';
  20. $pMetadata->xmlCollection = true;
  21. $pMetadata->xmlCollectionInline = true;
  22. $pMetadata->xmlEntryName = 'comment';
  23. $metadata->addPropertyMetadata($pMetadata);
  24. $pMetadata = new PropertyMetadata('JMS\SerializerBundle\Tests\Fixtures\BlogPost', 'author');
  25. $pMetadata->type = 'JMS\SerializerBundle\Tests\Fixtures\Author';
  26. $metadata->addPropertyMetadata($pMetadata);
  27. return $metadata;