WorkerCollection.php 1013 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. /**
  3. * Gearman Bundle for Symfony2
  4. *
  5. * @author Marc Morera <yuhu@mmoreram.com>
  6. * @since 2013
  7. */
  8. namespace Mmoreram\GearmanBundle\Module;
  9. use Mmoreram\GearmanBundle\Module\WorkerClass as Worker;
  10. /**
  11. * WorkerCollection class
  12. */
  13. class WorkerCollection
  14. {
  15. /**
  16. * All Workers
  17. *
  18. * @var array
  19. */
  20. private $workerClasses = array();
  21. /**
  22. * Adds a Worker into $workerClasses
  23. * Return self object
  24. *
  25. * @param Worker $workerClass Worker element to add
  26. *
  27. * @return WorkerCollection
  28. */
  29. public function add(Worker $workerClass)
  30. {
  31. $this->workerClasses[] = $workerClass;
  32. return $this;
  33. }
  34. /**
  35. * Retrieve all workers loaded previously in cache format
  36. *
  37. * @return array
  38. */
  39. public function toArray()
  40. {
  41. $workersDumped = array();
  42. foreach ($this->workerClasses as $worker) {
  43. $workersDumped[] = $worker->toArray();
  44. }
  45. return $workersDumped;
  46. }
  47. }