Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 """Generates java source files from a mojom.Module.""" | 5 """Generates java source files from a mojom.Module.""" |
| 6 | 6 |
| 7 import argparse | 7 import argparse |
| 8 import ast | 8 import ast |
| 9 import contextlib | 9 import contextlib |
| 10 import os | 10 import os |
| (...skipping 479 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 490 self.Write(self.GenerateInterfaceInternalSource(interface), | 490 self.Write(self.GenerateInterfaceInternalSource(interface), |
| 491 '%s_Internal.java' % GetNameForElement(interface)) | 491 '%s_Internal.java' % GetNameForElement(interface)) |
| 492 | 492 |
| 493 if self.module.constants: | 493 if self.module.constants: |
| 494 self.Write(self.GenerateConstantsSource(self.module), | 494 self.Write(self.GenerateConstantsSource(self.module), |
| 495 '%s.java' % GetConstantsMainEntityName(self.module)) | 495 '%s.java' % GetConstantsMainEntityName(self.module)) |
| 496 | 496 |
| 497 def GenerateFiles(self, unparsed_args): | 497 def GenerateFiles(self, unparsed_args): |
| 498 parser = argparse.ArgumentParser() | 498 parser = argparse.ArgumentParser() |
| 499 parser.add_argument('--java_output_directory', dest='java_output_directory') | 499 parser.add_argument('--java_output_directory', dest='java_output_directory') |
| 500 args = parser.parse_args(unparsed_args) | 500 (args, _) = parser.parse_known_args(unparsed_args) |
|
azani
2015/12/18 18:12:58
Why is this change here?
alexfandrianto
2015/12/18 19:08:31
This change is here because the new argument will
azani
2015/12/18 23:19:11
Can you add an argument to parser instead?
alexfandrianto
2015/12/18 23:24:10
Done.
| |
| 501 package_path = GetPackage(self.module).replace('.', '/') | 501 package_path = GetPackage(self.module).replace('.', '/') |
| 502 | 502 |
| 503 # Generate the java files in a temporary directory and place a single | 503 # Generate the java files in a temporary directory and place a single |
| 504 # srcjar in the output directory. | 504 # srcjar in the output directory. |
| 505 basename = self.MatchMojomFilePath("%s.srcjar" % self.module.name) | 505 basename = self.MatchMojomFilePath("%s.srcjar" % self.module.name) |
| 506 zip_filename = os.path.join(self.output_dir, basename) | 506 zip_filename = os.path.join(self.output_dir, basename) |
| 507 with TempDir() as temp_java_root: | 507 with TempDir() as temp_java_root: |
| 508 self.output_dir = os.path.join(temp_java_root, package_path) | 508 self.output_dir = os.path.join(temp_java_root, package_path) |
| 509 self.DoGenerateFiles(); | 509 self.DoGenerateFiles(); |
| 510 ZipContentInto(temp_java_root, zip_filename) | 510 ZipContentInto(temp_java_root, zip_filename) |
| 511 | 511 |
| 512 if args.java_output_directory: | 512 if args.java_output_directory: |
| 513 # If requested, generate the java files directly into indicated directory. | 513 # If requested, generate the java files directly into indicated directory. |
| 514 self.output_dir = os.path.join(args.java_output_directory, package_path) | 514 self.output_dir = os.path.join(args.java_output_directory, package_path) |
| 515 self.DoGenerateFiles(); | 515 self.DoGenerateFiles(); |
| 516 | 516 |
| 517 def GetJinjaParameters(self): | 517 def GetJinjaParameters(self): |
| 518 return { | 518 return { |
| 519 'lstrip_blocks': True, | 519 'lstrip_blocks': True, |
| 520 'trim_blocks': True, | 520 'trim_blocks': True, |
| 521 } | 521 } |
| 522 | 522 |
| 523 def GetGlobals(self): | 523 def GetGlobals(self): |
| 524 return { | 524 return { |
| 525 'namespace': self.module.namespace, | 525 'namespace': self.module.namespace, |
| 526 'module': self.module, | 526 'module': self.module, |
| 527 } | 527 } |
| OLD | NEW |