diff --git a/common/python/nomadcore/caching_backend.py b/common/python/nomadcore/caching_backend.py index 9391cd68f77247b62b9c75f76ffa8069afdb6daf..b9da45a26c9494c2ee0efccd22164872a34b8571 100644 --- a/common/python/nomadcore/caching_backend.py +++ b/common/python/nomadcore/caching_backend.py @@ -333,10 +333,11 @@ class ActiveBackend(object): if self.propagateStartFinishParsing and self.superBackend: self.superBackend.startedParsingSession(mainFileUri, parserInfo, parsingStatus, parsingErrors) - def finishedParsingSession(self, parsingStatus, parsingErrors, mainFileUri = None, parserInfo = None): + def finishedParsingSession(self, parsingStatus, parsingErrors, mainFileUri = None, parserInfo = None, + parsingStats = None): """should be called when the parsing finishes""" if self.propagateStartFinishParsing and self.superBackend: - self.superBackend.finishedParsingSession(parsingStatus, parsingErrors, mainFileUri, parserInfo) + self.superBackend.finishedParsingSession(parsingStatus, parsingErrors, mainFileUri, parserInfo, parsingStats) def addMatchTelemetry(self, match_telemetry, gIndex = -1): """ should be called for outputting match telemetry data: diff --git a/common/python/nomadcore/local_backend.py b/common/python/nomadcore/local_backend.py index 23eecc4ccd0f442d9da3b510ae6359e18811fd51..9bdc859fe96abb0a5d6482f8257172c69a506aa7 100644 --- a/common/python/nomadcore/local_backend.py +++ b/common/python/nomadcore/local_backend.py @@ -196,7 +196,8 @@ class LocalBackend(object): def startedParsingSession(self, mainFileUri, parserInfo, parsingStatus=None, parsingErrors=None): pass - def finishedParsingSession(self, parsingStatus, parsingErrors, mainFileUri=None, parserInfo=None): + def finishedParsingSession(self, parsingStatus, parsingErrors, mainFileUri=None, parserInfo=None, + parsingStats=None): """Called when the parsing finishes. """ pass diff --git a/common/python/nomadcore/parser_backend.py b/common/python/nomadcore/parser_backend.py index 9d977965cd11d57ea9422a49bddbf7d02584ce3d..f4c039194eb6819e4d4df574550b78886cb9ec63 100644 --- a/common/python/nomadcore/parser_backend.py +++ b/common/python/nomadcore/parser_backend.py @@ -115,7 +115,8 @@ class JsonParseEventsWriterBackend(object): self.fileOut.write(""", "events": [""") - def finishedParsingSession(self, parserStatus, parserErrors, mainFileUri = None, parserInfo = None): + def finishedParsingSession(self, parserStatus, parserErrors, mainFileUri = None, parserInfo = None, + parsingStats = None): """should be called when the parsing finishes""" self.fileOut.write("]") if mainFileUri is not None and self.sessionMainFileUri is None: diff --git a/common/python/nomadcore/simple_parser.py b/common/python/nomadcore/simple_parser.py index 514b67396e1861d8e01029225f136b5385f7a5b6..380f70008976c307a2fcc62259c9f2d097dc41e6 100644 --- a/common/python/nomadcore/simple_parser.py +++ b/common/python/nomadcore/simple_parser.py @@ -1219,7 +1219,9 @@ def defaultParseFile(parserInfo): with open(path, "r") as fIn: backend.startedParsingSession(uri, parserInfo) parsingStats = runParser(parserBuilder, backend, superContext, fIn) - backend.finishedParsingSession("ParseSuccess", None) + backend.finishedParsingSession( + "ParseSuccess", None, + parsingStats=parsingStats) return parseF def mainFunction(mainFileDescription,