package com.tevinjeffrey.rutgersct.receivers; import android.app.NotificationManager; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast; import com.tevinjeffrey.rutgersct.RutgersCTApp; import com.tevinjeffrey.rutgersct.database.DatabaseHandler; import com.tevinjeffrey.rutgersct.rutgersapi.model.Course; import com.tevinjeffrey.rutgersct.rutgersapi.model.Request; import com.tevinjeffrey.rutgersct.ui.courseinfo.CourseInfoView; import com.tevinjeffrey.rutgersct.ui.trackedsections.TrackedSectionsView; import javax.inject.Inject; public class DatabaseReceiver extends BroadcastReceiver { @Inject DatabaseHandler mDatabaseHandler; public DatabaseReceiver() { } @Override public void onReceive(Context context, Intent intent) { RutgersCTApp.getObjectGraph(context).inject(this); Request request = intent.getParcelableExtra(TrackedSectionsView.REQUEST); Course.Section section = intent.getParcelableExtra(CourseInfoView.SELECTED_SECTION); if (request != null && section != null) { //Removes section from databse mDatabaseHandler.removeSectionFromDb(request); //Notify user with a toast. notifyUser(context, section); //Remove notification from notification panel removeNotification(context, request); } } private void removeNotification(Context context, Request request) { NotificationManager mNotifyMgr = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); mNotifyMgr.cancel(Integer.valueOf(request.getIndex())); } private void notifyUser(Context context, Course.Section section) { Toast.makeText(context, String.format("Stopped tracking %s", section.getCourse().getTrueTitle()), Toast.LENGTH_SHORT).show(); } }