Example usage for org.apache.http.client.utils URIBuilder addParameter

List of usage examples for org.apache.http.client.utils URIBuilder addParameter

Introduction

In this page you can find the example usage for org.apache.http.client.utils URIBuilder addParameter.

Prototype

public URIBuilder addParameter(final String param, final String value) 

Source Link

Document

Adds parameter to URI query.

Usage

From source file:com.activiti.service.activiti.ProcessInstanceService.java

public List<String> getCompletedActivityInstancesAndProcessDefinitionId(ServerConfig serverConfig,
        String processInstanceId) {
    URIBuilder builder = clientUtil.createUriBuilder(HISTORIC_ACTIVITY_INSTANCE_LIST_URL);
    builder.addParameter("processInstanceId", processInstanceId);
    //builder.addParameter("finished", "true");
    builder.addParameter("sort", "startTime");
    builder.addParameter("order", "asc");
    builder.addParameter("size", DEFAULT_ACTIVITY_SIZE);

    HttpGet get = new HttpGet(clientUtil.getServerUrl(serverConfig, builder));
    JsonNode node = clientUtil.executeRequest(get, serverConfig);

    List<String> result = new ArrayList<String>();
    if (node.has("data") && node.get("data").isArray()) {
        ArrayNode data = (ArrayNode) node.get("data");
        ObjectNode activity = null;/*from  w  ww .  j  a  v a2s .  co m*/
        for (int i = 0; i < data.size(); i++) {
            activity = (ObjectNode) data.get(i);
            if (activity.has("activityType")) {
                result.add(activity.get("activityId").asText());
            }
        }
    }

    return result;
}

From source file:com.dgpx.web.BaiduTTSBean.java

public CloseableHttpResponse doHttpGet(String url, Map<String, String> params, RequestConfig config) {

    initHttpClient();/*from w  ww  . j  av  a2  s  .  c  o  m*/
    try {
        URIBuilder builder = new URIBuilder(url);
        if (params != null) {
            for (String k : params.keySet()) {
                builder.addParameter(k, params.get(k));
            }
        }
        URI uri = builder.build();
        HttpGet httpGet = new HttpGet(uri);
        if (config != null) {
            httpGet.setConfig(config);
        }
        CloseableHttpResponse response = httpClient.execute(httpGet);
        if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
            return response;
        }
    } catch (IOException ex) {
        Logger.getLogger(BaiduTTSBean.class.getName()).log(Level.SEVERE, null, ex);
        return null;
    } catch (URISyntaxException ex) {
        Logger.getLogger(BaiduTTSBean.class.getName()).log(Level.SEVERE, null, ex);
    }
    return null;

}

From source file:org.n52.oxf.util.web.SimpleHttpClient.java

public HttpResponse executeGet(String baseUri, RequestParameters parameters) throws HttpClientException {
    try {/*w w  w  .jav  a  2s . c  o  m*/
        URIBuilder uriBuilder = new URIBuilder(baseUri);
        for (String key : parameters.getParameterNames()) {
            if (parameters.isSingleValue(key)) {
                uriBuilder.addParameter(key, parameters.getSingleValue(key));
            } else {
                Iterable<String> multipleValues = parameters.getAllValues(key);
                uriBuilder.addParameter(key, createCsvValue(multipleValues));
            }
        }
        URI uri = uriBuilder.build();
        LOGGER.debug("executing GET method '{}'", uri);
        return executeMethod(new HttpGet(uri));
    } catch (URISyntaxException e) {
        throw new HttpClientException("Invalid base URI: " + baseUri, e);
    }
}

From source file:com.flipkart.poseidon.handlers.http.impl.oauth.OAuthTokenGenerator.java

/**
 * builds uri for Oauth end point given UriPath and Params
 *
 * @param path/*from w w  w  . ja  v  a2 s .  co m*/
 * @param params
 * @return string
 */
private String uriBuilder(String path, Map<String, String> params) {
    URIBuilder builder = new URIBuilder();
    builder.setPath(path);
    for (Map.Entry<String, String> entry : params.entrySet()) {
        builder.addParameter(entry.getKey(), entry.getValue());
    }
    return builder.toString();
}

From source file:client.Traveller.java

