private void EnqueueEventsHelper(Amazon.MobileAnalytics.Model.Event eventObject)
{
string eventString = null;
try
{
eventString = JsonMapper.ToJson(eventObject);
}
catch (Exception e)
{
_logger.Error(e, "An exception occurred when converting low level client event to json string.");
List<Amazon.MobileAnalytics.Model.Event> eventList = new List<Amazon.MobileAnalytics.Model.Event>();
eventList.Add(eventObject);
MobileAnalyticsErrorEventArgs eventArgs = new MobileAnalyticsErrorEventArgs(this.GetType().Name, "An exception occurred when converting low level client event to json string.", e, eventList);
_maManager.OnRaiseErrorEvent(eventArgs);
}
if (null != eventString)
{
try
{
_eventStore.PutEvent(eventString, _appID);
}
catch (Exception e)
{
_logger.Error(e, "Event {0} was not stored.", eventObject.EventType);
MobileAnalyticsErrorEventArgs eventArgs = new MobileAnalyticsErrorEventArgs(this.GetType().Name, "An exception occurred when storing event into event store.", e, new List<Amazon.MobileAnalytics.Model.Event>());
_maManager.OnRaiseErrorEvent(eventArgs);
}
_logger.DebugFormat("Event {0} is queued for delivery", eventObject.EventType);
}
}