コード例 #1
0
        public async Task B21_FileMapAddingImageMapBracketCodeToBody()
        {
            var db = await Db.Context();

            var mapImage = db.ImageContents.Single(x => x.Title == IronwoodImageInfo.MapContent01.Title);

            var mapFile = db.FileContents.Single(x => x.Title == TestFileInfo.MapContent01.Title);

            mapFile.BodyContent =
                $"{BracketCodeImages.Create(mapImage)} {Environment.NewLine}{Environment.NewLine}{mapFile.BodyContent}";

            mapFile.LastUpdatedBy = "Test B21";
            mapFile.LastUpdatedOn = DateTime.Now;

            var bodyUpdateReturn = await FileGenerator.SaveAndGenerateHtml(mapFile,
                                                                           UserSettingsSingleton.CurrentSettings().LocalMediaArchiveFileContentFile(mapFile), false, null,
                                                                           DebugTrackers.DebugProgressTracker());

            Assert.False(bodyUpdateReturn.generationReturn.HasError, bodyUpdateReturn.generationReturn.GenerationNote);

            var mapFileRefresh = db.FileContents.Single(x => x.Title == TestFileInfo.MapContent01.Title);

            Assert.AreEqual(mapImage.ContentId, mapFileRefresh.MainPicture,
                            "Adding an image code to the Map File Content Body didn't result in Main Image being set.");
        }
コード例 #2
0
        public void TestGenerateFullFile()
        {
            _generator = FileGenerator.CreateGenerator();

            var references = new[] { new Reference(@"first\reference"), new Reference(@"second\reference") };
            var assignment = new Assignment(new Identifier("localName"), new Constant("value"));
            var block      = new Block(new IStatement[] { assignment });
            var method     = new Method("methodName")
            {
                Body = block
            };
            var property = new Property("propertyName");
            var @class   = new Class("className")
            {
                Members = new IMember[] { property, method }
            };

            var file = new File
            {
                Namespace  = @"name\space",
                References = references,
                Classes    = new[] { @class }
            };

            var php = _generator.Generate(file);

            Assert.AreEqual(
                "<?php namespace name\\space;use first\\reference;use second\\reference;class className{private $propertyName;private function methodName(){$localName=\"value\";}}",
                php);
        }
コード例 #3
0
ファイル: MainApp.cs プロジェクト: antonioseric/codegenerator
 private void GenerateFiles()
 {
     if (_selectedTable == null)
     {
         return;
     }
     if (IsValidFolder(_InputTemplateFolder) && IsValidFolder(_OutputTemplateFolder))
     {
         try
         {
             var generator = new FileGenerator();
             generator.OnComplete += FileGeneratorCompleted;
             generator.CustomValue = _cvf.CustomValues;
             generator.Generate(_selectedTable, _InputTemplateFolder, _OutputTemplateFolder);
         }
         catch (Exception e)
         {
             MessageBox.Show(e.Message);
         }
     }
     else
     {
         SelectTemplatesDirectory();
     }
 }
コード例 #4
0
ファイル: Program.cs プロジェクト: yongweisun/SharpVk
        static void Main(string[] args)
        {
            var xmlCache  = new VkXmlCache(".\\VkTemplates");
            var jsonCache = new SpirvJsonCache(".\\VkTemplates");

            var parser    = new SpecParser(xmlCache, ".\\VkTemplates");
            var generator = new TypeGenerator();

            var types = generator.Generate(parser.Run());

            var fileGenerator = new FileGenerator("..\\..\\..\\SharpVk");

            foreach (var modelGenerator in new ModelGenerator <TypeSet>[]
            {
                new VkCommandsGenerator(),
                new VkHandleGenerator(),
                new VkDelegateGenerator(),
                new VkEnumGenerator(),
                new VkStructsGenerator(),
                new VkUnionsGenerator(),
                new VkExceptionGenerator(),
                new VkConstantGenerator(),
                new VkInteropStructsGenerator()
            })
            {
                modelGenerator.Run(types, fileGenerator);
            }

            new SpirvEnumGenerator().Run(jsonCache.GetSpirvModel(), fileGenerator);

            var grammarModel = jsonCache.GetSpirvGrammar();

            new SpirvOpCodeGenerator().Run(grammarModel, fileGenerator);
            new SpirvOperandKindGenerator().Run(grammarModel, fileGenerator);
        }
