コード例 #1
0
    public void Read()
    {
        CheckPackagesConfigFileExistence();

        if (TestDataHelper.UseTestData)
        {
            Metadata.ProjectName = Metadata.ProjectName.Replace("Storiveo", "FourtyNineLabs");
            Metadata.ProjectName = Metadata.ProjectName.Replace("Niu", "FourtyNineLabs");
        }

        if (Metadata.ProjectType == SolutionProjectElement.CSharpProject)
        {
            var projectTypeManager = new ProjectTargetFrameworkExtractor(Metadata.ProjectFullPath);
            TargetFramework = projectTypeManager.GetTargetFramework();
            ProjectType     = Metadata.ProjectType;

            var fileReader = new FileReaderContext(TargetFramework, Metadata);
            Packages = fileReader.ReadNugetPackages();
            Version  = fileReader.ReadVersion();
        }
        else if (Metadata.ProjectType == SolutionProjectElement.VirtualFolder)
        {
            TargetFramework = ProjectTargetFramework.Unknown;
        }

        ProjectType = Metadata.ProjectType;
    }
コード例 #2
0
        private static void Main()
        {
            FileReaderContext fileReaderContext = new FileReaderContext();
            LineInterpreter   lineInterpreter   = new LineInterpreter();

            SimulatorMediator sim = new SimulatorMediator(fileReaderContext, lineInterpreter);

            sim.Notify(null, OperationEnum.StartSimulation);
        }
コード例 #3
0
    private void UpdateProjectNugetPackage(Project foundProject)
    {
        var  reader = new FileReaderContext(foundProject);
        bool found  = reader.TryGetPackageVersion(NugetPackage, out string packageVersion);

        if (found && !NugetVersion.Equals(packageVersion))
        {
            var writer = new FileWriterContext(foundProject);
            writer.UpdateNugetPackage(NugetPackage, NugetVersion);
        }
    }
コード例 #4
0
        protected void AddValueList(string[] fields, string[] columns, int rowIndex)
        {
            dynamic expandoObject     = new ExpandoObject();
            var     validationManager = FileReaderContext.Get <IValidationManager>();
            var     isValid           = true;

            //for loop is used for each column name
            for (var index = 0; index < columns.Length; index++)
            {
                //find column from fields index
                var column = columns[index];
                //find data from fields index
                var data = fields[index];
                //create expando object
                var validationItems = ValidationList.Where(i => i.PropertyName == column).ToArray();
                //if exist a validation for the property
                if (validationItems != null && validationItems.Length > 0)
                {
                    foreach (var validationItem in validationItems)
                    {
                        isValid = validationManager.ValidateData(validationItem.ValidationName, data, validationItem.Parameter);

                        if (!isValid)
                        {
                            var validationError = new ValidationError();
                            validationError.RowNumber         = rowIndex;
                            validationError.ColumnName        = column;
                            validationError.Data              = data;
                            validationError.ValidationMessage = validationItem.ValidationMessage;
                            ErrorList.Add(validationError);
                            expandoObject = null;
                            return;
                        }
                    }
                }
                ((IDictionary <string, object>)expandoObject).Add(column, data);
            }
            ValueList.Add(expandoObject);
            expandoObject = null;
        }
コード例 #5
0
 public SimulatorMediator(FileReaderContext fileReaderContext, LineInterpreter lineInterpreter)
 {
     _fileReaderContext = fileReaderContext;
     _lineInterpreter   = lineInterpreter;
     fileReaderContext.SetMediator(this);
 }
        static void Main(string[] args)
        {
            Console.WriteLine("Reading file starts.");

            FileReaderContext.InitializeContext();
            var fileReaderManager = FileReaderContext.Get <IFileReaderManager>();
            var formatManager     = FileReaderContext.Get <IFormatManager>();

            //we can set validation list which we want validate any area
            var validationList = new List <ValidationItem>();

            validationList.Add(new ValidationItem("name", ValidationNameConstants.UTF8Validation, "Name value must be UTF8 format."));
            validationList.Add(new ValidationItem("uri", ValidationNameConstants.URLValidation, "Uri value must be url format."));
            validationList.Add(new ValidationItem("stars", ValidationNameConstants.IntegerValidation, "Starts value must be integer."));
            validationList.Add(new ValidationItem("name", ValidationNameConstants.MaxLengthValidation, "Name value max length must be 5.", 5));

            Console.WriteLine("Reading CSV file");

            //csv file operations
            var csvFile = new CsvFile("Data\\hotels.csv", validationList);

            fileReaderManager.ReadFile(csvFile);
            var csvValueList = csvFile.GetValueList <ExcelData>();
            var csvErrorList = csvFile.GetErrorList();

            Console.WriteLine("Reading XLS file");

            //excel file operations(xls)
            var xlsExcelFile = new ExcelFile("Data\\hotels.xlsx", validationList, "hotels");

            fileReaderManager.ReadFile(xlsExcelFile);
            var xlsExcelValueList = csvFile.GetValueList <ExcelData>();
            var xlsExcelErrorList = csvFile.GetErrorList();

            Console.WriteLine("Reading XLSX file");

            //excel file operations(xlsx)
            var xlsxExcelFile = new ExcelFile("Data\\hotels.xls", validationList, "hotels");

            fileReaderManager.ReadFile(xlsxExcelFile);
            var xlsxExcelValueList = csvFile.GetValueList <ExcelData>();
            var xlsxExcelErrorList = csvFile.GetErrorList();

            //convert csv file to XML
            Console.WriteLine("Translating data into xml format.");

            var         xmlFormat = formatManager.FormatData(new XMLFormat(), csvFile, "Hotel");
            XmlDocument xdoc      = new XmlDocument();

            xdoc.LoadXml(xmlFormat.Data);
            var xmlName = string.Concat("Data\\hotels.", xmlFormat.Extension);
            var xmlPath = GetPath(xmlName);

            xdoc.Save(xmlPath);

            //convert xls excel file to XML
            Console.WriteLine("Translating data into json format.");

            var jsonFormat = formatManager.FormatData(new JSONFormat(), xlsExcelFile);
            var jsonName   = string.Concat("Data\\hotels.", jsonFormat.Extension);
            var jsonPath   = GetPath(jsonName);

            File.WriteAllText(jsonPath, jsonFormat.Data);


            Console.WriteLine("Process is finished. Check 'Data' folder in project for outputs.");
            Console.ReadKey();
        }