void SaveProject() { AddRevisionChangesArgs args = new AddRevisionChangesArgs(); args.ProjectId = _project.ProjectId; args.EntityList = new List <Entity>(); args.ImportedList = _importedList; foreach (TabData info in _tabList) { if (info.Editor.IsDirty) { info.Editor.Save(); args.EntityList.Add(info.Editor.Entity); } } try { RevisionLogic logic = new RevisionLogic(GlobalData.AppInfo); logic.AddRevisionChanges(args); _isDirty = false; _importedList = new List <Entity>(); OpenProject(_project.ProjectId); } catch (Exception ex) { throw; } }
private void createRevision() { RevisionLogic logic = new RevisionLogic(GlobalData.AppInfo); _currentRevision = logic.BeginRevision(_project.ProjectId); _importedList = new List <Entity>(); SetupToolbar(); }
void GenerateScript() { // make sure everything is saved if (_isDirty) { SaveProject(); } var logic = new RevisionLogic(GlobalData.AppInfo); logic.GenerateScript(_currentRevision.RevisionId); }
virtual public async Task MakeRevisionAsync(Entity entity) { //Revision itself: var clone = entity.Clone() as Entity; clone.Revisions = null; OnBeforeRevision(clone); var revision = new Revision { ForeignType = entity.EntityName, ForeignKey = entity.Id, Value = clone.ToJson(), RevisionMessage = entity.RevisionMessage, CreatedAt = DateTimeOffset.Now, Discriminator = entity.EntityName }; await RevisionLogic.AddAsync(revision); }
virtual public void MakeRevision(Entity entity) { //Revision itself: var clone = entity.Clone() as Entity; clone.Revisions = null; OnBeforeRevision(clone); var revision = new Revision { ForeignType = typeof(Entity).Name, ForeignKey = entity.Id, Value = clone.ToJson(), RevisionMessage = entity.RevisionMessage, CreatedAt = DateTimeOffset.Now, Discriminator = typeof(Entity).Name }; RevisionLogic.Add(revision); }
void CommitVersion() { // make sure everything is saved if (_isDirty) { SaveProject(); } CommitRevsionArgs args = new CommitRevsionArgs() { RevisionId = _currentRevision.RevisionId, ExcuteMigration = true }; CommitRevision rev = new CommitRevision(args); if (rev.ShowDialog() == DialogResult.OK) { var logic = new RevisionLogic(GlobalData.AppInfo); logic.CommitRevision(args); // reload the entire project OpenProject(_project.ProjectId); } }
public override void Init(IDbConnection db, IAuthSession auth, IRequest request) { base.Init(db, auth, request); RevisionLogic.Init(db, auth, request); TrackLogic.Init(db, auth, request); }