Deveel.Data.DatabaseSystem.OpenDatabase C# (CSharp) Method

OpenDatabase() public method

public OpenDatabase ( IConfiguration configuration ) : IDatabase
configuration IConfiguration
return IDatabase
        public IDatabase OpenDatabase(IConfiguration configuration)
        {
            lock (this) {
                if (configuration == null)
                    throw new ArgumentNullException("configuration");

                var databaseName = configuration.GetString("database.name");
                if (String.IsNullOrEmpty(databaseName))
                    throw new ArgumentException("The configuration must specify a database name.");

                Database database;
                if (databases == null ||
                    !databases.TryGetValue(databaseName, out database))
                    throw new InvalidOperationException(String.Format("Database '{0}' does not exist in the system.", databaseName));

                if (!database.IsOpen)
                    database.Open();

                return database;
            }
        }