12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- package de.tudarmstadt.informatik.hostage.logging;
- import android.app.IntentService;
- import android.content.Context;
- import android.content.Intent;
- import de.tudarmstadt.informatik.hostage.persistence.HostageDBOpenHelper;
- public class Logger extends IntentService {
- private static final String ACTION_LOG = "de.tudarmstadt.informatik.hostage.action.LOG";
- private static final String ACTION_LOG_PORTSCAN = "de.tudarmstadt.informatik.hostage.action.LOG_PORTSCAN";
- private static final String EXTRA_RECORD = "de.tudarmstadt.informatik.hostage.extra.RECORD";
- private static final String EXTRA_TIMESTAMP = "de.tudarmstadt.informatik.hostage.extra.TIMESTAMP";
- private static final String EXTRA_IP = "de.tudarmstadt.informatik.hostage.extra.IP";
- public static void log(Context context, Record record) {
- Intent intent = new Intent(context, Logger.class);
- intent.setAction(ACTION_LOG);
- intent.putExtra(EXTRA_RECORD, record);
- context.startService(intent);
- }
- public static void logPortscan(Context context, long timestamp, String ip) {
- Intent intent = new Intent(context, Logger.class);
- intent.setAction(ACTION_LOG);
- intent.putExtra(EXTRA_TIMESTAMP, timestamp);
- intent.putExtra(EXTRA_IP, ip);
- context.startService(intent);
- }
- private HostageDBOpenHelper mDbHelper;
- public Logger() {
- super("Logger");
- }
- @Override
- public void onCreate() {
- super.onCreate();
- mDbHelper = new HostageDBOpenHelper(getApplicationContext());
- }
- private void handleActionLog(Record record) {
- mDbHelper.addRecord(record);
- }
- private void handleActionLogPortscan(long timestamp, String ip) {
- mDbHelper.insertPortscan(timestamp, ip);
- }
- @Override
- protected void onHandleIntent(Intent intent) {
- if (intent != null) {
- final String action = intent.getAction();
- if (ACTION_LOG.equals(action)) {
- final Record record = intent.getParcelableExtra(EXTRA_RECORD);
- handleActionLog(record);
- } else if (ACTION_LOG_PORTSCAN.equals(action)) {
- final long timestamp = intent.getParcelableExtra(EXTRA_TIMESTAMP);
- final String ip = intent.getParcelableExtra(EXTRA_IP);
- handleActionLogPortscan(timestamp, ip);
- }
- }
- }
- }
|