コード例 #1
0
 public void ScriviLog(ModelLog.Log log)
 {
     using (StreamWriter writer = new StreamWriter(_filename, append: true))
     {
         writer.WriteLine(log.Entries.Last());
     }
 }
コード例 #2
0
        //Per i test

        public LogController(HomeLog _view)
        {
            string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            _logPersistence = new ConcreteLogPersistence(string.Join("\\", path, "log.txt"));
            _log            = _logPersistence.LeggiLog();
            _logView        = _view;
            //Assegnamento degli event handlers
            _logView.RadioButtonData.CheckedChanged         += ShowLogData;
            _logView.RadioButtonImpostazioni.CheckedChanged += ShowLogImpostazioni;
            _logView.ButtonReset.Click += ResetButtonHandler;
            _logView.RadioButtonBlacklist.CheckedChanged        += ShowLogBlacklist;
            _logView.RadioButtonCompressione.CheckedChanged     += ShowLogCompressione;
            _logView.RadioButtonSincronizzazione.CheckedChanged += ShowLogSincro;
            _logView.RadioButtonSistema.CheckedChanged          += ShowLogSistema;
            _logView.DateTimePickerStart.ValueChanged           += ShowLogData;
            _logView.DateTimePickerEnd.ValueChanged             += ShowLogData;


            //Popolo la grid con i dati dei log
            foreach (Entry entry in _log.Entries)
            {
                _logView.DataGridOutputLog.Rows.Add(entry.ToString().Replace('\t', ' '));
            }
        }
コード例 #3
0
        public ModelLog.Log LeggiLog()
        {
            ModelLog.Log log = new ModelLog.Log();
            try
            {
                using (StreamReader readtext = new StreamReader(_filename))
                {
                    string readMeText = null;
                    while ((readMeText = readtext.ReadLine()) != null)
                    {
                        //  29 / 06 / 2018 09:14:20 Blacklist aggiunto DESKTOP-TF7TLNM\massi    riccardo
                        //  29 / 06 / 2018 09:14:20 Impostazione aggiunta    DESKTOP - TF7TLNM\massi mydir   yourDir
                        //Esempio righe da parsare

                        //Parsing della parte fissa.
                        string[] fields     = readMeText.Split('\t');
                        string[] dateHour   = fields[0].Split(' ');
                        string   date       = dateHour[0];
                        string   hour       = dateHour[1];
                        string   entryType  = fields[1];
                        string   operazione = fields[2];
                        string   utente     = fields[3];

                        //Assegno i parametri che variano
                        switch (entryType)
                        {
                        case ("Blacklist"):
                            string badUser = fields[4];
                            log.AddEntry(EntryFactory.CreateEntry(entryType, operazione, date, hour,
                                                                  utenteMalevolo: badUser, utenteProprietario: Utente.GetNomeUtente()));
                            break;

                        case ("Impostazione"):
                            string sorgente     = fields[4];
                            string destinazione = fields[5];
                            log.AddEntry(EntryFactory.CreateEntry(entryType, operazione, date, hour,
                                                                  sorgente: sorgente, destinazione: destinazione));
                            break;

                        case ("Sincronizzazione"):
                            string source = fields[4];
                            if (operazione.Equals("file eliminato"))
                            {
                                log.AddEntry(EntryFactory.CreateEntry(entryType, operazione, date, hour,
                                                                      sorgente: source));
                            }
                            else
                            {
                                string dst = fields[5];
                                log.AddEntry(EntryFactory.CreateEntry(entryType, operazione, date, hour,
                                                                      sorgente: source, destinazione: dst));
                            }
                            break;
                        }
                    }
                }
            }catch (Exception e)
            {
            }
            return(log);
        }