Delete StatsCompanionServicePuller
Since pulls now go through StatsPullAtomService, instead of StatsCompanionService, we no longer need the StatsCompanionServicePuller class. Test: m -j Change-Id: Id7050fbda1118808aade0754747248b21c11b814
This commit is contained in:
@@ -16,9 +16,6 @@
|
||||
|
||||
package android.os;
|
||||
|
||||
import android.os.IPullAtomCallback;
|
||||
import android.os.StatsLogEventWrapper;
|
||||
|
||||
/**
|
||||
* Binder interface to communicate with the Java-based statistics service helper.
|
||||
* {@hide}
|
||||
@@ -62,9 +59,6 @@ interface IStatsCompanionService {
|
||||
/** Cancel any alarm for the purpose of subscriber triggering. */
|
||||
oneway void cancelAlarmForSubscriberTriggering();
|
||||
|
||||
/** Pull the specified data. Results will be sent to statsd when complete. */
|
||||
StatsLogEventWrapper[] pullData(int pullCode);
|
||||
|
||||
/** Tells StatsCompaionService to grab the uid map snapshot and send it to statsd. */
|
||||
oneway void triggerUidSnapshot();
|
||||
}
|
||||
|
||||
@@ -714,27 +714,6 @@ public class StatsCompanionService extends IStatsCompanionService.Stub {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Pulls various data.
|
||||
*/
|
||||
@Override // Binder call
|
||||
public StatsLogEventWrapper[] pullData(int tagId) {
|
||||
StatsCompanion.enforceStatsCompanionPermission(mContext);
|
||||
if (DEBUG) {
|
||||
Slog.d(TAG, "Pulling " + tagId);
|
||||
}
|
||||
List<StatsLogEventWrapper> ret = new ArrayList<>();
|
||||
long elapsedNanos = SystemClock.elapsedRealtimeNanos();
|
||||
long wallClockNanos = SystemClock.currentTimeMicro() * 1000L;
|
||||
switch (tagId) {
|
||||
|
||||
default:
|
||||
Slog.w(TAG, "No such tagId data as " + tagId);
|
||||
return null;
|
||||
}
|
||||
return ret.toArray(new StatsLogEventWrapper[ret.size()]);
|
||||
}
|
||||
|
||||
@Override // Binder call
|
||||
public void statsdReady() {
|
||||
StatsCompanion.enforceStatsCompanionPermission(mContext);
|
||||
|
||||
@@ -73,7 +73,6 @@ cc_defaults {
|
||||
"src/external/puller_util.cpp",
|
||||
"src/external/ResourceHealthManagerPuller.cpp",
|
||||
"src/external/StatsCallbackPuller.cpp",
|
||||
"src/external/StatsCompanionServicePuller.cpp",
|
||||
"src/external/StatsPuller.cpp",
|
||||
"src/external/StatsPullerManager.cpp",
|
||||
"src/external/SubsystemSleepStatePuller.cpp",
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#define DEBUG false
|
||||
#include "Log.h"
|
||||
|
||||
#include <android/os/IStatsCompanionService.h>
|
||||
#include <binder/IPCThreadState.h>
|
||||
#include <private/android_filesystem_config.h>
|
||||
#include "../stats_log_util.h"
|
||||
#include "../statscompanion_util.h"
|
||||
#include "StatsCompanionServicePuller.h"
|
||||
|
||||
using namespace android;
|
||||
using namespace android::base;
|
||||
using namespace android::binder;
|
||||
using namespace android::os;
|
||||
using std::make_shared;
|
||||
using std::shared_ptr;
|
||||
using std::vector;
|
||||
|
||||
namespace android {
|
||||
namespace os {
|
||||
namespace statsd {
|
||||
|
||||
// The reading and parsing are implemented in Java. It is not difficult to port over. But for now
|
||||
// let StatsCompanionService handle that and send the data back.
|
||||
StatsCompanionServicePuller::StatsCompanionServicePuller(int tagId) : StatsPuller(tagId) {
|
||||
}
|
||||
|
||||
void StatsCompanionServicePuller::SetStatsCompanionService(
|
||||
sp<IStatsCompanionService> statsCompanionService) {
|
||||
AutoMutex _l(mStatsCompanionServiceLock);
|
||||
sp<IStatsCompanionService> tmpForLock = mStatsCompanionService;
|
||||
mStatsCompanionService = statsCompanionService;
|
||||
}
|
||||
|
||||
bool StatsCompanionServicePuller::PullInternal(vector<shared_ptr<LogEvent> >* data) {
|
||||
sp<IStatsCompanionService> statsCompanionServiceCopy = mStatsCompanionService;
|
||||
if (statsCompanionServiceCopy != nullptr) {
|
||||
vector<StatsLogEventWrapper> returned_value;
|
||||
Status status = statsCompanionServiceCopy->pullData(mTagId, &returned_value);
|
||||
if (!status.isOk()) {
|
||||
ALOGW("StatsCompanionServicePuller::pull failed for %d", mTagId);
|
||||
StatsdStats::getInstance().noteStatsCompanionPullFailed(mTagId);
|
||||
if (status.exceptionCode() == Status::Exception::EX_TRANSACTION_FAILED) {
|
||||
StatsdStats::getInstance().noteStatsCompanionPullBinderTransactionFailed(mTagId);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
data->clear();
|
||||
for (const StatsLogEventWrapper& it : returned_value) {
|
||||
LogEvent::createLogEvents(it, *data);
|
||||
}
|
||||
VLOG("StatsCompanionServicePuller::pull succeeded for %d", mTagId);
|
||||
return true;
|
||||
} else {
|
||||
ALOGW("statsCompanion not found!");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace statsd
|
||||
} // namespace os
|
||||
} // namespace android
|
||||
@@ -1,40 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2017 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <utils/String16.h>
|
||||
#include "StatsPuller.h"
|
||||
|
||||
namespace android {
|
||||
namespace os {
|
||||
namespace statsd {
|
||||
|
||||
class StatsCompanionServicePuller : public StatsPuller {
|
||||
public:
|
||||
explicit StatsCompanionServicePuller(int tagId);
|
||||
|
||||
void SetStatsCompanionService(sp<IStatsCompanionService> statsCompanionService) override;
|
||||
|
||||
private:
|
||||
Mutex mStatsCompanionServiceLock;
|
||||
sp<IStatsCompanionService> mStatsCompanionService = nullptr;
|
||||
bool PullInternal(vector<std::shared_ptr<LogEvent> >* data) override;
|
||||
};
|
||||
|
||||
} // namespace statsd
|
||||
} // namespace os
|
||||
} // namespace android
|
||||
@@ -37,7 +37,6 @@
|
||||
#include "PowerStatsPuller.h"
|
||||
#include "ResourceHealthManagerPuller.h"
|
||||
#include "StatsCallbackPuller.h"
|
||||
#include "StatsCompanionServicePuller.h"
|
||||
#include "SubsystemSleepStatePuller.h"
|
||||
#include "TrainInfoPuller.h"
|
||||
#include "statslog.h"
|
||||
|
||||
Reference in New Issue
Block a user