Beispiel #1
0
        protected void CreateOutputDirectory()
        {
            String path = Path.Combine(CTTSettings.GetOutputDir(), NetworkTrace.Filename);

            if (Directory.Exists(path))
            {
                String[] directories = Directory.GetDirectories(Directory.GetParent(path).FullName);
                int      nDir        = 1;
                directories.ToList().ForEach(directory =>
                {
                    if (Regex.IsMatch(directory, String.Format(@"{0}_\d", NetworkTrace.Filename)))
                    {
                        int nCurDir = int.Parse(directory.Substring(directory.LastIndexOf("_", StringComparison.Ordinal) + 1));
                        if (nCurDir == nDir)
                        {
                            ++nDir;
                        }
                    }
                });

                path = String.Join("_", path, nDir);
            }

            OutputFolder        = Directory.CreateDirectory(path).FullName;
            ConversationsFolder = Directory.CreateDirectory(Path.Combine(OutputFolder, "conversations")).FullName;
        }
Beispiel #2
0
        private void LogForm_Load(object sender, EventArgs e)
        {
            LoadLog();

            mWatcher = new FileSystemWatcher(CTTSettings.GetOutputDir())
            {
                NotifyFilter          = NotifyFilters.LastWrite,
                Filter                = Path.GetFileName(Settings.Default.LogFilename),
                IncludeSubdirectories = false,
                EnableRaisingEvents   = true
            };

            mWatcher.Changed += (o, args) => Invoke(new Action(LoadLog));
        }
        public override void Generate(String pdfFilename)
        {
            var doc = XElement.Load(mTemplatePath);

            ReplaceAttributeValue(doc, ID_ONVIF_LOGO, "src", Path.Combine(CTTSettings.GetStylesheetsDir(), "onvif_doc_template_logo.jpg")); // TODO resource

            ReplaceIds(doc, Info);

            AddDevicesList(doc);
            FillDevicesList(doc);

            AddErratumList(doc, mErratumTable.Count);
            FillErratumList(doc, mErratumTable);

            RenderPdf(doc, Path.Combine(CTTSettings.GetOutputDir(), pdfFilename));
        }
Beispiel #4
0
        public override void Generate(String pdfFilename)
        {
            var doc = XElement.Load(mTemplatePath);

            ReplaceAttributeValue(doc, ID_ONVIF_LOGO, "src", Path.Combine(CTTSettings.GetStylesheetsDir(), "onvif_doc_template_logo.jpg")); // TODO resource

            ReplaceIds(doc, Info);

            //PrintUniqueIds(xmlDoc);

            AddDevicesList(doc);  // modify xml

            FillDevicesList(doc); // add device info

            RenderPdf(doc, Path.Combine(CTTSettings.GetOutputDir(), pdfFilename));
        }
        private void ShowDoCDialog()
        {
            sFDConformance.FileName   = conformanceInfoView.Info.GetDoCFilename();
            sFDConformance.DefaultExt = Path.GetExtension(sFDConformance.FileName);
            DialogResult dResult = sFDConformance.ShowDialog();

            if (DialogResult.OK != dResult)
            {
                return;
            }

            String filename = sFDConformance.FileName;

            var generator = new DoCGenerator(conformanceInfoView.Info, CTTSettings.GetDoCTemplateFilename());

            generator.Generate(filename);
        }
Beispiel #6
0
 private void DeleteOutputFolder()
 {
     try
     {
         String outputDir = CTTSettings.GetOutputDir();
         if (Directory.Exists(outputDir))
         {
             String[] directories = Directory.GetDirectories(outputDir);
             foreach (String dir in directories)
             {
                 Directory.Delete(dir, true);
             }
         }
     }
     catch (IOException e)
     {
         Logger.WriteLine(e.ToString());
     }
 }
Beispiel #7
0
        /// <summary>
        /// Start Testing button handler
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void btnStartTesting_Click(object sender, EventArgs e)
        {
            if (NetworkTraceSet.LoadedTraces.All(item => NetworkTraceStatus.Parsed == item.Status))
            {
                return;
            }

            btnStartTesting.Enabled = false;

            var traces = NetworkTraceSet.LoadedTraces.Where(item => NetworkTraceStatus.Parsed != item.Status).ToList();

            await Task.Run(() =>
            {
                foreach (var trace in traces)
                {
                    ApplicationStatus.SetProgress(0);
                    trace.Status = NetworkTraceStatus.InProgress;
                    UpdateTracesList();

                    var parser = new NTParser(CTTSettings.GetProtocols(), trace);
                    parser.OnProgressChanged += OnProgressChanged;

                    trace.Parser = parser;

                    parser.Run();

                    trace.Status = NetworkTraceStatus.Parsed;
                    UpdateTracesList();
                    ApplicationStatus.SetProgress(100);
                }
            }, mTokenSource.Token);

            UpdateUnitList();
            ApplicationStatus.SetStatus("Parsing process has been completed.");

            await Task.Run(() =>
            {
                ConversationList.Instance.Validate();
                ApplicationStatus.SetStatus("Done!");
                StateManager.SetState(ApplicationState.Idle);
            });
        }
Beispiel #8
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            var emptyCellsList =
                dGVErrata.Rows.Cast <DataGridViewRow>()
                .Where(row => String.IsNullOrEmpty(row.Cells[1].EditedFormattedValue.ToString()))
                .Select(row => row.Cells[1])
                .ToList();

            if (emptyCellsList.Any())
            {
                emptyCellsList.ForEach(item => item.ErrorText = "this field is required"); //TODO
                return;
            }


            DialogResult dResult = fBDConformance.ShowDialog();

            if (DialogResult.OK != dResult)
            {
                return;
            }

            DoCGenerator dGenerator = new DoCGenerator(CTTSettings.GetDoCErrataTemplateFilename());

            String docFilename = Path.Combine(fBDConformance.SelectedPath, GetDoCFilename());

            dGenerator.Generate(mConformanceValues, GetErratumNumbers(), docFilename);

            String featureListFilename = Path.Combine(fBDConformance.SelectedPath, GetFeatureListFilename());

            new FeatureListGenerator(mConformanceValues).Generate(featureListFilename);

            //PdfViewer.View(docFilename);

            Close();
        }
Beispiel #9
0
 private void userManualStripMenuItem_Click(object sender, EventArgs e)
 {
     Help.ShowHelp(this, CTTSettings.GetUserManualFilename());
 }
Beispiel #10
0
 private void lblEULA_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
 {
     Process.Start(CTTSettings.GetLicenseFilename());
 }
Beispiel #11
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            var emptyCellsList =
                dGVErrata.Rows.Cast <DataGridViewRow>()
                .Where(row => String.IsNullOrEmpty(row.Cells[1].EditedFormattedValue.ToString()))
                .Select(row => row.Cells[1])
                .ToList();

            if (0 != emptyCellsList.Count)
            {
                emptyCellsList.ForEach(item => item.ErrorText = "this field is required");
                return;
            }

            sFDConformance.FileName = mConformanceInfo.GetDoCFilename(errata: true);
            DialogResult dResult = sFDConformance.ShowDialog();

            if (DialogResult.OK != dResult)
            {
                return;
            }

            String filename = sFDConformance.FileName;

            var generator = new DoCWithErrataGenerator(GetErratumTable(), mConformanceInfo, CTTSettings.GetDoCErrataTemplateFilename());

            generator.Generate(filename);

            //PdfViewer.View(docFilename);

            Close();
        }