public LinkMap(LinkMap m, Parameter directive) { super(m); put(directive.getName(), directive); } }
private Directive parseDirective(final StringBuilder buffer, final ParserCursor cursor) { Parameter parameter = parseParameter(buffer, cursor, ALL_DELIMITERS); List<Parameter> params = Collections.emptyList(); if (!cursor.atEnd()) { char ch = buffer.charAt(cursor.getPos() - 1); if (ch != ELEM_DELIMITER) { params = parseParameters(buffer, cursor); } } if (parameter instanceof QuotedParameter) { return createDirective(parameter.getName(), ((QuotedParameter) parameter).getQuotedValue(), params); } return createDirective(parameter.getName(), parameter.getValue(), params); }
public AuthScheme afterSuccessfulAuthentication(AuthScheme scheme, Headers headers, boolean proxy) { Optional<Header> header; if (proxy) { header = headers.getFirstHeader(HeaderConstants.PROXY_AUTHENTICATION_INFO); } else { header = headers.getFirstHeader(HeaderConstants.AUTHENTICATION_INFO); } if (header.isPresent()) { String nextNonce = header.get().getDirectives().get("nextnonce"); if (nextNonce != null) { List<Parameter> params = scheme.getDirective().getParameters().stream(). filter(p -> !"nonce".equals(p.getName())). collect(Collectors.toList()); params.add(new QuotedParameter("nonce", nextNonce)); return new AuthScheme(new AuthDirective("Digest", null, params)); } } return scheme; } }