package de.lmu.ifi.dbs.database.connection;

import de.lmu.ifi.dbs.data.DatabaseObject;
import de.lmu.ifi.dbs.database.Database;
import de.lmu.ifi.dbs.normalization.Normalization;
import de.lmu.ifi.dbs.utilities.optionhandling.AttributeSettings;
import de.lmu.ifi.dbs.utilities.optionhandling.Parameterizable;

import java.util.List;

/**
 * DatabaseConnection is to provide a database. <p/> A database connection is to
 * manage the input and to provide a database where algorithms can run on. An
 * implementation may either use a parser to parse a sequential file or piped
 * input and provide a file based database or provide an intermediate connection
 * to a database system.
 * 
 * @author Arthur Zimek (<a
 *         href="mailto:zimek@dbs.ifi.lmu.de">zimek@dbs.ifi.lmu.de</a>)
 */
public interface DatabaseConnection<O extends DatabaseObject> extends Parameterizable
{
    /**
     * Property key for available parsers.
     */
    public static final String PROPERTY_PARSER = "PARSER";

    /**
     * Property key for available databases.
     */
    public static final String PROPERTY_DATABASE = "DATABASE";

    /**
     * Returns a Database according to parameter settings.
     * 
     * @param normalization
     *            Normalization to perform a normalization if this action is
     *            supported. May remain null.
     * @return a Database according to parameter settings
     */
    Database<O> getDatabase(Normalization<O> normalization);

    /**
     * Returns the setting of the attributes of this database connection.
     * 
     * @return the setting of the attributes of this database connection
     */
    public List<AttributeSettings> getAttributeSettings();
}

@@ -224,113 +224,23 @@
 ing.
-AttributeSettings;%0Aimport de.lmu.ifi.dbs.utilities.optionhandling.Parameterizable;%0A%0Aimport java.util.List
+Parameterizable
 ;%0A%0A/
@@ -587,17 +587,16 @@
 stem.%0A *
- 
 %0A * @aut
@@ -781,21 +781,17 @@
 able
-%0A
+ 
 %7B%0A  
- 
- 
 /**%0A
-  
    *
@@ -826,31 +826,27 @@
 parsers.%0A   
-  
 */%0A
-  
   public sta
@@ -887,34 +887,30 @@
  %22PARSER%22;%0A%0A
-  
   /**%0A
-  
    * Propert
@@ -939,31 +939,27 @@
 tabases.%0A   
-  
 */%0A
-  
   public sta
@@ -1006,32 +1006,28 @@
 TABASE%22;%0A%0A  
- 
- 
 /**%0A
-  
    * Returns
@@ -1070,31 +1070,26 @@
 ettings.%0A   
-  * %0A  
+*%0A
    * @param 
@@ -1101,34 +1101,16 @@
 lization
-%0A     *           
  Normali
@@ -1164,19 +1164,27 @@
 n is%0A   
+*        
   
-*
         
@@ -1214,26 +1214,24 @@
 in null.%0A   
-  
 * @return a 
@@ -1274,25 +1274,21 @@
 ings%0A   
-  
 */%0A  
- 
- 
 Database
@@ -1339,238 +1339,7 @@
 on);
-%0A%0A    /**%0A     * Returns the setting of the attributes of this database connection.%0A     * %0A     * @return the setting of the attributes of this database connection%0A     */%0A    public List%3CAttributeSettings%3E getAttributeSettings();
 %0A%7D%0A

optimize imports