Exemplo n.º 1
0
        public CollectRequest CreateCollectRequestCompleteAfterCollect(IDocumentSession session)
        {
            CollectRequest collectRequest = new CollectRequest();

            session.Store(collectRequest);
            CollectExecution collectExecution = new CollectExecution();

            session.Store(collectExecution);
            collectExecution.RequestId = collectRequest.Oid;
            collectExecution.SetDateStartCollect();
            collectExecution.SetDateEndCollect();
            ProbeResult probeResult = new ProbeResultFactory().CreateProbeResultForRegistryCollect();

            CollectFactory collectFactory = new CollectFactory(session);
            ProbeExecution probeExecution = collectFactory.CreateAProbeExecution(probeResult, "registry");
            CollectResult  collectResult  = new CollectResultFactory().CreateCollectResultForTheProbeExecution(probeResult);

            collectRequest.Result = collectResult;
            string systemCharacteristicsXml = this.GetSystemCharacteristicsInXML(".system_characteristics.oval.org.mitre.oval.sc.5368.xml");

            collectResult.SystemCharacteristics = systemCharacteristicsXml;

            probeExecution.SystemCharacteristics = collectResult.SystemCharacteristics;
            collectExecution.ProbeExecutions.Add(probeExecution);
            this.CreateTarget(session, collectRequest);
            //session.Store(collectRequest);
            collectExecution.RequestId = collectRequest.Oid;
            return(collectRequest);
        }
Exemplo n.º 2
0
        private void CreateCollectionExcutionWithError(IDocumentSession session, CollectRequest collectRequest, string capability, Exception ex, ExecutionLogBuilder executionLog)
        {
            CollectExecution collectExecution = this.CreateCollectExecution(session, collectRequest);

            collectExecution.SetDateStartCollect();
            EndsACollectRequestBecauseThisErrorIsUnrecoverable(collectRequest, capability, collectExecution, ex, executionLog);
        }
Exemplo n.º 3
0
 private void UpdateSystemInformationOfTarget(IDocumentSession session, CollectRequest collectRequest, FamilyEnumeration plataform, ExecutionLogBuilder executionLog)
 {
     if (!collectRequest.Target.IsSystemInformationDefined())
     {
         executionLog.CollectSystemInformation();
         ISystemInformationService systemInformationService = ProbeManager.GetSystemInformationService(plataform);
         if (systemInformationService != null)
         {
             try
             {
                 this.GetSystemInformationFromTarget(collectRequest, systemInformationService);
                 session.SaveChanges();
             }
             catch (RecoverableProbeException ex)
             {
                 CollectExecution collectExecution = this.CreateCollectExecution(session, collectRequest);
                 collectExecution.SetDateStartCollect();
                 this.ConfigureTheCollectRequestWithAnErrorProbeExecute(collectRequest, "SystemInformation", collectExecution, ex, executionLog);
                 session.SaveChanges();
                 throw new SystemInformationException(ex.Message, ex);
             }
             catch (Exception ex)
             {
                 CreateCollectionExcutionWithError(session, collectRequest, "SystemInformation", ex, executionLog);
                 session.SaveChanges();
                 throw new SystemInformationException(ex.Message, ex);
             }
         }
     }
 }
Exemplo n.º 4
0
        public CollectExecution CreateCollect(IDocumentSession session)
        {
            CollectExecution collect = new CollectExecution();

            collect.SetDateStartCollect();
            collect.SetDateEndCollect();
            session.Store(collect);
            return(collect);
        }
Exemplo n.º 5
0
        public CollectExecution CreateACollectExecutionWithError(IDocumentSession session)
        {
            CollectExecution collectExecution = new CollectExecution();

            collectExecution.SetDateStartCollect();
            ProbeExecution probeExecution = this.GetProbeExecutionWithError(session);

            collectExecution.ProbeExecutions.Add(probeExecution);
            collectExecution.SetDateEndCollect();
            return(collectExecution);
        }
Exemplo n.º 6
0
        private static CollectExecution CreateCollectExecution(IDocumentSession session, CollectRequest collectRequest)
        {
            var collectExecution =
                new CollectExecution()
            {
                RequestId = collectRequest.Oid
            };

            collectExecution.SetDateStartCollect();
            collectExecution.SetDateEndCollect();

            return(collectExecution);
        }
Exemplo n.º 7
0
        public CollectRequest CreateCollectRequestIncompleteAfterCollect(IDocumentSession session)
        {
            CollectRequest collectRequest = new CollectRequest();

            string        definitionsInXml = GetOvalObjectInXML(".definitions.fdcc_xpfirewall_oval.xml");
            StringBuilder builder          = new StringBuilder(definitionsInXml);
            var           newDefinitiondoc = new DefinitionDocument()
            {
                OriginalId = "01",
                Text       = builder.ToString()
            };

            session.Store(newDefinitiondoc);
            collectRequest.OvalDefinitionsId = newDefinitiondoc.Oid;
            session.Store(collectRequest);
            CollectExecution collectExecution = new CollectExecution();

            collectExecution.RequestId = collectRequest.Oid;
            session.Store(collectExecution);
            collectExecution.SetDateStartCollect();
            collectExecution.SetDateEndCollect();
            //collectRequest.Collects.Add(collectExecution);
            ProbeResult probeResult = new ProbeResultFactory().CreateProbeResultForRegistryCollect();

            CollectFactory collectFactory           = new CollectFactory(session);
            ProbeExecution probeExecution           = collectFactory.CreateAProbeExecution(probeResult, "registry");
            CollectResult  collectResult            = new CollectResultFactory().CreateCollectResultForTheProbeExecution(probeResult);
            string         systemCharacteristicsXml = this.GetSystemCharacteristicsInXML(".system_characteristics.fdcc_xpfirewall_oval.sc_incomplete.xml");

            collectResult.SystemCharacteristics = systemCharacteristicsXml;

            probeExecution.SystemCharacteristics = collectResult.SystemCharacteristics;
            collectExecution.ProbeExecutions.Add(probeExecution);
            // collectRequest.Collects.Add(collectExecution);
            this.CreateTarget(session, collectRequest);
            session.SaveChanges();
            return(collectRequest);
        }
Exemplo n.º 8
0
        /// <summary>
        /// This method is responsible to start of collect process.
        /// </summary>
        /// <param name="objectTypes">The object types.</param>
        public void ExecuteCollect(IDocumentSession session, CollectRequest collectRequest, FamilyEnumeration plataform)
        {
            ExecutionLogBuilder executionLog = new ExecutionLogBuilder();

            this.SetStatusToExecuting(collectRequest);

            CollectExecution collectExecution = this.CreateCollectExecution(session, collectRequest);

            try
            {
                collectExecution.SetDateStartCollect();
                this.StartCollect(session, collectRequest, collectExecution, plataform, executionLog);
                this.EndCollect(session, collectRequest, collectExecution);
            }
            catch (Exception ex)
            {
                var logMessage = String.Format(EXECUTION_ERROR_MESSAGE, ex.Message, ex.StackTrace);
                Logger.Error(logMessage);
                this.EndsACollectRequestBecauseThisErrorIsUnrecoverable(collectRequest, "Collect Manager", collectExecution, ex, executionLog);
            }

            session.SaveChanges();
        }