Merge "Add binder native side code for BatteryPropertiesListener"
diff --git a/include/batteryservice/IBatteryPropertiesListener.h b/include/batteryservice/IBatteryPropertiesListener.h
index 9154076..b226dd6 100644
--- a/include/batteryservice/IBatteryPropertiesListener.h
+++ b/include/batteryservice/IBatteryPropertiesListener.h
@@ -40,6 +40,12 @@
// ----------------------------------------------------------------------------
+class BnBatteryPropertiesListener: public BnInterface<IBatteryPropertiesListener> {
+public:
+ virtual status_t onTransact(uint32_t code, const Parcel& data,
+ Parcel* reply, uint32_t flags = 0);
+};
+
}; // namespace android
#endif // ANDROID_IBATTERYPROPERTIESLISTENER_H
diff --git a/services/batteryservice/IBatteryPropertiesListener.cpp b/services/batteryservice/IBatteryPropertiesListener.cpp
index 7555f4b..6e5bcfe 100644
--- a/services/batteryservice/IBatteryPropertiesListener.cpp
+++ b/services/batteryservice/IBatteryPropertiesListener.cpp
@@ -43,4 +43,22 @@
// ----------------------------------------------------------------------------
+status_t BnBatteryPropertiesListener::onTransact(uint32_t code, const Parcel& data,
+ Parcel* reply, uint32_t flags)
+{
+ switch(code) {
+ case TRANSACT_BATTERYPROPERTIESCHANGED: {
+ CHECK_INTERFACE(IBatteryPropertiesListener, data, reply);
+ struct BatteryProperties props = {};
+ if (data.readInt32() != 0) {
+ props.readFromParcel((Parcel*)&data);
+ }
+ batteryPropertiesChanged(props);
+ return NO_ERROR;
+ }
+ default:
+ return BBinder::onTransact(code, data, reply, flags);
+ }
+};
+
}; // namespace android