/*
NotifySensorData.java
Copyright (c) 2016 NTT DOCOMO,INC.
Released under the MIT license
http://opensource.org/licenses/mit-license.php
*/
package org.deviceconnect.android.deviceplugin.linking.linking;
import android.content.Context;
import android.content.IntentFilter;
import android.util.Log;
import com.nttdocomo.android.sdaiflib.ControlSensorData;
import com.nttdocomo.android.sdaiflib.ReceiveSensorData;
import org.deviceconnect.android.deviceplugin.linking.BuildConfig;
public class NotifySensorData {
private static final String TAG = "LinkingPlugIn";
private Context mContext;
private ReceiveSensorData mReceiver;
public NotifySensorData(final Context context, final ControlSensorData.SensorRequestInterface requestObserver, final ControlSensorData.SensorDataInterface observer) {
mContext = context;
IntentFilter filter = new IntentFilter();
filter.addAction(LinkingUtil.ACTION_SENSOR_DATA);
filter.addAction(LinkingUtil.ACTION_SENSOR_STOP);
filter.addAction(LinkingUtil.ACTION_START_SENSOR_RESULT);
mReceiver = new ReceiveSensorData(requestObserver, observer);
mContext.registerReceiver(mReceiver, filter);
}
public void release() {
if (mContext != null && mReceiver != null) {
try {
mContext.unregisterReceiver(mReceiver);
mReceiver = null;
} catch (IllegalArgumentException e) {
if (BuildConfig.DEBUG) {
Log.e(TAG, "", e);
}
}
}
}
}