package org.witness.informacam.utils; import org.witness.informacam.InformaCam; import org.witness.informacam.utils.Constants.App; import org.witness.informacam.utils.Constants.Codes; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.util.Log; public class InnerBroadcaster extends BroadcastReceiver { private final static String LOG = App.LOG; public IntentFilter intentFilter; public int processId = -1; public boolean isIntended = true; private boolean isMounted = false; public InnerBroadcaster(IntentFilter intentFilter, int processId) { this.intentFilter = intentFilter; this.processId = processId; } public void setMounted(boolean isMounted) { this.isMounted = isMounted; } public boolean isMounted() { return isMounted; } @Override public void onReceive(Context context, Intent intent) { InformaCam informaCam = InformaCam.getInstance(); if(informaCam == null) { isIntended = false; return; } if(intent.hasExtra(Codes.Extras.RESTRICT_TO_PROCESS)) { int restrictToProcess = intent.getIntExtra(Codes.Extras.RESTRICT_TO_PROCESS, -1); Log.d(LOG, "this broadcast should be restricted to pid " + restrictToProcess + " (my pid: " + informaCam.getProcess() + ")"); if(restrictToProcess != informaCam.getProcess()) { isIntended = false; return; } } } }