コード例 #5
0
        private static void WriteEvents(
            FileGenerator fileGenerator,
            Dictionary <string, Project.Configuration.BuildStepBase> buildEvents,
            Dictionary <string, string> bffSection,
            string relativeTo
            )
        {
            foreach (var buildEvent in buildEvents)
            {
                if (buildEvent.Value is Project.Configuration.BuildStepExecutable)
                {
                    var execCommand = buildEvent.Value as Project.Configuration.BuildStepExecutable;

                    using (fileGenerator.Declare("fastBuildPreBuildName", buildEvent.Key))
                        using (fileGenerator.Declare("fastBuildPrebuildExeFile", Util.PathGetRelative(relativeTo, execCommand.ExecutableFile)))
                            using (fileGenerator.Declare("fastBuildPreBuildInputFile", Util.PathGetRelative(relativeTo, execCommand.ExecutableInputFileArgumentOption)))
                                using (fileGenerator.Declare("fastBuildPreBuildOutputFile", Util.PathGetRelative(relativeTo, execCommand.ExecutableOutputFileArgumentOption)))
                                    using (fileGenerator.Declare("fastBuildPreBuildArguments", execCommand.ExecutableOtherArguments))
                                        using (fileGenerator.Declare("fastBuildPrebuildWorkingPath", execCommand.ExecutableWorkingDirectory == string.Empty ? FileGeneratorUtilities.RemoveLineTag : Util.PathGetRelative(relativeTo, execCommand.ExecutableWorkingDirectory)))
                                            using (fileGenerator.Declare("fastBuildPrebuildUseStdOutAsOutput", execCommand.FastBuildUseStdOutAsOutput ? "true" : FileGeneratorUtilities.RemoveLineTag))
                                            {
                                                string eventKey = fileGenerator.Resolver.Resolve(buildEvent.Key);
                                                if (!bffSection.ContainsKey(eventKey))
                                                {
                                                    bffSection.Add(eventKey, fileGenerator.Resolver.Resolve(Bff.Template.ConfigurationFile.GenericExcutableSection));
                                                }
                                            }
                }
                else if (buildEvent.Value is Project.Configuration.BuildStepCopy)
                {
                    var copyCommand = buildEvent.Value as Project.Configuration.BuildStepCopy;

                    string sourcePath      = Util.PathGetRelative(relativeTo, copyCommand.SourcePath);
                    string destinationPath = Util.PathGetRelative(relativeTo, copyCommand.DestinationPath);

                    using (fileGenerator.Declare("fastBuildCopyAlias", buildEvent.Key))
                        using (fileGenerator.Declare("fastBuildCopySource", sourcePath))
                            using (fileGenerator.Declare("fastBuildCopyDest", destinationPath))
                                using (fileGenerator.Declare("fastBuildCopyDirName", buildEvent.Key))
                                    using (fileGenerator.Declare("fastBuildCopyDirSourcePath", Util.EnsureTrailingSeparator(sourcePath)))
                                        using (fileGenerator.Declare("fastBuildCopyDirDestinationPath", Util.EnsureTrailingSeparator(destinationPath)))
                                            using (fileGenerator.Declare("fastBuildCopyDirRecurse", copyCommand.IsRecurse.ToString().ToLower()))
                                                using (fileGenerator.Declare("fastBuildCopyDirPattern", UtilityMethods.GetBffFileCopyPattern(copyCommand.CopyPattern)))
                                                {
                                                    string eventKey = fileGenerator.Resolver.Resolve(buildEvent.Key);
                                                    if (!bffSection.ContainsKey(eventKey))
                                                    {
                                                        if (copyCommand.IsFileCopy)
                                                        {
                                                            bffSection.Add(eventKey, fileGenerator.Resolver.Resolve(Bff.Template.ConfigurationFile.CopyFileSection));
                                                        }
                                                        else
                                                        {
                                                            bffSection.Add(eventKey, fileGenerator.Resolver.Resolve(Bff.Template.ConfigurationFile.CopyDirSection));
                                                        }
                                                    }
                                                }
                }
            }
        }
コード例 #6
0
        private void XMLPath_LostFocus(object sender, RoutedEventArgs e)
        {
            // Display wait cursor
            using (new WaitCursor())
            {
                if (XMLPath.Text.Length > 0)
                {
                    fileGenerator = new FileGenerator(@XMLPath.Text, new Dictionary <string, string>(), "", "", null);

                    solutions = fileGenerator.getAllSolutions();

                    int n = solutions.Length;

                    SolutionName.Items.Clear();
                    foreach (var i in solutions)
                    {
                        SolutionName.Items.Add(i);
                    }

                    if (SolutionName.Items.Count == 0)
                    {
                        Solution_TextBlock.Visibility = Visibility.Hidden;
                        SolutionName.Visibility       = Visibility.Hidden;
                    }
                }
            }
        }
コード例 #7
0
        public void HasherCalculateFileHash()
        {
            FileManager fileManager = new FileManager();
            Hasher      hasher      = new Hasher();
            int         fileSize    = 10000000;
            string      fileName    = "TestFile.dat";

            try
            {
                // Create a test file
                FileGenerator generator = new FileGenerator();
                generator.GenerateRandomBinaryFile(fileName, fileSize);

                Assert.IsTrue(fileManager.FileExists(fileName));
                Assert.IsTrue(fileManager.GetFileInfo(fileName).Length == fileSize);

                string hash = hasher.HashFile(fileName);

                byte[] fileBytes = File.ReadAllBytes(fileName);
                string hashBytes = hasher.Hash(fileBytes);

                Assert.IsTrue(hash.Equals(hashBytes));
            }
            finally
            {
                fileManager.DeleteFile(fileName);
            }
        }
