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

Unified Diff: content/browser/devtools/protocol/devtools_protocol_handler_generator.py

Issue 2478703002: [DevTools] Remove handlers = browser from protocol definition. (Closed)
Patch Set: fixes Created 4 years, 1 month 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 side-by-side diff with in-line comments
Download patch
Index: content/browser/devtools/protocol/devtools_protocol_handler_generator.py
diff --git a/content/browser/devtools/protocol/devtools_protocol_handler_generator.py b/content/browser/devtools/protocol/devtools_protocol_handler_generator.py
index 379e37a91f2e563cc6a7b9e7de55cc69e18e502e..f08ea9e5f085868793be5f34989638ad94ebd11c 100755
--- a/content/browser/devtools/protocol/devtools_protocol_handler_generator.py
+++ b/content/browser/devtools/protocol/devtools_protocol_handler_generator.py
@@ -481,6 +481,9 @@ def DeclareStruct(json_properties, mapping):
del prop_map["declared_name"]
ResolveType(json_prop, prop_map)
prop_map["declared_name"] = mapping["declared_name"]
+ if prop_map["pass_type"].find(mapping["declared_name"]) != -1:
+ prop_map["pass_type"] = prop_map["pass_type"].replace(
+ mapping["declared_name"], mapping["declared_name"] + "Builder<0>")
if json_prop.get("optional"):
methods.append(tmpl_builder_setter_opt.substitute(prop_map))
else:
@@ -640,6 +643,21 @@ fields = []
includes = []
fields_init = []
+browser_domains_list = ["Inspector", "Memory", "Page", "Emulation", "Security",
+ "IO", "Target", "ServiceWorker", "Input", "Tracing", "Storage",
+ "SystemInfo", "Tethering", "Schema"]
+browser_commands_list = [
+ "DOM.setFileInputFiles",
+ "Network.enable",
+ "Network.disable",
+ "Network.clearBrowserCache",
+ "Network.clearBrowserCookies",
+ "Network.getCookies",
+ "Network.deleteCookie",
+ "Network.setCookie",
+ "Network.canEmulateNetworkConditions",
+ "Network.emulateNetworkConditions"]
+
for json_domain in all_domains:
domain_map = {}
domain_map["Domain"] = json_domain["domain"]
@@ -653,8 +671,9 @@ for json_domain in all_domains:
if "commands" in json_domain:
for json_command in json_domain["commands"]:
- if (not ("handlers" in json_command) or
- not ("browser" in json_command["handlers"])):
+ full_command_name = json_domain["domain"] + "." + json_command["name"]
+ if (json_domain["domain"] not in browser_domains_list and
+ full_command_name not in browser_commands_list):
continue
domain_empty = False
@@ -724,9 +743,13 @@ for json_domain in all_domains:
param_map = command_map.copy()
param_map["proto_param"] = json_param["name"]
param_map["param"] = Uncamelcase(json_param["name"])
- if json_param.get("optional"):
+ is_string = "type" in json_param and json_param["type"] == "string"
+ if json_param.get("optional") and not is_string:
# TODO(vkuzkokov) Implement Optional<T> for value types.
- raise Exception("Optional return values are not implemented")
+ raise Exception(
+ "Optional return values are not implemented (%s.%s.%s)" %
+ (param_map["Domain"], param_map["command"],
+ param_map["proto_param"]))
ResolveType(json_param, param_map)
prep.append(tmpl_prep_output.substitute(param_map))
args.append(param_map["arg_out"])
@@ -744,8 +767,7 @@ for json_domain in all_domains:
if "events" in json_domain:
for json_event in json_domain["events"]:
- if (not ("handlers" in json_event) or
- not ("browser" in json_event["handlers"])):
+ if json_domain["domain"] not in browser_domains_list:
continue
domain_empty = False
domain_needs_client = True

Powered by Google App Engine
This is Rietveld 408576698