private void DeleteFiles(object sender, RoutedEventArgs e) { //Hreinsum möppur án þess að generate-a file-a ViewGenerator.DeleteViews(baseFolderPath.Text + pathToViews.Text); ViewModelGenerator.DeleteViewModels(baseFolderPath.Text + pathToViewModels.Text); ControllerGenerator.DeleteControllers(baseFolderPath.Text + pathToControllers.Text); }
private void GenerateFiles(object sender, RoutedEventArgs e) { //Hlöðum inn grunngildum fyrir DatabaseMockup-ið, þetta er til þess að forritið viti hvar gagnagrunnsskilgreiningarnar eru DatabaseMockup.InitializeDatabaseMockup(baseFolderPath.Text); //Skilgreinum viðvörunina sem á að birtast í öllum auto generated file-um string fileAutoGenerationWarningText = "Autogenerated File - Warning: All modifications will be overwritten. File generated at: " + DateTime.UtcNow; //Setjum upp background worker til að sjá um að keyra löngu skipunina sem generate-ar kóðann BackgroundWorker worker = new BackgroundWorker(); worker.DoWork += (o, ea) => { //no direct interaction with the UI is allowed from this method this.Dispatcher.Invoke(() => { //Hreinsum möppur og útbúum file-a ViewGenerator.GenerateViews(baseFolderPath.Text + pathToViews.Text, fileAutoGenerationWarningText); ViewModelGenerator.GenerateViewModels(baseFolderPath.Text + pathToViewModels.Text, fileAutoGenerationWarningText); ControllerGenerator.GenerateControllers(baseFolderPath.Text + pathToControllers.Text, fileAutoGenerationWarningText); }); }; worker.RunWorkerCompleted += (o, ea) => { //work has completed. you can now interact with the UI busyIndicator.IsBusy = false; }; //TODO: Þetta er nóg til þess að gera view-ið greyed out á meðan við erum að vinna, en sýnir ekki loading bar-ið sem er þarna á bakvið. Vil finna út af hverju ekki, hefur sennilega eitthvað að gera með þræði busyIndicator.IsBusy = true; //Setjum worker-inn í gang sem keyrir langa process-ið worker.RunWorkerAsync(); }
public async Task ApiController() { TestCode ( ControllerGenerator.GetFileName(await GetSchema()), ControllerGenerator.Get(await GetSchema(), AppNamespace) ); }
public Assembly Build(ODatalizerEndpoint ep) { var generator = ControllerGenerator.Create(ep); var code = generator.TransformText(); _logger.LogDebug(ODatalizerLogEvents.ControllerCodeGenerated, code); return(Build(code, generator.Namespace)); }
public DryvDynamicControllerTranslator(DryvDynamicControllerRegistration controllerRegistration, ControllerGenerator codeGenerator, IDryvClientServerCallWriter controllerCallWriter, IOptions <DryvDynamicControllerOptions> options, LinkGenerator linkGenerator) { this.controllerRegistration = controllerRegistration; this.codeGenerator = codeGenerator; this.controllerCallWriter = controllerCallWriter; this.options = options; this.linkGenerator = linkGenerator; }
public void QuotesQuote_ShouldReturnIdOfTheNewQuote_WhenPostedACustomerAndVehicle() { var controller = New(); var result = controller.Quote(ControllerGenerator.OkQuote()).Result; var okResult = result as OkObjectResult; Assert.NotNull(okResult); Assert.NotNull(okResult.Value); Assert.IsType <int>(okResult.Value); Assert.NotEqual(default(int), okResult.Value); }
public QuotesControllerTest() { _unitOfWorkMock = new Mock <IUnitOfWork>(); _unitOfWorkMock.Setup(m => m.SaveChangesAsync(default(System.Threading.CancellationToken))).ReturnsAsync(() => 1); _customerRepoMock = new Mock <ICustomerRepository>(); _customerRepoMock.Setup(m => m.Put(It.IsAny <Customer>())).ReturnsAsync(() => new Customer() { Id = 1 }.From(ControllerGenerator.OkCustomer())); _quoteRepoMock = new Mock <IQuoteRepository>(); _quoteRepoMock.Setup(m => m.Add(It.IsAny <Quote>())); }
public JobsApplicationPart(IEnumerable <ControllerEndpoint> controllers) { ControllerGenerator controllerGenerator = new ControllerGenerator(); foreach (var controller in controllers) { var controllerType = typeof(JobsController <, ,>).MakeGenericType( controller.Endpoint, controller.Input, controller.Output); controllerGenerator.GenerateControllerType(controllerType, controller.Endpoint); } _types.AddRange(controllerGenerator.ControllerTypes.Select(x => x.GetTypeInfo())); }
static void Main() { Expression <Func <Address, AsyncValidator, SampleOptions, Task <DryvResultMessage> > > f = (a, v, o) => v.ValidateZipCode(a.ZipCode, a.City, o.ZipCodeLength + 1); var g = new ControllerGenerator(new OptionsWrapper <DryvDynamicControllerOptions>(new DryvDynamicControllerOptions { HttpMethod = DryvDynamicControllerMethods.Get })); var ass = g.CreateControllerAssembly(f.Body as MethodCallExpression, typeof(Address)); var t = ass.GetTypes().First(); var c = Activator.CreateInstance(t, new AsyncValidator(), new SampleOptions()); var m = c.GetType().GetMethods().First(m => !m.Attributes.HasFlag(MethodAttributes.HideBySig)); //var x = m.Invoke(c, new object[] { "1234", "Doooomcity" }); }
public static Contracts.IControllerGenerator GetControllerGenerator(string solutionName, string contractsFilePath) { return(ControllerGenerator.Create(SolutionProperties.Create(solutionName, contractsFilePath))); }
static void Main(string[] args) { SolutionProperties solutionProperties = SolutionProperties.Create(); EntityGenerator entityGenerator = EntityGenerator.Create(solutionProperties); DataContextGenerator dataContextGenerator = DataContextGenerator.Create(solutionProperties); ControllerGenerator controllerGenerator = ControllerGenerator.Create(solutionProperties); FactoryGenerator factoryGenerator = FactoryGenerator.Create(solutionProperties); TransferGenerator transferGenerator = TransferGenerator.Create(solutionProperties); List <string> lines = new List <string>(); Console.WriteLine("Create Modules-Entities..."); lines.Clear(); lines.AddRange(entityGenerator.CreateModulesEntities()); WriteAllLines(solutionProperties.EntitiesModulesFilePath, FormatCSharp(lines)); Console.WriteLine("Create Business-Entities..."); lines.Clear(); lines.AddRange(entityGenerator.CreateBusinesssEntities()); WriteAllLines(solutionProperties.EntitiesBusinessFilePath, FormatCSharp(lines)); Console.WriteLine("Create Persistence-Entities..."); lines.Clear(); lines.AddRange(entityGenerator.CreatePersistenceEntities()); WriteAllLines(solutionProperties.EntitiesPersistenceFilePath, FormatCSharp(lines)); Console.WriteLine("Create DataContext-DbContext..."); lines.Clear(); lines.AddRange(dataContextGenerator.CreateDbContext()); WriteAllLines(solutionProperties.DataContextPersistenceFilePath, FormatCSharp(lines)); Console.WriteLine("Create Persistence-Controllers..."); lines.Clear(); lines.AddRange(controllerGenerator.CreatePersistenceControllers()); WriteAllLines(solutionProperties.ControllersPersistenceFilePath, FormatCSharp(lines)); Console.WriteLine("Create Business-Controllers..."); lines.Clear(); lines.AddRange(controllerGenerator.CreateBusinessControllers()); WriteAllLines(solutionProperties.ControllersBusinessFilePath, FormatCSharp(lines)); Console.WriteLine("Create Factory..."); lines.Clear(); lines.AddRange(factoryGenerator.CreateLogicFactory()); WriteAllLines(solutionProperties.LogicFactoryFilePath, FormatCSharp(lines)); Console.WriteLine("Create Modules-Transfer..."); lines.Clear(); lines.AddRange(transferGenerator.CreateModulesTransfers()); WriteAllLines(solutionProperties.TransferModulesFilePath, FormatCSharp(lines)); Console.WriteLine("Create Business-Transfer..."); lines.Clear(); lines.AddRange(transferGenerator.CreateBusinessTransfers()); WriteAllLines(solutionProperties.TransferBusinessFilePath, FormatCSharp(lines)); Console.WriteLine("Create Persistence-Transfer..."); lines.Clear(); lines.AddRange(transferGenerator.CreatePersistenceTransfers()); WriteAllLines(solutionProperties.TransferPersistenceFilePath, FormatCSharp(lines)); Console.WriteLine("Create Controllers-WebApi..."); lines.Clear(); lines.AddRange(controllerGenerator.CreateWebApiControllers()); WriteAllLines(solutionProperties.WebApiControllersFilePath, FormatCSharp(lines)); Console.WriteLine("Create Adapters..."); lines.Clear(); lines.AddRange(factoryGenerator.CreateAdapterFactory()); WriteAllLines(solutionProperties.AdaptersFactoryFilePath, FormatCSharp(lines)); }
public ActionResult Generate(int appId = 0, string[] selectedTables = null, string selectedTheme = "") { try { string userName = User.Identity.Name; Application application = applicationRepository.FindFirst(ap => ap.Member.username == userName && ap.Id == appId); if (application != null) { bool connectionSuccess = CheckConnection(application); if (connectionSuccess == true) { DeleteExistsFile(application); //Change Application Theme application.theme_id = GetTheme(selectedTheme); applicationRepository.Edit(application); //Create Application Folders string appMainDirectory = CreateAppDirectories(application); if (!string.IsNullOrEmpty(appMainDirectory)) { //Generate Database files string connectionString = Globals.GetSQLServerConnectionString(application); string appName = application.Name; var myGenerator = new MyGenerator(connectionString, appName, appMainDirectory); //App Tables var tablesType = myGenerator.DatabaseTables.Where(tb => selectedTables.Contains(tb.Name)).ToList(); //Create application models and mapping myGenerator.GenerateCode(); CreateContextAndConfig(myGenerator.DatabaseTables.ToList(), application, appMainDirectory); //Create application controllers var controllerGenerator = new ControllerGenerator(myGenerator, appName, appMainDirectory); controllerGenerator.Generate(tablesType, connectionString); //Create application navigation menu ApplicationUtilities utilities = new ApplicationUtilities(appMainDirectory, application.Name); utilities.CreateAppNav(tablesType); //Create Application project file string[] controllers = tablesType.Select(tp => tp.Name).ToArray <string>(); string[] allModels = myGenerator.DatabaseTables.Select(tp => tp.Name).ToArray <string>(); utilities.CreateProjectFile(controllers, allModels, application.Theme.FileName); //Create Home Controller utilities.CreateControllerHome(tablesType); application.generated = true; applicationRepository.Edit(application); //Zip Application Folder string member_public_id = application.Member.public_id; utilities.ZipApplication(application); //Check the application has folders or not //DirectoryUtility.DeleteFolder(Globals.APP_DATA_PATH + "\\" + member_public_id + "\\" + application.Name + "_" + application.Id); return(View("Success", new MessageView() { Message = "Your application has been generated successfully." })); } } else { return(View("Error", new MessageView() { Message = "An error while connecting to your database." })); } } ViewBag.appId = application.Id; return(View()); } catch (Exception ex) { return(View("Error", new MessageView() { Message = "An error occured while generating the application" })); } }