コード例 #8
0
ファイル: Form1.cs プロジェクト: MoIdriez/CSharp
        private void ReceiveThread()
        {
            FileGenerator.Run();
            while (true)
            {
                _runSerialThread.WaitOne(Timeout.Infinite);

                while (true)
                {
                    try
                    {
                        // receive data
                        string msg = _serialPort.ReadLine();

                        if (msg.StartsWith("Data:"))
                        {
                            var sample = new Sample(msg.Replace("Data:", ""));
                            if (sample.Millis > 0)
                            {
                                _samples.Enqueue(sample);
                                DisplayResults(sample.ToString());
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        DisplayResults(ex.ToString());
                        _runSerialThread.Reset();
                        break;
                    }
                }
            }
        }
コード例 #9
0
ファイル: MasterBff.cs プロジェクト: xubingyue/Sharpmake
        private static void GenerateMasterBffGlobalSettingsFile(
            Builder builder,
            string masterBffGlobalConfigFile,
            MasterBffInfo masterBffInfo
            )
        {
            var fileGenerator = new FileGenerator();

            WriteMasterSettingsSection(fileGenerator, masterBffInfo);
            WriteMasterCompilerSection(fileGenerator, masterBffInfo);

            // remove all line that contain RemoveLineTag
            fileGenerator.RemoveTaggedLines();
            MemoryStream bffCleanMemoryStream = fileGenerator.ToMemoryStream();

            // Write master bff global settings file
            FileInfo bffFileInfo = new FileInfo(masterBffGlobalConfigFile);

            if (builder.Context.WriteGeneratedFile(null, bffFileInfo, bffCleanMemoryStream))
            {
                Project.AddFastbuildMasterGeneratedFile(masterBffGlobalConfigFile);
            }
            else
            {
                Project.IncrementFastBuildUpToDateFileCount();
            }
        }
コード例 #10
0
        public override void Run(SpirvModel model, FileGenerator fileGenerator)
        {
            fileGenerator.Generate("Spirv", "Enums", fileBuilder =>
            {
                fileBuilder.EmitNamespace("SharpVk.Spirv", namespaceBuilder =>
                {
                    foreach (var enumeration in model.Spv.Enum)
                    {
                        namespaceBuilder.EmitEnum(enumeration.Name, enumBuilder =>
                        {
                            bool isBit = enumeration.Type == "Bit";

                            if (isBit)
                            {
                                enumBuilder.EmitField("None", Literal(0));
                            }

                            foreach (var value in enumeration.Values)
                            {
                                var fieldValue = Literal(value.Value);

                                if (isBit)
                                {
                                    fieldValue = ShiftLeft(Literal(1), fieldValue);
                                }

                                enumBuilder.EmitField(value.Key, fieldValue);
                            }
                        }, Public);
                    }
                });
            });
        }
コード例 #11
0
        public void Generator(EntityModelSchemaGenerator modelGenerator, TemplateProcessor templateProcessor, EdmMapping mappings)
        {
            var entityName  = EntityType.Name.RemoveSpecialChar();
            var serviceHost = new EfTextTemplateHost
            {
                EntityType              = EntityType,
                EntityContainer         = modelGenerator.EntityContainer,
                Namespace               = TemplateCommon.serviceNamespace,
                ModelsNamespace         = TemplateCommon.modelsNamespace,
                MappingNamespace        = TemplateCommon.mappingNamespace,
                RepositoryBaseNamespace = TemplateCommon.repositoryBaseNamespace,
                CoreNamespace           = TemplateCommon.coreNamespace,
                RepositoryNamespace     = TemplateCommon.repositoryNamespace,
                EntityFrameworkVersion  = TemplateCommon.entityFrameworkVersion,
                TableSet = mappings.EntityMappings[EntityType].Item1,
                PropertyToColumnMappings = mappings.EntityMappings[EntityType].Item2,
                ManyToManyMappings       = mappings.ManyToManyMappings,
                EntityName = entityName
            };
            var serviceContents = templateProcessor.Process(Templates.ServiceTemplate, serviceHost);

            var servicePath = Path.Combine(Directory, entityName + "Service" + serviceHost.FileExtension);

            FileGenerator.AddNewFile(servicePath, serviceContents);
        }
コード例 #12
0
        private static string Tmall(FileGenerator fileGenerator)
        {
            StringBuilder builder = new StringBuilder();

            builder.AppendLine(Read("Header.txt"));

            builder.AppendLine(Read("Step_Begin.txt", "HomePage"));
            HomePage_Browser(builder, fileGenerator);
            HomePage_Attribute(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));

            builder.AppendLine(Read("Step_Begin.txt", "SearchPage"));
            SearchPage_Sort(builder, fileGenerator);
            SearchPage_PriceFilter(builder, fileGenerator);
            SearchPage_PageFind(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));


            builder.AppendLine(Read("Step_Begin.txt", "DetailPage"));
            ProductDetailPage_Browser(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));

            builder.AppendLine(Read("Footer.txt"));
            return(builder.ToString());
        }
コード例 #13
0
        private void GeneratePackagesConfig(Project.Configuration conf, IEnumerable <string> frameworks, IList <string> generatedFiles, IList <string> skipFiles)
        {
            var packagesConfigPath = PackagesConfigPath;

            // No NuGet references and no trace of a previous packages.config
            if (conf.ReferencesByNuGetPackage.Count == 0)
            {
                if (!File.Exists(packagesConfigPath))
                {
                    return;
                }
            }

            lock (s_packagesConfigLock)
            {
                if (conf.ReferencesByNuGetPackage.Count == 0)
                {
                    var fi = new FileInfo(packagesConfigPath);
                    if (!fi.IsReadOnly) // Do not delete packages.config submitted in P4
                    {
                        Util.TryDeleteFile(packagesConfigPath);
                    }
                    return;
                }

                if (IsGenerateNeeded(packagesConfigPath))
                {
                    FileGenerator fileGenerator = new FileGenerator();

                    fileGenerator.Write(Template.Begin);

                    // dependencies
                    for (int i = 0; i < conf.ReferencesByNuGetPackage.SortedValues.Count; ++i)
                    {
                        using (fileGenerator.Declare("dependency", conf.ReferencesByNuGetPackage.SortedValues[i]))
                        {
                            foreach (var framework in frameworks)
                            {
                                using (fileGenerator.Declare("framework", framework))
                                    fileGenerator.Write(Template.DependenciesItem);
                            }
                        }
                    }

                    fileGenerator.Write(Template.End);

                    bool written = _builder.Context.WriteGeneratedFile(GetType(), new FileInfo(packagesConfigPath), fileGenerator.ToMemoryStream());
                    if (written)
                    {
                        generatedFiles.Add(packagesConfigPath);
                    }
                    else
                    {
                        skipFiles.Add(packagesConfigPath);
                    }
                }
            }

            IsGenerated = true;
        }
