X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=source%2Fmir%2Fstorage%2FStorageObject.java;h=5e63c2b1a31e6b721088ef19e9a4112ca9df5f59;hb=23a1e10672276ea4dfe813a11623b0c1bc9fb226;hp=6ed2d8369c4e38de8e361cf130cdde4046e08e78;hpb=a459f111d85598df56c6ab711cec11632676b39c;p=mir.git diff --git a/source/mir/storage/StorageObject.java b/source/mir/storage/StorageObject.java index 6ed2d836..5e63c2b1 100755 --- a/source/mir/storage/StorageObject.java +++ b/source/mir/storage/StorageObject.java @@ -18,13 +18,13 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * * In addition, as a special exception, The Mir-coders gives permission to link - * the code of this program with any library licensed under the Apache Software License, - * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library - * (or with modified versions of the above that use the same license as the above), - * and distribute linked combinations including the two. You must obey the - * GNU General Public License in all respects for all of the code used other than - * the above mentioned libraries. If you modify this file, you may extend this - * exception to your version of the file, but you are not obligated to do so. + * the code of this program with any library licensed under the Apache Software License, + * The Sun (tm) Java Advanced Imaging library (JAI), The Sun JIMI library + * (or with modified versions of the above that use the same license as the above), + * and distribute linked combinations including the two. You must obey the + * GNU General Public License in all respects for all of the code used other than + * the above mentioned libraries. If you modify this file, you may extend this + * exception to your version of the file, but you are not obligated to do so. * If you do not wish to do so, delete this exception statement from your version. */ package mir.storage; @@ -34,12 +34,14 @@ import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.List; +import java.util.Map; -import mir.entity.Entity; -import mir.entity.EntityList; import freemarker.template.SimpleHash; import freemarker.template.SimpleList; +import mir.entity.Entity; +import mir.entity.EntityList; + /** * Implementiert Interface f?r die Speicherschicht. @@ -185,14 +187,46 @@ public interface StorageObject { abstract public Connection getPooledCon() throws StorageObjectFailure; /** - * Dokumentation siehe Database.java + * * @param a * @param sql - * @return ResultSet - * @exception StorageObjectException, SQLException + * @return + * @throws StorageObjectFailure + * @throws SQLException */ - abstract public ResultSet executeSql(Statement a, String sql) - throws StorageObjectFailure, SQLException; + abstract public ResultSet executeSql(Statement a, String sql) throws StorageObjectFailure, SQLException; + + /** + * Executes 1 sql statement and returns the results as a List of Maps + * + * @param sql + * @return + * @throws StorageObjectFailure + * @throws StorageObjectExc + */ + abstract public List executeFreeSql(String sql, int aLimit) throws StorageObjectFailure, StorageObjectExc; + + /** + * Executes 1 sql statement and returns the first result row as a <Maps + * (null if there wasn't any row) + * + * @param sql + * @return + * @throws StorageObjectFailure + * @throws StorageObjectExc + */ + abstract public Map executeFreeSingleRowSql(String sql) throws StorageObjectFailure, StorageObjectExc ; + + /** + * Executes 1 sql statement and returns the first column of the first result row as a <Strings + * (null if there wasn't any row) + * + * @param sql + * @return + * @throws StorageObjectFailure + * @throws StorageObjectExc + */ + abstract public String executeFreeSingleValueSql(String sql) throws StorageObjectFailure, StorageObjectExc ; /** * Dokumentation siehe Database.java