mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-01 01:36:09 +03:00
105 lines
3.8 KiB
Plaintext
105 lines
3.8 KiB
Plaintext
|
// 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.
|
||
|
//
|
||
|
// Next MinVersion: 5
|
||
|
|
||
|
module arc.mojom;
|
||
|
|
||
|
import "mojo/public/mojom/base/time.mojom";
|
||
|
|
||
|
[Extensible]
|
||
|
//See depot/google3/wireless/android/enterprise/clouddps/proto/clouddps.proto
|
||
|
enum InstallErrorReason {
|
||
|
// If the reason is unspecified, this error should be treated as a
|
||
|
// non-transient error.
|
||
|
REASON_UNSPECIFIED = 0,
|
||
|
|
||
|
// The server didn't get a response from Play in time. The install may
|
||
|
// still succeed or may fail with any error.
|
||
|
TIMEOUT = 1,
|
||
|
|
||
|
// A potentially transient error, for example, the device is not found (due
|
||
|
// to replication delay), or Play was unavailable. A retry in a short amount
|
||
|
// of time is likely to succeed.
|
||
|
TRANSIENT_ERROR = 2,
|
||
|
|
||
|
// The app was not found in Play.
|
||
|
NOT_FOUND = 3,
|
||
|
|
||
|
// The app is incompatible with the device.
|
||
|
NOT_COMPATIBLE_WITH_DEVICE = 4,
|
||
|
|
||
|
// The app has not been approved by the admin.
|
||
|
NOT_APPROVED = 5,
|
||
|
|
||
|
// The app has new permissions that have not been accepted by the admin.
|
||
|
PERMISSIONS_NOT_ACCEPTED = 6,
|
||
|
|
||
|
// The app is not available in the user's country.
|
||
|
NOT_AVAILABLE_IN_COUNTRY = 7,
|
||
|
|
||
|
// There are no more licenses to assign to the user.
|
||
|
NO_LICENSES_REMAINING = 8,
|
||
|
|
||
|
// The enterprise is no longer enrolled with Play for Work or CloudDPC is
|
||
|
// not enabled for the enterprise.
|
||
|
NOT_ENROLLED = 9,
|
||
|
|
||
|
// The user is no longer valid. The user may have been deleted or disabled.
|
||
|
USER_INVALID = 10,
|
||
|
};
|
||
|
|
||
|
// Should be kept in sync with device_management_backend.proto/
|
||
|
// RemoteCommandResult/ResultType.
|
||
|
[Extensible]
|
||
|
enum CommandResultType {
|
||
|
IGNORED = 0, // The command was ignored as obsolete.
|
||
|
FAILURE = 1, // The command could not be executed.
|
||
|
SUCCESS = 2, // The command was successfully executed.
|
||
|
};
|
||
|
|
||
|
// Next Method ID: 2
|
||
|
interface PolicyHost {
|
||
|
// Get policies from Chrome OS, as JSON-encoded dictionary with the policies'
|
||
|
// names as keys and their values as values. The list of possible policies can
|
||
|
// be found in components/policy/resources/policy_templates.json
|
||
|
GetPolicies@0() => (string policies);
|
||
|
|
||
|
// Pass a JSON with policy compliance details that reference fields in
|
||
|
// CloudDps NonComplianceReason. Should return ChromeOS response to the report
|
||
|
// in JSON format as in CloudDps PolicyComplianceReportResponse.
|
||
|
// ChromeOS always returns that it's compliant with the report.
|
||
|
[MinVersion=1] ReportCompliance@1(string request) => (string response);
|
||
|
|
||
|
// Reports that request was sent to CloudDPS for set of packages.
|
||
|
[MinVersion=3] ReportCloudDpsRequested(mojo_base.mojom.Time time,
|
||
|
array<string> package_names);
|
||
|
// Reports that successful response was received from CloudDPS for set of
|
||
|
// packages.
|
||
|
[MinVersion=3] ReportCloudDpsSucceeded(mojo_base.mojom.Time time,
|
||
|
array<string> package_names);
|
||
|
// Reports that CloudDPS reports an error for packages.
|
||
|
[MinVersion=3] ReportCloudDpsFailed(mojo_base.mojom.Time time,
|
||
|
string package_name,
|
||
|
InstallErrorReason reason);
|
||
|
};
|
||
|
|
||
|
// Next Method ID: 4
|
||
|
interface PolicyInstance {
|
||
|
// DEPRECATED: Please use Init@2 instead.
|
||
|
InitDeprecated@0(PolicyHost host_ptr);
|
||
|
|
||
|
// Establishes full-duplex communication with the host.
|
||
|
[MinVersion=2] Init@2(PolicyHost host_ptr) => ();
|
||
|
|
||
|
// Indicates some policies have changed
|
||
|
OnPolicyUpdated@1();
|
||
|
|
||
|
// Forwards a command received from the management server. The payload is
|
||
|
// opaque to Chrome (it contains JSON from the RemoteCommand.payload field for
|
||
|
// the USER_ARC_COMMAND RemoteCommand - cf. device_management_backend.proto).
|
||
|
[MinVersion=4] OnCommandReceived@3(string command)
|
||
|
=> (CommandResultType result);
|
||
|
};
|