public void searchFlights(FlightSearch flightSearch) {
    // Keeps current search in order to store session variables
    currentFlightSearch = flightSearch;/*from  ww  w. j ava2  s .com*/

    try {
        // Builds URL for HTTP request that queries for departing flights
        URIBuilder uriBuilder = new URIBuilder(hostURL + "/search/flight");
        uriBuilder.addParameter("origin", flightSearch.getOrigin());
        uriBuilder.addParameter("destination", flightSearch.getDestination());
        uriBuilder.addParameter("departureDate", flightSearch.getDepartureDate());
        uriBuilder.addParameter("numberOfPassengers", String.valueOf(flightSearch.getNumberOfPassengers()));

        // Converts URL to string
        String urlString = uriBuilder.build().toString();

        // Send GET request and waits for response
        String response = httpConnector.sendGet(urlString);

        // Handles response (REST API returns a JSON array)
        ArrayList<Flight> departingFlights = new ArrayList<>();
        JSONArray flights = new JSONArray(response);
        int n = flights.length();
        Flight f;
        for (int i = 0; i < n; ++i) {
            final JSONObject flight = flights.getJSONObject(i);
            String flightNumber = (flight.getString("flightNumber"));
            String airline = (flight.getString("airline"));
            String origin = (flight.getString("origin"));
            String destination = (flight.getString("destination"));
            String departureDate = (flight.getString("departureDate"));
            String arrivalDate = (flight.getString("arrivalDate"));
            departureDate = (flight.getString("departureDate"));
            String departureTime = (flight.getString("departureTime"));
            String arrivalTime = (flight.getString("arrivalTime"));
            String airfare = (flight.getString("airfare"));
            int availableSeats = (flight.getInt("availableSeats"));
            f = new Flight(flightNumber, airline, origin, destination, departureDate, departureTime,
                    arrivalTime, Double.parseDouble(airfare), availableSeats);
            departingFlights.add(f);
        }

        // Creates array for returning flights
        ArrayList<Flight> returningFlights = new ArrayList<>();

        // Prepares second GET request if user searched for a round trip flights
        if (flightSearch.getRoundTrip()) {

            // Builds URL for HTTP request that queries for returning flights
            uriBuilder = new URIBuilder(hostURL + "/search/flight");
            uriBuilder.addParameter("destination", flightSearch.getOrigin());
            uriBuilder.addParameter("origin", flightSearch.getDestination());
            uriBuilder.addParameter("departureDate", flightSearch.getReturnDate());
            uriBuilder.addParameter("numberOfPassengers", String.valueOf(flightSearch.getNumberOfPassengers()));

            // Converts URL to string
            urlString = uriBuilder.build().toString();

            // Sends second GET request and waits for response
            response = httpConnector.sendGet(urlString);

            // Handles response from second GET request
            flights = new JSONArray(response);
            n = flights.length();
            for (int i = 0; i < n; ++i) {
                final JSONObject flight = flights.getJSONObject(i);
                String flightNumber = (flight.getString("flightNumber"));
                String airline = (flight.getString("airline"));
                String origin = (flight.getString("origin"));
                String destination = (flight.getString("destination"));
                String departureDate = (flight.getString("departureDate"));
                departureDate = (flight.getString("departureDate"));
                String departureTime = (flight.getString("departureTime"));
                String arrivalTime = (flight.getString("arrivalTime"));
                String airfare = (flight.getString("airfare"));
                int availableSeats = (flight.getInt("availableSeats"));
                f = new Flight(flightNumber, airline, origin, destination, departureDate, departureTime,
                        arrivalTime, Double.parseDouble(airfare), availableSeats);
                returningFlights.add(f);
            }

        }

        // Display search results in a new window
        flightSearchResultsFrame = new FlightSearchResultsFrame(this, departingFlights, returningFlights);
        flightSearchResultsFrame.setLocationRelativeTo(null);
        flightSearchResultsFrame.setVisible(true);

    } catch (URISyntaxException ex) {
        this.displayBookingConfirmation("ERROR | Invalid search");
    }
}

From source file:com.kurtraschke.nyctrtproxy.ProxyProvider.java

