Example #1
0
        private void OnSnapshotReceivedEventHandler(
            object sender,
            SnapshotEventArgs args)
        {
            Log.Verbose("Snapshot: {@snapshot}", args.Snapshot);

            MarketDataRepository.ApplySnapshot(args.Snapshot);
        }
Example #2
0
 public void UpdateSnapshot(SnapshotEventArgs snapshot)
 {
     if (snapshot == null || snapshot.SnapshotInfo == null)
     {
         return;
     }
     listBoxDetails.Items.Clear();
     foreach (var record in snapshot.SnapshotInfo)
     {
         listBoxDetails.Items.Add(string.Format("{0} ({1})", record.Item1,
             record.Item2));
     }
 }
Example #3
0
        /// <summary>
        /// Called when the a request to create a snapshot has been received.
        /// </summary>
        /// <param name="sender">The sender.</param>
        /// <param name="e">The event data.</param>
        private void OnCreateSnapshotRequested(object sender, SnapshotEventArgs e)
        {
            this.log.DebugFormat("Received a request to create a snapshot at path '{0}'.", e.Path);

            var path = this.ConvertSnapshotPath(e.Path);

            if (path == null)
            {
                return;
            }

            this.log.DebugFormat("Creating block II model snapshots at path '{0}'.", path);

            try
            {
                this.log.DebugFormat("Attempting to create snapshot directory path '{0}' if it doesn't exist.", path);

                Directory.CreateDirectory(path);
            }
            catch (Exception ex)
            {
                this.log.Error($"Creating directory path '{path}' threw an exception.", ex);

                return;
            }

            foreach (var deviceBootstrapper in this.deviceBootstrappers)
            {
                var bootstrapperName = deviceBootstrapper.GetType().FullName;

                if (!(deviceBootstrapper is IDeviceServiceBootstrapperWithSnapshot))
                {
                    this.log.DebugFormat(
                        "Skipping device service bootstrapper '{0}' because it does not support snapshots.",
                        bootstrapperName);

                    continue;
                }

                var snapshotDeviceBootstrapper = (IDeviceServiceBootstrapperWithSnapshot)deviceBootstrapper;

                string snapshot;
                try
                {
                    this.log.DebugFormat(
                        "Getting snapshot from device service bootstrapper '{0}'.",
                        bootstrapperName);

                    snapshot = snapshotDeviceBootstrapper.GetSnapshot();

                    this.log.DebugFormat(
                        "Successfully received a snapshot from device service bootstrapper '{0}'.",
                        bootstrapperName);
                }
                catch (Exception ex)
                {
                    this.log.Error(
                        $"Getting snapshot from device service bootstrapper '{bootstrapperName}' threw an exception.",
                        ex);

                    continue;
                }

                if (string.IsNullOrEmpty(snapshot))
                {
                    this.log.DebugFormat(
                        "Not saving snapshot from device service bootstrapper '{0}' because it did not contain any data.",
                        bootstrapperName);

                    continue;
                }

                var snapshotFile = path + bootstrapperName + ".xml";

                try
                {
                    this.log.DebugFormat(
                        "Saving snapshot from device service bootstrapper '{0}' to file '{1}'.",
                        bootstrapperName,
                        snapshotFile);

                    File.WriteAllText(snapshotFile, snapshot, Encoding.UTF8);

                    this.log.DebugFormat(
                        "Successfully saved snapshot from device service bootstrapper '{0}'.",
                        bootstrapperName);
                }
                catch (Exception ex)
                {
                    this.log.Error(
                        $"Saving snapshot from device service bootstrapper '{bootstrapperName}' to file '{snapshotFile}' threw an exception.",
                        ex);
                }
            }

            this.log.DebugFormat("Block II model snapshots created successfully.");
        }
Example #4
0
 void _indexer_Changed(object sender, SnapshotEventArgs e)
 {
     lblDate.BeginInvoke(new Action(() =>
     {
         _updateInfo = e;
         lblDate.Text = DateTime.Now.ToString("G");
         if (_updateInfo.SnapshotInfo.Count > 0)
         {
             if (!string.IsNullOrEmpty(textBox.Text) &&
                 !string.IsNullOrWhiteSpace(textBox.Text))
             {
                 bulb.Visible = true;
             }
             btnMenu.Enabled = true;
             _detailsWindow.UpdateSnapshot(_updateInfo);
         }
     }));
 }
Example #5
0
 private void OnSnapshotManagerSnapshotRestored(object sender, SnapshotEventArgs e)
 {
     ShowNotification("Restored snapshot", $"Snapshot '{e.Snapshot.Title}' has been restored");
 }