public Optional<Directives> getFirstHeaderValueAsDirectives(String headerKey) {
        Optional<Header> header = getFirstHeader(headerKey);
        return header.map(Header::getDirectives);
    }
public Optional < Directives > getFirstHeaderValueAsDirectives ( String headerKey ) { Optional < Header > header = getFirstHeader ( headerKey ) ; return header . map ( Header :: getDirectives ) ; }
TODO: Eliminate null