Ejemplo n.º 1
0
        public SchedulerCore(SchedulerCoreParameters parameters)
        {
            Parameters = parameters;
            File       = new SCHFile();

            aTimer           = new System.Timers.Timer(Parameters.Interval);
            aTimer.Elapsed  += OnTimedEvent;
            aTimer.AutoReset = true;
            aTimer.Enabled   = true;

            if (System.IO.File.Exists(Parameters.FileName))
            {
                Parameters.Logger?.I(LoggerTag, "The specified file has been found");
                try
                {
                    File.LoadFromFile(Parameters.FileName);
                    Parameters.Logger?.I(LoggerTag, "Data have been loaded from file");
                }
                catch (Exception e)
                {
                    File = new SCHFile();
                    Parameters.OnErrorAction?.Invoke(e, "Unable to read data from file");
                }
            }
            else
            {
                File = new SCHFile();
                Parameters.Logger?.I(LoggerTag, "File not found =c");
            }

            pipeThread = new Thread(PipeThreadProc);
            pipeThread.Start();
        }
Ejemplo n.º 2
0
        public List <SCHElement> ParseElement()
        {
            pipeServer.WaitForConnection();
            byte[]       rawBytes = ReadFully(pipeServer);
            MemoryStream ms       = new MemoryStream(rawBytes);
            var          newElems = SCHFile.ParseByteArray(ms);

            foreach (var item in newElems)
            {
                item.Metadata.CreationDate = DateTime.Now;
            }

            ms.Close();
            return(newElems);
        }