⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loghelper.cs

📁 破解的飞信源代码
💻 CS
字号:
namespace Imps.Client.Core
{
    using Imps.Client.Base;
    using Imps.Client.Utils;
    using System;
    using System.Text;

    internal static class LogHelper
    {
        public static void BuildLogTextForException(StringBuilder builder, Exception ex)
        {
            builder.Append(ex.ToString());
        }

        public static void BuildLogTextForImpsError(StringBuilder builder, ImpsErrorEventArgs e)
        {
            builder.Append("Summary:");
            builder.Append(e.Summary);
            if (!string.IsNullOrEmpty(e.Description))
            {
                builder.Append("Description:");
                builder.Append(e.Description);
            }
            if (e.ErrorException != null)
            {
                builder.Append("ErrorException:");
                builder.Append(e.ErrorException);
            }
        }

        public static void BuildLogTextForReceived(StringBuilder builder, SipMessageBase sipMsg)
        {
            builder.Append("SipMessage Received:\r\n");
            InnerBuildLogTextForSipMessage(builder, sipMsg);
        }

        public static void BuildLogTextForSent(StringBuilder builder, SipMessageBase sipMsg)
        {
            builder.Append("SipMessage to Send:\r\n");
            InnerBuildLogTextForSipMessage(builder, sipMsg);
        }

        private static void InnerBuildLogTextForSipMessage(StringBuilder builder, SipMessageBase sipMsg)
        {
            builder.Append(sipMsg.Message.ToString());
            if (sipMsg.Parent != null)
            {
                builder.Append("\r\n\r\nParent:\r\n");
                InnerBuildLogTextForSipMessage(builder, sipMsg.Parent);
            }
        }

        public static void LogError(string text)
        {
            ClientLogger.WriteGeneral(text, string.Empty, 20);
        }

        public static void LogException(Exception ex)
        {
            ClientLogger.WriteGeneral("Exception", ex.ToString(), 20);
        }

        public static void LogException(Exception ex, int level)
        {
            ClientLogger.WriteGeneral("Exception", ex.ToString(), level);
        }

        public static void LogFatalError(string text)
        {
            ClientLogger.WriteGeneral(text, string.Empty, 30);
        }

        public static void LogImpsError(ImpsErrorEventArgs e)
        {
            StringBuilder builder = new StringBuilder();
            BuildLogTextForImpsError(builder, e);
            ClientLogger.WriteGeneral("ImpsError", builder.ToString(), 20);
        }

        public static void LogInfo(string text)
        {
            ClientLogger.WriteGeneral(text, string.Empty, 0);
        }

        public static void LogLine(string text, int level)
        {
            ClientLogger.WriteGeneral(text, string.Empty, level);
        }

        public static void LogReceivedSipMessage(SipMessageBase sipMsg)
        {
            LogReceivedSipMessage(sipMsg, 10);
        }

        public static void LogReceivedSipMessage(SipMessageBase sipMsg, int level)
        {
            StringBuilder builder = new StringBuilder();
            builder.AppendLine(string.Format("Received {0}:", sipMsg.GetType().Name));
            BuildLogTextForReceived(builder, sipMsg);
            ClientLogger.WriteGeneral("接收到 SipMessage", builder.ToString(), level);
        }

        public static void LogSendSipMessageFailed(SipMessageBase sipMsg, string explain, Exception ex)
        {
            LogSendSipMessageFailed(sipMsg, explain, ex, 10);
        }

        public static void LogSendSipMessageFailed(SipMessageBase sipMsg, string explain, Exception ex, int level)
        {
            StringBuilder builder = new StringBuilder();
            BuildLogTextForSent(builder, sipMsg);
            builder.AppendLine();
            builder.AppendLine();
            if ((explain != null) && (explain.Length > 0))
            {
                builder.AppendLine("Failed Explain:");
                builder.AppendLine(explain);
                builder.AppendLine();
            }
            if (ex != null)
            {
                builder.AppendLine("Failed Exception:");
                BuildLogTextForException(builder, ex);
            }
            ClientLogger.WriteGeneral("发送 SipMessage 失败", builder.ToString(), level);
        }

        public static void LogWaitSipAckTimeout(SipInviteResponse sipInviteResp)
        {
            LogWaitSipAckTimeout(sipInviteResp, 20);
        }

        public static void LogWaitSipAckTimeout(SipInviteResponse sipInviteResp, int level)
        {
            StringBuilder builder = new StringBuilder();
            BuildLogTextForSent(builder, sipInviteResp);
            ClientLogger.WriteGeneral("等待 SipInviteResponse 超时", builder.ToString(), level);
        }

        public static void LogWaitSipResponseTimeout(SipRequest sipReq)
        {
            LogWaitSipResponseTimeout(sipReq, 10);
        }

        public static void LogWaitSipResponseTimeout(SipRequest sipReq, int level)
        {
            StringBuilder builder = new StringBuilder();
            BuildLogTextForSent(builder, sipReq);
            ClientLogger.WriteGeneral("等待 SipResponse 超时", builder.ToString(), level);
        }

        public static void LogWarning(string text)
        {
            ClientLogger.WriteGeneral(text, string.Empty, 10);
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -