CSharp-SDK - 3.3.0
September 26th, 2019
### New Features:
- Configuration manager is set to PollingProjectConfigManager and for datafile will be started by default. Requests to download and update datafile are made in a separate thread and are scheduled with fixed delay.
- Added support for event batching via the event processor.
- Events generated by methods like `Activate`, `Track`, and `IsFeatureEnabled` will be held in a queue until the configured batch size is reached, or the configured flush interval has elapsed. Then, they will be combined into a request and sent to the event dispatcher.
- To configure event batching, set the `MaxEventBatchSize` and `MaxEventFlushInterval` properties in the `OptimizelyFactory` using `OptimizelyFactory.SetBatchSize(int batchSize)` and `OptimizelyFactory.SetFlushInterval(TimeSpan flushInterval)` and then creating using `OptimizelyFactory.NewDefaultInstance`.
- Event batching is enabled by default. `eventBatchSize` defaults to `10`. `eventFlushInterval` defaults to `30000` milliseconds.
- Updated the `Dispose` method representing the process of closing the instance. When `Dispose` is called, any events waiting to be sent as part of a batched event request will be immediately batched and sent to the event dispatcher.
- If any such requests were sent to the event dispatcher, `Stop` waits for provided `TimeoutInterval` before stoping, so that events get successfully dispatched.
- `OptimizelyFactory` now provides support of setting configuration variables from ***App.config***, User will now be able to provide configuration variables of `HttpConfigManager` and `BatchEventProcessor` in ***App.config***. Steps of usage are provided in [README.md](https://github.com/optimizely/csharp-sdk#using-appconfig-in-optimizelyfactory).
- `EventBuilder` was deprecated and now we will be using `UserEventFactory` and `EventFactory` to create LogEvent Object.
- Deprecated `Track` notifications in favor of explicit `LogEvent` notification.
- New features will no longer be supported on `.net standard 1.6` and `.net 3.5`