From ccaba9b0b4bfdca1a07dfb2da4b5ea6ca54617ec Mon Sep 17 00:00:00 2001 From: "Suresh, Kamlesh" Date: Wed, 15 Jan 2020 16:29:36 -0500 Subject: [PATCH] action type --- MVMCore/MVMCore.xcodeproj/project.pbxproj | 4 ++++ .../MVMCore/Models/ActionType/ActionBack.swift | 16 ++++++++++++++++ .../MVMCore/Models/ActionType/ActionCall.swift | 1 + .../Models/ActionType/ActionOpenApp.swift | 7 ++++--- .../Models/ActionType/ActionOpenPage.swift | 1 + .../Models/ActionType/ActionOpenUrl.swift | 1 + .../MVMCore/Models/ActionType/ActionPopup.swift | 1 + .../Models/ActionType/ActionProtocol.swift | 8 +------- .../Models/ActionType/ActionTopAlert.swift | 1 + MVMCore/MVMCore/Models/ModelMapping.swift | 1 + 10 files changed, 31 insertions(+), 10 deletions(-) create mode 100644 MVMCore/MVMCore/Models/ActionType/ActionBack.swift diff --git a/MVMCore/MVMCore.xcodeproj/project.pbxproj b/MVMCore/MVMCore.xcodeproj/project.pbxproj index cb5326b..9fb4ce4 100644 --- a/MVMCore/MVMCore.xcodeproj/project.pbxproj +++ b/MVMCore/MVMCore.xcodeproj/project.pbxproj @@ -22,6 +22,7 @@ /* Begin PBXBuildFile section */ 01C851CF23CF7B260021F976 /* JSONMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01C851CE23CF7B260021F976 /* JSONMap.swift */; }; + 01C851D123CF97FE0021F976 /* ActionBack.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01C851D023CF97FE0021F976 /* ActionBack.swift */; }; 01DF561421F90ADC00CC099B /* Dictionary+MFConvenience.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01DF561321F90ADC00CC099B /* Dictionary+MFConvenience.swift */; }; 01F2A03623A80A7300D954D8 /* ActionProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01F2A03523A80A7300D954D8 /* ActionProtocol.swift */; }; 01F2A03923A812DD00D954D8 /* ActionOpenUrl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01F2A03823A812DD00D954D8 /* ActionOpenUrl.swift */; }; @@ -166,6 +167,7 @@ /* Begin PBXFileReference section */ 01C851CE23CF7B260021F976 /* JSONMap.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JSONMap.swift; sourceTree = ""; }; + 01C851D023CF97FE0021F976 /* ActionBack.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionBack.swift; sourceTree = ""; }; 01DF561321F90ADC00CC099B /* Dictionary+MFConvenience.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "Dictionary+MFConvenience.swift"; sourceTree = ""; }; 01F2A03523A80A7300D954D8 /* ActionProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionProtocol.swift; sourceTree = ""; }; 01F2A03823A812DD00D954D8 /* ActionOpenUrl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActionOpenUrl.swift; sourceTree = ""; }; @@ -454,6 +456,7 @@ 01F2A04B23A82B1B00D954D8 /* ActionCall.swift */, 01F2A04D23A82CF500D954D8 /* ActionPopup.swift */, 01F2A04F23A82D0800D954D8 /* ActionTopAlert.swift */, + 01C851D023CF97FE0021F976 /* ActionBack.swift */, ); path = ActionType; sourceTree = ""; @@ -931,6 +934,7 @@ AFEA17A9209B6A1C00BC6740 /* MVMCoreBlockOperation.m in Sources */, AF43A70A1FC4F415008E9347 /* MVMCoreCache.m in Sources */, AF43A6FF1FBE3252008E9347 /* Reachability.m in Sources */, + 01C851D123CF97FE0021F976 /* ActionBack.swift in Sources */, 01F2A03B23A8159900D954D8 /* ActionOpenApp.swift in Sources */, AFBB96921FBA3A9A0008D868 /* MVMCoreNavigationOperation.m in Sources */, AFBB96611FBA3A570008D868 /* MVMCoreLoadObject.m in Sources */, diff --git a/MVMCore/MVMCore/Models/ActionType/ActionBack.swift b/MVMCore/MVMCore/Models/ActionType/ActionBack.swift new file mode 100644 index 0000000..07b0faf --- /dev/null +++ b/MVMCore/MVMCore/Models/ActionType/ActionBack.swift @@ -0,0 +1,16 @@ +// +// File.swift +// MVMCore +// +// Created by Suresh, Kamlesh on 1/15/20. +// Copyright © 2020 myverizon. All rights reserved. +// + +import Foundation + +@objcMembers public class ActionBack: ActionProtocol { + public static var identifier: String = "back" + public var actionType: String? + public var extraParameter: JSONValueDictionary? + public var analyticsData: JSONValueDictionary? +} diff --git a/MVMCore/MVMCore/Models/ActionType/ActionCall.swift b/MVMCore/MVMCore/Models/ActionType/ActionCall.swift index 9cef755..bfbf3b1 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionCall.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionCall.swift @@ -10,6 +10,7 @@ import Foundation @objcMembers public class ActionCall: ActionProtocol { public static var identifier: String = "call" + public var actionType: String? public var callNumber: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? diff --git a/MVMCore/MVMCore/Models/ActionType/ActionOpenApp.swift b/MVMCore/MVMCore/Models/ActionType/ActionOpenApp.swift index 4552f6a..455e8d2 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionOpenApp.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionOpenApp.swift @@ -10,10 +10,11 @@ import Foundation @objcMembers public class ActionOpenApp: ActionProtocol { public static var identifier: String = "openApp" - public var appUrl: String + public var actionType: String? + public var appURL: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? - public init(appUrl: String) { - self.appUrl = appUrl + public init(appURL: String) { + self.appURL = appURL } } diff --git a/MVMCore/MVMCore/Models/ActionType/ActionOpenPage.swift b/MVMCore/MVMCore/Models/ActionType/ActionOpenPage.swift index 4efc54a..6dc7397 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionOpenPage.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionOpenPage.swift @@ -10,6 +10,7 @@ import Foundation @objcMembers public class ActionOpenPage: ActionProtocol { public static var identifier: String = "openPage" + public var actionType: String? public var pageType: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? diff --git a/MVMCore/MVMCore/Models/ActionType/ActionOpenUrl.swift b/MVMCore/MVMCore/Models/ActionType/ActionOpenUrl.swift index dd61bb4..eaa397b 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionOpenUrl.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionOpenUrl.swift @@ -10,6 +10,7 @@ import Foundation @objcMembers public class ActionOpenUrl: ActionProtocol { public static var identifier: String = "openUrl" + public var actionType: String? public var browserUrl: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? diff --git a/MVMCore/MVMCore/Models/ActionType/ActionPopup.swift b/MVMCore/MVMCore/Models/ActionType/ActionPopup.swift index 10d3d8c..a8a9efc 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionPopup.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionPopup.swift @@ -10,6 +10,7 @@ import Foundation @objcMembers public class ActionPopup: ActionProtocol { public static var identifier: String = "popup" + public var actionType: String? public var pageType: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? diff --git a/MVMCore/MVMCore/Models/ActionType/ActionProtocol.swift b/MVMCore/MVMCore/Models/ActionType/ActionProtocol.swift index d0959c4..dc0f88f 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionProtocol.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionProtocol.swift @@ -13,13 +13,7 @@ public enum ActionCodingKey: String, CodingKey { } public protocol ActionProtocol: Model { - var actionType: String? { get } + var actionType: String? { get set } var extraParameter: JSONValueDictionary? { get set } var analyticsData: JSONValueDictionary? { get set } } - -extension ActionProtocol { - public var actionType: String? { - get { return Self.identifier } - } -} diff --git a/MVMCore/MVMCore/Models/ActionType/ActionTopAlert.swift b/MVMCore/MVMCore/Models/ActionType/ActionTopAlert.swift index fe9aea9..bf9ee8e 100644 --- a/MVMCore/MVMCore/Models/ActionType/ActionTopAlert.swift +++ b/MVMCore/MVMCore/Models/ActionType/ActionTopAlert.swift @@ -10,6 +10,7 @@ import Foundation @objcMembers public class ActionTopAlert: ActionProtocol { public static var identifier: String = "topAlert" + public var actionType: String? public var pageType: String public var extraParameter: JSONValueDictionary? public var analyticsData: JSONValueDictionary? diff --git a/MVMCore/MVMCore/Models/ModelMapping.swift b/MVMCore/MVMCore/Models/ModelMapping.swift index 0e3ea86..26d5ddc 100644 --- a/MVMCore/MVMCore/Models/ModelMapping.swift +++ b/MVMCore/MVMCore/Models/ModelMapping.swift @@ -16,5 +16,6 @@ import Foundation ModelRegistry.register(ActionCall.self) ModelRegistry.register(ActionPopup.self) ModelRegistry.register(ActionTopAlert.self) + ModelRegistry.register(ActionBack.self) } }