コード例 #1
0
 public CommonService(ITaskRepository taskRepository, UserContext userContext, ILogRepository logRepository,
                      LogModelFactory logModelFactory, IRequestorRepository requestorRepository, IUserRepository userRepository,
                      UserModelFactory userModelFactory, ApplicantSkillModelFactory applicantSkillModelFactory,
                      SkillModelFactory skillModelFactory, SuggestionModelFactory suggestionModelFactory,
                      IServiceLineRepository serviceLineRepository, ServiceLineModelFactory serviceLineModelFactory,
                      ITaskTypeRepository taskTypeRepository, TaskTypeModelFactory taskTypeModelFactory, OfferingModelFactory offeringModelFactory, UserPointsModelFactory userPointsModelFactory,
                      ApprovedApplicantModelFactory approvedApplicantModelFactory, PortfolioModelFactory portfolioModelFactory, IOfferingRepository offeringRepository,
                      IApprovedApplicantRepository approvedApplicantRepository, IPortfolioRepository portfolioRepository, IUserPointsRepository userPointsRepository)
 {
     _taskRepository                = taskRepository;
     _logModelFactory               = logModelFactory;
     _userContext                   = userContext;
     _logRepository                 = logRepository;
     _requestorRepository           = requestorRepository;
     _userRepository                = userRepository;
     _userModelFactory              = userModelFactory;
     _applicantSkillModelFactory    = applicantSkillModelFactory;
     _skillModelFactory             = skillModelFactory;
     _suggestionModelFactory        = suggestionModelFactory;
     _serviceLineRepository         = serviceLineRepository;
     _serviceLineModelFactory       = serviceLineModelFactory;
     _taskTypeModelFactory          = taskTypeModelFactory;
     _taskTypeRepository            = taskTypeRepository;
     _offeringModelFactory          = offeringModelFactory;
     _portfolioModelFactory         = portfolioModelFactory;
     _offeringRepository            = offeringRepository;
     _portfolioRepository           = portfolioRepository;
     _approvedApplicantRepository   = approvedApplicantRepository;
     _approvedApplicantModelFactory = approvedApplicantModelFactory;
     _userPointsModelFactory        = userPointsModelFactory;
     _userPointsRepository          = userPointsRepository;
 }
コード例 #2
0
        private async Task <List <LogModel> > ExecuteQuery(ManagementScope remote, DateTime start, DateTime end, string messagequeryvalue, LogTypeEnum logType)
        {
            if (messagequeryvalue == null)
            {
                messagequeryvalue = string.Empty;
            }

            string escapedMessageQueryParameter = Regex.Replace(messagequeryvalue, "([\\\\''\"])", @"\$1");

            if (remote != null)
            {
                return(await Task.Run(() =>
                {
                    string timeBasedQuery = this.BuildTimeBasedQueryFromDates(start, end);
                    string logfileName = this.GetLogFileName(logType);

                    ObjectQuery query = new ObjectQuery($"SELECT * FROM Win32_NTLogEvent where (logfile='{logfileName}' and Message like '%{escapedMessageQueryParameter}%'{timeBasedQuery})");
                    ManagementObjectSearcher searcher = new ManagementObjectSearcher(remote, query);

                    ManagementObjectCollection querycollection = searcher.Get();

                    ConcurrentBag <LogModel> bag = new ConcurrentBag <LogModel>();

                    if (querycollection?.Count == 0)
                    {
                        return bag.ToList();
                    }

                    ManagementBaseObject[] resultarray = new ManagementBaseObject[querycollection.Count];
                    querycollection.CopyTo(resultarray, 0);

                    Parallel.ForEach(resultarray, (mbo) =>
                    {
                        bag.Add(LogModelFactory.BuildItemFromManagementBaseObject(mbo));
                    });

                    return bag.ToList();
                }));
            }
            else
            {
                return(null);
            }
        }