public void TestAll() { var server = MongoServer.Create(); var settings = new MongoDatabaseSettings(server, "database") { Credentials = MongoCredentials.Create("username", "password"), SafeMode = SafeMode.Create(5, TimeSpan.FromSeconds(5)), SlaveOk = true }; Assert.AreEqual("database", settings.DatabaseName); Assert.AreEqual(MongoCredentials.Create("username", "password"), settings.Credentials); Assert.AreEqual(GuidRepresentation.CSharpLegacy, settings.GuidRepresentation); Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(5)), settings.SafeMode); Assert.AreEqual(true, settings.SlaveOk); Assert.IsFalse(settings.IsFrozen); var hashCode = settings.GetHashCode(); var stringRepresentation = settings.ToString(); Assert.AreEqual(settings, settings); settings.Freeze(); Assert.IsTrue(settings.IsFrozen); Assert.AreEqual(hashCode, settings.GetHashCode()); Assert.AreEqual(stringRepresentation, settings.ToString()); }
/// <summary> /// 根据查询语句删去特定条目 /// </summary> /// <typeparam name="T">待删的集合类型</typeparam> /// <param name="query"></param> private static void Remove <T>(IMongoQuery query, SafeMode safemode) { string className = typeof(T).Name; var collection = GetCollections <T>(); collection.Remove(query, safemode); }
/// <summary> /// 插入一个类到对应数据库 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="item"></param> protected static void Insert <T>(T item, SafeMode safemode) { string className = typeof(T).Name; var collection = GetCollections <T>(); collection.Insert(item, safemode); }
public void TestAll() { var settings = new MongoCollectionSettings <BsonDocument>( "collection", true, // asssignIdOnInsert SafeMode.Create(5, TimeSpan.FromSeconds(5)), true // slaveOkd ); Assert.AreEqual("collection", settings.CollectionName); Assert.AreEqual(true, settings.AssignIdOnInsert); Assert.AreEqual(typeof(BsonDocument), settings.DefaultDocumentType); Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(5)), settings.SafeMode); Assert.AreEqual(true, settings.SlaveOk); Assert.IsFalse(settings.IsFrozen); var hashCode = settings.GetHashCode(); var stringRepresentation = settings.ToString(); Assert.AreEqual(settings, settings); settings.Freeze(); Assert.IsTrue(settings.IsFrozen); Assert.AreEqual(hashCode, settings.GetHashCode()); Assert.AreEqual(stringRepresentation, settings.ToString()); }
public void UpdateLastAccess(string IdSession, DateTime lastAccess) { MongoServer conn = GetConnection(); MongoCollection sessionCollection = GetSessionCollection(conn); var ApplicationName = "IOL"; Double timeout = this.GetTimeoutSet(); object lockId = new object(); SafeMode _safeMode = new SafeMode(false); try { var query = Query.And(Query.EQ("_id", IdSession), Query.EQ("ApplicationName", ApplicationName)); var update = Update.Set("Expires", DateTime.Now.AddMinutes((Double)timeout).ToUniversalTime()); update.Set("Locked", false); sessionCollection.Update(query, update, _safeMode); } catch (Exception e) { } finally { conn.Disconnect(); } }
public void TestAll() { var server = MongoServer.Create(); var database = server["test"]; var settings = new MongoCollectionSettings <BsonDocument>(database, "collection") { AssignIdOnInsert = true, SafeMode = SafeMode.Create(5, TimeSpan.FromSeconds(5)), SlaveOk = true }; Assert.AreEqual("collection", settings.CollectionName); Assert.AreEqual(true, settings.AssignIdOnInsert); Assert.AreEqual(typeof(BsonDocument), settings.DefaultDocumentType); Assert.AreEqual(GuidRepresentation.CSharpLegacy, settings.GuidRepresentation); Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(5)), settings.SafeMode); Assert.AreEqual(true, settings.SlaveOk); Assert.IsFalse(settings.IsFrozen); var hashCode = settings.GetHashCode(); var stringRepresentation = settings.ToString(); Assert.AreEqual(settings, settings); settings.Freeze(); Assert.IsTrue(settings.IsFrozen); Assert.AreEqual(hashCode, settings.GetHashCode()); Assert.AreEqual(stringRepresentation, settings.ToString()); }
public void TestSafeModeTrueFSyncTrueW2() { string connectionString = "mongodb://localhost/?safe=true;fsync=true;w=2"; MongoUrl url = new MongoUrl(connectionString); Assert.AreEqual(SafeMode.Create(true, true, 2), url.SafeMode); Assert.AreEqual(connectionString, url.ToString()); }
/// <summary> /// Constractor /// </summary> /// <param name="tableName">table name</param> /// <param name="conntionString">connection string. As same as sql server connection string</param> /// <param name="safeMode">Safe mode</param> /// <returns></returns> public MongoDataProvider(string tableName, string conntionString, SafeMode safeMode) { SqlConnectionStringBuilder sqlConnBuilder = new SqlConnectionStringBuilder(conntionString); this._SafeMode = safeMode ?? SafeMode.False; StringBuilder connString = new StringBuilder(); connString.Append("mongodb://"); string userName = sqlConnBuilder.UserID ?? ""; string password = sqlConnBuilder.Password ?? ""; if (!string.IsNullOrEmpty(userName)) { connString.AppendFormat("{0}:{1}@", userName, password); } connString.Append(sqlConnBuilder.DataSource); string databaseName = sqlConnBuilder.InitialCatalog; this._MongoServer = MongoServer.Create(connString.ToString()); this._MongoDatabase = this._MongoServer.GetDatabase(databaseName, this._SafeMode); this._TableName = tableName; }
public void TestSafeModeTrueFSyncTrueW2WTimeout() { string connectionString = "mongodb://localhost/?safe=true;fsync=true;w=2;wtimeout=2s"; MongoUrl url = new MongoUrl(connectionString); Assert.AreEqual(SafeMode.Create(true, true, 2, TimeSpan.FromSeconds(2)), url.SafeMode); Assert.AreEqual(connectionString, url.ToString()); }
private void GivenSetNoneOptions(SafeMode mode) { _options.SetupGet(o => o.Value).Returns(new FXZOptions { SafeMode = mode }); }
public void TestEquals() { var a = new SafeMode(false); var b = new SafeMode(false); var c = new SafeMode(true); var n = (SafeMode)null; Assert.IsTrue(object.Equals(a, b)); Assert.IsFalse(object.Equals(a, c)); Assert.IsFalse(a.Equals(n)); Assert.IsFalse(a.Equals(null)); Assert.IsTrue(a == b); Assert.IsFalse(a == c); Assert.IsFalse(a == null); Assert.IsFalse(null == a); Assert.IsTrue(n == null); Assert.IsTrue(null == n); Assert.IsFalse(a != b); Assert.IsTrue(a != c); Assert.IsTrue(a != null); Assert.IsTrue(null != a); Assert.IsFalse(n != null); Assert.IsFalse(null != n); }
public void TestSafeModeTrueFSyncTrueW2() { string connectionString = "server=localhost;safe=true;fsync=true;w=2"; var builder = new MongoConnectionStringBuilder(connectionString); Assert.AreEqual(SafeMode.Create(true, true, 2), builder.SafeMode); Assert.AreEqual(connectionString, builder.ToString()); }
public void TestSafeModeTrueFSyncTrueW2WTimeout() { string connectionString = "server=localhost;safe=true;fsync=true;w=2;wtimeout=2s"; var builder = new MongoConnectionStringBuilder(connectionString); Assert.AreEqual(SafeMode.Create(true, true, 2, TimeSpan.FromSeconds(2)), builder.SafeMode); Assert.AreEqual(connectionString, builder.ToString()); }
public void Read(ByteArrayStreamReader reader) { FightMode = (FightMode)reader.ReadByte(); ChaseMode = (ChaseMode)reader.ReadByte(); SafeMode = (SafeMode)reader.ReadByte(); }
public MongoRepositoryService(bool safe = false) { db = MongoDatabase.Create(WebConfigurationManager.ConnectionStrings["MongoDB"].ConnectionString); if (safe) { safeMode = SafeMode.True; } }
public void startSafeMode(int duration) { safeModeUntil = DateTime.Now.AddSeconds(duration); // TODO: Ha lesz használva a safemodeslot, akkor itt cseréljük ki a this transformot SafeMode safeMode = GameObject.Instantiate(safeModePrefab, this.transform).GetComponent <SafeMode>(); safeMode.init(duration); }
/// <summary> /// 插入或者替换已有条目 /// </summary> /// <typeparam name="T">类名</typeparam> /// <param name="item">对象</param> /// <param name="idName">主键名</param> protected static void InsertOrReplace <T>(T item, string idName, SafeMode safemode) { string className = typeof(T).Name; var collection = GetCollections <T>(); var query = GetIDQuery <T>(item, idName); Remove <T>(query, safemode); collection.Insert(item, safemode); }
/// <summary> /// Freezes the settings. /// </summary> /// <returns>The frozen settings.</returns> public MongoGridFSSettings Freeze() { if (!_isFrozen) { _safeMode = _safeMode.FrozenCopy(); _isFrozen = true; } return(this); }
/// <summary> /// Initializes a new instance of the MongoGridFSSettings class. /// </summary> /// <param name="chunkSize">The chunk size.</param> /// <param name="root">The root collection name.</param> /// <param name="safeMode">The safe mode.</param> public MongoGridFSSettings( int chunkSize, string root, SafeMode safeMode ) { this.chunkSize = chunkSize; this.Root = root; // use property not field this.safeMode = safeMode; }
public MongoCollection <TDocument> GetMongoCollection <TDocument>(string collectionName, MongoDatabase db, SafeMode safeMode = null) { if (safeMode == null) { safeMode = new SafeMode(true); } MongoCollection <TDocument> result = db.GetCollection <TDocument>(collectionName, safeMode); return(result); }
public CombatControlsCommand(Player player, FightMode fightMode, ChaseMode chaseMode, SafeMode safeMode) { Player = player; FightMode = fightMode; ChaseMode = chaseMode; SafeMode = safeMode; }
public void TestCreateWithEnabledAndFSync() { var safeMode = new SafeMode(true, true); Assert.AreEqual(true, safeMode.Enabled); Assert.AreEqual(true, safeMode.FSync); Assert.AreEqual(false, safeMode.Journal); Assert.AreEqual(0, safeMode.W); Assert.AreEqual(null, safeMode.WMode); Assert.AreEqual(TimeSpan.Zero, safeMode.WTimeout); }
public void TestCreateWithWAndTimeout() { var safeMode = new SafeMode(2, TimeSpan.FromSeconds(30)); Assert.AreEqual(true, safeMode.Enabled); Assert.AreEqual(false, safeMode.FSync); Assert.AreEqual(false, safeMode.J); Assert.AreEqual(2, safeMode.W); Assert.AreEqual(null, safeMode.WMode); Assert.AreEqual(TimeSpan.FromSeconds(30), safeMode.WTimeout); }
public void TestCreateWithW() { var safeMode = new SafeMode(2); Assert.AreEqual(true, safeMode.Enabled); Assert.AreEqual(false, safeMode.FSync); Assert.AreEqual(false, safeMode.J); Assert.AreEqual(2, safeMode.W); Assert.AreEqual(null, safeMode.WMode); Assert.AreEqual(TimeSpan.Zero, safeMode.WTimeout); }
public override SafeModeResult Remove(IMongoQuery query, RemoveFlags flags, SafeMode safeMode) { if (writer != null) { this.writer.WriteLine("Remove Query:"); this.writer.WriteLine(query == null ? "Null" : query.ToString()); this.writer.WriteLine(); this.writer.Flush(); } return(mCollection.Remove(query, flags, safeMode)); }
public void TestSafeModeTrueFSyncTrueW2() { var connectionString = "mongodb://localhost/?safe=true;fsync=true;w=2"; var builder = new MongoUrlBuilder("mongodb://localhost") { SafeMode = SafeMode.Create(true, true, 2) }; Assert.AreEqual(SafeMode.Create(true, true, 2), builder.SafeMode); Assert.AreEqual(connectionString, builder.ToString()); Assert.AreEqual(connectionString, new MongoUrlBuilder(connectionString).ToString()); }
public void TestSafeModeTrueFSyncTrueW2WTimeout() { var connectionString = "mongodb://localhost/?safe=true;fsync=true;w=2;wtimeout=2s"; var builder = new MongoUrlBuilder("mongodb://localhost") { SafeMode = SafeMode.Create(true, true, 2, TimeSpan.FromSeconds(2)) }; Assert.AreEqual(SafeMode.Create(true, true, 2, TimeSpan.FromSeconds(2)), builder.SafeMode); Assert.AreEqual(connectionString, builder.ToString()); Assert.AreEqual(connectionString, new MongoUrlBuilder(connectionString).ToString()); }
public void TestAll() { var settings = new MongoServerSettings(); settings.ConnectionMode = ConnectionMode.ReplicaSet; settings.ConnectTimeout = TimeSpan.FromSeconds(1); settings.DefaultCredentials = MongoCredentials.Create("username", "password"); settings.GuidRepresentation = GuidRepresentation.CSharpLegacy; settings.IPv6 = true; settings.MaxConnectionIdleTime = TimeSpan.FromSeconds(2); settings.MaxConnectionLifeTime = TimeSpan.FromSeconds(3); settings.MaxConnectionPoolSize = 99; settings.MinConnectionPoolSize = 11; settings.ReadPreference = ReadPreference.Primary; settings.ReplicaSetName = "replicaname"; settings.SafeMode = SafeMode.Create(5, TimeSpan.FromSeconds(4)); settings.Server = new MongoServerAddress("server"); settings.SocketTimeout = TimeSpan.FromSeconds(5); settings.UseSsl = true; settings.WaitQueueSize = 55; settings.WaitQueueTimeout = TimeSpan.FromSeconds(6); Assert.AreEqual(ConnectionMode.ReplicaSet, settings.ConnectionMode); Assert.AreEqual(TimeSpan.FromSeconds(1), settings.ConnectTimeout); Assert.AreEqual(MongoCredentials.Create("username", "password"), settings.DefaultCredentials); Assert.AreEqual(GuidRepresentation.CSharpLegacy, settings.GuidRepresentation); Assert.AreEqual(true, settings.IPv6); Assert.AreEqual(TimeSpan.FromSeconds(2), settings.MaxConnectionIdleTime); Assert.AreEqual(TimeSpan.FromSeconds(3), settings.MaxConnectionLifeTime); Assert.AreEqual(99, settings.MaxConnectionPoolSize); Assert.AreEqual(11, settings.MinConnectionPoolSize); Assert.AreEqual(ReadPreference.Primary, settings.ReadPreference); Assert.AreEqual("replicaname", settings.ReplicaSetName); Assert.AreEqual(SafeMode.Create(5, TimeSpan.FromSeconds(4)), settings.SafeMode); Assert.AreEqual(new MongoServerAddress("server"), settings.Server); Assert.IsTrue((new[] { new MongoServerAddress("server") }).SequenceEqual(settings.Servers)); Assert.AreEqual(TimeSpan.FromSeconds(5), settings.SocketTimeout); Assert.AreEqual(true, settings.UseSsl); Assert.AreEqual(55, settings.WaitQueueSize); Assert.AreEqual(TimeSpan.FromSeconds(6), settings.WaitQueueTimeout); Assert.IsFalse(settings.IsFrozen); var hashCode = settings.GetHashCode(); var stringRepresentation = settings.ToString(); Assert.AreEqual(settings, settings); settings.Freeze(); Assert.IsTrue(settings.IsFrozen); Assert.AreEqual(hashCode, settings.GetHashCode()); Assert.AreEqual(stringRepresentation, settings.ToString()); }
/// <summary> /// 插入或者替换已有条目 /// </summary> /// <typeparam name="T">类名</typeparam> /// <param name="item">对象</param> /// <param name="idNames">主键集合</param> protected static void InsertOrReplace <T>(T item, string[] idNames, SafeMode safemode) { if (idNames == null || idNames.Length == 0) { return; } string className = typeof(T).Name; var collection = GetCollections <T>(); var query = GetIDQuery <T>(item, idNames); Remove <T>(query, safemode); collection.Insert(item, safemode); }
public void TestCreateWithWMode() { var safeMode = new SafeMode(true) { WMode = "majority" }; Assert.AreEqual(true, safeMode.Enabled); Assert.AreEqual(false, safeMode.FSync); Assert.AreEqual(false, safeMode.J); Assert.AreEqual(0, safeMode.W); Assert.AreEqual("majority", safeMode.WMode); Assert.AreEqual(TimeSpan.Zero, safeMode.WTimeout); }