// Copyright 2018 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
module download.mojom;
enum NetworkRequestStatus {
OK,
NETWORK_TIMEOUT,
NETWORK_DISCONNECTED,
NETWORK_SERVER_DOWN,
SERVER_NO_RANGE,
SERVER_CONTENT_LENGTH_MISMATCH,
SERVER_UNREACHABLE,
SERVER_CERT_PROBLEM,
USER_CANCELED,
NETWORK_FAILED,
};
// Used to pass the interruption status to the consumer of the data pipe.
interface DownloadStreamClient {
OnStreamCompleted(NetworkRequestStatus status);
};
struct DownloadStreamHandle {
handle<data_pipe_consumer> stream;
pending_receiver<DownloadStreamClient> client_receiver;
};