Commit Graph

9 Commits

Author SHA1 Message Date
Tej Singh 0d7fb3d260 libstatspull documentation for puller guardrails
Test: atest LibStatsPullTests
Bug: 152543610
Change-Id: Ia5caad7c9307c02fef7d3dfe70998601e7ffeb55
2020-03-30 18:15:05 -07:00
Tej Singh 47e5ae49c2 Minor followups from api feedback
Bug: 150788562
Test: m
Change-Id: I3473e49bc3f3682300b036ddeb032c3776d8d830
2020-03-20 12:16:28 -07:00
Tej Singh c06f147566 Native API feedback for puller API
1. Rename registerPullAtomCallback to setPullAtomCallback
2. Rename unregisterPullAtomCallback to clearPullAtomCallback
3. Change Ns to Millis for consistency with java
4. Swap metadata and callback params in setPullAtomCallback to match
java
5. Added getters for PullAtomMetadata
6. Added libstatspull_test to test PullAtomMetadata
7. Changed the types on setAdditiveFields from int to int32_t

Test: make
Test: atest LibStatsPullTests
Test: bit libstatspull_test:*
Bug: 1507885621
Bug: 151875223
Change-Id: I5cb07bfe71b1002180403828d5e8e6a5b88ce6fe
2020-03-20 11:10:56 -07:00
Tej Singh 8196687d39 Enforce permission in native puller API.
Test: m
Test: No security exceptions on boot
Bug: 148955001
Change-Id: If196a82bf5a54ee15557825e16f70b5f64f45412
2020-03-17 11:26:00 -07:00
Tej Singh a8fd39d83f Expose libstatspull as a stable C API
Libstatspull will ship as a part of the statsd apex in R.

Also update libstatssocket to have version 30 to align with api level,
as per native api council feedback.

Change both libraries to use NDK style naming conventions (AStatsEvent,
AStatsManager), and remove unneeded APIs in libstatssocket.

Remove KeyValuePairs from libstatssocket. KeyValuePairs will not be
supported in native code.

Bug: 147499386
Test: make libstatspull
Test: make libstatssocket
Test: atest libstatssocket_test
Change-Id: Ie79771461215a057529aaac91db95e4334c3960e
2020-02-04 14:07:35 -08:00
Tej Singh dab324f6e0 Unregistration of native pullers
Changes the API to return an int instead of a bool.
Creates API to unregister pullers.

Test: atest LibStatsPullTests
Bug: 144373250
Change-Id: I6d395237082337a22f37190343a1fc59703d39bf
2020-01-14 14:37:58 -08:00
Tej Singh 7e1b190832 Remove extra indirection in native puller API
The indirection is unneeded since we already take a function pointer.

Test: builds
Change-Id: Ice426d7dcb090aaf87a377ede233a4eb18f5eb30
2020-01-09 11:53:53 -08:00
Stan Iliev 5dc56738bf Change register_stats_pull_atom_callback cookie parameter to non-const
Test: Ran GRAPHICS_STATS puller
Bug: 146052586
Bug: 142665516
Change-Id: I98b4cbb99e35eda50fa9dc3069b3f0ddf16f5ff9
2019-12-16 12:14:08 -05:00
Tej Singh c03d009697 Native puller API: libstatspulled
Create a new library for the native puller callback API. The library has
2 main interfaces: register_stats_pull_atom_callback, which is used to
register a callback, and stats_pull_atom_callback_t, which is the
callback for the puller. It also exposes pulled_stats_event_list, which
is a struct wrapper around a vector of stats_event.

Test: make libstatspull
Bug: 142969725

Change-Id: I14fe4dc523d6f81fdeaa3fe6fad3e95aeecfe92e
2019-12-04 15:56:21 -08:00