org.apache.http.client.methods.RequestBuilder#addParameter()源码实例Demo

下面列出了org.apache.http.client.methods.RequestBuilder#addParameter() 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: wechat-sdk   文件: HttpClientDelegate.java
/**
 * 构造HttpUriRequest请求.
 *
 * @param method 请求方法
 * @param url    请求地址
 * @param params 请求(key,value)数据
 * @param data   请求体文本数据
 * @param file   请求体二进制文件
 */
private static HttpUriRequest buildRequest(String method, String url, Map<String, String> params,
                                           String data, File file) {
    RequestBuilder builder = RequestBuilder.create(method).setUri(url);
    if (params != null) {
        for (String key : params.keySet()) {
            builder.addParameter(new BasicNameValuePair(key, params.get(key)));
        }
    }
    if (data != null) {
        builder.setEntity(new StringEntity(data, Const.Charset.UTF_8));
    }
    if (file != null) {
        MultipartEntityBuilder entityBuilder = MultipartEntityBuilder.create().addBinaryBody("media", file);
        builder.setEntity(entityBuilder.build());
    }
    return builder.build();
}
 
源代码2 项目: nomad-java-sdk   文件: ApiBase.java
private <T> ServerQueryResponse<T> executeServerQueryRaw(
        @Nullable final QueryOptions<T> options,
        @Nullable final String wait,
        final ValueExtractor<T> valueExtractor,
        RequestBuilder requestBuilder
) throws IOException, NomadException {
    if (options != null) {
        if (options.getIndex() != null)
            requestBuilder.addParameter("index", options.getIndex().toString());
        if (wait != null)
            requestBuilder.addParameter("wait", wait);
        if (options.isAllowStale())
            requestBuilder.addParameter("stale", null);
    }
    return apiClient.execute(requestBuilder, new ServerQueryResponseAdapter<>(valueExtractor), options);
}
 
源代码3 项目: nomad-java-sdk   文件: OperatorApi.java
/**
 * Updates the autopilot configuration.
 *
 * @param autopilotConfiguration the desired autopilot configuration
 * @param options options controlling how the request is performed
 * @param cas if not null, use check-and-set semantics on the update
 * @throws IOException    if there is an HTTP or lower-level problem
 * @throws NomadException if the response signals an error or cannot be deserialized
 * @see <a href="https://www.nomadproject.io/api/operator.html#update-autopilot-configuration">{@code PUT /v1/operator/autopilot/configuration}</a>
 */
public NomadResponse<Boolean> updateAutopilotConfiguration(
        AutopilotConfiguration autopilotConfiguration,
        @Nullable WriteOptions options,
        @Nullable BigInteger cas
    ) throws IOException, NomadException {
    RequestBuilder builder = put(
            uri("/v1/operator/autopilot/configuration"),
            autopilotConfiguration,
            options
    );
    if (cas != null) {
        builder.addParameter("cas", cas.toString());
    }
    return executeServerAction(
            builder,
            NomadJson.parserFor(Boolean.class)
    );
}
 
源代码4 项目: nomad-java-sdk   文件: OperatorApi.java
/**
 * Updates the scheduler configuration.
 *
 * @param schedulerConfiguration the desired scheduler configuration
 * @param options options controlling how the request is performed
 * @param cas if not null, use check-and-set semantics on the update
 * @throws IOException    if there is an HTTP or lower-level problem
 * @throws NomadException if the response signals an error or cannot be deserialized
 * @see <a href="https://www.nomadproject.io/api/operator.html#update-scheduler-configuration">{@code PUT /v1/operator/scheduler/configuration}</a>
 */
public NomadResponse<SchedulerSetConfigurationResponse> updateSchedulerConfiguration(
        SchedulerConfiguration schedulerConfiguration,
        @Nullable WriteOptions options,
        @Nullable BigInteger cas
) throws IOException, NomadException {
    RequestBuilder builder = put(
            uri("/v1/operator/scheduler/configuration"),
            schedulerConfiguration,
            options
    );
    if (cas != null) {
        builder.addParameter("cas", cas.toString());
    }
    return executeServerAction(
            builder,
            NomadJson.parserFor(SchedulerSetConfigurationResponse.class)
    );
}
 
