SlugHandlerInterface.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. namespace Gedmo\Sluggable\Handler;
  3. use Doctrine\Common\Persistence\ObjectManager;
  4. use Doctrine\Common\Persistence\Mapping\ClassMetadata;
  5. use Gedmo\Sluggable\SluggableListener;
  6. use Gedmo\Sluggable\Mapping\Event\SluggableAdapter;
  7. interface SlugHandlerInterface
  8. {
  9. /**
  10. * Construct the slug handler
  11. *
  12. * @param Doctrine\Common\Persistence\ObjectManager $om
  13. * @param Gedmo\Sluggable\SluggableListener $sluggable
  14. * @param array $options
  15. */
  16. function __construct(ObjectManager $om, SluggableListener $sluggable, array $options);
  17. /**
  18. * Callback on slug handlers right after the slug is built
  19. *
  20. * @param Gedmo\Sluggable\Mapping\Event\SluggableAdapter $ea
  21. * @param string $field
  22. * @param object $object
  23. * @param string $slug
  24. * @return void
  25. */
  26. function postSlugBuild(SluggableAdapter $ea, $field, $object, &$slug);
  27. /**
  28. * Validate handler options
  29. *
  30. * @param array $options
  31. */
  32. static function validate(array $options, ClassMetadata $meta);
  33. }