def _GetCodegenFromFlags(): """Create a codegen object from flags.""" if FLAGS.discovery_url: try: discovery_doc = util.FetchDiscoveryDoc(FLAGS.discovery_url) except exceptions.CommunicationError: return None else: infile = os.path.expanduser(FLAGS.infile) or '/dev/stdin' discovery_doc = json.load(open(infile)) names = util.Names(FLAGS.strip_prefix, FLAGS.experimental_name_convention, FLAGS.experimental_capitalize_enums) client_info = util.ClientInfo.Create(discovery_doc, FLAGS.scope, FLAGS.client_id, FLAGS.client_secret, FLAGS.user_agent, names, FLAGS.api_key) outdir = os.path.expanduser(FLAGS.outdir) or client_info.default_directory if os.path.exists(outdir) and not FLAGS.overwrite: raise exceptions.ConfigurationValueError( 'Output directory exists, pass --overwrite to replace ' 'the existing files.') root_package = FLAGS.root_package base_package = FLAGS.base_package return gen_client_lib.DescriptorGenerator( discovery_doc, client_info, names, root_package, outdir, base_package=base_package, generate_cli=FLAGS.generate_cli, use_proto2=FLAGS.experimental_proto2_output)
def _GetCodegenFromFlags(): """Create a codegen object from flags.""" if FLAGS.discovery_url: try: discovery_doc = util.FetchDiscoveryDoc(FLAGS.discovery_url) except exceptions.CommunicationError: return None else: infile = os.path.expanduser(FLAGS.infile) or '/dev/stdin' discovery_doc = json.load(open(infile)) names = util.Names(FLAGS.strip_prefix, FLAGS.experimental_name_convention, FLAGS.experimental_capitalize_enums) if FLAGS.client_json: try: with open(FLAGS.client_json) as client_json: f = json.loads(client_json.read()) web = f.get('web', {}) client_id = web.get('client_id') client_secret = web.get('client_secret') except IOError: raise exceptions.NotFoundError( 'Failed to open client json file: %s' % FLAGS.client_json) else: client_id = FLAGS.client_id client_secret = FLAGS.client_secret if not client_id: logging.warning('No client ID supplied') client_id = '' if not client_secret: logging.warning('No client secret supplied') client_secret = '' client_info = util.ClientInfo.Create(discovery_doc, FLAGS.scope, client_id, client_secret, FLAGS.user_agent, names, FLAGS.api_key) outdir = os.path.expanduser(FLAGS.outdir) or client_info.default_directory if os.path.exists(outdir) and not FLAGS.overwrite: raise exceptions.ConfigurationValueError( 'Output directory exists, pass --overwrite to replace ' 'the existing files.') root_package = FLAGS.root_package or util.GetPackage(outdir) # pylint: disable=line-too-long return gen_client_lib.DescriptorGenerator( discovery_doc, client_info, names, root_package, outdir, base_package=FLAGS.base_package, generate_cli=FLAGS.generate_cli, use_proto2=FLAGS.experimental_proto2_output, unelidable_request_methods=FLAGS.unelidable_request_methods)
def _GetCodegenFromFlags(args): """Create a codegen object from flags.""" discovery_doc = _GetDiscoveryDocFromFlags(args) names = util.Names(args.strip_prefix, args.experimental_name_convention, args.experimental_capitalize_enums) if args.client_json: try: with open(args.client_json) as client_json: f = json.loads(client_json.read()) web = f.get('installed', f.get('web', {})) client_id = web.get('client_id') client_secret = web.get('client_secret') except IOError: raise exceptions.NotFoundError( 'Failed to open client json file: %s' % args.client_json) else: client_id = args.client_id client_secret = args.client_secret if not client_id: logging.warning('No client ID supplied') client_id = '' if not client_secret: logging.warning('No client secret supplied') client_secret = '' client_info = util.ClientInfo.Create(discovery_doc, args.scope, client_id, client_secret, args.user_agent, names, args.api_key) outdir = os.path.expanduser(args.outdir) or client_info.default_directory if os.path.exists(outdir) and not args.overwrite: raise exceptions.ConfigurationValueError( 'Output directory exists, pass --overwrite to replace ' 'the existing files.') if not os.path.exists(outdir): os.makedirs(outdir) return gen_client_lib.DescriptorGenerator( discovery_doc, client_info, names, args.root_package, outdir, base_package=args.base_package, protorpc_package=args.protorpc_package, generate_cli=args.generate_cli, init_wildcards_file=(args.init_file == 'wildcards'), use_proto2=args.experimental_proto2_output, unelidable_request_methods=args.unelidable_request_methods, apitools_version=args.apitools_version)
def testNormalizeEnumName(self): names = util.Names(['']) self.assertEqual('_0', names.NormalizeEnumName('0'))
def testKeywords(self): names = util.Names(['']) self.assertEqual('in_', names.CleanName('in'))