Index: third_party/WebKit/Source/platform/inspector_protocol/CodeGenerator.py |
diff --git a/third_party/WebKit/Source/platform/inspector_protocol/CodeGenerator.py b/third_party/WebKit/Source/platform/inspector_protocol/CodeGenerator.py |
index 9297b7e128a911de2b8ca6f268ddaca374112903..9976e2ea5c14af57b4e6f07d57b16b41818bce5a 100644 |
--- a/third_party/WebKit/Source/platform/inspector_protocol/CodeGenerator.py |
+++ b/third_party/WebKit/Source/platform/inspector_protocol/CodeGenerator.py |
@@ -33,27 +33,30 @@ import jinja2 |
cmdline_parser = optparse.OptionParser() |
cmdline_parser.add_option("--output_dir") |
-cmdline_parser.add_option("--template_dir") |
+cmdline_parser.add_option("--generate_dispatcher") |
try: |
arg_options, arg_values = cmdline_parser.parse_args() |
- if (len(arg_values) != 1): |
- raise Exception("Exactly one plain argument expected (found %s)" % len(arg_values)) |
- input_json_filename = arg_values[0] |
+ if (len(arg_values) == 0): |
+ raise Exception("At least one plain argument expected (found %s)" % len(arg_values)) |
output_dirname = arg_options.output_dir |
+ generate_dispatcher = arg_options.generate_dispatcher |
dgozman
2016/03/17 20:39:23
You don't use this.
|
if not output_dirname: |
raise Exception("Output directory must be specified") |
except Exception: |
# Work with python 2 and 3 http://docs.python.org/py3k/howto/pyporting.html |
exc = sys.exc_info()[1] |
sys.stderr.write("Failed to parse command-line arguments: %s\n\n" % exc) |
- sys.stderr.write("Usage: <script> --output_dir <output_dir> protocol.json\n") |
+ sys.stderr.write("Usage: <script> --output_dir <output_dir> blink_protocol.json v8_protocol.json ...\n") |
exit(1) |
-input_file = open(input_json_filename, "r") |
-json_string = input_file.read() |
-json_api = json.loads(json_string) |
+json_api = {"domains": []} |
+for filename in arg_values: |
+ input_file = open(filename, "r") |
+ json_string = input_file.read() |
+ parsed_json = json.loads(json_string) |
+ json_api["domains"] += parsed_json["domains"] |
def to_title_case(name): |
return name[:1].upper() + name[1:] |
@@ -268,6 +271,7 @@ def generate(class_name): |
jinja_env = initialize_jinja_env(output_dirname) |
+generate("Backend") |
generate("Dispatcher") |
generate("Frontend") |
generate("TypeBuilder") |