This commit is contained in:
Suresh, Kamlesh 2021-01-15 16:44:36 -05:00
parent 96217a5ad7
commit 2b6bf53cc5

View File

@ -9,16 +9,21 @@
import Foundation
@objcMembers public class ClientParameterRegistry: NSObject {
@objcMembers open class ClientParameterRegistry: NSObject {
private var mapping: [String: ClientParameterProtocol.Type] = [:]
public func register<T:ClientParameterProtocol>(_ handler: T.Type) {
public override init() {
super.init()
registerParameters()
}
open func register<T:ClientParameterProtocol>(_ handler: T.Type) {
mapping[T.name] = handler
}
public func createParametersHandler(_ actionType: String) -> ClientParameterProtocol? {
open func createParametersHandler(_ actionType: String) -> ClientParameterProtocol? {
guard let parameterType = mapping[actionType] else { return nil }
return parameterType.init()
}
@ -94,7 +99,7 @@ import Foundation
}
/// Add all registry here.
open static func registerParameters() { }
open func registerParameters() { }
/// Register Default Core Bridge Objects
public static func register<T:ClientParameterProtocol, M: ModelProtocol>(handler: T.Type, for model: M.Type) throws {