|
29 | 29 | import com.optimizely.ab.error.NoOpErrorHandler; |
30 | 30 | import com.optimizely.ab.error.RaiseExceptionErrorHandler; |
31 | 31 | import com.optimizely.ab.event.EventHandler; |
| 32 | +import com.optimizely.ab.event.LogEvent; |
32 | 33 | import com.optimizely.ab.event.internal.EventBuilder; |
| 34 | +import com.optimizely.ab.event.internal.EventBuilderV1; |
| 35 | +import com.optimizely.ab.event.internal.EventBuilderV2; |
33 | 36 | import com.optimizely.ab.internal.ProjectValidationUtils; |
34 | 37 |
|
35 | 38 | import org.slf4j.Logger; |
@@ -161,12 +164,12 @@ private Optimizely(@Nonnull ProjectConfig projectConfig, |
161 | 164 | return null; |
162 | 165 | } |
163 | 166 |
|
164 | | - String endpointUrl = eventBuilder.getEndpointUrl(projectConfig.getProjectId()); |
165 | | - Map<String, String> impressionParams = eventBuilder.createImpressionParams(projectConfig, experiment, |
166 | | - variation, userId, attributes); |
| 167 | + LogEvent impressionEvent = |
| 168 | + eventBuilder.createImpressionEvent(projectConfig, experiment, variation, userId, attributes); |
167 | 169 | logger.info("Activating user \"{}\" in experiment \"{}\".", userId, experiment.getKey()); |
168 | | - logger.debug("Dispatching impression event to URL {} with params {}.", endpointUrl, impressionParams); |
169 | | - eventHandler.dispatchEvent(endpointUrl, impressionParams); |
| 170 | + logger.debug("Dispatching impression event to URL {} with params {}.", impressionEvent.getEndpointUrl(), |
| 171 | + impressionEvent.getRequestParams()); |
| 172 | + eventHandler.dispatchEvent(impressionEvent); |
170 | 173 |
|
171 | 174 | return variation; |
172 | 175 | } |
@@ -216,27 +219,27 @@ private void track(@Nonnull String eventName, |
216 | 219 | attributes = filterAttributes(currentConfig, attributes); |
217 | 220 |
|
218 | 221 | // create the conversion event request parameters, then dispatch |
219 | | - String endpointUrl = eventBuilder.getEndpointUrl(currentConfig.getProjectId()); |
220 | | - Map<String, String> conversionParams; |
| 222 | + LogEvent conversionEvent; |
221 | 223 | if (eventValue == null) { |
222 | | - conversionParams = eventBuilder.createConversionParams(currentConfig, bucketer, userId, |
223 | | - eventType.getId(), eventType.getKey(), |
224 | | - attributes); |
| 224 | + conversionEvent = eventBuilder.createConversionEvent(currentConfig, bucketer, userId, |
| 225 | + eventType.getId(), eventType.getKey(), |
| 226 | + attributes); |
225 | 227 | } else { |
226 | | - conversionParams = eventBuilder.createConversionParams(currentConfig, bucketer, userId, |
227 | | - eventType.getId(), eventType.getKey(), attributes, |
228 | | - eventValue); |
| 228 | + conversionEvent = eventBuilder.createConversionEvent(currentConfig, bucketer, userId, |
| 229 | + eventType.getId(), eventType.getKey(), attributes, |
| 230 | + eventValue); |
229 | 231 | } |
230 | 232 |
|
231 | | - if (conversionParams == null) { |
| 233 | + if (conversionEvent == null) { |
232 | 234 | logger.info("There are no valid experiments for event \"{}\" to track.", eventName); |
233 | 235 | logger.info("Not tracking event \"{}\" for user \"{}\".", eventName, userId); |
234 | 236 | return; |
235 | 237 | } |
236 | 238 |
|
237 | 239 | logger.info("Tracking event \"{}\" for user \"{}\".", eventName, userId); |
238 | | - logger.debug("Dispatching conversion event to URL {} with params {}.", endpointUrl, conversionParams); |
239 | | - eventHandler.dispatchEvent(endpointUrl, conversionParams); |
| 240 | + logger.debug("Dispatching conversion event to URL {} with params {}.", conversionEvent.getEndpointUrl(), |
| 241 | + conversionEvent.getRequestParams()); |
| 242 | + eventHandler.dispatchEvent(conversionEvent); |
240 | 243 | } |
241 | 244 |
|
242 | 245 | //======== getVariation calls ========// |
@@ -474,7 +477,7 @@ public Optimizely build() { |
474 | 477 | } |
475 | 478 |
|
476 | 479 | if (eventBuilder == null) { |
477 | | - eventBuilder = new EventBuilder(); |
| 480 | + eventBuilder = new EventBuilderV1(); |
478 | 481 | } |
479 | 482 |
|
480 | 483 | if (errorHandler == null) { |
|
0 commit comments