コード例 #14
0
ファイル: XCWorkspace.cs プロジェクト: kudaba/Sharpmake
        private static void WriteSolutionItem(FileGenerator fileGenerator, SolutionItem solutionItem, int nbIndent = 0)
        {
            bool   isFolder = !solutionItem.IsFile;
            string indent   = new string('\t', nbIndent);

            if (isFolder)
            {
                SolutionFolder solutionFolder = solutionItem as SolutionFolder;

                using (fileGenerator.Declare("folderName", solutionFolder.Name))
                    using (fileGenerator.Declare("indent", indent))
                    {
                        fileGenerator.Write(Template.GroupBegin);
                    }

                foreach (var child in solutionFolder.Childs)
                {
                    WriteSolutionItem(fileGenerator, child, nbIndent + 1);
                }

                using (fileGenerator.Declare("indent", indent))
                {
                    fileGenerator.Write(Template.GroupEnd);
                }
            }
            else
            {
                using (fileGenerator.Declare("projectPath", solutionItem.Name))
                    using (fileGenerator.Declare("indent", indent))
                    {
                        fileGenerator.Write(Template.ProjectReferenceAbsolute);
                    }
            }
        }
コード例 #15
0
        public string GenerateProject(Project project, List <Project.Configuration> configurations, string projectPath, string projectFileName, out bool updated)
        {
            // Create the target folder.
            string solutionFolder = Util.GetCapitalizedPath(projectPath);

            Directory.CreateDirectory(solutionFolder);

            // Main solution file.
            string   solutionFileContentsPath = solutionFolder + Path.DirectorySeparatorChar + projectFileName + SolutionExtension;
            FileInfo solutionFileContentsInfo = new FileInfo(solutionFileContentsPath);

            var fileGenerator = new FileGenerator();

            using (fileGenerator.Declare("item", new ProjectSettings(project, configurations, fileGenerator.Resolver)))
            {
                fileGenerator.Write(Template.GlobalTemplate);
            }

            // Remove all line that contain RemoveLineTag
            fileGenerator.RemoveTaggedLines();

            // Write the solution file
            updated = _builder.Context.WriteGeneratedFile(project.GetType(), solutionFileContentsInfo, fileGenerator.ToMemoryStream());

            return(solutionFileContentsInfo.FullName);
        }
コード例 #16
0
        public override void SetUp()
        {
            base.SetUp();

            _fileGenerator = new FileGenerator("TestOutputPath");
            _script        = new Script(SchemaGenerationFirstStorageProviderDefinition, "SetupScript", "TearDownScript");
        }
