1#!/usr/bin/env python 2# Copyright 2016 The Chromium Authors. All rights reserved. 3# Use of this source code is governed by a BSD-style license that can be 4# found in the LICENSE file. 5 6import os.path 7import sys 8 9try: 10 import json 11except ImportError: 12 import simplejson as json 13 14import pdl 15 16def main(argv): 17 if len(argv) < 1: 18 sys.stderr.write("Usage: %s <protocol-1> [<protocol-2> [, <protocol-3>...]] <output-file>\n" % sys.argv[0]) 19 return 1 20 21 domains = [] 22 version = None 23 for protocol in argv[:-1]: 24 file_name = os.path.normpath(protocol) 25 if not os.path.isfile(file_name): 26 sys.stderr.write("Cannot find %s\n" % file_name) 27 return 1 28 input_file = open(file_name, "r") 29 parsed_json = pdl.loads(input_file.read(), file_name) 30 domains += parsed_json["domains"] 31 version = parsed_json["version"] 32 33 output_file = open(argv[-1], "w") 34 json.dump({"version": version, "domains": domains}, output_file, indent=4, sort_keys=False, separators=(',', ': ')) 35 output_file.close() 36 37 38if __name__ == '__main__': 39 sys.exit(main(sys.argv[1:])) 40