コード例 #1
0
 protected virtual bool FormatChannel(StringBuilder stringBuilder, DetailedLog log)
 {
     stringBuilder.Append('[');
     stringBuilder.Append(ColorExtensions.ColorText(log.Channel.name, Color.cyan));
     stringBuilder.Append(']');
     return(true);
 }
コード例 #2
0
 protected virtual string FormatLogString(DetailedLog log, string logText)
 {
     if (QuantumConsole.Instance != null)
     {
         return(ChirpConsoleUtils.WrapTextColorByLevel(logText, log.Type, QuantumConsole.Instance.Theme));
     }
     return(logText);
 }
コード例 #3
0
        protected virtual bool FormatMetadata(StringBuilder stringBuilder, DetailedLog log)
        {
            bool metadata = false;

                        #if CHIRP
            metadata |= FormatChannel(stringBuilder, log);
                        #endif
            metadata |= FormatRepeatCount(stringBuilder, log);

            return(metadata);
        }
コード例 #4
0
        protected virtual bool FormatRepeatCount(StringBuilder stringBuilder, DetailedLog log)
        {
            if (log.RepeatCount <= 0)
            {
                return(false);
            }

            stringBuilder.Append('[');
            stringBuilder.Append(ColorExtensions.ColorText((log.RepeatCount + 1).ToString(), Color.cyan));
            stringBuilder.Append(']');

            return(true);
        }
コード例 #5
0
        public string Format(DetailedLog log)
        {
            var stringBuilder = m_StringBuilder.Clear();

            // metadata
            if (FormatMetadata(stringBuilder, log))
            {
                FormatMetadataSeparator(stringBuilder, log);
            }

            FormatLogText(stringBuilder, log);

            return(stringBuilder.ToString());
        }
コード例 #6
0
        public override void Append(LogEvent logEvent)
        {
                        #if CHIRP
            if (QuantumConsole.Instance == null)
            {
                return;
            }

            DetailedLog detailedLog = new DetailedLog(CreateString(logEvent), true)
            {
                Type       = UnityLogUtil.ToUnityLogType(logEvent.level),
                Channel    = logEvent.channel,
                StackTrace = logEvent.stackTrace
            };
            QuantumConsole.Instance.LogToConsole(detailedLog);
                        #endif
        }
コード例 #7
0
        /// <summary>
        /// Adds the options to the list.
        /// </summary>
        public void AddToOptionList(OptionList options, bool clearList = true)
        {
            if (clearList)
            {
                options.Clear();
            }

            options["RootTopic"]      = RootTopic;
            options["UndefinedValue"] = UndefinedValue;
            options["PublishFormat"]  = PublishFormat;
            options["QosLevel"]       = QosLevel.ToString();
            options["Retain"]         = Retain.ToString();
            options["MaxQueueSize"]   = MaxQueueSize.ToString();
            options["DataLifetime"]   = DataLifetime.ToString();
            options["DetailedLog"]    = DetailedLog.ToString();
            options["DeviceFilter"]   = DeviceFilter.ToRangeString();
        }
コード例 #8
0
 protected virtual void FormatMetadataSeparator(StringBuilder stringBuilder, DetailedLog log)
 {
     stringBuilder.Append(' ');
 }
コード例 #9
0
 protected virtual void FormatLogText(StringBuilder stringBuilder, DetailedLog log)
 {
     stringBuilder.Append(FormatLogString(log, log.TextRaw));
 }
コード例 #10
0
 protected override string FormatLogString(DetailedLog log, string logText)
 {
     return(base.FormatLogString(log, FormatSearchHighlight(logText)));
 }