Android Open Source - SurgePriceWidget Uber Api Handler






From Project

Back to project page SurgePriceWidget.

License

The source code is released under:

MIT License

If you think the Android project SurgePriceWidget listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package me.mattlogan.surgepricewidget.api;
//  ww  w. j  ava  2 s  . co m
import android.util.Log;

import com.squareup.otto.Subscribe;

import java.util.HashMap;
import java.util.Map;

import me.mattlogan.surgepricewidget.api.event.RetrievePricesFailedEvent;
import me.mattlogan.surgepricewidget.api.event.RetrievePricesRequestedEvent;
import me.mattlogan.surgepricewidget.api.event.RetrievePricesSuccessEvent;
import me.mattlogan.surgepricewidget.api.model.PriceListWrapper;
import retrofit.Callback;
import retrofit.RetrofitError;
import retrofit.client.Response;

public class UberApiHandler {

    UberApi uberApi;
    UberApiBus uberApiBus;

    public UberApiHandler(UberApi uberApi, UberApiBus uberApiBus) {
        this.uberApi = uberApi;
        this.uberApiBus = uberApiBus;
        this.uberApiBus.register(this);
    }

    @Subscribe public void onRetrievePricesRequested(RetrievePricesRequestedEvent event) {
        Map<String, Float> locations = new HashMap<String, Float>();
        locations.put("start_latitude", event.startLatitude);
        locations.put("start_longitude", event.startLongitude);
        locations.put("end_latitude", event.endLatitude);
        locations.put("end_longitude", event.endLongitude);
        uberApi.getPriceEstimates(locations, new Callback<PriceListWrapper>() {
                    @Override public void success(PriceListWrapper priceListWrapper, Response response) {
                        uberApiBus.post(new RetrievePricesSuccessEvent(priceListWrapper));
                    }

                    @Override public void failure(RetrofitError error) {
                        uberApiBus.post(new RetrievePricesFailedEvent());
                    }
                });
    }
}




Java Source Code List

me.mattlogan.surgepricewidget.ApplicationTest.java
me.mattlogan.surgepricewidget.SurgePriceWidgetApplication.java
me.mattlogan.surgepricewidget.api.UberApiBus.java
me.mattlogan.surgepricewidget.api.UberApiHandler.java
me.mattlogan.surgepricewidget.api.UberApi.java
me.mattlogan.surgepricewidget.api.event.RetrievePricesFailedEvent.java
me.mattlogan.surgepricewidget.api.event.RetrievePricesRequestedEvent.java
me.mattlogan.surgepricewidget.api.event.RetrievePricesSuccessEvent.java
me.mattlogan.surgepricewidget.api.model.PriceListWrapper.java
me.mattlogan.surgepricewidget.api.model.Price.java
me.mattlogan.surgepricewidget.location.CurrentLocationClient.java
me.mattlogan.surgepricewidget.location.LocationBus.java
me.mattlogan.surgepricewidget.location.event.LocationClientConnectedEvent.java
me.mattlogan.surgepricewidget.widget.SurgePriceWidgetProvider.java