コード例 #1
0
ファイル: ApplicationInsights.cs プロジェクト: maximrub/exrin
        public void Finalize(IInsightData data)
        {
            // Finalize in background thread, no need to keep the app waiting.
            Task.Run(async() =>
            {
                await FillData(data);

                Store(data);
            });
        }
コード例 #2
0
ファイル: ApplicationInsights.cs プロジェクト: johaDev/Exrin
 /// <summary>
 /// Store event in file for transmission
 /// </summary>
 /// <param name="data"></param>
 private void Store(IInsightData data)
 {
     try
     {
         _storage?.Write(data);
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.Message);
     }
 }
コード例 #3
0
ファイル: ApplicationInsights.cs プロジェクト: maximrub/exrin
 public Task TrackRaw(IInsightData data)
 {
     try
     {
         Store(data);
         return(Task.FromResult(true));
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.Message);
         return(Task.FromResult(false));
     }
 }
コード例 #4
0
ファイル: ApplicationInsights.cs プロジェクト: exrin/Exrin
 /// <summary>
 /// Used to fill in the extra details into the insights data before storage.
 /// </summary>
 /// <param name="data"></param>
 private async Task FillData(IInsightData data)
 {
     data.Created = DateTime.UtcNow;
     data.AppVersion = CleanVersion(DefaultHelper.GetOrDefault(_deviceInfo.GetAppVersion, new Version("0.0.0.0")));
     data.Battery = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetBattery, null);
     data.ConnectionStrength = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetConnectionStrength, null);
     data.ConnectionType = DefaultHelper.GetOrDefault(_deviceInfo.GetConnectionType, ConnectionType.Unknown);
     data.DeviceIdentifier = DefaultHelper.GetOrDefault(_deviceInfo.GetUniqueId, "");
     data.FullName = _fullName;
     data.Id = Guid.NewGuid();
     data.IPAddress = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetIPAddress, "");
     data.Model = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetModel, "");
     data.OSVersion = CleanVersion(await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetOSVersion, new Version("0.0.0.0")));
     data.SessionId = _sessionId;
     data.UserId = _userId;
 }
コード例 #5
0
ファイル: ApplicationInsights.cs プロジェクト: maximrub/exrin
        /// <summary>
        /// Used to fill in the extra details into the insights data before storage.
        /// </summary>
        /// <param name="data"></param>
        private async Task FillData(IInsightData data)
        {
            data.Created    = DateTime.UtcNow;
            data.AppVersion = CleanVersion(DefaultHelper.GetOrDefault(_deviceInfo.GetAppVersion, new Version("0.0.0.0")));
            data.Battery    = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetBattery, null);

            data.ConnectionStrength = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetConnectionStrength, null);

            data.ConnectionType   = DefaultHelper.GetOrDefault(_deviceInfo.GetConnectionType, ConnectionType.Unknown);
            data.DeviceIdentifier = DefaultHelper.GetOrDefault(_deviceInfo.GetUniqueId, "");
            data.FullName         = _fullName;
            data.Id        = Guid.NewGuid();
            data.IPAddress = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetIPAddress, "");

            data.Model = await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetModel, "");

            data.OSVersion = CleanVersion(await DefaultHelper.GetOrDefaultAsync(_deviceInfo.GetOSVersion, new Version("0.0.0.0")));
            data.SessionId = _sessionId;
            data.UserId    = _userId;
        }
コード例 #6
0
ファイル: InsightStorage.cs プロジェクト: exrin/Exrin
 public Task Write(IInsightData data)
 {
     throw new NotImplementedException();
 }
コード例 #7
0
ファイル: ApplicationInsights.cs プロジェクト: johaDev/Exrin
 public Task TrackRaw(IInsightData data)
 {
     _storage.Write(data);
     return(Task.FromResult(true));
 }
コード例 #8
0
 public Task Delete(IInsightData data)
 {
     return(Task.FromResult(true));
 }
コード例 #9
0
 public Task Write(IInsightData data)
 {
     _debugManager?.AddInsight(data);
     return(Task.FromResult(true));
 }
コード例 #10
0
 public Task Record(IInsightData data)
 {
     throw new NotImplementedException();
 }
コード例 #11
0
ファイル: Visualizer.cs プロジェクト: maximrub/exrin
 public void AddInsight(IInsightData data)
 {
     // throw new NotImplementedException();
 }
