Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public List<Integer> fetchVehicleIds(String datasetId) throws ApiException {
- VehiclesApi vehiclesApi = new VehiclesApi();
- List<Integer> vehicleIds;
- vehicleIds = vehiclesApi.vehiclesGetIds(datasetId).getVehicleIds();
- return vehicleIds;
- }
- public List<VehicleResponse> fetchVehicleDetails(String datasetId, List<Integer> vehicleIds) throws InterruptedException, ApiException {
- CountDownLatch latch = new CountDownLatch(vehicleIds.size());
- List<VehicleResponse> vehiclesList = new ArrayList<>();
- for (Integer vehicleId: vehicleIds) {
- populateEachVehicleDetail(datasetId, vehicleId, vehiclesList, latch);
- }
- latch.await();
- return vehiclesList;
- }
- private void populateEachVehicleDetail(String datasetId, Integer vehicleId, List<VehicleResponse> vehiclesList, CountDownLatch latch) throws ApiException {
- ApiCallback<VehicleResponse> vehicleResponseApiCallback = new ApiCallback<VehicleResponse>() {
- @Override
- synchronized public void onSuccess(VehicleResponse result, int statusCode, Map<String, List<String>> responseHeaders) {
- vehiclesList.add(result);
- latch.countDown();
- }
- };
- VehiclesApi vehiclesApi = new VehiclesApi();
- vehiclesApi.vehiclesGetVehicleAsync(datasetId,vehicleId,vehicleResponseApiCallback);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement