/** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. */ @Override public String toString() { return ToString.builder("RespondToAuthChallengeRequest") .add("ClientId", clientId() == null ? null : "*** Sensitive Data Redacted ***") .add("ChallengeName", challengeNameAsString()).add("Session", session()) .add("ChallengeResponses", challengeResponses()).add("AnalyticsMetadata", analyticsMetadata()) .add("UserContextData", userContextData()).build(); }
@Override public int hashCode() { int hashCode = 1; hashCode = 31 * hashCode + Objects.hashCode(clientId()); hashCode = 31 * hashCode + Objects.hashCode(challengeNameAsString()); hashCode = 31 * hashCode + Objects.hashCode(session()); hashCode = 31 * hashCode + Objects.hashCode(challengeResponses()); hashCode = 31 * hashCode + Objects.hashCode(analyticsMetadata()); hashCode = 31 * hashCode + Objects.hashCode(userContextData()); return hashCode; }
public <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) { switch (fieldName) { case "ClientId": return Optional.ofNullable(clazz.cast(clientId())); case "ChallengeName": return Optional.ofNullable(clazz.cast(challengeNameAsString())); case "Session": return Optional.ofNullable(clazz.cast(session())); case "ChallengeResponses": return Optional.ofNullable(clazz.cast(challengeResponses())); case "AnalyticsMetadata": return Optional.ofNullable(clazz.cast(analyticsMetadata())); case "UserContextData": return Optional.ofNullable(clazz.cast(userContextData())); default: return Optional.empty(); } }
@Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (!(obj instanceof RespondToAuthChallengeRequest)) { return false; } RespondToAuthChallengeRequest other = (RespondToAuthChallengeRequest) obj; return Objects.equals(clientId(), other.clientId()) && Objects.equals(challengeNameAsString(), other.challengeNameAsString()) && Objects.equals(session(), other.session()) && Objects.equals(challengeResponses(), other.challengeResponses()) && Objects.equals(analyticsMetadata(), other.analyticsMetadata()) && Objects.equals(userContextData(), other.userContextData()); }