Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(155)

Side by Side Diff: services/test_service/test_request_tracker.mojom

Issue 901463002: De-client TestRequestTracker (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 module mojo.test; 5 module mojo.test;
6 6
7 // Various counters that services can periodically send to a 7 // Various counters that services can periodically send to a
8 // TestTrackedRequestService for recording. 8 // TestTrackedRequestService for recording.
9 struct ServiceStats { 9 struct ServiceStats {
10 uint64 num_new_requests; 10 uint64 num_new_requests;
11 double health; 11 double health;
12 }; 12 };
13 13
14 // A per-service summary of all the ServiceStats the 14 // A per-service summary of all the ServiceStats the
15 // TestTrackedRequestService has observed. 15 // TestTrackedRequestService has observed.
16 struct ServiceReport { 16 struct ServiceReport {
17 string? service_name; 17 string? service_name;
18 uint64 total_requests; 18 uint64 total_requests;
19 double mean_health; 19 double mean_health;
20 }; 20 };
21 21
22 // A simple interface to obtain a "report" from all services that have 22 // A simple interface to obtain a "report" from all services that have
23 // opted to connect themselves to for request tracking. 23 // opted to connect themselves to for request tracking.
24 interface TestTrackedRequestService { 24 interface TestTrackedRequestService {
25 GetReport() => (array<ServiceReport?>? report); 25 GetReport() => (array<ServiceReport?>? report);
26 }; 26 };
27 27
28 // TestRequestTracker records ServiceStats for an individual service 28 // TestRequestTracker records ServiceStats for an individual service
29 // connection for aggregation in a TestTrackedRequestService. 29 // connection for aggregation in a TestTrackedRequestService.
30 [Client=TestRequestTrackerClient]
31 interface TestRequestTracker { 30 interface TestRequestTracker {
31 SetNameAndReturnId(string service_name) => (uint64 id);
32 // Upload a ServiceStats for tracking. 32 // Upload a ServiceStats for tracking.
33 RecordStats(uint64 client_id, ServiceStats? stats); 33 RecordStats(uint64 client_id, ServiceStats? stats);
34 }; 34 };
35
36 // The client-side contract for uploading ServiceStats to TestRequestTracker.
37 interface TestRequestTrackerClient {
38 const uint64 kInvalidId = 0;
39 // Handshake to tell the client its global identifier and get the name.
40 SetIdAndReturnName(uint64 id) => (string? service_name);
41 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698