code: public BoundRequestBuilder createRequest()
              throws HttpRequestCreateException {
          BoundRequestBuilder builder = null;
  
          getLogger().debug("AHC completeUrl " + requestUrl);
  
          try {
  
              switch (httpMethod) {
              case GET:
                  builder = client.prepareGet(requestUrl);
                  break;
              case POST:
                  builder = client.preparePost(requestUrl);
                  break;
              case PUT:
                  builder = client.preparePut(requestUrl);
                  break;
              case HEAD:
                  builder = client.prepareHead(requestUrl);
                  break;
              case OPTIONS:
                  builder = client.prepareOptions(requestUrl);
                  break;
              case DELETE:
                  builder = client.prepareDelete(requestUrl);
                  break;
              default:
                  break;
              }
  
              PcHttpUtils.addHeaders(builder, this.httpHeaderMap);
              if (!Strings.isNullOrEmpty(postData)) {
                  builder.setBody(postData);
                  String charset = "";
                  if (null!=this.httpHeaderMap) {
                      charset = this.httpHeaderMap.get("charset");
                  }
                  if(!Strings.isNullOrEmpty(charset)) {
                      builder.setBodyEncoding(charset);
                  }
              }
  
          } catch (Exception t) {
              throw new HttpRequestCreateException(
                      "Error in creating request in Httpworker. "
                              + " If BoundRequestBuilder is null. Then fail to create.",
                      t);
          }
  
          return builder;
  
      }
docs: Creates the request.
  
  @return the bound request builder
  @throws HttpRequestCreateException
  the http request create exception