docs: public Future<AuthenticationResult> acquireTokenByAuthorizationCode(
              final String authorizationCode, final URI redirectUri,
              final ClientAssertion clientAssertion, final String resource,
              final AuthenticationCallback callback) {
  
          this.validateAuthCodeRequestInput(authorizationCode, redirectUri,
                  clientAssertion, resource);
          final ClientAuthentication clientAuth = createClientAuthFromClientAssertion(clientAssertion);
          final AdalOAuthAuthorizationGrant authGrant = new AdalOAuthAuthorizationGrant(
                  new AuthorizationCodeGrant(new AuthorizationCode(
                          authorizationCode), redirectUri), resource);
          return this.acquireToken(authGrant, clientAuth, callback);
      }