源代码5 项目: nomad-java-sdk   文件: NomadApiClient.java
private HttpUriRequest buildRequest(
        RequestBuilder requestBuilder,
        @Nullable RequestOptions options
) {
    String region =    getConfig().getRegion();
    String namespace = getConfig().getNamespace();
    String authToken = getConfig().getAuthToken();

    if (options != null) {
        if (options.getRegion() != null)
            region = options.getRegion();
        if (options.getNamespace() != null)
            namespace = options.getNamespace();
        if (options.getAuthToken() != null)
            authToken = options.getAuthToken();
    }

    if (region != null && !region.isEmpty())
        requestBuilder.addParameter("region", region);
    if (namespace != null && !namespace.isEmpty())
        requestBuilder.addParameter("namespace", namespace);
    if (authToken != null && !authToken.isEmpty())
        requestBuilder.addHeader("X-Nomad-Token", authToken);

    return requestBuilder.build();
}
 
private void setParameters(RequestBuilder builder, HttpFacade httpFacade) {
    Object config = this.config.get("parameters");

    if (config != null) {
        Map<String, Object> paramsDef = Map.class.cast(config);

        for (Entry<String, Object> paramDef : paramsDef.entrySet()) {
            Object value = paramDef.getValue();
            List<String> paramValues = new ArrayList<>();

            if (value instanceof Collection) {
                Collection values = Collection.class.cast(value);

                for (Object item : values) {
                    paramValues.addAll(PlaceHolders.resolve(item.toString(), httpFacade));
                }
            } else {
                paramValues.addAll(PlaceHolders.resolve(value.toString(), httpFacade));
            }

            for (String paramValue : paramValues) {
                builder.addParameter(paramDef.getKey(), paramValue);
            }
        }
    }
}
 
源代码7 项目: rdf4j   文件: RDF4JProtocolSession.java
@Override
protected HttpUriRequest getQueryMethod(QueryLanguage ql, String query, String baseURI, Dataset dataset,
		boolean includeInferred, int maxQueryTime, Binding... bindings) {
	RequestBuilder builder = null;
	String transactionURL = getTransactionURL();
	if (transactionURL != null) {
		builder = RequestBuilder.put(transactionURL);
		builder.setHeader("Content-Type", Protocol.SPARQL_QUERY_MIME_TYPE + "; charset=utf-8");
		builder.addParameter(Protocol.ACTION_PARAM_NAME, Action.QUERY.toString());
		for (NameValuePair nvp : getQueryMethodParameters(ql, null, baseURI, dataset, includeInferred, maxQueryTime,
				bindings)) {
			builder.addParameter(nvp);
		}
		// in a PUT request, we carry the actual query string as the entity
		// body rather than a parameter.
		builder.setEntity(new StringEntity(query, UTF8));
		pingTransaction();
	} else {
		builder = RequestBuilder.post(getQueryURL());
		builder.setHeader("Content-Type", Protocol.FORM_MIME_TYPE + "; charset=utf-8");

		builder.setEntity(new UrlEncodedFormEntity(
				getQueryMethodParameters(ql, query, baseURI, dataset, includeInferred, maxQueryTime, bindings),
				UTF8));
	}
	// functionality to provide custom http headers as required by the
	// applications
	for (Map.Entry<String, String> additionalHeader : getAdditionalHttpHeaders().entrySet()) {
		builder.addHeader(additionalHeader.getKey(), additionalHeader.getValue());
	}
	return builder.build();
}
 
源代码8 项目: rdf4j   文件: RDF4JProtocolSession.java
@Override
protected HttpUriRequest getUpdateMethod(QueryLanguage ql, String update, String baseURI, Dataset dataset,
		boolean includeInferred, int maxExecutionTime, Binding... bindings) {
	RequestBuilder builder = null;
	String transactionURL = getTransactionURL();
	if (transactionURL != null) {
		builder = RequestBuilder.put(transactionURL);
		builder.addHeader("Content-Type", Protocol.SPARQL_UPDATE_MIME_TYPE + "; charset=utf-8");
		builder.addParameter(Protocol.ACTION_PARAM_NAME, Action.UPDATE.toString());
		for (NameValuePair nvp : getUpdateMethodParameters(ql, null, baseURI, dataset, includeInferred,
				maxExecutionTime, bindings)) {
			builder.addParameter(nvp);
		}
		// in a PUT request, we carry the only actual update string as the
		// request body - the rest is sent as request parameters
		builder.setEntity(new StringEntity(update, UTF8));
		pingTransaction();
	} else {
		builder = RequestBuilder.post(getUpdateURL());
		builder.addHeader("Content-Type", Protocol.FORM_MIME_TYPE + "; charset=utf-8");

		builder.setEntity(new UrlEncodedFormEntity(getUpdateMethodParameters(ql, update, baseURI, dataset,
				includeInferred, maxExecutionTime, bindings), UTF8));
	}
	// functionality to provide custom http headers as required by the
	// applications
	for (Map.Entry<String, String> additionalHeader : getAdditionalHttpHeaders().entrySet()) {
		builder.addHeader(additionalHeader.getKey(), additionalHeader.getValue());
	}
	return builder.build();
}
 
