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

Side by Side Diff: headless/lib/browser/client_api_generator.py

Issue 1904073002: headless: Move hidden commands and events to experimental domains (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: 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 import argparse 5 import argparse
6 import os.path 6 import os.path
7 import sys 7 import sys
8 import re 8 import re
9 try: 9 try:
10 import json 10 import json
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after
344 event_type = { 344 event_type = {
345 'id': ToTitleCase(event['name']) + 'Params', 345 'id': ToTitleCase(event['name']) + 'Params',
346 'type': 'object', 346 'type': 'object',
347 'description': 'Parameters for the %s event.' % ToTitleCase( 347 'description': 'Parameters for the %s event.' % ToTitleCase(
348 event['name']), 348 event['name']),
349 'properties': event['parameters'] 349 'properties': event['parameters']
350 } 350 }
351 domain['types'].append(event_type) 351 domain['types'].append(event_type)
352 352
353 353
354 def HideHiddenDomains(json_api):
355 """Mark all commands and events in hidden domains as hidden."""
356 for domain in json_api['domains']:
357 if not 'hidden' in domain or not domain['hidden']:
358 continue
359 for command in domain.get('commands', []):
360 command['hidden'] = True
361 for event in domain.get('events', []):
362 event['hidden'] = True
363
364
354 def Generate(jinja_env, output_dirname, json_api, class_name, file_types): 365 def Generate(jinja_env, output_dirname, json_api, class_name, file_types):
355 template_context = { 366 template_context = {
356 'api': json_api, 367 'api': json_api,
357 'join_arrays': JoinArrays, 368 'join_arrays': JoinArrays,
358 'resolve_type': ResolveType, 369 'resolve_type': ResolveType,
359 'type_definition': TypeDefinition, 370 'type_definition': TypeDefinition,
360 } 371 }
361 for file_type in file_types: 372 for file_type in file_types:
362 template = jinja_env.get_template('/%s_%s.template' % ( 373 template = jinja_env.get_template('/%s_%s.template' % (
363 class_name, file_type)) 374 class_name, file_type))
(...skipping 18 matching lines...) Expand all
382 f.write(template.render(template_context)) 393 f.write(template.render(template_context))
383 394
384 395
385 if __name__ == '__main__': 396 if __name__ == '__main__':
386 json_api, output_dirname = ParseArguments(sys.argv[1:]) 397 json_api, output_dirname = ParseArguments(sys.argv[1:])
387 jinja_env = InitializeJinjaEnv(output_dirname) 398 jinja_env = InitializeJinjaEnv(output_dirname)
388 SynthesizeCommandTypes(json_api) 399 SynthesizeCommandTypes(json_api)
389 SynthesizeEventTypes(json_api) 400 SynthesizeEventTypes(json_api)
390 PatchFullQualifiedRefs(json_api) 401 PatchFullQualifiedRefs(json_api)
391 CreateTypeDefinitions(json_api) 402 CreateTypeDefinitions(json_api)
403 HideHiddenDomains(json_api)
392 Generate(jinja_env, output_dirname, json_api, 'types', ['cc', 'h']) 404 Generate(jinja_env, output_dirname, json_api, 'types', ['cc', 'h'])
393 Generate(jinja_env, output_dirname, json_api, 'type_conversions', ['h']) 405 Generate(jinja_env, output_dirname, json_api, 'type_conversions', ['h'])
394 GenerateDomains(jinja_env, output_dirname, json_api, 'domain', ['cc', 'h']) 406 GenerateDomains(jinja_env, output_dirname, json_api, 'domain', ['cc', 'h'])
OLDNEW
« no previous file with comments | « no previous file | headless/lib/browser/client_api_generator_unittest.py » ('j') | headless/lib/browser/domain_cc.template » ('J')

Powered by Google App Engine
This is Rietveld 408576698