Loading cmds/statsd/src/state/StateManager.cpp +2 −7 Original line number Diff line number Diff line Loading @@ -29,18 +29,15 @@ StateManager& StateManager::getInstance() { } void StateManager::onLogEvent(const LogEvent& event) { std::lock_guard<std::mutex> lock(mMutex); if (mStateTrackers.find(event.GetTagId()) != mStateTrackers.end()) { mStateTrackers[event.GetTagId()]->onLogEvent(event); } } bool StateManager::registerListener(int32_t atomId, wp<StateListener> listener) { std::lock_guard<std::mutex> lock(mMutex); // Check if state tracker already exists // Check if state tracker already exists. if (mStateTrackers.find(atomId) == mStateTrackers.end()) { // Create a new state tracker iff atom is a state atom // Create a new state tracker iff atom is a state atom. auto it = android::util::AtomsInfo::kStateAtomsFieldOptions.find(atomId); if (it != android::util::AtomsInfo::kStateAtomsFieldOptions.end()) { mStateTrackers[atomId] = new StateTracker(atomId, it->second); Loading Loading @@ -79,8 +76,6 @@ void StateManager::unregisterListener(int32_t atomId, wp<StateListener> listener bool StateManager::getStateValue(int32_t atomId, const HashableDimensionKey& key, FieldValue* output) const { std::lock_guard<std::mutex> lock(mMutex); auto it = mStateTrackers.find(atomId); if (it != mStateTrackers.end()) { return it->second->getStateValue(key, output); Loading cmds/statsd/src/state/StateManager.h +7 −6 Original line number Diff line number Diff line Loading @@ -27,6 +27,10 @@ namespace android { namespace os { namespace statsd { /** * This class is NOT thread safe. * It should only be used while StatsLogProcessor's lock is held. */ class StateManager : public virtual RefBase { public: StateManager(){}; Loading Loading @@ -56,13 +60,10 @@ public: FieldValue* output) const; inline int getStateTrackersCount() const { std::lock_guard<std::mutex> lock(mMutex); return mStateTrackers.size(); } inline int getListenersCount(int32_t atomId) const { std::lock_guard<std::mutex> lock(mMutex); auto it = mStateTrackers.find(atomId); if (it != mStateTrackers.end()) { return it->second->getListenersCount(); Loading Loading
cmds/statsd/src/state/StateManager.cpp +2 −7 Original line number Diff line number Diff line Loading @@ -29,18 +29,15 @@ StateManager& StateManager::getInstance() { } void StateManager::onLogEvent(const LogEvent& event) { std::lock_guard<std::mutex> lock(mMutex); if (mStateTrackers.find(event.GetTagId()) != mStateTrackers.end()) { mStateTrackers[event.GetTagId()]->onLogEvent(event); } } bool StateManager::registerListener(int32_t atomId, wp<StateListener> listener) { std::lock_guard<std::mutex> lock(mMutex); // Check if state tracker already exists // Check if state tracker already exists. if (mStateTrackers.find(atomId) == mStateTrackers.end()) { // Create a new state tracker iff atom is a state atom // Create a new state tracker iff atom is a state atom. auto it = android::util::AtomsInfo::kStateAtomsFieldOptions.find(atomId); if (it != android::util::AtomsInfo::kStateAtomsFieldOptions.end()) { mStateTrackers[atomId] = new StateTracker(atomId, it->second); Loading Loading @@ -79,8 +76,6 @@ void StateManager::unregisterListener(int32_t atomId, wp<StateListener> listener bool StateManager::getStateValue(int32_t atomId, const HashableDimensionKey& key, FieldValue* output) const { std::lock_guard<std::mutex> lock(mMutex); auto it = mStateTrackers.find(atomId); if (it != mStateTrackers.end()) { return it->second->getStateValue(key, output); Loading
cmds/statsd/src/state/StateManager.h +7 −6 Original line number Diff line number Diff line Loading @@ -27,6 +27,10 @@ namespace android { namespace os { namespace statsd { /** * This class is NOT thread safe. * It should only be used while StatsLogProcessor's lock is held. */ class StateManager : public virtual RefBase { public: StateManager(){}; Loading Loading @@ -56,13 +60,10 @@ public: FieldValue* output) const; inline int getStateTrackersCount() const { std::lock_guard<std::mutex> lock(mMutex); return mStateTrackers.size(); } inline int getListenersCount(int32_t atomId) const { std::lock_guard<std::mutex> lock(mMutex); auto it = mStateTrackers.find(atomId); if (it != mStateTrackers.end()) { return it->second->getListenersCount(); Loading