Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / content / browser / notifications / notification_database_data.proto
blob3047d2b4356e28c5b79410ad156eb755fd97687b
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 syntax = "proto2";
7 option optimize_for = LITE_RUNTIME;
9 package content;
11 // Stores information about a Web Notification. This message is the protocol
12 // buffer meant to serialize the content::NotificationDatabaseData structure.
14 // Next tag: 5
15 message NotificationDatabaseDataProto {
16   optional int64 notification_id = 1;
18   optional string origin = 2;
19   optional int64 service_worker_registration_id = 3;
21   // A notification action, corresponds to content::PlatformNotificationAction.
22   //
23   // Next tag: 3
24   message NotificationAction {
25     optional string action = 1;
26     optional string title = 2;
27   }
29   // Actual data payload of the notification. This message is the protocol
30   // buffer meant to serialize the content::PlatformNotificationData structure.
31   //
32   // Next tag: 12
33   message NotificationData {
34     enum Direction {
35       LEFT_TO_RIGHT = 0;
36       RIGHT_TO_LEFT = 1;
37       AUTO = 2;
38     }
40     optional string title = 1;
41     optional Direction direction = 2;
42     optional string lang = 3;
43     optional string body = 4;
44     optional string tag = 5;
45     optional string icon = 6;
46     repeated int32 vibration_pattern = 9 [packed=true];
47     optional bool silent = 7;
48     optional bool require_interaction = 11;
49     optional bytes data = 8;
50     repeated NotificationAction actions = 10;
51   }
53   optional NotificationData notification_data = 4;