@@ -166,6 +166,7 @@ class EventChecker {
166166 static func checkItem( currentNumber: Int , item: ClickstreamAttribute ) ->
167167 ( eventError: EventError , resultItem: ClickstreamAttribute )
168168 {
169+ initItemKeySet ( )
169170 var resultItem : ClickstreamAttribute = [ : ]
170171 if currentNumber >= Event . Limit. MAX_NUM_OF_ITEMS {
171172 let itemJsonString = ( item as JsonObject ) . toJsonString ( )
@@ -253,22 +254,24 @@ class EventChecker {
253254 }
254255
255256 static func initItemKeySet( ) {
256- itemKeySet = Set < String > ( [
257- ClickstreamAnalytics . Item. ITEM_ID,
258- ClickstreamAnalytics . Item. ITEM_NAME,
259- ClickstreamAnalytics . Item. LOCATION_ID,
260- ClickstreamAnalytics . Item. ITEM_BRAND,
261- ClickstreamAnalytics . Item. CURRENCY,
262- ClickstreamAnalytics . Item. PRICE,
263- ClickstreamAnalytics . Item. QUANTITY,
264- ClickstreamAnalytics . Item. CREATIVE_NAME,
265- ClickstreamAnalytics . Item. CREATIVE_SLOT,
266- ClickstreamAnalytics . Item. ITEM_CATEGORY,
267- ClickstreamAnalytics . Item. ITEM_CATEGORY2,
268- ClickstreamAnalytics . Item. ITEM_CATEGORY3,
269- ClickstreamAnalytics . Item. ITEM_CATEGORY4,
270- ClickstreamAnalytics . Item. ITEM_CATEGORY5
271- ] )
257+ if itemKeySet. isEmpty {
258+ itemKeySet = Set < String > ( [
259+ ClickstreamAnalytics . Item. ITEM_ID,
260+ ClickstreamAnalytics . Item. ITEM_NAME,
261+ ClickstreamAnalytics . Item. LOCATION_ID,
262+ ClickstreamAnalytics . Item. ITEM_BRAND,
263+ ClickstreamAnalytics . Item. CURRENCY,
264+ ClickstreamAnalytics . Item. PRICE,
265+ ClickstreamAnalytics . Item. QUANTITY,
266+ ClickstreamAnalytics . Item. CREATIVE_NAME,
267+ ClickstreamAnalytics . Item. CREATIVE_SLOT,
268+ ClickstreamAnalytics . Item. ITEM_CATEGORY,
269+ ClickstreamAnalytics . Item. ITEM_CATEGORY2,
270+ ClickstreamAnalytics . Item. ITEM_CATEGORY3,
271+ ClickstreamAnalytics . Item. ITEM_CATEGORY4,
272+ ClickstreamAnalytics . Item. ITEM_CATEGORY5
273+ ] )
274+ }
272275 }
273276}
274277
0 commit comments