源代码9 项目: eplmp   文件: SimpleWebhookRunner.java
private HttpUriRequest addGetParams(RequestBuilder requestBuilder, String login, String email, String name, String subject, String content) {
    requestBuilder.addParameter("login", login);
    requestBuilder.addParameter("email", email);
    requestBuilder.addParameter("name", name);
    requestBuilder.addParameter("subject", subject);
    requestBuilder.addParameter("content", content);
    return requestBuilder.build();
}
 
源代码10 项目: cosmic   文件: HttpUriRequestBuilder.java
public HttpUriRequest build() {
    validate();
    final RequestBuilder builder = RequestBuilder.create(method.toString()).setUri(buildUri());
    if (!methodParameters.isEmpty()) {
        for (final Entry<String, String> entry : methodParameters.entrySet()) {
            builder.addParameter(entry.getKey(), entry.getValue());
        }
    }
    if (jsonPayload.isPresent()) {
        builder.addHeader(new BasicHeader(CONTENT_TYPE, JSON_CONTENT_TYPE))
               .setEntity(new StringEntity(jsonPayload.get(), ContentType.create(JSON_CONTENT_TYPE, Consts.UTF_8)));
    }
    return builder.build();
}
 
源代码11 项目: vespa   文件: DefaultZtsClient.java
private ZToken getRoleToken(AthenzDomain domain, String roleName) {
    URI uri = ztsUrl.resolve(String.format("domain/%s/token", domain.getName()));
    RequestBuilder requestBuilder = RequestBuilder.get(uri)
            .addHeader("Content-Type", "application/json");
    if (roleName != null) {
        requestBuilder.addParameter("role", roleName);
    }
    HttpUriRequest request = requestBuilder.build();
    return execute(request, response -> {
        RoleTokenResponseEntity roleTokenResponseEntity = readEntity(response, RoleTokenResponseEntity.class);
        return roleTokenResponseEntity.token;
    });
}
 
源代码12 项目: tomcat-mongo-access-log   文件: PostGenerator.java
public static HttpUriRequest gen(int port) throws URISyntaxException {
  String uri = "http://localhost:" + port + uris[r.nextInt(uris.length)];
  RequestBuilder rb = RequestBuilder.post().setUri(new URI(uri));
  for(int j = 0; j < r.nextInt(paramNames.length); j++) {
    rb.addParameter(
        paramNames[r.nextInt(paramNames.length)], 
        paramValues[r.nextInt(paramValues.length)]
    );
  }
  rb.addHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
  return rb.build();
}
 
源代码13 项目: incubator-pinot   文件: FileUploadDownloadClient.java
private static void addHeadersAndParameters(RequestBuilder requestBuilder, @Nullable List<Header> headers,
    @Nullable List<NameValuePair> parameters) {
  if (headers != null) {
    for (Header header : headers) {
      requestBuilder.addHeader(header);
    }
  }
  if (parameters != null) {
    for (NameValuePair parameter : parameters) {
      requestBuilder.addParameter(parameter);
    }
  }
}
 
源代码14 项目: cloudstack   文件: HttpUriRequestBuilder.java
public HttpUriRequest build() {
    validate();
    final RequestBuilder builder = RequestBuilder.create(method.toString()).setUri(buildUri());
    if (!methodParameters.isEmpty()) {
        for (final Entry<String, String> entry : methodParameters.entrySet()) {
            builder.addParameter(entry.getKey(), entry.getValue());
        }
    }
    if (jsonPayload.isPresent()) {
        builder.addHeader(new BasicHeader(CONTENT_TYPE, JSON_CONTENT_TYPE))
            .setEntity(new StringEntity(jsonPayload.get(), ContentType.create(JSON_CONTENT_TYPE, Consts.UTF_8)));
    }
    return builder.build();
}
 