public void update() {
    _log.info("doing update");

    GtfsRealtimeFullUpdate grfu = new GtfsRealtimeFullUpdate();

    List<TripUpdate> tripUpdates = Lists.newArrayList();

    MatchMetrics totalMetrics = new MatchMetrics();

    // For each feed ID, read in GTFS-RT, process trip updates, push to output.
    for (int feedId : _feedIds) {
        URI feedUrl;/*www  .jav a2s .  c om*/

        try {
            URIBuilder ub = new URIBuilder("http://datamine.mta.info/mta_esi.php");

            ub.addParameter("key", _key);
            ub.addParameter("feed_id", Integer.toString(feedId));

            feedUrl = ub.build();
        } catch (URISyntaxException ex) {
            throw new RuntimeException(ex);
        }

        HttpGet get = new HttpGet(feedUrl);

        FeedMessage message = null;
        for (int tries = 0; tries < _nTries; tries++) {
            try {
                CloseableHttpResponse response = _httpClient.execute(get);
                try (InputStream streamContent = response.getEntity().getContent()) {
                    message = FeedMessage.parseFrom(streamContent, _extensionRegistry);
                    if (!message.getEntityList().isEmpty())
                        break;
                    Thread.sleep(_retryDelay * 1000);
                }
            } catch (Exception e) {
                _log.error("Error parsing protocol buffer for feed={}. try={}, retry={}. Error={}", feedId,
                        tries, tries < _nTries, e.getMessage());
            }
        }

        if (message != null) {
            try {
                tripUpdates.addAll(_processor.processFeed(feedId, message, totalMetrics));
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    for (TripUpdate tu : tripUpdates) {
        FeedEntity.Builder feb = FeedEntity.newBuilder();
        feb.setTripUpdate(tu);
        feb.setId(tu.getTrip().getTripId());
        grfu.addEntity(feb.build());
    }

    _log.info("writing {} total trip updates", tripUpdates.size());

    _tripUpdatesSink.handleFullUpdate(grfu);

    if (_listener != null)
        _listener.reportMatchesTotal(totalMetrics, _processor.getCloudwatchNamespace());
}

From source file:org.flowable.admin.service.engine.ProcessInstanceService.java

public List<String> getCompletedActivityInstancesAndProcessDefinitionId(ServerConfig serverConfig,
        String processInstanceId) {
    URIBuilder builder = clientUtil.createUriBuilder(HISTORIC_ACTIVITY_INSTANCE_LIST_URL);
    builder.addParameter("processInstanceId", processInstanceId);
    // builder.addParameter("finished", "true");
    builder.addParameter("sort", "startTime");
    builder.addParameter("order", "asc");
    builder.addParameter("size", DEFAULT_ACTIVITY_SIZE);

    HttpGet get = new HttpGet(clientUtil.getServerUrl(serverConfig, builder));
    JsonNode node = clientUtil.executeRequest(get, serverConfig);

    List<String> result = new ArrayList<String>();
    if (node.has("data") && node.get("data").isArray()) {
        ArrayNode data = (ArrayNode) node.get("data");
        ObjectNode activity = null;/*w  w  w .j  a v  a2  s .  c o  m*/
        for (int i = 0; i < data.size(); i++) {
            activity = (ObjectNode) data.get(i);
            if (activity.has("activityType")) {
                result.add(activity.get("activityId").asText());
            }
        }
    }

    return result;
}

From source file:ru.bozaro.protobuf.client.ProtobufClientGet.java

@NotNull
public HttpUriRequest createRequest(@NotNull Descriptors.MethodDescriptor method, @NotNull Message request)
        throws IOException, URISyntaxException {
    final URIBuilder builder = new URIBuilder(getBaseUri().resolve(method.getService().getName().toLowerCase()
            + "/" + method.getName().toLowerCase() + getFormat().getSuffix()));
    for (Descriptors.FieldDescriptor field : method.getInputType().getFields()) {
        if (request.hasField(field)) {
            builder.addParameter(field.getName(), request.getField(field).toString());
        }//from   w  w  w  .j a  va  2  s. c  o  m
    }
    return new HttpGet(builder.build());
}

From source file:com.quest.keycloak.protocol.wsfed.WSFedLoginProtocol.java

@Override
public void backchannelLogout(UserSessionModel userSession, ClientSessionModel clientSession) {
    logger.debug("backchannelLogout");
    ClientModel client = clientSession.getClient();
    String redirectUri = null;// w w  w .j  av a  2  s.  co m
    if (client.getRedirectUris().size() > 0) {
        redirectUri = client.getRedirectUris().iterator().next();
    }
    String logoutUrl = RedirectUtils.verifyRedirectUri(uriInfo, redirectUri, realm, client);
    if (logoutUrl == null) {
        logger.warn("Can't do backchannel logout. No SingleLogoutService POST Binding registered for client: "
                + client.getClientId());
        return;
    }

    //Basically the same as SAML only we don't need to send an actual LogoutRequest. Just need to send the signoutcleanup1.0 action.
    HttpClient httpClient = session.getProvider(HttpClientProvider.class).getHttpClient();

    for (int i = 0; i < 2; i++) { // follow redirects once
        try {
            URIBuilder builder = new URIBuilder(logoutUrl);
            builder.addParameter(WSFedConstants.WSFED_ACTION, WSFedConstants.WSFED_SIGNOUT_CLEANUP_ACTION);
            builder.addParameter(WSFedConstants.WSFED_REALM, client.getClientId());
            HttpGet get = new HttpGet(builder.build());
            HttpResponse response = httpClient.execute(get);
            try {
                int status = response.getStatusLine().getStatusCode();
                if (status == 302 && !logoutUrl.endsWith("/")) {
                    String redirect = response.getFirstHeader(HttpHeaders.LOCATION).getValue();
                    String withSlash = logoutUrl + "/";
                    if (withSlash.equals(redirect)) {
                        logoutUrl = withSlash;
                        continue;
                    }
                }
            } finally {
                HttpEntity entity = response.getEntity();
                if (entity != null) {
                    InputStream is = entity.getContent();
                    if (is != null)
                        is.close();
                }

            }
        } catch (Exception e) {
            logger.warn("failed to send ws-fed logout to RP", e);
        }
        break;
    }
}