コード例 #1
0
        public bool IsInteresting(DatabaseConfiguration configuration = null)
        {
            if (configuration == null)
            {
                return(true);
            }
            if (!configuration.Enabled)
            {
                return(false);
            }

            var entitiesInteresting = false;

            if (NHEntityStatistics != null)
            {
                var empties = new List <NHEntityStatistics>();
                foreach (var entityStat in NHEntityStatistics)
                {
                    if (entityStat.IsInteresting(configuration.Entities))
                    {
                        entitiesInteresting = true;
                    }
                    else
                    {
                        empties.Add(entityStat);
                    }
                }
                NHEntityStatistics.RemoveAll(x => empties.Contains(x));
            }


            if (!entitiesInteresting)
            {
                NHEntityStatistics = null;
            }

            var sessionInteresting = NHSessionStatistics?.IsInteresting(configuration.Session) == true;

            if (!sessionInteresting)
            {
                NHSessionStatistics = null;
            }

            return(entitiesInteresting || sessionInteresting);
        }//end IsInteresting()
コード例 #2
0
 public NHStatistics()
 {
     NHEntityStatistics  = new List <NHEntityStatistics>();
     NHSessionStatistics = new NHSessionStatistics();
 }