Loading apex/statsd/aidl/Android.bp +12 −16 Original line number Diff line number Diff line Loading @@ -13,35 +13,31 @@ // See the License for the specific language governing permissions and // limitations under the License. // // TODO(b/145815909): move StatsDimensionsValue.aidl here filegroup { name: "statsd_aidl", name: "statsd_java_aidl", srcs: ["**/*.aidl"], } aidl_interface { name: "statsd-aidl", srcs: [ "android/os/IPendingIntentRef.aidl", "android/os/IPullAtomCallback.aidl", "android/os/IPullAtomResultReceiver.aidl", "android/os/IStatsCompanionService.aidl", "android/os/IStatsd.aidl", "android/os/StatsDimensionsValueParcel.aidl", "android/util/StatsEventParcel.aidl", ], } filegroup { name: "statsd_java_aidl", srcs: ["**/*.aidl"], } // This library is currently unused aidl_interface { name: "stats-event-parcel-aidl", srcs: ["android/util/StatsEventParcel.aidl"], backend: { java: { sdk_version: "28", enabled: false, // the platform uses statsd_java_aidl }, cpp: { enabled: false, enabled: true, }, ndk: { enabled: true, } } } apex/statsd/aidl/android/os/IPendingIntentRef.aidl +3 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ package android.os; import android.os.StatsDimensionsValue; import android.os.StatsDimensionsValueParcel; /** * Binder interface to hold a PendingIntent for StatsCompanionService. Loading @@ -42,5 +42,5 @@ interface IPendingIntentRef { */ oneway void sendSubscriberBroadcast(long configUid, long configId, long subscriptionId, long subscriptionRuleId, in String[] cookies, in StatsDimensionsValue dimensionsValue); in StatsDimensionsValueParcel dimensionsValueParcel); } apex/statsd/aidl/android/os/StatsDimensionsValueParcel.aidl 0 → 100644 +21 −0 Original line number Diff line number Diff line package android.os; /** * @hide */ parcelable StatsDimensionsValueParcel { /** * Field equals: * - atomTag for top level StatsDimensionsValueParcel * - position in dimension for all other levels */ int field; int valueType; String stringValue; int intValue; long longValue; boolean boolValue; float floatValue; StatsDimensionsValueParcel[] tupleValue; } apex/statsd/framework/java/android/os/StatsDimensionsValue.java +41 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,47 @@ public final class StatsDimensionsValue implements Parcelable { mValue = readValueFromParcel(mValueType, in); } /** * Creates a {@code StatsDimensionsValue} from a StatsDimensionsValueParcel * TODO(b/149103391): Make StatsDimensionsValue a wrapper on top of * StatsDimensionsValueParcel. * * @hide */ public StatsDimensionsValue(StatsDimensionsValueParcel parcel) { mField = parcel.field; mValueType = parcel.valueType; switch (mValueType) { case STRING_VALUE_TYPE: mValue = parcel.stringValue; break; case INT_VALUE_TYPE: mValue = parcel.intValue; break; case LONG_VALUE_TYPE: mValue = parcel.longValue; break; case BOOLEAN_VALUE_TYPE: mValue = parcel.boolValue; break; case FLOAT_VALUE_TYPE: mValue = parcel.floatValue; break; case TUPLE_VALUE_TYPE: StatsDimensionsValue[] values = new StatsDimensionsValue[parcel.tupleValue.length]; for (int i = 0; i < parcel.tupleValue.length; i++) { values[i] = new StatsDimensionsValue(parcel.tupleValue[i]); } mValue = values; break; default: Slog.w(TAG, "StatsDimensionsValueParcel contains bad valueType: " + mValueType); mValue = null; break; } } /** * Return the field, i.e. the tag of a statsd atom. * Loading apex/statsd/service/java/com/android/server/stats/StatsCompanion.java +4 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.os.Binder; import android.os.IPendingIntentRef; import android.os.Process; import android.os.StatsDimensionsValue; import android.os.StatsDimensionsValueParcel; import android.util.Slog; import com.android.server.SystemService; Loading Loading @@ -145,8 +146,10 @@ public class StatsCompanion { @Override public void sendSubscriberBroadcast(long configUid, long configId, long subscriptionId, long subscriptionRuleId, String[] cookies, StatsDimensionsValue dimensionsValue) { long subscriptionRuleId, String[] cookies, StatsDimensionsValueParcel dimensionsValueParcel) { enforceStatsdCallingUid(); StatsDimensionsValue dimensionsValue = new StatsDimensionsValue(dimensionsValueParcel); Intent intent = new Intent() .putExtra(StatsManager.EXTRA_STATS_CONFIG_UID, configUid) Loading Loading
apex/statsd/aidl/Android.bp +12 −16 Original line number Diff line number Diff line Loading @@ -13,35 +13,31 @@ // See the License for the specific language governing permissions and // limitations under the License. // // TODO(b/145815909): move StatsDimensionsValue.aidl here filegroup { name: "statsd_aidl", name: "statsd_java_aidl", srcs: ["**/*.aidl"], } aidl_interface { name: "statsd-aidl", srcs: [ "android/os/IPendingIntentRef.aidl", "android/os/IPullAtomCallback.aidl", "android/os/IPullAtomResultReceiver.aidl", "android/os/IStatsCompanionService.aidl", "android/os/IStatsd.aidl", "android/os/StatsDimensionsValueParcel.aidl", "android/util/StatsEventParcel.aidl", ], } filegroup { name: "statsd_java_aidl", srcs: ["**/*.aidl"], } // This library is currently unused aidl_interface { name: "stats-event-parcel-aidl", srcs: ["android/util/StatsEventParcel.aidl"], backend: { java: { sdk_version: "28", enabled: false, // the platform uses statsd_java_aidl }, cpp: { enabled: false, enabled: true, }, ndk: { enabled: true, } } }
apex/statsd/aidl/android/os/IPendingIntentRef.aidl +3 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ package android.os; import android.os.StatsDimensionsValue; import android.os.StatsDimensionsValueParcel; /** * Binder interface to hold a PendingIntent for StatsCompanionService. Loading @@ -42,5 +42,5 @@ interface IPendingIntentRef { */ oneway void sendSubscriberBroadcast(long configUid, long configId, long subscriptionId, long subscriptionRuleId, in String[] cookies, in StatsDimensionsValue dimensionsValue); in StatsDimensionsValueParcel dimensionsValueParcel); }
apex/statsd/aidl/android/os/StatsDimensionsValueParcel.aidl 0 → 100644 +21 −0 Original line number Diff line number Diff line package android.os; /** * @hide */ parcelable StatsDimensionsValueParcel { /** * Field equals: * - atomTag for top level StatsDimensionsValueParcel * - position in dimension for all other levels */ int field; int valueType; String stringValue; int intValue; long longValue; boolean boolValue; float floatValue; StatsDimensionsValueParcel[] tupleValue; }
apex/statsd/framework/java/android/os/StatsDimensionsValue.java +41 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,47 @@ public final class StatsDimensionsValue implements Parcelable { mValue = readValueFromParcel(mValueType, in); } /** * Creates a {@code StatsDimensionsValue} from a StatsDimensionsValueParcel * TODO(b/149103391): Make StatsDimensionsValue a wrapper on top of * StatsDimensionsValueParcel. * * @hide */ public StatsDimensionsValue(StatsDimensionsValueParcel parcel) { mField = parcel.field; mValueType = parcel.valueType; switch (mValueType) { case STRING_VALUE_TYPE: mValue = parcel.stringValue; break; case INT_VALUE_TYPE: mValue = parcel.intValue; break; case LONG_VALUE_TYPE: mValue = parcel.longValue; break; case BOOLEAN_VALUE_TYPE: mValue = parcel.boolValue; break; case FLOAT_VALUE_TYPE: mValue = parcel.floatValue; break; case TUPLE_VALUE_TYPE: StatsDimensionsValue[] values = new StatsDimensionsValue[parcel.tupleValue.length]; for (int i = 0; i < parcel.tupleValue.length; i++) { values[i] = new StatsDimensionsValue(parcel.tupleValue[i]); } mValue = values; break; default: Slog.w(TAG, "StatsDimensionsValueParcel contains bad valueType: " + mValueType); mValue = null; break; } } /** * Return the field, i.e. the tag of a statsd atom. * Loading
apex/statsd/service/java/com/android/server/stats/StatsCompanion.java +4 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ import android.os.Binder; import android.os.IPendingIntentRef; import android.os.Process; import android.os.StatsDimensionsValue; import android.os.StatsDimensionsValueParcel; import android.util.Slog; import com.android.server.SystemService; Loading Loading @@ -145,8 +146,10 @@ public class StatsCompanion { @Override public void sendSubscriberBroadcast(long configUid, long configId, long subscriptionId, long subscriptionRuleId, String[] cookies, StatsDimensionsValue dimensionsValue) { long subscriptionRuleId, String[] cookies, StatsDimensionsValueParcel dimensionsValueParcel) { enforceStatsdCallingUid(); StatsDimensionsValue dimensionsValue = new StatsDimensionsValue(dimensionsValueParcel); Intent intent = new Intent() .putExtra(StatsManager.EXTRA_STATS_CONFIG_UID, configUid) Loading