public void Generate() { _progressHandler.SetMessage("T2_block", "Create blocks", MessageType.Info); _progressHandler.SetMessage("T2_wfRule", "Create workflow rules", MessageType.Info); _progressHandler.SetMessage("T2_dll", "Generate dll", MessageType.Info); _currentVersion = GetCurrentVersion(_application.Name); GenerateCsFiles(); GenerateDll(); }
private void saveBlocks() { bool abort = false; foreach (TapestryDesignerBlock block in _blocksToBuild) { try { saveBlockContent(block); _progressHandler.IncrementProgress("blockContent"); } catch (Exception e) { while (e.Message.Contains("An error occurred while updating the entries. See the inner exception for details.")) { e = e.InnerException; } _progressHandler.Error($"{block.Name} - {e.Message}"); abort = true; } } _progressHandler.SetMessage("blockContent", "Saving generated block content", MessageType.InProgress); _context.SaveChanges(); if (abort) { throw new Exception("během aktualizace workflow došlo k chybám"); } }
public Dictionary <TapestryDesignerBlock, Block> GenerateTapestry(COREobject core, ModalProgressHandler <EModule> progressHandler) { _core = core; _progressHandler = progressHandler; _app = core.Application; // block & metablock try { // generate new progressHandler.SetMessage("block", "Generating metablocks and blocks", MessageType.InProgress, _app.TapestryDesignerMetablocks.Count); saveMetablock(_app.TapestryDesignerRootMetablock, true); progressHandler.SetMessage("block", "Generating metablocks and blocks completed", MessageType.Success); } catch (Exception) { _context.DiscardChanges(); throw; } // block content try { progressHandler.SetMessage("blockContent", "Generating block content", MessageType.InProgress, _app.TapestryDesignerMetablocks.Sum(mb => mb.Blocks.Count)); saveBlocks(); _context.SaveChanges(); progressHandler.SetMessage("blockContent", "Generating block content completed", MessageType.Success); } catch (Exception) { _context.DiscardChanges(); throw; } return(_blockMapping); }
/// <summary> /// </summary> /// <param name="dbSchemeCommit"></param> public void GenerateDatabase(DbSchemeCommit dbSchemeCommit, COREobject core) { if (dbSchemeCommit != null) { try { _db = core.Entitron; _ent = core.Context; _app = core.Application; _progressHandler.SetMessage("DropOldRelations", "Drop old relations"); _progressHandler.SetMessage("GenerateTables", "Generate tables"); _progressHandler.SetMessage("GenerateRelation", "Generate relations"); _progressHandler.SetMessage("GenerateView", "Generate views"); _progressHandler.SetMessage("DroppingOldTables", "Drop old tables"); DropOldRelations(dbSchemeCommit); GenerateTables(dbSchemeCommit); GenerateRelation(dbSchemeCommit); GenerateView(dbSchemeCommit); DroppingOldTables(dbSchemeCommit); _progressHandler.SetMessage("", type: MessageType.Success); } catch (Exception) { throw; } finally { Entitron.ClearCache(); } } }
private void MoveApp() { progressHandler.SetActiveSection(EModule.Master); // copy application to new DB if (context != masterContext) { progressHandler.SetMessage(message: "Copying application to app database", type: MessageType.InProgress); app = context.Applications.SingleOrDefault(a => a.Name == core.Application.Name); if (app == null) { app = new Application(); context.Applications.Add(app); } app.CopyPropertiesFrom(masterApp, skip: new string[] { "Id" }); context.SaveChanges(); progressHandler.SetMessage(message: "Application copied", type: MessageType.Success); } else { progressHandler.SetMessage(message: "Application is not necessary to copy", type: MessageType.Info); app = masterApp; } }