Chromium Code Reviews| Index: third_party/WebKit/public/platform/modules/budget_service/budget_service.mojom |
| diff --git a/third_party/WebKit/public/platform/modules/budget_service/budget_service.mojom b/third_party/WebKit/public/platform/modules/budget_service/budget_service.mojom |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..aee3d7589b3e609f7583e99049725a4769800616 |
| --- /dev/null |
| +++ b/third_party/WebKit/public/platform/modules/budget_service/budget_service.mojom |
| @@ -0,0 +1,30 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +module blink.mojom; |
| + |
| +import "url/mojo/origin.mojom"; |
| + |
| +enum BudgetOperationType { |
| + SILENT_PUSH |
|
dcheng
2016/08/25 00:33:48
FWIW, an enum with one value looks kinda funny.
|
| +}; |
| + |
| +// Structure representing the budget at points in time in the future. |
| +struct BudgetState { |
| + // Amount of budget that will be available. This should be the lower bound of |
| + // the budget between this time and the previous time. |
| + double budget_at; |
| + |
| + // Time at which the budget is available, in milliseconds since 00:00:00 UTC |
| + // on 1 January 1970, at which the budget_at will be valid. |
| + double time; |
|
dcheng
2016/08/25 00:33:48
Can we add a TODO here to transition to base::Time
|
| +}; |
| + |
| +// Service through which Blink can query for the cost of particular actions and |
| +// for the budget available for an origin. |
| +interface BudgetService { |
| + GetCost(BudgetOperationType operation) => (double cost); |
| + GetBudget(url.mojom.Origin origin) => (array<BudgetState> budget); |
| +}; |
| + |