www.pudn.com > UptoLog_SomeTestApplication.zip > UptoLogEvents.cs, change:2007-08-26,size:4914b
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using UptoLog.Satellite;
namespace SomeWindowsApplication
{
internal class UptoLogEvents
{
public static void SetupUptoLogEvents()
{
Log.LogException += LogException;
//Log.PreFatalErrorLog += PreFatalErrorLog;
//Log.PreErrorLog += PreErrorLog;
//Log.PreWarningLog += PreWarningLog;
//Log.PreTraceLog += PreTraceLog;
//Log.PreTimeMeasureLog += PreTimeMeasureLog;
//Log.FatalErrorLogged += FatalErrorLogged;
//Log.ErrorLogged += ErrorLogged;
//Log.WarningLogged += WarningLogged;
//Log.TraceLogged += TraceLogged;
//Log.TimeMeasureLogged += TimeMeasureLogged;
}
private static void LogException(object sender, LogExceptionEventArgs e)
{
MessageBox.Show(e.ExceptionObject.ToString(), "UptoLog error");
}
#region PreEvents
private static void PreFatalErrorLog(object sender, LogCancelEventArgs e)
{
DialogResult dr = MessageBox.Show("Log the data? " + Environment.NewLine + Environment.NewLine + MaxLinesCut(e.LoggedData), "Pre Fatal Error log", MessageBoxButtons.YesNo);
if (dr == DialogResult.No)
{
e.Cancel = true;
}
}
private static void PreErrorLog(object sender, LogCancelEventArgs e)
{
DialogResult dr = MessageBox.Show("Log the data? " + Environment.NewLine + Environment.NewLine + MaxLinesCut(e.LoggedData), "Pre Error log", MessageBoxButtons.YesNo);
if (dr == DialogResult.No)
{
e.Cancel = true;
}
}
private static void PreWarningLog(object sender, LogCancelEventArgs e)
{
DialogResult dr = MessageBox.Show("Log the data? " + Environment.NewLine + Environment.NewLine + MaxLinesCut(e.LoggedData), "Pre Warning log", MessageBoxButtons.YesNo);
if (dr == DialogResult.No)
{
e.Cancel = true;
}
}
private static void PreTraceLog(object sender, LogCancelEventArgs e)
{
DialogResult dr = MessageBox.Show("Log the data? " + Environment.NewLine + Environment.NewLine + MaxLinesCut(e.LoggedData), "Pre Trace log", MessageBoxButtons.YesNo);
if (dr == DialogResult.No)
{
e.Cancel = true;
}
}
private static void PreTimeMeasureLog(object sender, LogCancelEventArgs e)
{
DialogResult dr = MessageBox.Show("Log the data? " + Environment.NewLine + Environment.NewLine + MaxLinesCut(e.LoggedData), "Pre Time Measure log", MessageBoxButtons.YesNo);
if (dr == DialogResult.No)
{
e.Cancel = true;
}
}
#endregion
#region LoggedEvents
private static void FatalErrorLogged(object sender, LoggedEventArgs e)
{
ShowLoggedInfo(e as LoggedEventArgs);
}
private static void ErrorLogged(object sender, LoggedEventArgs e)
{
ShowLoggedInfo(e as LoggedEventArgs);
}
private static void WarningLogged(object sender, LoggedEventArgs e)
{
ShowLoggedInfo(e as LoggedEventArgs);
}
private static void TraceLogged(object sender, LoggedEventArgs e)
{
ShowLoggedInfo(e as LoggedEventArgs);
}
private static void TimeMeasureLogged(object sender, LoggedEventArgs e)
{
ShowLoggedInfo(e as LoggedEventArgs);
}
private static void ShowLoggedInfo(LoggedEventArgs e)
{
MessageBox.Show(e.DataLoggedMessage + Environment.NewLine + Environment.NewLine +
" -- " + e.LogGuid + " -- " + Environment.NewLine + Environment.NewLine +
MaxLinesCut(e.LoggedData) + Environment.NewLine, "Logged");
}
#endregion
private static string MaxLinesCut(string text)
{
if (string.IsNullOrEmpty(text))
{
return text;
}
int textMaxLength = 50;
string[] textArray = text.Split("\n".ToCharArray());
if (textArray != null && textArray.Length > textMaxLength)
{
StringBuilder textBuilder = new StringBuilder();
for (int i = 0; i < textMaxLength; i++)
{
textBuilder.Append(textArray[i]);
}
return textBuilder.ToString();
}
else
{
return text;
}
}
}
}