From 1c7d9786f778040e13bd646379ac5d88f7b5e117 Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Mon, 10 Apr 2023 23:28:27 +0530 Subject: [PATCH 1/4] added events for pageprocessing & rendering --- MVMCoreUI/BaseControllers/ViewController.swift | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/MVMCoreUI/BaseControllers/ViewController.swift b/MVMCoreUI/BaseControllers/ViewController.swift index f148c1cb..81312dbc 100644 --- a/MVMCoreUI/BaseControllers/ViewController.swift +++ b/MVMCoreUI/BaseControllers/ViewController.swift @@ -196,7 +196,11 @@ import MVMCore return "Error parsing template. \((parsingError as NSError).localizedFailureReason ?? parsingError.localizedDescription)" } - open func parsePageJSON() throws { } + open func parsePageJSON() throws { + if let pageType, let identifier = loadObject?.identifier { + MVMCoreLoggingHandler.shared()?.logPageProcessingComplete(for: pageType, requestUUID: identifier, webUrl: loadObject?.pageJSON?.optionalStringForKey("browserUrl")) + } + } open class func verifyRequiredModulesLoaded(for loadObject: MVMCoreLoadObject?, error: AutoreleasingUnsafeMutablePointer) -> Bool { guard let pageType = loadObject?.pageType, @@ -372,6 +376,10 @@ import MVMCore if manager == nil { pageShown() } + + if let pageType, let identifier = loadObject?.identifier { + MVMCoreLoggingHandler.shared()?.logPageRenderComplete(for: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))") + } } open override func viewWillDisappear(_ animated: Bool) { From 89778405810cd03cb7efe31064a855b4f4a27023 Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Tue, 11 Apr 2023 18:29:07 +0530 Subject: [PATCH 2/4] page load event trigger in pageshown --- MVMCoreUI/BaseControllers/ViewController.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/MVMCoreUI/BaseControllers/ViewController.swift b/MVMCoreUI/BaseControllers/ViewController.swift index 81312dbc..e9987c5f 100644 --- a/MVMCoreUI/BaseControllers/ViewController.swift +++ b/MVMCoreUI/BaseControllers/ViewController.swift @@ -360,6 +360,10 @@ import MVMCore executeBehaviors { [weak self] (behavior: PageVisibilityBehavior) in behavior.onPageShown(self?.delegateObjectIVar) } + + if let pageType, let identifier = loadObject?.identifier { + MVMCoreLoggingHandler.shared()?.logPageRenderComplete(for: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))", error: loadObject?.responseInfoMap?.optionalStringForKey("message")) + } } open override func viewWillAppear(_ animated: Bool) { @@ -376,10 +380,6 @@ import MVMCore if manager == nil { pageShown() } - - if let pageType, let identifier = loadObject?.identifier { - MVMCoreLoggingHandler.shared()?.logPageRenderComplete(for: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))") - } } open override func viewWillDisappear(_ animated: Bool) { From 85080bd15adcd37f60b97e5fa0017baf2af26c8e Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Tue, 18 Apr 2023 18:01:57 +0530 Subject: [PATCH 3/4] addressed review comments --- MVMCoreUI/BaseControllers/ViewController.swift | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/MVMCoreUI/BaseControllers/ViewController.swift b/MVMCoreUI/BaseControllers/ViewController.swift index e9987c5f..5501e6de 100644 --- a/MVMCoreUI/BaseControllers/ViewController.swift +++ b/MVMCoreUI/BaseControllers/ViewController.swift @@ -197,8 +197,8 @@ import MVMCore } open func parsePageJSON() throws { - if let pageType, let identifier = loadObject?.identifier { - MVMCoreLoggingHandler.shared()?.logPageProcessingComplete(for: pageType, requestUUID: identifier, webUrl: loadObject?.pageJSON?.optionalStringForKey("browserUrl")) + if let backgroundRequest = loadObject?.requestParameters?.backgroundRequest, !backgroundRequest, let pageType, let identifier = loadObject?.identifier { + MVMCoreLoggingHandler.shared()?.logPageProcessingComplete(for: pageType, requestUUID: identifier, webUrl: nil) } } @@ -361,7 +361,7 @@ import MVMCore behavior.onPageShown(self?.delegateObjectIVar) } - if let pageType, let identifier = loadObject?.identifier { + if let backgroundRequest = loadObject?.requestParameters?.backgroundRequest, !backgroundRequest, let pageType, let identifier = loadObject?.identifier { MVMCoreLoggingHandler.shared()?.logPageRenderComplete(for: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))", error: loadObject?.responseInfoMap?.optionalStringForKey("message")) } } From ab304b6372bc699f0e85deff67b1dcffa14b48cc Mon Sep 17 00:00:00 2001 From: Krishna Kishore Bandaru Date: Wed, 3 May 2023 22:11:21 +0530 Subject: [PATCH 4/4] refactored --- MVMCoreUI/BaseControllers/ViewController.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MVMCoreUI/BaseControllers/ViewController.swift b/MVMCoreUI/BaseControllers/ViewController.swift index 24a98561..b86545fe 100644 --- a/MVMCoreUI/BaseControllers/ViewController.swift +++ b/MVMCoreUI/BaseControllers/ViewController.swift @@ -198,7 +198,7 @@ import MVMCore open func parsePageJSON() throws { if let backgroundRequest = loadObject?.requestParameters?.backgroundRequest, !backgroundRequest, let pageType, let identifier = loadObject?.identifier { - MVMCoreLoggingHandler.shared()?.logPageProcessingComplete(for: pageType, requestUUID: identifier, webUrl: nil) + MVMCoreLoggingHandler.shared()?.logCoreEvent(.pageProcessingComplete(pageType: pageType, requestUUID: identifier, webUrl: nil)) } } @@ -362,7 +362,7 @@ import MVMCore } if let backgroundRequest = loadObject?.requestParameters?.backgroundRequest, !backgroundRequest, let pageType, let identifier = loadObject?.identifier { - MVMCoreLoggingHandler.shared()?.logPageRenderComplete(for: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))", error: loadObject?.responseInfoMap?.optionalStringForKey("message")) + MVMCoreLoggingHandler.shared()?.logCoreEvent(.pageRenderComplete(pageType: pageType, requestUUID: identifier, templateName: loadObject?.pageJSON?.optionalStringForKey("template"), controllerName: "\(type(of: self))", error: loadObject?.responseInfoMap?.optionalStringForKey("message"))) } }