Ejemplo n.º 1
0
 private static function flattenByBlock(Ticket $ticket, array &$flattened)
 {
     if (!isset($flattened[$ticket->getId()])) {
         $flattened[$ticket->getId()] = $ticket;
         foreach ($ticket->getBlocking() as $blocking) {
             self::flattenByBlock($blocking, $flattened);
         }
         foreach ($ticket->getBlockedBy() as $blockedBy) {
             self::flattenByBlock($blockedBy, $flattened);
         }
     }
 }
Ejemplo n.º 2
0
 protected function populateDependencies(Model\Ticket $ticket = null, array &$populated = array())
 {
     if ($ticket) {
         if (!isset($populated[$ticket->getId()])) {
             $populated[$ticket->getId()] = true;
             $blocking = array();
             foreach ($ticket->getBlocking() as $id) {
                 if (is_scalar($id) && !empty($id)) {
                     $blocking[] = $this->getPopulatedDependenciesById($id, $populated);
                 }
             }
             $ticket->setBlocking($blocking);
             $blockedBy = array();
             foreach ($ticket->getBlockedBy() as $id) {
                 if (is_scalar($id) && !empty($id)) {
                     $blockedBy[] = $this->getPopulatedDependenciesById($id, $populated);
                 }
             }
             $ticket->setBlockedBy($blockedBy);
         }
     }
 }
Ejemplo n.º 3
0
 /**
  * Update a ticket from TicketUpdate data
  *
  * @param \CleverAge\Orchestrator\Ticketing\Model\Ticket $ticket
  * @param \CleverAge\Orchestrator\Ticketing\Model\TicketUpdate $update
  * @return \CleverAge\Orchestrator\Ticketing\Model\Ticket
  */
 public function updateTicket(Model\Ticket $ticket, Model\TicketUpdate $update)
 {
     return $this->getResource('doUpdateTicket', func_get_args(), array('cache_key' => 'ticket_' . $ticket->getId(), 'cache_lifetime' => $this->cacheLifetime['ticket'], 'cache_no_get' => true));
 }