private void onResponse() {
   for (IApiHook hook : obtainHookList()) {
     hook.onResponse(API_NAME, responseType, response);
     hook.onResponseData(API_NAME, responseType, response, Response.class);
   }
   clearHookList();
   onResponse(response.getStatusCode(), response);
 }
 @Override
 public final void onResponse(int statusCode, Map<String, String> header, String body) {
   HttpResponse httpResponse = new HttpResponse(responseType, statusCode, method, url, header);
   httpResponse.setBody(body);
   for (IApiHook hook : obtainHookList()) {
     hook.onResponse(API_NAME, responseType, httpResponse);
   }
   generateResponseData(httpResponse);
   for (IApiHook hook : obtainHookList()) {
     hook.onResponseData(API_NAME, responseType, response, Response.class);
   }
   onResponse(statusCode, response);
 }
 public SampleApiC go(IHttpClient httpClient) {
   request.generateMethod();
   request.generateUrl();
   request.generateHeader();
   for (IApiHook hook : obtainHookList()) {
     hook.onRequestData(API_NAME, request, Request.class);
   }
   request.generateBody();
   for (IApiHook hook : obtainHookList()) {
     hook.onRequest(API_NAME, this, request, Request.class);
   }
   httpClient.request(this);
   return this;
 }