コード例 #17
0
        private void btnGenerate_Click(object sender, EventArgs e)
        {
            Thread        worker;
            FileGenerator fg = new FileGenerator();

            //reset all displays
            pbrMain.Value       = 0;
            lblTask1.Visible    = false;
            lblTask2.Visible    = false;
            lblTask3.Visible    = false;
            btnGenerate.Enabled = false;
            fg.CreateFiles(null);

            //worker = new Thread(new ParameterizedThreadStart(fg.CreateFiles));
            //worker.Start(this);

            //try
            //{
            //    while (worker.IsAlive)
            //    {
            //        Thread.Sleep(100);
            //        renderStage();
            //    }
            //}
            //catch (Exception ex)
            //{
            //    MessageBox.Show(this, ex.Message, "Fatal Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            //}

            //MessageBox.Show(this, "Files generated successfully!", "File Generation Completed!", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
コード例 #18
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static void SearchPage_PageFind(StringBuilder builder, FileGenerator fileGenerator)
        {
            if (string.IsNullOrEmpty(fileGenerator.FindItemID) && string.IsNullOrEmpty(fileGenerator.FindWangWang))
            {
                throw new ConfigValidationException("FindItemID/FindWangWang");
            }

            string find = string.Empty;
            if (!string.IsNullOrEmpty(fileGenerator.FindItemID))
            {
                find = Read("SearchPage_FindItemID.txt", fileGenerator.FindItemID);
            }
            if (!string.IsNullOrEmpty(fileGenerator.FindWangWang))
            {
                find = Read("SearchPage_FindWangWang.txt", fileGenerator.FindWangWang);
            }

            int maxPage;
            if (!int.TryParse(fileGenerator.MaxPage, out maxPage))
            {
                maxPage = 10;
            }

            builder.AppendLine(Read("SearchPage_PageFind.txt", maxPage.ToString(), find));
        }
コード例 #19
0
        private static void SearchPage_PageFind(StringBuilder builder, FileGenerator fileGenerator)
        {
            if (string.IsNullOrEmpty(fileGenerator.FindItemID) && string.IsNullOrEmpty(fileGenerator.FindWangWang))
            {
                throw new ConfigValidationException("FindItemID/FindWangWang");
            }

            string find = string.Empty;

            if (!string.IsNullOrEmpty(fileGenerator.FindItemID))
            {
                find = Read("SearchPage_FindItemID.txt", fileGenerator.FindItemID);
            }
            if (!string.IsNullOrEmpty(fileGenerator.FindWangWang))
            {
                find = Read("SearchPage_FindWangWang.txt", fileGenerator.FindWangWang);
            }

            int maxPage;

            if (!int.TryParse(fileGenerator.MaxPage, out maxPage))
            {
                maxPage = 10;
            }

            builder.AppendLine(Read("SearchPage_PageFind.txt", maxPage.ToString(), find));
        }
コード例 #20
0
ファイル: MainLogic.cs プロジェクト: barbara11e/BillAccounter
        public void SetData(string tableName, string category, string billType, double amount, string date)
        {
            amount = (billType == "Расход") ? -amount : amount;
            Access ac = new Access();

            ac.SetDataToDataBase(tableName, category, billType, amount, date);
            FileGenerator.GenerateExcel();
        }
コード例 #21
0
    public void SpawnFloppyDisks()
    {
        FileGenerator fileGen = FileGenerator.instance;

        List <FileData> files   = new List <FileData>();
        List <Floppy>   floppys = new List <Floppy>();

        numberOfFloppy = fileGen.categories.Length;
        numberOfFile   = Mathf.RoundToInt((float)fileGen.Lenght * floppyFilesRatio);

        int averageFiles = Mathf.RoundToInt((float)numberOfFile / (float)numberOfFloppy);

        for (int i = 0; i < numberOfFloppy; i++)
        {
            Floppy newFloppy = Instantiate(prefab, transform).GetComponent <Floppy>();
            newFloppy.SetFloppy(i);
            newFloppy.transform.position = transform.position + Vector3.up * offset * i;
            newFloppy.transform.rotation = Quaternion.Euler(0, Random.value * 360, 0);
            floppys.Add(newFloppy);
        }

        int safeInt = 0;

        while (numberOfFile > 0)
        {
            int rand  = Random.Range(0, floppys.Count);
            int rand2 = Random.Range(0, fileGen.dataToSpawn.Count);

            if (floppys[rand].AddFile(fileGen.dataToSpawn[rand2]))
            {
                fileGen.dataToSpawn.RemoveAt(rand2);
                numberOfFile--;
            }

            safeInt++;
            if (safeInt >= 1000)
            {
                break;
            }
        }

        Debug.Log(PCManager.Instance);
        Debug.Log(PCManager.Instance.hardDrive);
        Debug.Log(PCManager.Instance.hardDrive.Files);

        foreach (FileData d in fileGen.dataToSpawn)
        {
            if (d != null)
            {
                PCManager.Instance.hardDrive.Files.Add(d);
            }
        }

        fileGen.dataToSpawn.Clear();

        PCManager.Instance.hardDrive.capacity = Mathf.RoundToInt(PCManager.Instance.hardDrive.GetUsedSpace() * 1.5f);
        PCManager.Instance.initialCapacity    = PCManager.Instance.hardDrive.capacity;
    }
コード例 #22
0
 /// <summary>
 /// Generates Swagger.
 /// </summary>
 /// <param name="settings">The settings.</param>
 /// <returns>The number of updated files.</returns>
 public static int GenerateSwagger(SwaggerGeneratorSettings settings) =>
 FileGenerator.GenerateFiles(
     new SwaggerParser {
     ServiceName = settings.ServiceName
 },
     new SwaggerGenerator {
     GeneratorName = nameof(SwaggerGenerator)
 },
     settings);
コード例 #23
0
        public void TestMethodGenerateFile()
        {
            FileGenerator f = new FileGenerator();

            for (int i = 0; i < 10; i++)
            {
                f.hipcio(null, i);
            }
        }
コード例 #24
0
        private static void WriteMasterCompilerSection(
            FileGenerator masterBffGenerator, MasterBffInfo masterBffInfo,
            Dictionary <string, CompilerSettings> masterCompilerSettings
            )
        {
            var sortedMasterCompileSettings =
                masterCompilerSettings
                .Where(x => x.Value.DevEnv == masterBffInfo.DevEnv)
                .Where(x => masterBffInfo.Platforms.TestPlatformFlags(x.Value.PlatformFlags))
                .OrderBy(x => x.Value.CompilerName);

            foreach (var compiler in sortedMasterCompileSettings)
            {
                var compilerSettings = compiler.Value;
                var compilerPlatform = compilerSettings.PlatformFlags;

                string fastBuildVS2012EnumBugWorkaround = FileGeneratorUtilities.RemoveLineTag;
                if (FastBuildSettings.EnableVS2012EnumBugWorkaround &&
                    compilerSettings.DevEnv == DevEnv.vs2012 &&
                    compilerPlatform.HasFlag(Platform.win64))
                {
                    fastBuildVS2012EnumBugWorkaround = ".VS2012EnumBugFix = true";
                }

                using (masterBffGenerator.Declare("fastbuildCompilerName", compiler.Key))
                    using (masterBffGenerator.Declare("fastBuildVisualStudioEnvironment", compilerSettings.RootPath))
                        using (masterBffGenerator.Declare("fastBuildCompilerExecutable", string.IsNullOrEmpty(compilerSettings.Executable) ? FileGeneratorUtilities.RemoveLineTag : compilerSettings.Executable))
                            using (masterBffGenerator.Declare("fastBuildExtraFiles", compilerSettings.ExtraFiles.Count > 0 ? UtilityMethods.FBuildCollectionFormat(compilerSettings.ExtraFiles, 20) : FileGeneratorUtilities.RemoveLineTag))
                                using (masterBffGenerator.Declare("fastBuildVS2012EnumBugWorkaround", fastBuildVS2012EnumBugWorkaround))
                                {
                                    masterBffGenerator.Write(Bff.Template.ConfigurationFile.CompilerSetting);
                                    foreach (var compilerConfiguration in compilerSettings.Configurations)
                                    {
                                        var compConf = compilerConfiguration.Value;

                                        if (!masterBffInfo.Platforms.Contains(compConf.Platform))
                                        {
                                            continue;
                                        }

                                        using (masterBffGenerator.Declare("fastBuildConfigurationName", compilerConfiguration.Key))
                                            using (masterBffGenerator.Declare("fastBuildBinPath", compConf.BinPath))
                                                using (masterBffGenerator.Declare("fastBuildLinkerPath", compConf.LinkerPath))
                                                    using (masterBffGenerator.Declare("fastBuildResourceCompiler", compConf.ResourceCompiler))
                                                        using (masterBffGenerator.Declare("fastBuildCompilerName", compConf.Compiler != FileGeneratorUtilities.RemoveLineTag ? compConf.Compiler : compiler.Key))
                                                            using (masterBffGenerator.Declare("fastBuildLibrarian", compConf.Librarian))
                                                                using (masterBffGenerator.Declare("fastBuildLinker", compConf.Linker))
                                                                    using (masterBffGenerator.Declare("fastBuildPlatformLibPaths", string.IsNullOrWhiteSpace(compConf.PlatformLibPaths) ? FileGeneratorUtilities.RemoveLineTag : compConf.PlatformLibPaths))
                                                                        using (masterBffGenerator.Declare("fastBuildExecutable", compConf.Executable))
                                                                            using (masterBffGenerator.Declare("fastBuildUsing", compConf.UsingOtherConfiguration))
                                                                            {
                                                                                masterBffGenerator.Write(Bff.Template.ConfigurationFile.CompilerConfiguration);
                                                                            }
                                    }
                                }
            }
        }
コード例 #25
0
ファイル: PackagesConfig.cs プロジェクト: Vazquinhos/EXON
        private void GeneratePackagesConfig(Project.Configuration conf, DotNetFramework frameworks, List <string> generatedFiles, List <string> skipFiles)
        {
            var projectConfigPath = PackagesConfigPath;

            // No NuGet references and no trace of a previous project.json
            if (conf.ReferencesByNuGetPackage.Count == 0)
            {
                if (!File.Exists(projectConfigPath))
                {
                    return;
                }
            }

            lock (s_projectConfigLock)
            {
                if (conf.ReferencesByNuGetPackage.Count == 0)
                {
                    var fi = new FileInfo(projectConfigPath);
                    if (!fi.IsReadOnly) // Do not delete project.json submitted in P4
                    {
                        Util.TryDeleteFile(projectConfigPath);
                    }
                    return;
                }

                if (IsGenerateNeeded(projectConfigPath))
                {
                    FileGenerator fileGenerator = new FileGenerator();

                    fileGenerator.Write(Template.Begin);

                    // dependencies
                    DotNetFramework dnfs = ((DotNetFramework[])Enum.GetValues(typeof(DotNetFramework))).First(f => frameworks.HasFlag(f));
                    for (int i = 0; i < conf.ReferencesByNuGetPackage.SortedValues.Count; ++i)
                    {
                        using (fileGenerator.Declare("dependency", conf.ReferencesByNuGetPackage.SortedValues[i]))
                            using (fileGenerator.Declare("framework", dnfs.ToFolderName()))
                                fileGenerator.Write(Template.DependenciesItem);
                    }

                    fileGenerator.Write(Template.End);

                    bool written = _builder.Context.WriteGeneratedFile(GetType(), new FileInfo(projectConfigPath), fileGenerator.ToMemoryStream());
                    if (written)
                    {
                        generatedFiles.Add(projectConfigPath);
                    }
                    else
                    {
                        skipFiles.Add(projectConfigPath);
                    }
                }
            }

            IsGenerated = true;
        }
コード例 #26
0
        private string Generate(Solution solution, List <Solution.Configuration> configurations, string solutionPath, string solutionFile, out bool updated)
        {
            // Create the target folder (solutions and projects are folders in XCode).
            string solutionFolder = Util.GetCapitalizedPath(Util.GetCapitalizedPath(solutionPath + Path.DirectorySeparatorChar + solutionFile + SolutionExtension));

            Directory.CreateDirectory(solutionFolder);

            // Main solution file.
            string   solutionFileContentsPath = solutionFolder + Path.DirectorySeparatorChar + SolutionContentsFileName;
            FileInfo solutionFileContentsInfo = new FileInfo(solutionFileContentsPath);

            bool projectsWereFiltered;
            List <Solution.ResolvedProject> solutionProjects = solution.GetResolvedProjects(configurations, out projectsWereFiltered).ToList();

            solutionProjects.Sort((a, b) => string.Compare(a.ProjectName, b.ProjectName)); // Ensure all projects are always in the same order to avoid random shuffles

            // Move the first executable project on top.
            foreach (Solution.ResolvedProject resolvedProject in solutionProjects)
            {
                if (resolvedProject.Configurations[0].Output == Project.Configuration.OutputType.Exe)
                {
                    solutionProjects.Remove(resolvedProject);
                    solutionProjects.Insert(0, resolvedProject);
                    break;
                }
            }

            if (solutionProjects.Count == 0)
            {
                updated = solutionFileContentsInfo.Exists;
                if (updated)
                {
                    File.Delete(solutionFileContentsPath);
                }
                return(solutionFolder);
            }

            var fileGenerator = new FileGenerator();

            fileGenerator.Write(Template.Header);

            foreach (Solution.ResolvedProject resolvedProject in solutionProjects)
            {
                using (fileGenerator.Declare("projectPath", resolvedProject.ProjectFile))
                {
                    fileGenerator.Write(Template.ProjectReferenceAbsolute);
                }
            }

            fileGenerator.Write(Template.Footer);

            // Write the solution file
            updated = _builder.Context.WriteGeneratedFile(solution.GetType(), solutionFileContentsInfo, fileGenerator.ToMemoryStream());

            return(solutionFileContentsInfo.FullName);
        }
コード例 #27
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static void ProductDetailPage_Browser(StringBuilder builder, FileGenerator fileGenerator)
        {
            int times;
            if (int.TryParse(fileGenerator.ItemBrowserTime, out times))
            {
                times = 0;
            }

            builder.AppendLine(Read("Detail_Product.txt"));
        }
コード例 #28
0
        public void can_create_buffers_from_file_without_regions()
        {
            var file = FileGenerator.Create("Program.cs", SourceCodeProvider.ConsoleProgramNoRegion);

            var buffers = BufferGenerator.CreateBuffers(file).ToList();

            buffers.Should().NotBeNullOrEmpty();
            buffers.Count.Should().Be(1);
            buffers.Should().Contain(b => b.Id == "Program.cs");
        }
コード例 #29
0
 private static void SearchPage_Sort(StringBuilder builder, FileGenerator fileGenerator)
 {
     if (!string.IsNullOrEmpty(fileGenerator.SearchPageBrowserType))
     {
         if (fileGenerator.SearchPageBrowserType != "默认")
         {
             builder.AppendLine(Read("HomePage_Browser.txt", fileGenerator.SearchPageBrowserType));
         }
     }
 }
コード例 #30
0
        public DirectoryTests()
        {
            _directory   = new Mock <IDirectory>();
            _errorLogger = new Mock <IErrorLogger>();
            _validator   = new Mock <IValidator>();

            SetupDirectory();

            _fileGenerator = new FileGenerator(_directory.Object, _errorLogger.Object, _validator.Object);
        }
コード例 #31
0
        public FileGenerator GetGenerator()
        {
            FileGenerator fileGenerator = new FileGenerator();

            fileGenerator.Name     = textBoxName.Text;
            fileGenerator.Encoding = GeneratorEncoding.GetEncoding(comboBoxEncoding.SelectedIndex);
            fileGenerator.FilePath = textBoxFileName.Text;

            return(fileGenerator);
        }
コード例 #32
0
        public void Can_create_buffer_from_fsharp_file()
        {
            var file    = FileGenerator.Create("Program.fs", SourceCodeProvider.FSharpConsoleProgramMultipleRegions);
            var buffers = BufferGenerator.CreateBuffers(file).ToList();

            buffers.Should().NotBeNullOrEmpty();
            buffers.Count.Should().Be(2);
            buffers.Should().Contain(b => b.Id == "Program.fs@alpha");
            buffers.Should().Contain(b => b.Id == "Program.fs@beta");
        }
コード例 #33
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static void HomePage_Attribute(StringBuilder builder, FileGenerator fileGenerator)
        {
            string file = string.Empty;
            if (string.IsNullOrEmpty(fileGenerator.Keyword))
            {
                throw new ConfigValidationException("keyword");
            }

            file = Read("HomePage_Attribute.txt", fileGenerator.Keyword);

            builder.AppendLine(file);
        }
コード例 #34
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static void HomePage_Browser(StringBuilder builder, FileGenerator fileGenerator)
        {
            string file = string.Empty;
            if (fileGenerator.Browser == "Tmall")
            {
                file = ConfigHelper.Read("HomePage_Browser.txt", "http://www.tmall.com/");
            }
            else if (fileGenerator.Browser == "Taobao")
            {
                file = ConfigHelper.Read("HomePage_Browser.txt", "http://www.taobao.com/");
            }

            builder.AppendLine(file);
        }
コード例 #35
0
ファイル: DNAController.cs プロジェクト: dangokc/CodeSnippets
        public AmarisMail.Attachment GenerateLoanCertificateAttachmentPdf(string viewString)
        {
            Dictionary<string, object> templateModel = new Dictionary<string, object>();
            templateModel.Add("loanedArticles", viewString);

            var list = TemplateExtensions.GetApplicationTemplates("AmarisGate");
            if (!list.Any()) return new AmarisMail.Attachment("", new byte[0], "");

            var template = TemplateExtensions.GetTemplateData(list.Last().TemplateId);
            var byteArray = template.DocumentData;

            var msTemplate = Document.GenerateDocument(byteArray, templateModel);

            var ms = new FileGenerator(msTemplate.ToArray()).ConvertTextHtmlOfContentControl(msTemplate.ToArray(), new[] { "loanedArticles" });

            return new AmarisMail.Attachment("LoanCertificate.pdf", ms.ToArray(), "application/pdf");
        }
コード例 #36
0
ファイル: DNAController.cs プロジェクト: dangokc/CodeSnippets
        // Generate the pdf
        public ActionResult GenerateLoanCertificatePDF(int materialRequestId)
        {
            var listLoans = DB.GenericMaterials.Where(material => material.LoanRequested && material.ComponentRequests.Any(request => request.MaterialRequestId == materialRequestId)).ToList();
            var viewString = RenderViewToString("_LoanArticles", listLoans);
            Dictionary<string, object> templateModel = new Dictionary<string, object>();
            templateModel.Add("loanedArticles", viewString);

            var list = TemplateExtensions.GetApplicationTemplates("AmarisGate");
            if (!list.Any()) return HttpNotFound();

            var template = TemplateExtensions.GetTemplateData(list.Last().TemplateId);
            var byteArray = template.DocumentData;

            var msTemplate = Document.GenerateDocument(byteArray, templateModel);

            var ms = new FileGenerator(msTemplate.ToArray()).ConvertTextHtmlOfContentControl(msTemplate.ToArray(), new[] { "loanedArticles" });
            //return the file
            return File(ms.ToArray(), "application/pdf", "LoanCertificate.pdf");
        }
コード例 #37
0
	public static int Main (string [] args)
	{
		FileGenerator[] generators = new FileGenerator[]{
			new HeaderFileGenerator (),
			new SourceFileGenerator (),
			new ConvertFileGenerator (),
			new MphPrototypeFileGenerator (),
		};

		MakeMap composite = new MakeMap ();
		foreach (FileGenerator g in generators) {
			composite.FileCreators += new CreateFileHandler (g.CreateFile);
			composite.AssemblyAttributesHandler += 
				new AssemblyAttributesHandler (g.WriteAssemblyAttributes);
			composite.TypeHandler += new TypeHandler (g.WriteType);
			composite.FileClosers += new CloseFileHandler (g.CloseFile);
		}

		return composite.Run (args);
	}
コード例 #38
0
ファイル: Tests.cs プロジェクト: spelltwister/TypeWalker
        public void FileGenerator_HandlesSeparateTypesNeatly()
        {
            // don't want two separate namespaces to duplicate used types;
            var rt = new DebugRuntime();
            var loader = AssemblyLoader.FromExecutingAssembly(rt);
            var fileGenerator = new FileGenerator(loader);
            string actual;

            var roots = new[] {
                ReferenceToClass(typeof(NamespaceOfTestClasses.BasicClass)),
                ReferenceToClass(typeof(AlternateNamespace.DistinctClass))
            };

            foreach (var root in roots)
            {
                Console.WriteLine(root);
            }

            fileGenerator.TryGenerate("test file", roots, rt, new LanguageGenerator[] { new TypeScriptGenerator() }, out actual);
            Assert.IsNotNull(actual, "Doesn't look like it generated");
            StringAssert.HaveTrimmedContent(Results.Resources.FileGeneratorResults, actual);
        }
コード例 #39
0
        private FileGenerator SaveFileSetting()
        {
            FileGenerator file = new FileGenerator();
            file.Browser = comboBoxBrowser.SelectedItem.ToString();
            file.Keyword = TxtKeyword.Text;
            file.FindWangWang = radioButtonWangWang.Checked ? TxtWangwang.Text : null;
            file.FindItemID = radioButtonItemID.Checked ? TxtItemID.Text : null;

            if (!radioButtonDefault.Checked)
            {
                foreach (Control c in GroupSearchType.Controls)
                {
                    if (c is RadioButton)
                    {
                        RadioButton r = c as RadioButton;
                        file.SearchPageBrowserType = r.Text;
                        break;
                    }
                }
            }

            if (checkBoxQuJian.Checked)
            {
                file.PriceFrom = PriceFrom.Value.ToString();
                file.PriceTo = PriceTo.Value.ToString();
            }
            if (checkBoxDiZhi.Checked)
            {
                file.Province = Province.Text;
                file.City = City.Text;
            }
            file.MaxPage = MaxPage.Value.ToString();

            file.ItemBrowserTime = ItemBrowserTimes.Value.ToString();
            file.ClickReview = checkBoxItemClickReview.Checked.ToString();

            return file;
        }
コード例 #40
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
 public static string Create(FileGenerator fileGenerator)
 {
     return Tmall(fileGenerator);
 }
コード例 #41
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static string Tmall(FileGenerator fileGenerator)
        {
            StringBuilder builder = new StringBuilder();
            builder.AppendLine(Read("Header.txt"));

            builder.AppendLine(Read("Step_Begin.txt", "HomePage"));
            HomePage_Browser(builder, fileGenerator);
            HomePage_Attribute(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));

            builder.AppendLine(Read("Step_Begin.txt", "SearchPage"));
            SearchPage_Sort(builder, fileGenerator);
            SearchPage_PriceFilter(builder, fileGenerator);
            SearchPage_PageFind(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));

            builder.AppendLine(Read("Step_Begin.txt", "DetailPage"));
            ProductDetailPage_Browser(builder, fileGenerator);
            builder.AppendLine(Read("Step_End.txt"));

            builder.AppendLine(Read("Footer.txt"));
            return builder.ToString();
        }
