@@ -121,25 +121,43 @@ public final class LocalhostSplitClient: NSObject, SplitClient {
121
121
return results
122
122
}
123
123
124
- public func on( event: SplitEvent , runInBackground: Bool ,
125
- execute action: @escaping SplitAction ) {
124
+ public func on( event: SplitEvent , execute action: @escaping SplitAction ) {
125
+ on ( event: event, runInBackground: false , queue: nil , execute: action)
126
+ }
127
+
128
+ public func on( event: SplitEvent , executeWithMetadata: @escaping SplitActionWithMetadata ) {
129
+ on ( eventWithMetadata: SplitEventWithMetadata ( type: event, metadata: nil ) , runInBackground: false , queue: nil , execute: executeWithMetadata)
130
+ }
131
+
132
+ public func on( event: SplitEvent , runInBackground: Bool , execute action: @escaping SplitAction ) {
126
133
on ( event: event, runInBackground: runInBackground, queue: nil , execute: action)
127
134
}
135
+
136
+ private func on( event: SplitEvent , runInBackground: Bool , queue: DispatchQueue ? , execute action: @escaping SplitAction ) {
137
+ on ( eventWithMetadata: SplitEventWithMetadata ( type: event, metadata: nil ) , runInBackground: runInBackground, queue: queue, execute: action)
138
+ }
128
139
129
140
public func on( event: SplitEvent , queue: DispatchQueue , execute action: @escaping SplitAction ) {
130
141
on ( event: event, runInBackground: true , queue: queue, execute: action)
131
142
}
132
143
133
- public func on( event: SplitEvent , execute action: @escaping SplitAction ) {
134
- on ( event: event, runInBackground: false , queue: nil , execute: action)
144
+ private func on( eventWithMetadata event: SplitEventWithMetadata , runInBackground: Bool , queue: DispatchQueue ? , execute action: @escaping SplitAction ) {
145
+
146
+ guard let factory = clientManger? . splitFactory else { return }
147
+ if let eventsManager = self . eventsManager {
148
+ let task = SplitEventActionTask ( action: action, event: event. type,
149
+ runInBackground: runInBackground,
150
+ factory: factory,
151
+ queue: queue)
152
+ eventsManager. register ( event: event, task: task)
153
+ }
135
154
}
136
155
137
- private func on( event: SplitEvent , runInBackground: Bool ,
138
- queue: DispatchQueue ? , execute action: @escaping SplitAction ) {
156
+ private func on( eventWithMetadata event: SplitEventWithMetadata , runInBackground: Bool , queue: DispatchQueue ? , execute action: @escaping SplitActionWithMetadata ) {
139
157
140
158
guard let factory = clientManger? . splitFactory else { return }
141
159
if let eventsManager = self . eventsManager {
142
- let task = SplitEventActionTask ( action: action, event: event,
160
+ let task = SplitEventActionTask ( action: action, event: event. type ,
143
161
runInBackground: runInBackground,
144
162
factory: factory,
145
163
queue: queue)
0 commit comments