List of usage examples for com.google.gwt.http.client RequestBuilder sendRequest
public Request sendRequest(String requestData, RequestCallback callback) throws RequestException
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Delete policy./* w ww . ja va2 s . co m*/ * * @param key * the key * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#deletePolicy(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.DeletePolicyRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void deletePolicy(final PolicyKey key, final AsyncCallback<DeletePolicyResponse> callback) { if (key == null) { callback.onFailure(null); } else { String url = BASE_POLICY_URL + "?" + getPartialUrl("deletePolicy", namespaces, RequestFormat.NV); url += (key.getId() == null ? "" : "&ns1:policyKey.ns1:policyId=" + key.getId().toString()); url += (key.getName() == null ? "" : "&ns1:policyKey.ns1:policyName=" + key.getName().trim()); url += (key.getType() == null ? "" : "&ns1:policyKey.ns1:policyType=" + key.getType().toString().toUpperCase()); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(DeletePolicyResponseJS.NAME, response)); } else { // convert response.getText() to JSON DeletePolicyResponse deleteResponse = DeletePolicyResponseJS .fromJSON(response.getText()); if (deleteResponse.isErrored()) callback.onFailure(getErrorAsThrowable(DeletePolicyResponseJS.NAME, response)); else callback.onSuccess(deleteResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Delete subject groups.//from w ww . j av a 2 s.c o m * * @param keys * the keys * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#deleteSubjectGroup(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.DeleteSubjectGroupRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void deleteSubjectGroups(final List<SubjectGroupKey> keys, final AsyncCallback<DeleteSubjectGroupResponse> callback) { if (keys == null) { return; } String url = BASE_POLICY_URL + "?" + getPartialUrl("deleteSubjectGroups", namespaces, RequestFormat.NV); int i = 0; for (SubjectGroupKey key : keys) { url += (key.getId() == null ? "" : "&ns1:subjectGroupKey(" + i + ").ns1:subjectGroupId=" + key.getId().toString()); url += (key.getName() == null ? "" : "&ns1:subjectGroupKey(" + i + ").ns1:subjectGroupName=" + key.getName().trim()); url += (key.getType() == null ? "" : "&ns1:subjectGroupKey(" + i + ").ns1:subjectType=" + key.getType().toString()); i++; } RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(DeleteSubjectGroupResponseJS.NAME, response)); } else { // convert response.getText() to JSON DeleteSubjectGroupResponse delResponse = DeleteSubjectGroupResponseJS .fromJSON(response.getText()); if (delResponse.isErrored()) callback.onFailure(getErrorAsThrowable(DeleteSubjectGroupResponseJS.NAME, response)); else callback.onSuccess(delResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Disable policy.//from w w w. j a v a2 s . c o m * * @param key * the key * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#disablePolicy(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.DisablePolicyRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void disablePolicy(final PolicyKey key, final AsyncCallback<DisablePolicyResponse> callback) { if (key == null) { callback.onFailure(null); } else { String url = BASE_POLICY_URL + "?" + getPartialUrl("disablePolicy", namespaces, RequestFormat.NV); url += (key.getId() == null ? "" : "&ns1:policyKey.ns1:policyId=" + key.getId().toString()); url += (key.getName() == null ? "" : "&ns1:policyKey.ns1:policyName=" + key.getName().trim()); url += (key.getType() == null ? "" : "&ns1:policyKey.ns1:policyType=" + key.getType().toString().toUpperCase()); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(DisablePolicyResponseJS.NAME, response)); } else { // convert response.getText() to JSON DisablePolicyResponse enableResponse = DisablePolicyResponseJS .fromJSON(response.getText()); if (enableResponse.isErrored()) callback.onFailure(getErrorAsThrowable(DisablePolicyResponseJS.NAME, response)); else callback.onSuccess(enableResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Enable policy.//from w w w .j av a 2 s . co m * * @param key * the key * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#enablePolicy(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.EnablePolicyRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void enablePolicy(final PolicyKey key, final AsyncCallback<EnablePolicyResponse> callback) { if (key == null) { callback.onFailure(null); } else { String url = BASE_POLICY_URL + "?" + getPartialUrl("enablePolicy", namespaces, RequestFormat.NV); url += (key.getId() == null ? "" : "&ns1:policyKey.ns1:policyId=" + key.getId().toString()); url += (key.getName() == null ? "" : "&ns1:policyKey.ns1:policyName=" + key.getName().trim()); url += (key.getType() == null ? "" : "&ns1:policyKey.ns1:policyType=" + key.getType().toString().toUpperCase()); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(EnablePolicyResponseJS.NAME, response)); } else { // convert response.getText() to JSON EnablePolicyResponse enableResponse = EnablePolicyResponseJS .fromJSON(response.getText()); if (enableResponse.isErrored()) callback.onFailure(getErrorAsThrowable(EnablePolicyResponseJS.NAME, response)); else callback.onSuccess(enableResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Gets the resources./*from w w w . j a va2 s . c om*/ * * @param keys * the keys * @param callback * the callback * @return the resources * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#getResources(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.GetResourcesRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void getResources(final List<ResourceKey> keys, final AsyncCallback<GetResourcesResponse> callback) { if (keys == null) return; String url = BASE_POLICY_URL + "?" + getPartialUrl("getResources", namespaces, RequestFormat.NV); int i = 0; for (ResourceKey key : keys) { url += (key.getId() == null ? "" : "&ns1:resourceKey(" + i + ").ns1:resourceId=" + key.getId().toString()); url += (key.getName() == null || key.getName().trim().isEmpty() ? "" : "&ns1:resourceKey(" + i + ").ns1:resourceName=" + key.getName().trim()); url += (key.getType() == null || key.getType().trim().isEmpty() ? "" : "&ns1:resourceKey(" + i + ").ns1:resourceType=" + key.getType().toString().toUpperCase()); i++; } RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(GetResourcesResponseJS.NAME, response)); } else { // convert response.getText() to JSON GetResourcesResponse resourcesResponse = GetResourcesResponseJS .fromJSON(response.getText()); if (resourcesResponse.isErrored()) callback.onFailure(getErrorAsThrowable(GetResourcesResponseJS.NAME, response)); else callback.onSuccess(resourcesResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Find policies./*ww w . j a v a2 s. c om*/ * * @param sinceLastModifiedTime * the since last modified time * @param keys * the keys * @param resKeys * the res keys * @param opKeys * the op keys * @param subjectKeys * the subject keys * @param subjectGroupKeys * the subject group keys * @param outputSelector * the output selector * @param condition * the condition * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#getPoliciesByKey(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyKey, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void findPolicies(Long sinceLastModifiedTime, List<PolicyKey> keys, List<ResourceKey> resKeys, List<OperationKey> opKeys, List<SubjectKey> subjectKeys, List<SubjectGroupKey> subjectGroupKeys, PolicyOutputSelector outputSelector, QueryCondition condition, final AsyncCallback<GetPoliciesResponse> callback) { String url = BASE_POLICY_URL + "?" + getPartialUrl("findPolicies", namespaces, RequestFormat.NV); // sinceLastModifiedTime is measured as the milliseconds since the // epoch(GMT) // "YYYY-MM-DDThh:mm:ssZ" eg 2002-05-30T09:30:10Z if (sinceLastModifiedTime != null) { String time = PolicyAdminUIUtil.xsDateTimeFormat.format(new Date(sinceLastModifiedTime.longValue())); url += "&ns1:lastUpdatedDate=" + URL.encodeQueryString(time); } // find by a particular policy type // if(keys.size()==1){ url = createPolicyKeyRequest(keys, url); // }else{ // //find with all policy types // url = createPolicyKeyForAllRequest(keys, subjectGroupKeys, url); // } url = createResourceKeyRequest(resKeys, url); url = createOperationKeyRequest(opKeys, url); url = createSubjectKeyRequest(subjectKeys, url); url = createSubjectGroupKeyRequest(subjectGroupKeys, url); // is there an outputselector? if (outputSelector != null) { url += "&ns1:outputSelector=" + outputSelector.toString(); } // is there a query condition? if (condition != null) { url += (condition.getResolution() == null ? "" : "&ns1:queryCondition.ns1:resolution=" + condition.getResolution().toString()); if (condition.getQueries() != null) { int i = 0; for (QueryCondition.Query q : condition.getQueries()) { url += "&ns1:queryCondition.ns1:query(" + i + ").ns1:QueryType=" + q.getType().toString(); url += "&ns1:queryCondition.ns1:query(" + i + ").ns1:QueryValue=" + q.getValue().toString(); } } } RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(GetPoliciesResponseJS.NAME, response)); } else { // convert response.getText() to JSON GetPoliciesResponse findResponse = GetPoliciesResponseJS.fromJSON(response.getText()); if (findResponse.isErrored()) { callback.onFailure(getErrorAsThrowable(GetPoliciesResponseJS.NAME, response)); } else callback.onSuccess(findResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Gets the entity history./*from w w w.j av a 2 s.c om*/ * * @param startDate * the start date * @param endDate * the end date * @param polKeys * the pol keys * @param resKeys * the res keys * @param opKeys * the op keys * @param subjectKeys * the subject keys * @param subjectGroupKeys * the subject group keys * @param callback * the callback * @return the entity history * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#getEntityHistory(org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService.GetEntityHistoryRequest, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void getEntityHistory(Long startDate, Long endDate, List<PolicyKey> polKeys, List<ResourceKey> resKeys, List<OperationKey> opKeys, List<SubjectKey> subjectKeys, List<SubjectGroupKey> subjectGroupKeys, final AsyncCallback<GetEntityHistoryResponse> callback) { if (startDate == null || endDate == null || startDate > endDate) return; String url = BASE_POLICY_URL + "?" + getPartialUrl("getEntityHistory", namespaces, RequestFormat.NV); // startDate is measured as the milliseconds since the epoch(GMT) // "YYYY-MM-DDThh:mm:ssZ" eg 2002-05-30T09:30:10Z String start = PolicyAdminUIUtil.xsDateTimeFormat.format(new Date(startDate.longValue())).trim(); url += "&ns1:startDate=" + URL.encodeQueryString(start); String end = PolicyAdminUIUtil.xsDateTimeFormat.format(new Date(endDate.longValue())).trim(); url += "&ns1:endDate=" + URL.encodeQueryString(end); url = createPolicyKeyRequest(polKeys, url); url = createResourceKeyRequest(resKeys, url); url = createOperationKeyRequest(opKeys, url); url = createSubjectKeyRequest(subjectKeys, url); url = createSubjectGroupKeyRequest(subjectGroupKeys, url); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(GetEntityHistoryResponseJS.NAME, response)); } else { // convert response.getText() to JSON GetEntityHistoryResponse createResponse = GetEntityHistoryResponseJS .fromJSON(response.getText()); if (createResponse.isErrored()) { callback.onFailure(getErrorAsThrowable(GetEntityHistoryResponseJS.NAME, response)); } else callback.onSuccess(createResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Creates internal subjects based on external ones. * //from w w w. j a v a 2s .c om * @param subjects * the subjects * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy. * PolicyQueryService * #createSubjects(List<org.ebayopensource.turmeric.policy.adminui * .client.model.policy.Subjects>, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void createSubjects(final List<Subject> subjects, final AsyncCallback<CreateSubjectsResponse> callback) { if (subjects == null) { return; } String url = BASE_POLICY_URL + "?" + getPartialUrl("createSubjects", namespaces, RequestFormat.NV); url += SubjectsConverter.toNV(subjects); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(CreateSubjectsResponseJS.NAME, response)); } else { // convert response.getText() to JSON CreateSubjectsResponse createResponse = CreateSubjectsResponseJS .fromJSON(response.getText()); if (createResponse.isErrored()) callback.onFailure(getErrorAsThrowable(CreateSubjectsResponseJS.NAME, response)); else callback.onSuccess(createResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Creates the policy.//from w w w .j a v a 2s .com * * @param policy * the policy * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#createPolicy(org.org.ebayopensource.turmeric.monitoring.client.model.policy.GenericPolicy, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void createPolicy(final GenericPolicy policy, final AsyncCallback<CreatePolicyResponse> callback) { if (policy == null) { return; } String url = BASE_POLICY_URL + "?" + getPartialUrl("createPolicy", namespaces, RequestFormat.NV); url += GenericPolicyConverter.toNV(policy); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(CreatePolicyResponseJS.NAME, response)); } else { // convert response.getText() to JSON CreatePolicyResponse createResponse = CreatePolicyResponseJS.fromJSON(response.getText()); if (createResponse.isErrored()) { callback.onFailure(getErrorAsThrowable(CreatePolicyResponseJS.NAME, response)); } else callback.onSuccess(createResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }
From source file:org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryServiceImpl.java
License:Open Source License
/** * Find subject groups./*from w ww . j a v a2 s . co m*/ * * @param query * the query * @param callback * the callback * @see org.ebayopensource.turmeric.policy.adminui.client.model.policy.PolicyQueryService#findSubjectGroups(org.ebayopensource.turmeric.policy.adminui.client.model.policy.SubjectGroupQuery, * com.google.gwt.user.client.rpc.AsyncCallback) */ @Override public void findSubjectGroups(final SubjectGroupQuery query, final AsyncCallback<FindSubjectGroupsResponse> callback) { if (query == null) return; String url = BASE_POLICY_URL + "?" + getPartialUrl("findSubjectGroups", namespaces, RequestFormat.NV); if (query.getGroupKeys() != null) { int i = 0; for (SubjectGroupKey key : query.getGroupKeys()) { url += (key.getType() == null || "".equals(key.getType().trim()) ? "" : "&ns1:subjectGroupQuery.ns1:subjectGroupKey(" + i + ").ns1:subjectType=" + key.getType()); url += ((key.getName() == null || key.getName().trim().isEmpty()) ? "" : "&ns1:subjectGroupQuery.ns1:subjectGroupKey(" + i + ").ns1:subjectGroupName=" + key.getName().trim()); url += (key.getId() == null ? "" : "&ns1:subjectGroupQuery.ns1:subjectGroupKey(" + i + ").ns1:subjectGroupId=" + key.getId().toString()); i++; } } url += (query.getQuery() == null ? "" : "&ns1:subjectGroupQuery.ns1:queryString=" + query.getQuery()); url += "&ns1:subjectGroupQuery.ns1:includeSubjects=" + query.isIncludeSubjects(); RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(url)); setSecurityHeaders(builder); try { builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable err) { callback.onFailure(err); } public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() != Response.SC_OK) { callback.onFailure(new Throwable( PolicyAdminUIUtil.constants.error() + " " + response.getStatusCode())); } else if (response.getHeader(ERROR_HEADER) != null && response.getHeader(ERROR_HEADER).length() > 0) { callback.onFailure(getErrorAsThrowable(FindSubjectGroupsResponseJS.NAME, response)); } else { // convert response.getText() to JSON FindSubjectGroupsResponse findResponse = FindSubjectGroupsResponseJS .fromJSON(response.getText()); if (findResponse.isErrored()) { callback.onFailure(getErrorAsThrowable(FindSubjectGroupsResponseJS.NAME, response)); } else callback.onSuccess(findResponse); } } }); } catch (RequestException x) { callback.onFailure(x); } }