源代码15 项目: keycloak   文件: HttpMethod.java
protected void preExecute(RequestBuilder builder) {
    for (Map.Entry<String, List<String>> param : params.entrySet()) {
        for (String value : param.getValue()) {
            builder.addParameter(param.getKey(), value);
        }
    }
}
 
源代码16 项目: nexus3-keycloak-plugin   文件: HttpMethod.java
protected void preExecute(RequestBuilder builder) {
    for (Map.Entry<String, String> param : this.params.entrySet()) {
        builder.addParameter(param.getKey(), param.getValue());
    }
}
 
源代码17 项目: commons-jcs   文件: RemoteHttpCacheDispatcher.java
/**
 * Process single request
 *
 * @param requestAsByteArray request body
 * @param remoteCacheRequest the cache request
 * @param url target url
 *
 * @return byte[] - the response
 *
 * @throws IOException
 * @throws HttpException
 */
protected <K, V> byte[] processRequest( byte[] requestAsByteArray,
        RemoteCacheRequest<K, V> remoteCacheRequest, String url )
    throws IOException, HttpException
{
    RequestBuilder builder = RequestBuilder.post( url ).setCharset( DEFAULT_ENCODING );

    if ( getRemoteHttpCacheAttributes().isIncludeCacheNameAsParameter()
        && remoteCacheRequest.getCacheName() != null )
    {
        builder.addParameter( PARAMETER_CACHE_NAME, remoteCacheRequest.getCacheName() );
    }
    if ( getRemoteHttpCacheAttributes().isIncludeKeysAndPatternsAsParameter() )
    {
        String keyValue = "";
        switch ( remoteCacheRequest.getRequestType() )
        {
            case GET:
            case REMOVE:
            case GET_KEYSET:
                keyValue = remoteCacheRequest.getKey().toString();
                break;
            case GET_MATCHING:
                keyValue = remoteCacheRequest.getPattern();
                break;
            case GET_MULTIPLE:
                keyValue = remoteCacheRequest.getKeySet().toString();
                break;
            case UPDATE:
                keyValue = remoteCacheRequest.getCacheElement().getKey().toString();
                break;
            default:
                break;
        }
        builder.addParameter( PARAMETER_KEY, keyValue );
    }
    if ( getRemoteHttpCacheAttributes().isIncludeRequestTypeasAsParameter() )
    {
        builder.addParameter( PARAMETER_REQUEST_TYPE,
            remoteCacheRequest.getRequestType().toString() );
    }

    builder.setEntity(new ByteArrayEntity( requestAsByteArray ));
    HttpResponse httpResponse = doWebserviceCall( builder );
    byte[] response = EntityUtils.toByteArray( httpResponse.getEntity() );
    return response;
}
 
源代码18 项目: nomad-java-sdk   文件: StatusApi.java
/**
 * Queries the address of the Raft leader in the given or active region.
 *
 * @param region the region to forward the request to
 * @throws IOException    if there is an HTTP or lower-level problem
 * @throws NomadException if the response signals an error or cannot be deserialized
 * @see <a href="https://www.nomadproject.io/docs/http/status.html">{@code GET /v1/status/peers}</a>
 */
public NomadResponse<String> leader(@Nullable String region) throws IOException, NomadException {
    final RequestBuilder request = get("/v1/status/leader");
    if (region != null)
        request.addParameter("region", region);
    return executePlain(request, NomadJson.parserFor(String.class));
}
 
源代码19 项目: nomad-java-sdk   文件: StatusApi.java
/**
 * List the addresses of the Raft peers in the given or active region.
 *
 * @param region the region to forward the request to
 * @throws IOException    if there is an HTTP or lower-level problem
 * @throws NomadException if the response signals an error or cannot be deserialized
 * @see <a href="https://www.nomadproject.io/docs/http/status.html">{@code GET /v1/status/peers}</a>
 */
public NomadResponse<List<String>> peers(@Nullable String region) throws IOException, NomadException {
    RequestBuilder request = get("/v1/status/peers");
    if (region != null)
        request.addParameter("region", region);
    return executePlain(request, NomadJson.parserForListOf(String.class));
}