in rides-android/src/main/java/com/uber/sdk/android/rides/internal/RideRequestButtonController.java [89:137]
public void loadRideInformation(@NonNull RideParameters rideParameters) {
if (rideParameters.getPickupLatitude() != null) {
checkNotNull(rideParameters.getPickupLongitude(), "Pickup point latitude is set in " +
"RideParameters but not the longitude.");
}
if (rideParameters.getPickupLongitude() != null) {
checkNotNull(rideParameters.getPickupLatitude(), "Pickup point longitude is set in " +
"RideParameters but not the latitude.");
}
if (rideParameters.getDropoffLatitude() != null) {
checkNotNull(rideParameters.getDropoffLongitude(), "Dropoff point latitude is set in " +
"RideParameters but not the longitude.");
}
if (rideParameters.getDropoffLongitude() != null) {
checkNotNull(rideParameters.getDropoffLatitude(), "Dropoff point longitude is set in" +
" RideParameters but not the latitude.");
}
cancelAllPending();
if (rideParameters.getPickupLatitude() != null) {
if (rideParameters.getDropoffLatitude() != null) {
TimePriceDelegate pendingDelegate = new TimePriceDelegate(rideRequestButtonView, rideRequestButtonCallback);
loadPriceEstimate(
rideParameters.getPickupLatitude().floatValue(),
rideParameters.getPickupLongitude().floatValue(),
rideParameters.getDropoffLatitude().floatValue(),
rideParameters.getDropoffLongitude().floatValue(),
rideParameters.getProductId(),
pendingDelegate);
this.pendingDelegate = pendingDelegate;
} else {
pendingDelegate = new TimeDelegate(rideRequestButtonView, rideRequestButtonCallback);
}
loadTimeEstimate(
pendingDelegate,
rideParameters.getPickupLatitude().floatValue(),
rideParameters.getPickupLongitude().floatValue(),
rideParameters.getProductId());
} else {
rideRequestButtonView.showDefaultView();
}
}