public virtual void Save(ORM.Database database) { lock (Locker) { foreach (var item in Items.Where(item => !item.Value.IsTemporarily)) { if (item.Value.Record.IsNew) { database.Insert(item.Value.Record); item.Value.OnPersistantItemAdded(); item.Value.Record.IsNew = false; } else if (item.Value.Record.IsDirty) { database.Update(item.Value.Record); item.Value.OnPersistantItemUpdated(); } } while (ItemsToDelete.Count > 0) { var item = ItemsToDelete.Dequeue(); database.Delete(item.Record); item.OnPersistantItemDeleted(); } } }
public void Save(ORM.Database database) { Record.Spells = GetTaxCollectorSpellsLevels(); WorldServer.Instance.IOTaskPool.AddMessage(() => { if (Record.IsNew) { database.Insert(Record); } else { database.Update(Record); } IsDirty = false; Record.IsNew = false; foreach (var member in Members.Where(x => x.IsDirty || x.IsNew)) { member.Save(database); } foreach (var paddock in Paddocks) { paddock.Save(database); } }); }
public void Save(ORM.Database database) { foreach (var job in m_jobs.Values) { job.Save(database); } }
private void OnExecutingDBCommand(ORM.Database arg1, IDbCommand arg2) { if (!Initializing && !IOTaskPool.IsInContext) { logger.Warn("Execute DB command out the IO task pool : " + arg2.CommandText); } }
public override void Save(ORM.Database database) { if (WorldServer.Instance.IsInitialized) { WorldServer.Instance.IOTaskPool.EnsureContext(); } base.Save(database); IsDirty = false; }
public void Save(ORM.Database database, bool updateAccount) { lock (Locker) { foreach (var item in Items.Where(item => Tokens == null || item.Value != Tokens).Where(item => !item.Value.IsTemporarily)) { if (item.Value.Record.IsNew) { database.Insert(item.Value.Record); item.Value.OnPersistantItemAdded(); item.Value.Record.IsNew = false; } else if (item.Value.Record.IsDirty) { database.Update(item.Value.Record); item.Value.OnPersistantItemUpdated(); } } foreach (var preset in Presets) { if (preset.IsNew) { database.Insert(preset); preset.IsNew = false; } else if (preset.IsDirty) { database.Update(preset); } } while (ItemsToDelete.Count > 0) { var item = ItemsToDelete.Dequeue(); database.Delete(item.Record); item.OnPersistantItemDeleted(); } while (PresetsToDelete.Count > 0) { var preset = PresetsToDelete.Dequeue(); database.Delete(preset); } Owner.WorldAccount.Tokens = Tokens == null ? 0 : (int)Tokens.Stack; if (updateAccount) { database.Update(Owner.WorldAccount); } } }
public void Save(ORM.Database database) { WorldServer.Instance.IOTaskPool.AddMessage(() => { if (Bag.IsDirty) { Bag.Save(database); } database.Update(m_record); }); }
public void Save(ORM.Database database) { if (IsNew) { database.Insert(Record); } else if (IsDirty) { database.Update(Record); } IsNew = IsDirty = false; }
public void Save(ORM.Database database) { if (IsRecordDirty) { database.Update(Record); IsRecordDirty = false; foreach (var mount in PaddockedMounts.Where(x => x.IsDirty)) { database.Save(mount); } } }
public void ChangeDataSource(ORM.Database datasource) { if (m_database == null) { m_database = datasource; } else { m_database = datasource; TearDown(); Initialize(); } }
private void InitializeDatabase() { logger.Info("Opening Database connection for '{0}' server", WorldServer.Name); Database = new ORM.Database(AuthServer.DatabaseConfiguration.GetConnectionString(), AuthServer.DatabaseConfiguration.ProviderName) { KeepConnectionAlive = true, CommandTimeout = (24 * 60 * 60) }; Database.OpenSharedConnection(); AccountManager = new Managers.AccountManager(); AccountManager.ChangeDataSource(Database); AccountManager.Initialize(); }
public PrimaryKeyIdProvider(string columnName, string tableName) { ColumnName = columnName; TableName = tableName; if (m_synchronised) { Synchronize(); } else { m_pool.Add(this); } Database = WorldServer.Instance.DBAccessor.Database; }
public void Save(ORM.Database database) { WorldServer.Instance.IOTaskPool.AddMessage(() => { if (Record.IsNew) { database.Insert(Record); } else { database.Update(Record); } Record.IsDirty = false; Record.IsNew = false; }); }
public void Save(ORM.Database database) { WorldServer.Instance.IOTaskPool.ExecuteInContext(() => { if (IsNew) { database.Insert(Record); } else { database.Update(Record); } IsDirty = false; IsNew = false; }); }
public override void Save(ORM.Database database) { base.Save(database); IsDirty = false; }
public override void Save(ORM.Database database) { Save(database, true); }