public void Init(Project project, ProjectNode projectNode, TemplateMeta meta, ICompilerExtension compilerExtension) { Project = project; ProjectNode = projectNode; TemplateMeta = meta; CompilerExtension = compilerExtension; ApiConfig = new Dictionary <ApiNode, ApiConfig>(); BuildApiConfigs(); }
public void Render(List <OutputFile> outputFiles, Project project, TemplateMeta meta) { _project = project; _meta = meta; foreach (var file in outputFiles) { var output = new List <string>(); _currentOutput = output; RenderNode(file.Root); file.RawContent = output; } }
public OutputFile(RootObject root, TemplateMeta meta) { Root = root; Meta = meta; switch (root) { case AbstractClass <EntityNode> e: FileName = Path.Combine(meta.Configuration.EntityLocation, $"{e.Name}.{GetFileExtension()}"); break; case AbstractClass <ApiNode> c: FileName = Path.Combine(meta.Configuration.ClientLocation, $"{c.Name}Client.{GetFileExtension()}"); break; } }
private string PrepareOutputDir(Project project, TemplateMeta templateMeta) { // here we need to copy the template folder to the output directory // and customize the template var templateName = templateMeta.TemplateData.Name; var sourceTemplatePath = Path.Combine(project.TemplateDirectory, templateName, templateMeta.TemplateLocation.Trim(Path.DirectorySeparatorChar)); var destTemplatePath = Path.Combine(project.OutputDirectory, $"{project.Name}-{templateName}"); if (_fileUtil.DirectoryExists(destTemplatePath)) { _fileUtil.DirectoryDelete(destTemplatePath, true); } _fileUtil.Copy(sourceTemplatePath, destTemplatePath); _templateService.CustomizeTemplate(project, destTemplatePath, templateMeta.TemplateData.Name); return(destTemplatePath); }
public PhpOutputFile(RootObject root, TemplateMeta meta) : base(root, meta) { }
public void btn_Ajouter() { if (CurrentAvailable != null) { // Si la dep n'est pas déjà présente if (!ListDependencies.Contains(CurrentAvailable)) { ListDependencies.Add(CurrentAvailable); // Which item are we managing dependencies for switch (ManagedItemType) { case DBItemType.Template: // What dependency type switch (DependencyType) { case DBItemType.Macro: App.Entities.TemplateMacroes.Add(TemplateMacro.newTemplateMacro(ManagedTemplate, (Macro)CurrentAvailable)); break; case DBItemType.Package: App.Entities.TemplatePackages.Add(TemplatePackage.newTemplatePackage(ManagedTemplate, (Package)CurrentAvailable)); break; case DBItemType.Meta: App.Entities.TemplateMetas.Add(TemplateMeta.newTemplateMeta(ManagedTemplate, (Meta)CurrentAvailable)); break; case DBItemType.Environment: App.Entities.TemplateEnvironments.Add(TemplateEnvironment.newTemplateEnvironment(ManagedTemplate, (LTG_Entity.Environment)CurrentAvailable)); break; default: break; } break; case DBItemType.Macro: ManagedMacro.Packages.Add((Package)CurrentAvailable); break; case DBItemType.Meta: switch (DependencyType) { case DBItemType.Macro: ManagedMeta.Macroes.Add((Macro)CurrentAvailable); break; case DBItemType.Package: ManagedMeta.Packages.Add((Package)CurrentAvailable); break; case DBItemType.Meta: ManagedMeta.Metas.Add((Meta)CurrentAvailable); break; case DBItemType.Environment: ManagedMeta.Environments.Add((LTG_Entity.Environment)CurrentAvailable); break; default: break; } break; case DBItemType.Environment: ManagedEnvironment.Packages.Add((Package)CurrentAvailable); break; default: break; } } try { App.Entities.SaveChanges(); } catch (Exception e) { Console.WriteLine(e); _dialogCoordinator.ShowMessageAsync(this, "Information", "Un problème est survenu lors de l'ajout"); } } }