/// <summary>
 /// Raises the <see>EventExceptionThrown</see> event.
 /// </summary>
 /// <param name="e">The event arguments.</param>
 protected virtual void OnEventExceptionThrown(EventExceptionEventArgs e)
 {
     if (EventExceptionThrown != null)
     {
         EventExceptionThrown(this, e);
     }
 }
 public static void ReportEventException(string profileName, EventExceptionEventArgs args)
 {
     try
     {
         ErrorLog.AddError(string.Format(CultureInfo.CurrentCulture, "Error in {0}:", profileName));
         ErrorLog.AddError(args.ToString("v"));
     }
     catch { }
 }
        partial void ReportException(Exception ex, params KeyValuePair <string, object>[] notes)
        {
            //Exception ex, Delegate callee, object invokee, EventArgs arguments, Priority priority, string eventName

            /*
             *          new KeyValuePair<string, object>("delegate", eh),
             *          new KeyValuePair<string, object>("Event", "ClanMemberListReceived"),
             *          new KeyValuePair<string, object>("param: priority", p),
             *          new KeyValuePair<string, object>("param: this", this),
             *          new KeyValuePair<string, object>("param: e", e)
             */
            Delegate  callee  = null;
            object    invokee = null;
            EventArgs args    = null;
            Priority  p       = default(Priority);
            string    name    = null;

            foreach (KeyValuePair <string, object> kvp in notes)
            {
                switch (kvp.Key)
                {
                case "delegate":
                    callee = kvp.Value as Delegate;
                    break;

                case "Event":
                    name = kvp.Value as string;
                    break;

                case "param: priority":
                    p = (Priority)kvp.Value;
                    break;

                case "param: this":
                    invokee = kvp.Value;
                    break;

                case "param: e":
                    args = kvp.Value as EventArgs;
                    break;
                }
            }

            EventExceptionEventArgs e3args = new EventExceptionEventArgs(ex, callee, invokee, args, p, name);

            OnEventExceptionThrown(e3args);
        }
partial         void ReportException(Exception ex, params KeyValuePair<string, object>[] notes)
        {
            //Exception ex, Delegate callee, object invokee, EventArgs arguments, Priority priority, string eventName
            /*
             *          new KeyValuePair<string, object>("delegate", eh),
                        new KeyValuePair<string, object>("Event", "ClanMemberListReceived"),
                        new KeyValuePair<string, object>("param: priority", p),
                        new KeyValuePair<string, object>("param: this", this),
                        new KeyValuePair<string, object>("param: e", e)
             */
            Delegate callee = null;
            object invokee = null;
            EventArgs args = null;
            Priority p = default(Priority);
            string name = null;

            foreach (KeyValuePair<string, object> kvp in notes)
            {
                switch (kvp.Key)
                {
                    case "delegate":
                        callee = kvp.Value as Delegate;
                        break;
                    case "Event":
                        name = kvp.Value as string;
                        break;
                    case "param: priority":
                        p = (Priority)kvp.Value;
                        break;
                    case "param: this":
                        invokee = kvp.Value;
                        break;
                    case "param: e":
                        args = kvp.Value as EventArgs;
                        break;
                }
            }

            EventExceptionEventArgs e3args = new EventExceptionEventArgs(ex, callee, invokee, args, p, name);
            OnEventExceptionThrown(e3args);
        }
Beispiel #5
0
        void client_EventExceptionThrown(object sender, EventExceptionEventArgs e)
        {
            try
            {
                GlobalErrorHandler.ReportEventException(m_jbClient.Settings.ProfileName, e);
            }
            catch (System.ComponentModel.Win32Exception w3e)
            {
                Debug.WriteLine(w3e.ToString(), "Not understood exception");
            }
            string assemblyFullName = e.FaultingMethod.Method.DeclaringType.Assembly.FullName;

            if (m_assemblyNamesToErrors.ContainsKey(assemblyFullName))
            {
                m_assemblyNamesToErrors[assemblyFullName]++;
            }
            else
            {
                m_assemblyNamesToErrors.Add(assemblyFullName, 1);
            }
        }
 /// <summary>
 /// Raises the <see>EventExceptionThrown</see> event.
 /// </summary>
 /// <param name="e">The event arguments.</param>
 protected virtual void OnEventExceptionThrown(EventExceptionEventArgs e)
 {
     if (EventExceptionThrown != null)
         EventExceptionThrown(this, e);
 }