/// <summary>
        /// Gets the connection string from config.
        /// </summary>
        /// <param name="titanConfiguration">The titan configuration.</param>
        /// <returns></returns>
        public static string GetConnectionStringFromConfig(TitanConfiguration titanConfiguration)
        {
            Throw.Against<InitializationException>((titanConfiguration.DataStores == null || titanConfiguration.DataStores.Count == 0), "An issue occurred while Initializing the nhibernate data session.");

            // ReSharper disable PossibleNullReferenceException
            DataStore dataStore = titanConfiguration.DataStores.GetItemByKey("Default") ??
                                  titanConfiguration.DataStores[0];
            // ReSharper restore PossibleNullReferenceException

            Throw.ArgumentNotNull(dataStore, "A valid datasore is required in the titan-configuration/data-stores/dataStore.");

            var connectStringBuilder = new StringBuilder();

            connectStringBuilder.AppendFormat("server={0};", dataStore.Server);
            connectStringBuilder.AppendFormat("Database={0};", dataStore.Catalog);

            if(dataStore.IsTrusted)
            {
                connectStringBuilder.Append("trusted_connection=true;");
            }
            else
            {
                connectStringBuilder.AppendFormat("User ID={0};Password={1};Trusted_Connection=False;", dataStore.UserName, dataStore.Password);
            }
            return connectStringBuilder.ToString();
        }
 /// <summary>
 /// Gets the mapping assemblies from config.
 /// </summary>
 /// <param name="titanConfiguration">The titan configuration.</param>
 /// <returns></returns>
 private static List<MappingAssembly> GetMappingAssembliesFromConfig(TitanConfiguration titanConfiguration)
 {
     return titanConfiguration.MappingAssemblies.Cast<MappingAssembly>().ToList();
 }