Android Open Source - AerisAndroidLibrary Notification Service






From Project

Back to project page AerisAndroidLibrary.

License

The source code is released under:

Apache License

If you think the Android project AerisAndroidLibrary 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 com.example.service;
/*from w ww .j  av a  2 s .c  om*/
import android.app.IntentService;
import android.content.Intent;
import android.os.SystemClock;

import com.example.db.MyPlacesDb;
import com.example.demoaerisproject.AerisNotification;
import com.example.preference.PrefManager;
import com.hamweather.aeris.communication.Action;
import com.hamweather.aeris.communication.AerisRequest;
import com.hamweather.aeris.communication.BatchBuilder;
import com.hamweather.aeris.communication.BatchCommunicationTask;
import com.hamweather.aeris.communication.Endpoint;
import com.hamweather.aeris.communication.EndpointType;
import com.hamweather.aeris.communication.fields.Fields;
import com.hamweather.aeris.communication.fields.ForecastsFields;
import com.hamweather.aeris.communication.fields.ObservationFields;
import com.hamweather.aeris.communication.parameter.FieldsParameter;
import com.hamweather.aeris.communication.parameter.FilterParameter;
import com.hamweather.aeris.communication.parameter.PLimitParameter;
import com.hamweather.aeris.communication.parameter.PlaceParameter;
import com.hamweather.aeris.model.AerisBatchResponse;
import com.hamweather.aeris.response.ForecastsResponse;
import com.hamweather.aeris.response.ObservationResponse;

public class NotificationService extends IntentService {

  public NotificationService() {
    super("ntf_service");
  }

  @Override
  protected void onHandleIntent(Intent intent) {
    BatchBuilder builder = new BatchBuilder();
    MyPlacesDb db = new MyPlacesDb(this);
    PlaceParameter place = db.getMyPlaceParameter();
    db.close();
    if (place == null) {
      place = new PlaceParameter(this);
    }
    builder.addGlobalParameter(place);
    builder.addEndpoint(new Endpoint(EndpointType.OBSERVATIONS,
        Action.CLOSEST).addParameters(FieldsParameter.initWith(
        ObservationFields.ICON, ObservationFields.TEMP_F,
        ObservationFields.WEATHER, ObservationFields.TEMP_C,
        ObservationFields.WEATHER_SHORT)));
    builder.addEndpoint(new Endpoint(EndpointType.FORECASTS, Action.CLOSEST)
        .addParameters(
        FieldsParameter.initWith(Fields.INTERVAL,
            ForecastsFields.IS_DAY, ForecastsFields.MAX_TEMP_F,
            ForecastsFields.MIN_TEMP_F, ForecastsFields.MIN_TEMP_C,
            ForecastsFields.MAX_TEMP_C), new FilterParameter(
            "daynight"), new PLimitParameter(2)));
    AerisRequest request = builder.build();
    request.withDebugOutput(true);
    BatchCommunicationTask task = new BatchCommunicationTask(this, request);
    AerisBatchResponse retval = task.executeSyncTask();
    if (retval.responses != null && retval.responses.size() == 2) {
      ObservationResponse obResponse = new ObservationResponse(
          retval.responses.get(0).getFirstResponse());
      ForecastsResponse fResponse = new ForecastsResponse(
          retval.responses.get(1).getFirstResponse());
      AerisNotification
          .setCustomNotification(this, obResponse, fResponse);
      PrefManager.setLongPreference(this, PrefManager.NTF_TIMESTAMP_KEY,
          SystemClock.elapsedRealtime());
    }

  }
}




Java Source Code List

aeris.AerisUnusedStub.java
com.example.customendpoint.CustomEndpointAdapter.java
com.example.customendpoint.CustomMoonModel.java
com.example.customendpoint.CustomSunModel.java
com.example.customendpoint.CustomSunmoonFragment.java
com.example.customendpoint.CustomSunmoonHolder.java
com.example.customendpoint.CustomSunmoonModel.java
com.example.customendpoint.CustomSunmoonResponse.java
com.example.db.MyLocLoader.java
com.example.db.MyPlace.java
com.example.db.MyPlacesDb.java
com.example.db.MyPlacesSubject.java
com.example.db.SimpleCursorLoader.java
com.example.demoaerisproject.AerisDialog.java
com.example.demoaerisproject.AerisNotification.java
com.example.demoaerisproject.BaseApplication.java
com.example.demoaerisproject.DrawerActivity.java
com.example.demoaerisproject.LocationSearchActivity.java
com.example.demoaerisproject.MyLocsActivity.java
com.example.demoaerisproject.SettingsActivity.java
com.example.edithelp.EditTextEnterListener.java
com.example.edithelp.EnterPressedDelegate.java
com.example.fragment.AerisFragment.java
com.example.fragment.AerisPrefFragment.java
com.example.fragment.ExtForecastFragment.java
com.example.fragment.HeadlessFragment.java
com.example.fragment.MapFragment.java
com.example.fragment.NearbyObsFragment.java
com.example.fragment.ObservationFragment.java
com.example.fragment.OverviewFragment.java
com.example.fragment.RecentObsFragment.java
com.example.fragment.RefreshInterface.java
com.example.fragment.SplashFragment.java
com.example.fragment.WeekendFragment.java
com.example.listview.AdapterHolder.java
com.example.listview.DayNightPeriod.java
com.example.listview.ForecastAdapter.java
com.example.listview.ForecastItemHolder.java
com.example.listview.IndexMonitorAdapter.java
com.example.listview.ListAdapter.java
com.example.listview.ObservationAdapter.java
com.example.listview.ObservationItemHolder.java
com.example.listview.ObservationPeriodAdapter.java
com.example.listview.PlacesAdapter.java
com.example.listview.PlacesItemHolder.java
com.example.listview.RecentObsHolder.java
com.example.listview.WeekendAdapter.java
com.example.listview.WeekendItemHolder.java
com.example.menudrawer.HomeFragment.java
com.example.menudrawer.NavDrawerItem.java
com.example.menudrawer.NavDrawerListAdapter.java
com.example.preference.PrefManager.java
com.example.service.NotificationService.java
com.example.service.ScreenOnReceiver.java
com.example.service.ScreenOnService.java
com.example.util.FormatUtil.java
com.example.view.DayNightView.java
com.example.view.SmallForecastView.java
com.example.view.TemperatureInfoData.java
com.example.view.TemperatureWindowAdapter.java
com.example.view.TwoPartView.java