Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(70)

Side by Side Diff: content/browser/bluetooth/bluetooth_blacklist.h

Issue 1858633003: bluetooth: Populate Web Bluetooth blacklist from variations:: parameter. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: addressed jam comments Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_ 5 #ifndef CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_
6 #define CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_ 6 #define CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_
7 7
8 #include <map> 8 #include <map>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 // combination of the two, E.G.: 46 // combination of the two, E.G.:
47 // Add(uuid, EXCLUDE_READS); 47 // Add(uuid, EXCLUDE_READS);
48 // Add(uuid, EXCLUDE_WRITES); 48 // Add(uuid, EXCLUDE_WRITES);
49 // IsExcluded(uuid); // true. 49 // IsExcluded(uuid); // true.
50 // Requires UUID to be valid. 50 // Requires UUID to be valid.
51 void Add(const device::BluetoothUUID&, Value); 51 void Add(const device::BluetoothUUID&, Value);
52 52
53 // Adds UUIDs to the blacklist by parsing a blacklist string and calling 53 // Adds UUIDs to the blacklist by parsing a blacklist string and calling
54 // Add(uuid, value). 54 // Add(uuid, value).
55 // 55 //
56 // The blacklist string must be a comma-separated list of UUID:exclusion 56 // The blacklist string format is defined at
57 // pairs. The pairs may be separated by whitespace. Pair components are 57 // ContentBrowserClient::GetWebBluetoothBlacklist().
58 // colon-separated and must not have whitespace around the colon.
59 //
60 // UUIDs are a string that BluetoothUUID can parse (See BluetoothUUID
61 // constructor comment). Exclusion values are a single lower case character
62 // string "e", "r", or "w" for EXCLUDE, EXCLUDE_READS, or EXCLUDE_WRITES.
63 // 58 //
64 // Malformed pairs in the string are ignored, including invalid UUID or 59 // Malformed pairs in the string are ignored, including invalid UUID or
65 // exclusion values. Duplicate UUIDs follow Add()'s merging rule. 60 // exclusion values. Duplicate UUIDs follow Add()'s merging rule.
66 //
67 // Example:
68 // "1812:e, 00001800-0000-1000-8000-00805f9b34fb:w, ignored:1, alsoignored."
69 void Add(base::StringPiece blacklist_string); 61 void Add(base::StringPiece blacklist_string);
70 62
71 // Returns if a UUID is excluded from all operations. UUID must be valid. 63 // Returns if a UUID is excluded from all operations. UUID must be valid.
72 bool IsExcluded(const device::BluetoothUUID&) const; 64 bool IsExcluded(const device::BluetoothUUID&) const;
73 65
74 // Returns if any UUID in a set of filters is excluded from all operations. 66 // Returns if any UUID in a set of filters is excluded from all operations.
75 // UUID must be valid. 67 // UUID must be valid.
76 bool IsExcluded(const std::vector<content::BluetoothScanFilter>&); 68 bool IsExcluded(const std::vector<content::BluetoothScanFilter>&);
77 69
78 // Returns if a UUID is excluded from read operations. UUID must be valid. 70 // Returns if a UUID is excluded from read operations. UUID must be valid.
(...skipping 11 matching lines...) Expand all
90 void ResetToDefaultValuesForTest(); 82 void ResetToDefaultValuesForTest();
91 83
92 private: 84 private:
93 // friend LazyInstance to permit access to private constructor. 85 // friend LazyInstance to permit access to private constructor.
94 friend base::DefaultLazyInstanceTraits<BluetoothBlacklist>; 86 friend base::DefaultLazyInstanceTraits<BluetoothBlacklist>;
95 87
96 BluetoothBlacklist(); 88 BluetoothBlacklist();
97 89
98 void PopulateWithDefaultValues(); 90 void PopulateWithDefaultValues();
99 91
92 // Populates blacklist with values obtained dynamically from a server, able
93 // to be updated without shipping new executable versions.
94 void PopulateWithServerProvidedValues();
95
100 // Map of UUID to blacklisted value. 96 // Map of UUID to blacklisted value.
101 std::map<device::BluetoothUUID, Value> blacklisted_uuids_; 97 std::map<device::BluetoothUUID, Value> blacklisted_uuids_;
102 98
103 DISALLOW_COPY_AND_ASSIGN(BluetoothBlacklist); 99 DISALLOW_COPY_AND_ASSIGN(BluetoothBlacklist);
104 }; 100 };
105 101
106 } // namespace content 102 } // namespace content
107 103
108 #endif // CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_ 104 #endif // CONTENT_BROWSER_BLUETOOTH_BLUETOOTH_BLACKLIST_H_
OLDNEW
« no previous file with comments | « chrome/browser/web_bluetooth_browsertest.cc ('k') | content/browser/bluetooth/bluetooth_blacklist.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698