コード例 #42
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
 private static void SearchPage_Sort(StringBuilder builder, FileGenerator fileGenerator)
 {
     if (!string.IsNullOrEmpty(fileGenerator.SearchPageBrowserType))
     {
         if (fileGenerator.SearchPageBrowserType != "默认")
         {
             builder.AppendLine(Read("HomePage_Browser.txt", fileGenerator.SearchPageBrowserType));
         }
     }
 }
コード例 #43
0
ファイル: ConfigHelper.cs プロジェクト: pisceanfoot/xSimulate
        private static void SearchPage_PriceFilter(StringBuilder builder, FileGenerator fileGenerator)
        {
            if (string.IsNullOrEmpty(fileGenerator.PriceFrom) && string.IsNullOrEmpty(fileGenerator.PriceTo))
            {
                return;
            }

            string from = string.Empty;
            string to = string.Empty;

            if (!string.IsNullOrEmpty(fileGenerator.PriceFrom))
            {
                from = Read("SearchPage_PriceFrom.txt", fileGenerator.PriceFrom);
            }
            if (!string.IsNullOrEmpty(fileGenerator.PriceTo))
            {
                to = Read("SearchPage_PriceTO.txt", fileGenerator.PriceTo);
            }

            builder.AppendLine(Read("SearchPage_PriceFilter.txt", from, to));
        }