summaryrefslogtreecommitdiff
path: root/libs/services
diff options
context:
space:
mode:
authorRuchir Rastogi <ruchirr@google.com>2020-01-22 17:29:14 -0800
committerRuchir Rastogi <ruchirr@google.com>2020-01-24 12:07:25 -0800
commit4e65e38795a55fe437a7c38d28a0558a422ce2f5 (patch)
tree122549969eba71e6543dda4dce4271d68148d93f /libs/services
parentf60603ccd79f26ea930bc4a8d6af8640389cedc5 (diff)
Delete StatsLogEventWrapper
Since all pullers now use StatsEvent instead of StatsLogEventWrapper, this class can be deleted. Test: m -j Test: m -j statsd_test Bug: 146578681 Change-Id: I63013768ee13af0235f8cd857ca3fc16d2fd877f
Diffstat (limited to 'libs/services')
-rw-r--r--libs/services/Android.bp1
-rw-r--r--libs/services/include/android/os/StatsLogEventWrapper.h127
-rw-r--r--libs/services/src/os/StatsLogEventWrapper.cpp127
3 files changed, 0 insertions, 255 deletions
diff --git a/libs/services/Android.bp b/libs/services/Android.bp
index 901ffaa59cd1..9b047ca22d19 100644
--- a/libs/services/Android.bp
+++ b/libs/services/Android.bp
@@ -21,7 +21,6 @@ cc_library_shared {
"src/content/ComponentName.cpp",
"src/os/DropBoxManager.cpp",
"src/os/StatsDimensionsValue.cpp",
- "src/os/StatsLogEventWrapper.cpp",
],
shared_libs: [
diff --git a/libs/services/include/android/os/StatsLogEventWrapper.h b/libs/services/include/android/os/StatsLogEventWrapper.h
deleted file mode 100644
index 8de2ab49f42b..000000000000
--- a/libs/services/include/android/os/StatsLogEventWrapper.h
+++ /dev/null
@@ -1,127 +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.
- */
-#ifndef STATS_LOG_EVENT_WRAPPER_H
-#define STATS_LOG_EVENT_WRAPPER_H
-
-#include <binder/Parcel.h>
-#include <binder/Parcelable.h>
-#include <binder/Status.h>
-#include <utils/RefBase.h>
-#include <vector>
-
-namespace android {
-namespace os {
-
-/**
- * A wrapper for a union type to contain multiple types of values.
- *
- */
-struct StatsLogValue {
- // Keep in sync with FieldValue.h
- enum STATS_LOG_VALUE_TYPE {
- UNKNOWN = 0,
- INT = 1,
- LONG = 2,
- FLOAT = 3,
- DOUBLE = 4,
- STRING = 5,
- STORAGE = 6
- };
-
- StatsLogValue() : type(UNKNOWN) {}
-
- StatsLogValue(int32_t v) {
- int_value = v;
- type = INT;
- }
-
- StatsLogValue(int64_t v) {
- long_value = v;
- type = LONG;
- }
-
- StatsLogValue(float v) {
- float_value = v;
- type = FLOAT;
- }
-
- StatsLogValue(double v) {
- double_value = v;
- type = DOUBLE;
- }
-
- StatsLogValue(const std::string& v) {
- str_value = v;
- type = STRING;
- }
-
- void setType(STATS_LOG_VALUE_TYPE t) { type = t; }
-
- union {
- int32_t int_value;
- int64_t long_value;
- float float_value;
- double double_value;
- };
- std::string str_value;
- std::vector<uint8_t> storage_value;
-
- STATS_LOG_VALUE_TYPE type;
-};
-
-struct WorkChain {
- std::vector<int32_t> uids;
- std::vector<std::string> tags;
-};
-
-// Represents a parcelable object. Only used to send data from Android OS to statsd.
-class StatsLogEventWrapper : public android::Parcelable {
- public:
- StatsLogEventWrapper();
-
- StatsLogEventWrapper(StatsLogEventWrapper&& in) = default;
-
- android::status_t writeToParcel(android::Parcel* out) const;
-
- android::status_t readFromParcel(const android::Parcel* in);
-
- int getTagId() const { return mTagId; }
-
- int64_t getElapsedRealTimeNs() const { return mElapsedRealTimeNs; }
-
- int64_t getWallClockTimeNs() const { return mWallClockTimeNs; }
-
- const std::vector<StatsLogValue>& getElements() const { return mElements; }
-
- const std::vector<WorkChain>& getWorkChains() const { return mWorkChains; }
-
- private:
- int mTagId;
-
- int64_t mElapsedRealTimeNs;
-
- int64_t mWallClockTimeNs;
-
- std::vector<StatsLogValue> mElements;
-
- std::vector<WorkChain> mWorkChains;
-};
-} // Namespace os
-} // Namespace android
-
-
-#endif // STATS_LOG_EVENT_WRAPPER_H
-
diff --git a/libs/services/src/os/StatsLogEventWrapper.cpp b/libs/services/src/os/StatsLogEventWrapper.cpp
deleted file mode 100644
index f6dfdef16e19..000000000000
--- a/libs/services/src/os/StatsLogEventWrapper.cpp
+++ /dev/null
@@ -1,127 +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.
- */
-#include <android/os/StatsLogEventWrapper.h>
-
-#include <binder/Parcel.h>
-#include <binder/Parcelable.h>
-#include <binder/Status.h>
-#include <utils/RefBase.h>
-#include <vector>
-
-using android::Parcel;
-using android::Parcelable;
-using android::status_t;
-using std::vector;
-
-namespace android {
-namespace os {
-
-StatsLogEventWrapper::StatsLogEventWrapper(){};
-
-status_t StatsLogEventWrapper::writeToParcel(Parcel* out) const {
- // Implement me if desired. We don't currently use this.
- ALOGE(
- "Cannot do c++ StatsLogEventWrapper.writeToParcel(); it is not "
- "implemented.");
- (void)out; // To prevent compile error of unused parameter 'in'
- return UNKNOWN_ERROR;
-};
-
-status_t StatsLogEventWrapper::readFromParcel(const Parcel* in) {
- status_t res = OK;
- if (in == NULL) {
- ALOGE("statsd received parcel argument was NULL.");
- return BAD_VALUE;
- }
- if ((res = in->readInt32(&mTagId)) != OK) {
- ALOGE("statsd could not read tagId from parcel");
- return res;
- }
- if ((res = in->readInt64(&mElapsedRealTimeNs)) != OK) {
- ALOGE("statsd could not read elapsed real time from parcel");
- return res;
- }
- if ((res = in->readInt64(&mWallClockTimeNs)) != OK) {
- ALOGE("statsd could not read wall clock time from parcel");
- return res;
- }
- int numWorkChain = 0;
- if ((res = in->readInt32(&numWorkChain)) != OK) {
- ALOGE("statsd could not read number of work chains from parcel");
- return res;
- }
- if (numWorkChain > 0) {
- for (int i = 0; i < numWorkChain; i++) {
- int numNodes = 0;
- if ((res = in->readInt32(&numNodes)) != OK) {
- ALOGE(
- "statsd could not read number of nodes in work chain from parcel");
- return res;
- }
- if (numNodes == 0) {
- ALOGE("empty work chain");
- return BAD_VALUE;
- }
- WorkChain wc;
- for (int j = 0; j < numNodes; j++) {
- wc.uids.push_back(in->readInt32());
- wc.tags.push_back(std::string(String8(in->readString16()).string()));
- }
- mWorkChains.push_back(wc);
- }
- }
- int dataSize = 0;
- if ((res = in->readInt32(&dataSize)) != OK) {
- ALOGE("statsd could not read data size from parcel");
- return res;
- }
- if (mTagId <= 0 || mElapsedRealTimeNs <= 0 || mWallClockTimeNs <= 0 ||
- dataSize <= 0) {
- ALOGE("statsd received invalid parcel");
- return BAD_VALUE;
- }
-
- for (int i = 0; i < dataSize; i++) {
- int type = in->readInt32();
- switch (type) {
- case StatsLogValue::INT:
- mElements.push_back(StatsLogValue(in->readInt32()));
- break;
- case StatsLogValue::LONG:
- mElements.push_back(StatsLogValue(in->readInt64()));
- break;
- case StatsLogValue::STRING:
- mElements.push_back(
- StatsLogValue(std::string(String8(in->readString16()).string())));
- break;
- case StatsLogValue::FLOAT:
- mElements.push_back(StatsLogValue(in->readFloat()));
- break;
- case StatsLogValue::STORAGE:
- mElements.push_back(StatsLogValue());
- mElements.back().setType(StatsLogValue::STORAGE);
- in->readByteVector(&(mElements.back().storage_value));
- break;
- default:
- ALOGE("unrecognized data type: %d", type);
- return BAD_TYPE;
- }
- }
- return NO_ERROR;
-};
-
-} // Namespace os
-} // Namespace android