blob: 485d34ffe7f94514dde141be879375ffd7d976cf [file] [log] [blame]
// Copyright 2018 The Feed Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto2";
package search.now.wire.feed;
option optimize_for=LITE_RUNTIME;
import "src/main/proto/search/now/wire/feed/chrome_fulfillment_info.proto";
option java_package = "com.google.search.now.wire.feed";
option java_outer_classname = "FeedQueryProto";
message FeedQuery {
enum RequestReason {
// Bucket for any not listed. Should not be used (prefer adding a new
// request reason)
UNKNOWN_REQUEST_REASON = 0;
// App is manually triggering a request, outside of scheduling a request.
// Should be used rarely.
MANUAL_REFRESH = 1;
// Host wants a request to refresh content.
SCHEDULED_REFRESH = 2;
// Loading more content (should be deprecated soon for more clarity behind
// reason).
NEXT_PAGE_SCROLL = 4;
// Refresh after clearing all content
CLEAR_ALL = 5;
// Refresh from zero state (no content)
ZERO_STATE_REFRESH = 6;
// Initial loading of content for a session
INITIAL_LOAD = 7;
// Loading new content (while displaying existing content)
WITH_CONTENT = 8;
reserved 3;
}
// The reason the query is being initiated.
optional RequestReason reason = 1;
// Used to fetch the next page when scrolling copied from
// Token.next_page_token
optional bytes page_token = 2;
// Information on how to do content fulfillment for Chrome.
optional ChromeFulfillmentInfo chrome_fulfillment_info = 3;
}