protected function parseContentType($contentType)
    {
        if(false === stripos($contentType, ';')) {
            throw new ParserException('ContentType does not contain a \';\'');
        }

        list($mime, $boundary) = explode(';', $contentType, 2);
        list($key, $boundaryValue) = explode('=', trim($boundary), 2);

        if('boundary' != $key) {
            throw new ParserException('Boundary does not start with \'boundary=\'');
        }

        return [strtolower(trim($mime)), $boundaryValue];
    }