in src/advisor/scanners/java_scanner.py [0:0]
def scan_file_object(self, filename, file_object, report):
"""Scans the provided file and adds issues, remarks, or errors as needed to the Report.
Args:
filename: The name of the file being checked.
file_object: The file contents.
report: The report being generated.
"""
if self.has_source_extension(filename):
self._add_java_language_remark(report)
_, ext = os.path.splitext(filename)
tool_invoker = JavaToolInvoker()
is_jar_or_war = ext == '.jar' or ext == '.war'
if is_jar_or_war and tool_invoker.can_run():
result, message = tool_invoker.graviton_ready_assessor(filename)
if (result == 3):
report.add_issue(NativeMethodsIssue(message, filename=filename))
elif is_jar_or_war:
self.add_jar_remark(report)
return
if path.basename(filename) in self.DEPENDENCY_FILES:
manifester = Manifester()
dependencies = manifester.get_dependencies(filename, file_object, report)
self.add_library_remarks(dependencies, report)