Exemple #1
0
        public IColourMessage Write(IColourMessage message)
        {
            foreach (var entry in message.Build())
            {
                WriteEntry(Writer, entry);
            }

            Writer.SetDecoration(CurrentDecoration);
            return(message);
        }
        protected virtual Result AppendIssue(IColourMessage message, ResultIssue issue)
        {
            Result append;

            if (!(append = AppendIssuePrefix(message, issue)))
            {
                return(append);
            }

            return(append + AppendIssueMessage(message, issue));
        }
Exemple #3
0
 protected override Result LogMessage(IColourMessage message)
 {
     try
     {
         Writer.Write(message);
         return(Result.Success);
     }
     catch (Exception e)
     {
         return(Result.Error(e));
     }
 }
        protected virtual Result AppendTime(IColourMessage message, ResultIssue issue)
        {
            if (HasDecoration(LoggingDecorations.OmmitDate))
            {
                return(Result.Success);
            }

            var format = ReadConfig(c => c.TimestampFormat, ConfigDefaults.TimestampFormat);

            message.AppendFormat("({0}) ", issue.Date.ToString(format));

            return(Result.Success);
        }
Exemple #5
0
 protected override Result LogMessage(IColourMessage message)
 {
     try
     {
         var contents = message.BuildRaw();
         NLog.Log(LogLevel.Info, contents);
         return(Result.Success);
     }
     catch (Exception e)
     {
         return(Result.Error(e));
     }
 }
        protected virtual Result AppendLevel(IColourMessage message, ResultIssue issue)
        {
            if (HasDecoration(LoggingDecorations.OmmitIssueLevel))
            {
                return(Result.Success);
            }

            var colour = GetColour(issue.Level);

            message.Append("[");
            message.Append(colour, issue.Level.ToString());

            if (issue.IssueCode > 0)
            {
                message.AppendFormat(": {0}", issue.IssueCode);
            }

            message.Append("] ");

            return(Result.Success);
        }
        protected virtual Result AppendIssueMessage(IColourMessage message, ResultIssue issue)
        {
            try
            {
                LoggingIssue   logIssue;
                IColourMessage logMessage;
                if ((logIssue = issue as LoggingIssue) == null ||
                    (logMessage = logIssue.ColourMessage) == null ||
                    HasDecoration(LoggingDecorations.OmmitColour))
                {
                    message.AppendLine(issue.Message);
                    return(Result.Success);
                }

                message.Append(logMessage).Break();
                return(Result.Success);
            }
            catch (Exception e)
            {
                return(Result.Error(e));
            }
        }
 /// <summary>
 /// Builds a single debug logging message.
 /// </summary>
 /// <param name="message">Message to be logged.</param>
 public static LoggingResult SingleDebug(IColourMessage message)
 {
     return(SingleDebug(LoggingIssue.NonIssueCode, message));
 }
 protected static LoggingResult SingleResult(ResultIssueLevels level, long issueCode, IColourMessage message)
 {
     return(new LoggingResult(new LoggingIssue(message, level, issueCode)));
 }
 /// <summary>
 /// Builds a single trace logging message.
 /// </summary>
 /// <param name="issueCode">Issue code associated with message.</param>
 /// <param name="message">Message to be logged.</param>
 public static LoggingResult SingleTrace(long issueCode, IColourMessage message)
 {
     return(SingleResult(ResultIssueLevels.Trace, issueCode, message));
 }
 protected virtual Result BuildResultHeader(out IColourMessage message)
 {
     message = Colour.Message;
     return(Result.Success);
 }
 /// <summary>
 /// Builds a single warning logging message.
 /// </summary>
 /// <param name="issueCode">Issue code associated with message.</param>
 /// <param name="message">Message to be logged.</param>
 public static LoggingResult SingleWarning(long issueCode, IColourMessage message)
 {
     return(SingleResult(ResultIssueLevels.Warning, issueCode, message));
 }
 protected static string BuildMessage(IColourMessage message)
 {
     return(message == null
 ? string.Empty
 : message.BuildRaw());
 }
 protected internal LoggingIssue(IColourMessage message, ResultIssueLevels level, long issueCode = 0)
     : base(BuildMessage(message), level, issueCode)
 {
     _colourMessage = message;
 }
Exemple #15
0
 /// <summary>
 /// Writes an IColourMessage to the command line.
 /// </summary>
 /// <param name="message">The message to be written.</param>
 public static IColourMessage Write(IColourMessage message)
 {
     return(Writer.Write(message));
 }
 /// <summary>
 /// Logs an IColourMessage.
 /// </summary>
 /// <param name="message">Message to be logged.</param>
 protected abstract Result LogMessage(IColourMessage message);
 protected virtual Result AppendIssuePrefix(IColourMessage message, ResultIssue issue)
 {
     return(AppendTime(message, issue) + AppendLevel(message, issue));
 }