internal static string GetModificationParseRule(string path) { string s = path.Contains(Path.DirectorySeparatorChar) ? path.Substring(path.LastIndexOf(Path.DirectorySeparatorChar) + 1) : path; return(!Databases.ContainsKey(s) ? "" : Databases[s].ModificationParseRule); }
internal static string GetTaxonomyId(string path) { string s = path.Contains(Path.DirectorySeparatorChar) ? path.Substring(path.LastIndexOf(Path.DirectorySeparatorChar) + 1) : path; return(!Databases.ContainsKey(s) ? "" : Databases[s].Taxid); }
internal static bool ContainsDatabase(string path) { string s = path.Contains(Path.DirectorySeparatorChar) ? path.Substring(path.LastIndexOf(Path.DirectorySeparatorChar) + 1) : path; return(Databases.ContainsKey(s)); }
public static string GetIdentifierParseRule(string path){ string s = path.Contains(Path.DirectorySeparatorChar) ? path.Substring(path.LastIndexOf(Path.DirectorySeparatorChar) + 1) : path; string pr = ReadParseRuleFromFile(path); if (pr != null){ return pr; } return !Databases.ContainsKey(s) ? ">(.*)" : Databases[s].IdentifierParseRule; }
public static string GetIdentifierParseRule(string path) { string s = path.Contains("\\") ? path.Substring(path.LastIndexOf('\\') + 1) : path; string pr = ReadParseRuleFromFile(path); if (pr != null) { return(pr); } return(!Databases.ContainsKey(s) ? ">([^ ]*)" : Databases[s].IdentifierParseRule); }
/// <summary> /// Constructor /// </summary> /// <param name="ConnectionUsing">Connection string or name of the database /// connection string (if already defined)</param> public MicroORM(string ConnectionUsing = "Default") : base("", "", CommandType.Text) { MappingsUsing = new List <IMapping>(); if (Databases.ContainsKey(ConnectionUsing)) { this.Connection.ConnectionString = Databases[ConnectionUsing].Connection; DatabaseUsing = ConnectionUsing; } else { this.Connection.ConnectionString = ConnectionUsing; DatabaseUsing = "Default"; } }
public static Database GetDatabase(string name) { // lock (Databases) { Database result = null; if (!Databases.ContainsKey(name)) { result = CreateDatabase(name); Databases[name] = result; } else { result = Databases[name]; } return(result); } }
/// <summary> /// Returns an <see cref="AppDatabase"/> instance unique to the current calling thread. /// <para>If no <see cref="AppDatabase"/> exist yet for the current thread, a new instance will be created.</para> /// </summary> /// <seealso cref="DisposeDatabases"/> public static AppDatabase GetDatabase() { // Lock the databases property to prevent conflicts from the DisposeDatabases method lock (Databases) { // Get the id of the thread that called this method var threadId = Thread.CurrentThread.ManagedThreadId; // Create a new AppDatabase if it doesn't exist yet if (!Databases.ContainsKey(threadId)) { Databases.Add(threadId, new AppDatabase()); Program.Log.Fine($"Opened connection to '{Databases[threadId].Connection.DataSource}'."); } // Return an AppDatabase from the cache return(Databases[threadId]); } }
private IMongoDatabase GetDatabase(IDatabaseSettings dbSettings) { IMongoDatabase database = null; _databaseLocker.EnterReadLock(); try { if (Databases.ContainsKey(dbSettings.DatabaseName)) { database = Databases[dbSettings.DatabaseName]; } else { _databaseLocker.ExitReadLock(); _databaseLocker.EnterWriteLock(); try { if (!MongoClients.ContainsKey(dbSettings.ConnectionString)) { database = GetClient(dbSettings.ConnectionString).GetDatabase(dbSettings.DatabaseName); Databases.Add(dbSettings.ConnectionString, database); } database = Databases[dbSettings.ConnectionString]; } finally { _databaseLocker.ExitWriteLock(); } } } finally { if (_databaseLocker.IsReadLockHeld) { _databaseLocker.ExitReadLock(); } } return(database); }
public static bool ContainsDatabase(string path) { string s = path.Contains("\\") ? path.Substring(path.LastIndexOf('\\') + 1) : path; return(Databases.ContainsKey(s)); }
public static string GetTaxonomyId(string path) { string s = path.Contains("\\") ? path.Substring(path.LastIndexOf('\\') + 1) : path; return(!Databases.ContainsKey(s) ? "" : Databases[s].Taxid); }
public static string GetModificationParseRule(string path) { string s = path.Contains("\\") ? path.Substring(path.LastIndexOf('\\') + 1) : path; return(!Databases.ContainsKey(s) ? "" : Databases[s].ModificationParseRule); }
public static string GetVariationParseRule(string path){ string s = path.Contains(Path.DirectorySeparatorChar) ? path.Substring(path.LastIndexOf(Path.DirectorySeparatorChar) + 1) : path; return !Databases.ContainsKey(s) ? "" : Databases[s].VariationParseRule; }