summaryrefslogtreecommitdiff
path: root/services/incremental/ServiceWrappers.h
diff options
context:
space:
mode:
authorAlex Buynytskyy <alexbuy@google.com>2020-05-29 12:05:05 -0700
committerAlex Buynytskyy <alexbuy@google.com>2020-06-01 00:25:23 +0000
commit46d3ddb311aaf83c2c881e4c182ce56cfeaf8fd1 (patch)
treeb9b66572e86e841428c3a4a75f162670659653b0 /services/incremental/ServiceWrappers.h
parent825ad11167f28574c76ae239396877a5a4115857 (diff)
Healthcheck: proper job allocation and test.
Bug: 153874006 Test: atest PackageManagerShellCommandTest PackageManagerShellCommandIncrementalTest IncrementalServiceTest Change-Id: Iede1f2297cc4f8e3c3f0acd43cee597f75dff179
Diffstat (limited to 'services/incremental/ServiceWrappers.h')
-rw-r--r--services/incremental/ServiceWrappers.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/services/incremental/ServiceWrappers.h b/services/incremental/ServiceWrappers.h
index a935ab99267e..8cd726fdc0f1 100644
--- a/services/incremental/ServiceWrappers.h
+++ b/services/incremental/ServiceWrappers.h
@@ -35,6 +35,11 @@
namespace android::incremental {
+using Clock = std::chrono::steady_clock;
+using TimePoint = std::chrono::time_point<Clock>;
+using Milliseconds = std::chrono::milliseconds;
+using Job = std::function<void()>;
+
// --- Wrapper interfaces ---
using MountId = int32_t;
@@ -121,6 +126,14 @@ public:
virtual int pollAll(int timeoutMillis) = 0;
};
+class TimedQueueWrapper {
+public:
+ virtual ~TimedQueueWrapper() = default;
+ virtual void addJob(MountId id, Milliseconds after, Job what) = 0;
+ virtual void removeJobs(MountId id) = 0;
+ virtual void stop() = 0;
+};
+
class ServiceManagerWrapper {
public:
virtual ~ServiceManagerWrapper() = default;
@@ -130,6 +143,7 @@ public:
virtual std::unique_ptr<AppOpsManagerWrapper> getAppOpsManager() = 0;
virtual std::unique_ptr<JniWrapper> getJni() = 0;
virtual std::unique_ptr<LooperWrapper> getLooper() = 0;
+ virtual std::unique_ptr<TimedQueueWrapper> getTimedQueue() = 0;
};
// --- Real stuff ---
@@ -144,6 +158,7 @@ public:
std::unique_ptr<AppOpsManagerWrapper> getAppOpsManager() final;
std::unique_ptr<JniWrapper> getJni() final;
std::unique_ptr<LooperWrapper> getLooper() final;
+ std::unique_ptr<TimedQueueWrapper> getTimedQueue() final;
private:
template <class INTERFACE>