示例#1
0
 /**
  * @param Message $message
  *
  * @return bool
  */
 public function write(Message $message)
 {
     $attempt = 1;
     $content = $message->getPayload();
     $contentLength = strlen($content);
     try {
         while ((int) $this->stream->write($content) !== $contentLength && $attempt++ < self::RETRY) {
             Sleep::millisecond(self::RETRY_INTERVAL);
         }
         $success = $attempt < self::RETRY;
     } catch (\Exception $e) {
         $this->logger->warning('An error occurred writing to APNS stream', array('error_message' => $e->getMessage()));
         $success = false;
     }
     return $success;
 }