コード例 #12
0
ファイル: InsightStorage.cs プロジェクト: exrin/Exrin
 public Task Write(IInsightData data)
 {
     _debugManager?.AddInsight(data);
     return Task.FromResult(true);
 }
コード例 #13
0
ファイル: ApplicationInsights.cs プロジェクト: exrin/Exrin
 public Task TrackRaw(IInsightData data)
 {
     try
     {
         Store(data);
         return Task.FromResult(true);
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.Message);
         return Task.FromResult(false);
     }
 }
コード例 #14
0
ファイル: MemoryInsightStorage.cs プロジェクト: exrin/Exrin
 public Task Delete(IInsightData data)
 {
     _storage.Remove(_storage.First(d => d.Id == data.Id));
     return Task.FromResult(true);
 }
コード例 #15
0
ファイル: InsightStorage.cs プロジェクト: maximrub/exrin
 public Task Write(IInsightData data)
 {
     throw new NotImplementedException();
 }
コード例 #16
0
ファイル: ApplicationInsights.cs プロジェクト: exrin/Exrin
        public void Finalize(IInsightData data)
        {
            // Finalize in background thread, no need to keep the app waiting.
            Task.Run(async () =>
            {
                await FillData(data);

                Store(data);
            });
        }
コード例 #17
0
ファイル: ApplicationInsights.cs プロジェクト: exrin/Exrin
        /// <summary>
        /// Used to fill out the Insight Data with variables that must be obtained
        /// before the execution of the app continues.
        /// </summary>
        /// <param name="data"></param>
        private Task FillInThreadData(IInsightData data)
        {
            data.ViewName = _navigationState.ViewName;

            return Task.FromResult(true);
        }
コード例 #18
0
ファイル: MemoryInsightStorage.cs プロジェクト: exrin/Exrin
 public Task Write(IInsightData data)
 {
     _storage.Add(data);
     return Task.FromResult(true);
 }
コード例 #19
0
 public Task Delete(IInsightData data)
 {
     _storage.Remove(_storage.First(d => d.Id == data.Id));
     return(Task.FromResult(true));
 }
コード例 #20
0
ファイル: DebugManager.cs プロジェクト: maximrub/exrin
 public void AddInsight(IInsightData data)
 {
     _visualizer?.AddInsight(data);
 }
コード例 #21
0
 public Task Write(IInsightData data)
 {
     _storage.Add(data);
     return(Task.FromResult(true));
 }
コード例 #22
0
ファイル: ApplicationInsights.cs プロジェクト: exrin/Exrin
 /// <summary>
 /// Store event in file for transmission
 /// </summary>
 /// <param name="data"></param>
 private void Store(IInsightData data)
 {
     try
     {
         queue.Enqueue(data);
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.Message);
     }
 }
コード例 #23
0
ファイル: InsightStorage.cs プロジェクト: exrin/Exrin
 public Task Delete(IInsightData data)
 {
     return Task.FromResult(true);
 }
コード例 #24
0
ファイル: ApplicationInsights.cs プロジェクト: maximrub/exrin
        /// <summary>
        /// Used to fill out the Insight Data with variables that must be obtained
        /// before the execution of the app continues.
        /// </summary>
        /// <param name="data"></param>
        private Task FillInThreadData(IInsightData data)
        {
            data.ViewName = _navigationState.ViewName;

            return(Task.FromResult(true));
        }
コード例 #25
0
ファイル: Visualizer.cs プロジェクト: exrin/Exrin
 public void AddInsight(IInsightData data)
 {
    // throw new NotImplementedException();
 }
コード例 #26
0
ファイル: DebugManager.cs プロジェクト: exrin/Exrin
 public void AddInsight(IInsightData data)
 {
     _visualizer?.AddInsight(data);
 }
コード例 #27
0
ファイル: InsightProvider.cs プロジェクト: exrin/Exrin
		/// <summary>
		/// Saves to storage for later processing.
		/// </summary>
		/// <param name="data"></param>
		/// <returns></returns>
		public virtual async Task Record(IInsightData data)
		{
			await _storage.Write(data);
		}
コード例 #28
0
ファイル: InsightProvider.cs プロジェクト: maximrub/exrin
 /// <summary>
 /// Saves to storage for later processing.
 /// </summary>
 /// <param name="data"></param>
 /// <returns></returns>
 public virtual async Task Record(IInsightData data)
 {
     await _storage.Write(data);
 }