/**
  * Gets the start line of a message
  *
  * @param MessageInterface $message
  *
  * @return string
  * @throws \InvalidArgumentException
  */
 public static function getStartLine(MessageInterface $message)
 {
     if ($message instanceof RequestInterface) {
         return trim($message->getMethod() . ' ' . $message->getResource()) . ' HTTP/' . $message->getProtocolVersion();
     } elseif ($message instanceof ResponseInterface) {
         return 'HTTP/' . $message->getProtocolVersion() . ' ' . $message->getStatusCode() . ' ' . $message->getReasonPhrase();
     } else {
         throw new \InvalidArgumentException('Unknown message type');
     }
 }