private static ChallengeRequest getDigestChallengeRequest(ClientResource cr) { ChallengeRequest c1 = null; for (ChallengeRequest challengeRequest : cr.getChallengeRequests()) { if (ChallengeScheme.HTTP_DIGEST .equals(challengeRequest.getScheme())) { c1 = challengeRequest; break; } } return c1; } }
/** {@inheritDoc} */ @Override public boolean equals(final Object obj) { if (obj == this) { return true; } if (!(obj instanceof ChallengeRequest)) { return false; } final ChallengeRequest that = (ChallengeRequest) obj; return getParameters().equals(that.getParameters()) && Objects.equals(getRealm(), that.getRealm()) && Objects.equals(getScheme(), that.getScheme()); }
public static String formatRequest(ChallengeRequest challenge, Response response, Series<Header> httpHeaders) { String result = null; if (challenge == null) { Context.getCurrentLogger().warning( "No challenge response to format."); } else if (challenge.getScheme() == null) { Context.getCurrentLogger().warning( "A challenge response must have a scheme defined."); } else if (challenge.getScheme().getTechnicalName() == null) { Context.getCurrentLogger().warning( "A challenge scheme must have a technical name defined."); } else { ChallengeWriter cw = new ChallengeWriter(); cw.append(challenge.getScheme().getTechnicalName()).appendSpace(); int cwInitialLength = cw.getBuffer().length(); if (challenge.getRawValue() != null) { cw.append(challenge.getRawValue()); } else { (...)
/** {@inheritDoc} */ @Override public int hashCode() { return Engine.hashCode(getScheme(), getRealm(), getParameters()); }
/** {@inheritDoc} */ @Override public final boolean equals(final Object obj) { boolean result = (obj == this); // if obj == this no need to go further if (!result) { // if obj isn't a challenge request or is null don't evaluate // further if (obj instanceof ChallengeRequest) { final ChallengeRequest that = (ChallengeRequest) obj; result = (getParameters().equals(that.getParameters())); if (result) { if (getRealm() != null) { result = getRealm().equals(that.getRealm()); } else { result = (that.getRealm() == null); } if (result) { if (getScheme() != null) { result = getScheme().equals(that.getScheme()); } else { result = (that.getScheme() == null); } } } } } return result; }
/** * Constructor. It leverages the latest server response and challenge * request in order to compute the credentials. * * @param challengeRequest * The challenge request sent by the origin server. * @param response * The latest server response. * @param identifier * The user identifier, such as a login name or an access key. * @param secret * The user secret used to compute the secret, with an optional * digest applied. * @param secretAlgorithm * The digest algorithm of the user secret (see {@link Digest} class). */ public ChallengeResponse(ChallengeRequest challengeRequest, Response response, String identifier, char[] secret, String secretAlgorithm) { this(challengeRequest.getScheme(), null, identifier, secret, secretAlgorithm, null, null, null, null, null, null, null, 0, 0L); org.restlet.engine.security.AuthenticatorUtils.update(this, response.getRequest(), response); }
Context.getCurrentLogger().warning( "No challenge response to format."); } else if (challenge.getScheme() == null) { Context.getCurrentLogger().warning( "A challenge response must have a scheme defined."); } else if (challenge.getScheme().getTechnicalName() == null) { Context.getCurrentLogger().warning( "A challenge scheme must have a technical name defined."); } else { ChallengeWriter cw = new ChallengeWriter(); cw.append(challenge.getScheme().getTechnicalName()).appendSpace(); int cwInitialLength = cw.getBuffer().length(); } else { AuthenticatorHelper helper = Engine.getInstance().findHelper( challenge.getScheme(), false, true); result = "?"; Context.getCurrentLogger().warning( "Challenge scheme " + challenge.getScheme() + " not supported by the Restlet engine.");
public static ChallengeResponse getTestChallengeResponse(final List<ChallengeRequest> list, final ChallengeScheme httpDigest, final Response response, final String userName, final char[] password) { ChallengeRequest c1 = null; for(final ChallengeRequest challengeRequest : list) { if(ChallengeScheme.HTTP_DIGEST.equals(challengeRequest.getScheme())) { c1 = challengeRequest; break; } } // 2- Create the Challenge response used by the client to authenticate its requests. final ChallengeResponse challengeResponse = new ChallengeResponse(c1, response, userName, password); return challengeResponse; }
if (challengeResponse.getScheme().equals(c.getScheme())) { challengeRequest = c; break;
.getChallengeRequests()) { if (ChallengeScheme.HTTP_DIGEST.equals(challengeRequest .getScheme())) { digestChallenge = challengeRequest; break;