| Index: components/offline_pages/core/prefetch/proto/offline_pages.proto
|
| diff --git a/components/offline_pages/core/prefetch/proto/offline_pages.proto b/components/offline_pages/core/prefetch/proto/offline_pages.proto
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..bffc766694a1d46ef29e1f91e966b717027dbd4f
|
| --- /dev/null
|
| +++ b/components/offline_pages/core/prefetch/proto/offline_pages.proto
|
| @@ -0,0 +1,98 @@
|
| +// Copyright 2017 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.
|
| +
|
| +syntax = "proto3";
|
| +option optimize_for = LITE_RUNTIME;
|
| +
|
| +package offline_pages.proto;
|
| +
|
| +import "status.proto";
|
| +import "timestamp.proto";
|
| +
|
| +// Type of transformation applied to a web page.
|
| +enum Transformation {
|
| + // Transformation not specified.
|
| + TRANSFORMATION_UNSPECIFIED = 0;
|
| + // Minimal transformation required to provide an offline-accessible web page.
|
| + NO_TRANSFORMATION = 1;
|
| +}
|
| +
|
| +// Page package format.
|
| +enum OutputFormat {
|
| + // Format not specified.
|
| + FORMAT_UNSPECIFIED = 0;
|
| + // An MHTML archive containing a single web page.
|
| + FORMAT_MHTML = 1;
|
| +}
|
| +
|
| +// Response to the GeneratePageBundle request.
|
| +message PageBundle {
|
| + // The list of archives in the bundle. The distribution of pages into archives
|
| + // is arbitrary.
|
| + repeated Archive archives = 1;
|
| +}
|
| +
|
| +// A resource containing one or more serialized offline pages.
|
| +message Archive {
|
| + // Information about the individual page(s) used to create the Archive.
|
| + // There will be one PageInfo message for every page in the archive, including
|
| + // those that encountered an error or were elided due to size considerations.
|
| + repeated PageInfo page_infos = 1;
|
| + // Format of the body.
|
| + OutputFormat output_format = 2;
|
| + // Resource name for the body which can be read via the ByteStream API.
|
| + // This resource will remain available for a minimum of 24 hours after the
|
| + // GeneratePageBundle request.
|
| + string body_name = 3;
|
| + // Length of the body in bytes.
|
| + int64 body_length = 4;
|
| +}
|
| +
|
| +// Information about a single returned offline page.
|
| +message PageInfo {
|
| + // The URL of the page that was rendered.
|
| + string url = 1;
|
| + // The final URL after redirects. Empty if the final URL is url.
|
| + string redirect_url = 2;
|
| + // Status of the render attempt. If status.code != OK, fields below this will
|
| + // be unset. If the operation is still running, status is NotFound to
|
| + // indicate the page is still being processed.
|
| + // If the page was not returned due to bundle size limits, status is
|
| + // FailedPrecondition. If the page failed to render for any other reason,
|
| + // status is Unknown.
|
| + Status status = 3;
|
| + // Transformation that was applied to the page.
|
| + Transformation transformation = 4;
|
| + // Time the page was rendered.
|
| + Timestamp render_time = 5;
|
| +}
|
| +
|
| +// Request to return a list of pages in a format suitable for offline viewing.
|
| +message GeneratePageBundleRequest {
|
| + // The client's browser's user agent string.
|
| + string user_agent = 1;
|
| + // Preferred browser language(s) as defined by
|
| + // [IETF BCP 47](https://tools.ietf.org/html/bcp47).
|
| + repeated string browser_languages = 2;
|
| + // Desired format of the web page archive(s).
|
| + OutputFormat output_format = 3;
|
| + // Maximum size of the generated body. If all pages' output would exceed this
|
| + // size, only the first N pages are returned.
|
| + int64 max_bundle_size_bytes = 4;
|
| + // The GCM registration ID that can be used to inform the client
|
| + // of LRO completion.
|
| + string gcm_registration_id = 5;
|
| + // List of individual page requests, in order of priority. At most 100 pages
|
| + // may be requested at a time.
|
| + repeated PageParameters pages = 6;
|
| +}
|
| +
|
| +// Request a set of pages to be returned in a format suitable for offline
|
| +// viewing.
|
| +message PageParameters {
|
| + // URL of the web page to return.
|
| + string url = 1;
|
| + // Transformation to apply. Must not be TRANSFORMATION_UNSPECIFIED.
|
| + Transformation transformation = 2;
|
| +}
|
|
|