Beispiel #1
0
        public static LogEventCollection Where(WhereDelegate <LogEventColumns> where, OrderBy <LogEventColumns> orderBy = null, Database database = null)
        {
            database = database ?? Db.For <LogEvent>();
            var results = new LogEventCollection(database, database.GetQuery <LogEventColumns, LogEvent>(where, orderBy), true);

            return(results);
        }
Beispiel #2
0
        /// <summary>
        /// Return every record in the LogEvent table.
        /// </summary>
        /// <param name="database">
        /// The database to load from or null
        /// </param>
        public static LogEventCollection LoadAll(Database database = null)
        {
            SqlStringBuilder sql = new SqlStringBuilder();

            sql.Select <LogEvent>();
            Database db      = database ?? Db.For <LogEvent>();
            var      results = new LogEventCollection(sql.GetDataTable(db));

            results.Database = db;
            return(results);
        }
Beispiel #3
0
        private static LogEvent OneOrThrow(LogEventCollection c)
        {
            if (c.Count == 1)
            {
                return(c[0]);
            }
            else if (c.Count > 1)
            {
                throw new MultipleEntriesFoundException();
            }

            return(null);
        }
        public override List <LogEntry> GetLogEntries(DateTime from, DateTime to)
        {
            Args.ThrowIfNull(Logger, "Logger");
            Data.LogEventCollection data    = Data.LogEvent.Where(c => c.Time > from && c.Time < to, DaoLogger.Database);
            List <LogEntry>         results = new List <LogEntry>();

            foreach (Data.LogEvent eventData in data)
            {
                LogEntry entry = eventData.CopyAs <LogEntry>();
                Enum.TryParse <Severity>(eventData.Severity, out Severity s);
                entry.Severity = s;
                entry.MessageVariableValues = eventData.MessageVariableValues.DelimitSplit(",", ";");
                results.Add(entry);
            }

            return(results);
        }
Beispiel #5
0
        /// <summary>
        /// This method is intended to respond to client side Qi queries.
        /// Use of this method from .Net should be avoided in favor of
        /// one of the methods that take a delegate of type
        /// WhereDelegate&lt;LogEventColumns&gt;.
        /// </summary>
        /// <param name="where"></param>
        /// <param name="database"></param>
        public static LogEventCollection Where(QiQuery where, Database database = null)
        {
            var results = new LogEventCollection(database, Select <LogEventColumns> .From <LogEvent>().Where(where, database));

            return(results);
        }