class IntrospectRequest extends
        BaseRequest<IntrospectInfo, AuthorizationException> {

    @Override
    public IntrospectInfo executeRequest(OktaHttpClient client) throws AuthorizationException {
        AuthorizationException exception = null;
        HttpResponse response = null;
        try {
            response = openConnection(client);
            JSONObject json = response.asJson();
            return new Gson().fromJson(json.toString(), IntrospectInfo.class);
        } catch (IOException ex) {
            exception = new AuthorizationException(ex.getMessage(), ex);
        } catch (JSONException e) {
            exception = AuthorizationException.fromTemplate(
                    AuthorizationException.GeneralErrors.JSON_DESERIALIZATION_ERROR,
                    e);
        } catch (Exception e) {
            exception = AuthorizationException.fromTemplate(AuthorizationException
                    .GeneralErrors.NETWORK_ERROR, e);
        } finally {
            if (response != null) {
                response.disconnect();
            }
            if (exception != null) {
                throw exception;
            }
        }
        return null;
    }

      IntrospectRequest(HttpRequestBuilder.Introspect b);

}