Logger.java 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package de.tudarmstadt.informatik.hostage.logging;
  2. import android.app.IntentService;
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import de.tudarmstadt.informatik.hostage.persistence.HostageDBOpenHelper;
  6. public class Logger extends IntentService {
  7. private static final String ACTION_LOG = "de.tudarmstadt.informatik.hostage.action.LOG";
  8. private static final String EXTRA_RECORD = "de.tudarmstadt.informatik.hostage.extra.RECORD";
  9. public static void log(Context context, Record record) {
  10. Intent intent = new Intent(context, Logger.class);
  11. intent.setAction(ACTION_LOG);
  12. intent.putExtra(EXTRA_RECORD, record);
  13. context.startService(intent);
  14. }
  15. private HostageDBOpenHelper mDbHelper;
  16. public Logger() {
  17. super("Logger");
  18. }
  19. @Override
  20. public void onCreate() {
  21. super.onCreate();
  22. mDbHelper = new HostageDBOpenHelper(getApplicationContext());
  23. }
  24. private void handleActionLog(Record record) {
  25. mDbHelper.addRecord(record);
  26. }
  27. @Override
  28. protected void onHandleIntent(Intent intent) {
  29. if (intent != null) {
  30. final String action = intent.getAction();
  31. if (ACTION_LOG.equals(action)) {
  32. final Record record = intent.getParcelableExtra(EXTRA_RECORD);
  33. handleActionLog(record);
  34. }
  35. }
  36. }
  37. }