Ejemplo n.º 1
0
 public CodeGenSettings(RequestResponsePairSettings settings)
 {
     Entity        = settings.Entity;
     Folder        = settings.Folder;
     Request       = settings.Request;
     Response      = settings.Response;
     ProjectFolder = settings.ProjectFolder;
 }
Ejemplo n.º 2
0
        private static void Go(string request, string entity, string bond, string preFix,
                               Dictionary <string, bool> runGenerators)
        {
            var settings = new RequestResponsePairSettings()
            {
                ProjectFolder = @"C:\Projects\KudoCode.ProjectWate\",
                Folder        = $"{entity}s",
                Response      = $"{request}{entity}Response",
                Bound         = bond,         //In or Out
                Prefix        = preFix,
                Entity        = entity,
                Request       = request,
            };

            CodeGenSettingsModule.Parameters = new List <string>()
            {
                $"<%request%>:{settings.Request}",
                $"<%entity%>:{settings.Entity}",
                $"<%response%>:{settings.Response}",
                $"<%folder%>:{settings.Folder}",
            };


            CodeGenSettingsModule.Settings = settings;
            ApplicationContext.Container   = ContainerInstaller.BuildContainer();

            foreach (var generator in runGenerators)
            {
                try
                {
                    if (!generator.Value)
                    {
                        continue;
                    }

                    var x = ApplicationContext.Container
                            .ResolveNamed <IGenSettings>(generator.Key);
                    ApplicationContext.Container
                    .Resolve <IGenerate>().Generate(x);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }
        }