コード例 #1
0
 private void NotifyBatchEnd(object sender, PackageProjectEventArgs e)
 {
     if (_batchEnd != null)
     {
         NotifyDelegates(e, _batchEnd.GetInvocationList());
     }
 }
コード例 #2
0
 private void NotifyBatchStart(object sender, PackageProjectEventArgs e)
 {
     if (e.ProjectPath != null)
     {
         StartProjectUpdate(e.ProjectPath, new List <string>()
         {
             e.ProjectPath
         });
     }
 }
コード例 #3
0
        private void NotifyDelegates(PackageProjectEventArgs e, Delegate[] delegates)
        {
            VsPackageProjectMetadata eventData = new(e.Id, e.Name);

            for (int i = 0; i < delegates.Length; i++)
            {
#pragma warning disable CA1031 // Do not catch general exception types
                try
                {
                    var handler = (VsPackageProjectEventHandler)(delegates[i]);
                    handler(eventData);
                }
                catch
                {
                    // someone else's code threw an exception, but we should keep notifying other event subscribers
                }
#pragma warning restore CA1031 // Do not catch general exception types
            }
        }
コード例 #4
0
        private void NotifyBatchEnd(object sender, PackageProjectEventArgs e)
        {
            var handle = BatchEnd;

            handle?.Invoke(new VsPackageProjectMetadata(e.Id, e.Name));
        }