/// <summary>
		/// Selects the source.
		/// </summary>
		/// <returns>The source.</returns>
		/// <param name="paramId">Parameter identifier.</param>
		public ArchiveSource SelectSource (long paramId)
		{
			string query = string.Format("SELECT * FROM archivesource WHERE Id = '{0}'", paramId);

			var source = new ArchiveSource ();

			if (connection.State != ConnectionState.Open) {
				this.OpenConnection ();
			} 

			MySqlCommand cmd = new MySqlCommand (query, connection);
			MySqlDataReader dataReader = cmd.ExecuteReader ();

			if (dataReader.HasRows) {
				while (dataReader.Read ()) {			
					source.GetArchiveSource (dataReader);
				}
			}

			dataReader.Close ();
			this.CloseConnection ();
			return source;			
		}
		/// <summary>
		/// Selects the ArchiveSource
		/// </summary>
		/// <returns>The sources.</returns>
		/// <param name="paramTop">Parameter top.</param>
		public IList <ArchiveSource> SelectSources (string paramTop)
		{
			string query = "SELECT " + paramTop + " FROM archivesource";

			this.SourceList = new List<ArchiveSource> ();

			if (connection.State != ConnectionState.Open) {
				this.OpenConnection ();
			} 

			MySqlCommand cmd = new MySqlCommand (query, connection);
			MySqlDataReader dataReader = cmd.ExecuteReader ();

			if (dataReader.HasRows) {
				while (dataReader.Read ()) {					
					var source = new ArchiveSource ();
					source.GetArchiveSource (dataReader);
					this.SourceList.Add (source);
				}
			}

			dataReader.Close ();
			this.CloseConnection ();
			return this.SourceList;			
		}