From 486a71da64fbf25945445934d7873697669ebff3 Mon Sep 17 00:00:00 2001 From: mayur nilwant Date: Fri, 5 Jul 2024 16:14:25 -0400 Subject: [PATCH] Added ActionLaunchMCEHandler --- MVMCore/MVMCore.xcodeproj/project.pbxproj | 4 ++ .../ActionLaunchMCEHandler.swift | 54 +++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 MVMCore/MVMCore/ActionHandling/ActionLaunchMCEHandler.swift diff --git a/MVMCore/MVMCore.xcodeproj/project.pbxproj b/MVMCore/MVMCore.xcodeproj/project.pbxproj index c68b43d..b880f9f 100644 --- a/MVMCore/MVMCore.xcodeproj/project.pbxproj +++ b/MVMCore/MVMCore.xcodeproj/project.pbxproj @@ -41,6 +41,7 @@ 1DAD0FFE26AAB40000216E83 /* ActionRunJavaScriptModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DAD0FFD26AAB3FF00216E83 /* ActionRunJavaScriptModel.swift */; }; 2723337B28BD534D004EAEE0 /* MVMCoreEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2723337A28BD534D004EAEE0 /* MVMCoreEvent.swift */; }; 2723337D28BD53C2004EAEE0 /* Date+Extension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2723337C28BD53C2004EAEE0 /* Date+Extension.swift */; }; + 33F1A3DA2C35B8AE002A9B89 /* ActionLaunchMCEHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33F1A3D92C35B8AD002A9B89 /* ActionLaunchMCEHandler.swift */; }; 5846ABF42B44BB9000FA6C76 /* Collection+Safe.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5846ABF32B44BB9000FA6C76 /* Collection+Safe.swift */; }; 5878F0B22BDAA63E00ADE23D /* ReadableDecodingErrors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5878F0B12BDAA63E00ADE23D /* ReadableDecodingErrors.swift */; }; 6042E8FC2B317B190031644B /* MVMCoreLoggingHandlerHelper.h in Headers */ = {isa = PBXBuildFile; fileRef = 6042E8FB2B3094680031644B /* MVMCoreLoggingHandlerHelper.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -192,6 +193,7 @@ 1DAD0FFD26AAB3FF00216E83 /* ActionRunJavaScriptModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ActionRunJavaScriptModel.swift; sourceTree = ""; }; 2723337A28BD534D004EAEE0 /* MVMCoreEvent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MVMCoreEvent.swift; sourceTree = ""; }; 2723337C28BD53C2004EAEE0 /* Date+Extension.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Date+Extension.swift"; sourceTree = ""; }; + 33F1A3D92C35B8AD002A9B89 /* ActionLaunchMCEHandler.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionLaunchMCEHandler.swift; sourceTree = ""; }; 581FABEE2A71D0E6003A8508 /* mvmcore_dev.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = mvmcore_dev.xcconfig; sourceTree = ""; }; 5836B8E22A4338DF002553D9 /* mvmcore.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = mvmcore.xcconfig; sourceTree = ""; }; 5846ABF32B44BB9000FA6C76 /* Collection+Safe.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Collection+Safe.swift"; sourceTree = ""; }; @@ -638,6 +640,7 @@ AF706999287DD02400077CF6 /* ActionContactHandler.swift */, 0AFF597923FC6E60005C24E8 /* ActionShareModel.swift */, AF70699D2880D01400077CF6 /* ActionShareHandler.swift */, + 33F1A3D92C35B8AD002A9B89 /* ActionLaunchMCEHandler.swift */, ); path = ActionHandling; sourceTree = ""; @@ -877,6 +880,7 @@ D282AAB62240085300C46919 /* MVMCoreGetterUtility+Extension.swift in Sources */, AFA4931E29E5C988001A9663 /* MVMCoreActionUtility+Extension.swift in Sources */, 1DAD0FFE26AAB40000216E83 /* ActionRunJavaScriptModel.swift in Sources */, + 33F1A3DA2C35B8AE002A9B89 /* ActionLaunchMCEHandler.swift in Sources */, 946EE1AB237B5C940036751F /* Decoder.swift in Sources */, 5878F0B22BDAA63E00ADE23D /* ReadableDecodingErrors.swift in Sources */, 2723337D28BD53C2004EAEE0 /* Date+Extension.swift in Sources */, diff --git a/MVMCore/MVMCore/ActionHandling/ActionLaunchMCEHandler.swift b/MVMCore/MVMCore/ActionHandling/ActionLaunchMCEHandler.swift new file mode 100644 index 0000000..51a95ef --- /dev/null +++ b/MVMCore/MVMCore/ActionHandling/ActionLaunchMCEHandler.swift @@ -0,0 +1,54 @@ +// +// ActionLaunchMCEHandler.swift +// MVMCore +// +// Created by Mayur Suresh Nilwant on 7/3/24. +// Copyright © 2024 myverizon. All rights reserved. +// + +import Foundation + +public struct ActionLaunchMCEModel: ActionModelProtocol { + //-------------------------------------------------- + // MARK: - Properties + //-------------------------------------------------- + + public static var identifier: String = "launchMCE" + public var actionType: String = ActionLaunchMCEModel.identifier + public var extraParameters: JSONValueDictionary? + public var analyticsData: JSONValueDictionary? + + //-------------------------------------------------- + // MARK: - Initializer + //-------------------------------------------------- + + public init(_ extraParameters: JSONValueDictionary? = nil, _ analyticsData: JSONValueDictionary? = nil) { + self.extraParameters = extraParameters + self.analyticsData = analyticsData + } +} + +open class ActionLaunchMCEHandler: MVMCoreActionHandlerProtocol { + required public init() {} + //overrideAutoRunTest": true + let mce_Redirect = ["journeyId": "redirect"] + let mce_journey_care_to_commerce = ["journeyId": "journey_care_to_commerce"] + let mce_Trade_In = ["journeyId": "genericTradein"] + let mce_Insurance = ["journeyId": "journey_eligibility"] + let mce_Transfer = ["journeyId": "wirelessTransfer"] + let mce_Repair = ["journeyId": "sendToRepair"] + let mce_OverrideCategories = ["wirelessTransfer","sendToRepair"] + let mce_AutoRunTest = ["overrideAutoRunTest":true, "journeyId": "journey_care_to_commerce"] as [String: Any] + + + open func execute(with model: ActionModelProtocol, delegateObject: DelegateObject?, additionalData: [AnyHashable : Any]?) async throws { + guard let model = model as? ActionLaunchMCEModel else { return } + + try await withCheckedThrowingContinuation { (continuation: CheckedContinuation) in + debugPrint("!!!!!!! Handler Hit !!!!!!!") + } + } +} + + +