public KafkaFuture<Map<String, UserScramCredentialsDescription>> all() {
        final KafkaFutureImpl<Map<String, UserScramCredentialsDescription>> retval = new KafkaFutureImpl<>();
        dataFuture.whenComplete((data, throwable) -> {
            if (throwable != null) {
                retval.completeExceptionally(throwable);
            } else {
                /* Check to make sure every individual described user succeeded.  Note that a successfully described user
                 * is one that appears with *either* a NONE error code or a RESOURCE_NOT_FOUND error code. The
                 * RESOURCE_NOT_FOUND means the client explicitly requested a describe of that particular user but it could
                 * not be described because it does not exist; such a user will not appear as a key in the returned map.
                 */
                Optional<DescribeUserScramCredentialsResponseData.DescribeUserScramCredentialsResult> optionalFirstFailedDescribe =
                        data.results().stream().filter(result ->
                                result.errorCode() != Errors.NONE.code() && result.errorCode() != Errors.RESOURCE_NOT_FOUND.code()).findFirst();
                if (optionalFirstFailedDescribe.isPresent()) {
                    retval.completeExceptionally(Errors.forCode(optionalFirstFailedDescribe.get().errorCode()).exception(optionalFirstFailedDescribe.get().errorMessage()));
                } else {
                    Map<String, UserScramCredentialsDescription> retvalMap = new HashMap<>();
                    data.results().stream().forEach(userResult ->
                            retvalMap.put(userResult.user(), new UserScramCredentialsDescription(userResult.user(),
                                    getScramCredentialInfosFor(userResult))));
                    retval.complete(retvalMap);
                }
            }
        });
        return retval;
    }
@return a future for the results of all described users with map keys (one per user) being consistent with the
contents of the list returned by {@link #users()}. The future will complete successfully only if all such user
descriptions complete successfully.
clients/src/main/java/org/apache/kafka/clients/admin/DescribeUserScramCredentialsResult.java