예제 #1
0
 /**
  * @inheritdoc
  */
 public function enqueue(MailJobInterface $mailJob)
 {
     if (null !== $this->getCypher()) {
         $mailJob->setMessage($this->getCypher()->encodeMailMessage($mailJob->getMessage()));
     }
     return $this->adapter->enqueue($mailJob);
 }
 /**
  * Adds a MailJob to the queue.
  *
  * @param MailJobInterface|PdoMailJob $mailJob
  *
  * @return bool whether it has been successfully inserted or not
  */
 public function enqueue(MailJobInterface $mailJob)
 {
     $sql = sprintf('INSERT INTO `%s` (`message`, `timeToSend`) VALUES (:message, :timeToSend)', $this->tableName);
     $query = $this->getConnection()->getInstance()->prepare($sql);
     $query->bindValue(':message', $mailJob->getMessage());
     $query->bindValue(':timeToSend', $mailJob->getTimeToSend());
     return $query->execute();
 }
예제 #3
0
 /**
  * {@inheritdoc}
  */
 public function enqueue(MailJobInterface $mailJob)
 {
     $message = $mailJob->getMessage();
     if (null !== $this->getCypher() && $message instanceof MailMessage) {
         $mailJob->setMessage($this->getCypher()->encodeMailMessage($message));
     }
     return $this->adapter->enqueue($mailJob);
 }
 /**
  * @param RedisMailJob|MailJobInterface $mailJob
  *
  * @return string
  */
 protected function createPayload(MailJobInterface $mailJob)
 {
     return json_encode(['id' => $mailJob->isNewRecord() ? sha1(Random::string(32)) : $mailJob->getId(), 'attempt' => $mailJob->getAttempt(), 'message' => $mailJob->getMessage()]);
 }
 /**
  * @param MailJobInterface|SqsMailJob $mailJob
  *
  * @return bool whether it has been successfully queued or not
  */
 public function enqueue(MailJobInterface $mailJob)
 {
     $result = $this->getConnection()->getInstance()->sendMessage(['QueueUrl' => $this->queueUrl, 'MessageBody' => $mailJob->getMessage(), 'DelaySeconds' => $mailJob->getDelaySeconds(), 'Attempt' => $mailJob->getAttempt()]);
     $messageId = $result->get('MessageId');
     return $messageId !== null && is_string($messageId);
 }