/**
  * Factory create header from string.
  *
  * @param string $headerLine
  *
  * @return $this
  */
 public static function fromString($headerLine)
 {
     if (null === ($headerName = static::getHeaderName())) {
         GenericHeader::assertEmptyHeaderFieldName($headerName);
     }
     list($fieldName, $fieldValue) = GenericHeader::splitHeaderLine($headerLine);
     return static::create($fieldName, $fieldValue);
 }
 /**
  * Constructor.
  *
  * @param DateTime|null $date
  */
 public function __construct(DateTime $date = null)
 {
     GenericHeader::assertEmptyHeaderFieldName(static::$headerName);
     $this->setDate(null !== $date ? $date : new DateTime());
 }