(no commit message)
authorm.doering <m.doering@localhost>
Tue, 20 Nov 2007 13:44:52 +0000 (13:44 +0000)
committerm.doering <m.doering@localhost>
Tue, 20 Nov 2007 13:44:52 +0000 (13:44 +0000)
12 files changed:
cdmlibrary/src/main/java/eu/etaxonomy/cdm/api/service/AgentServiceImpl.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/api/service/DatabaseServiceImpl.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/api/service/NameServiceImpl.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/AgentDaoHibernateImpl.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/DaoBase.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/EnumerationDaoHibernateImpl.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/IDao.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/ITaxonNameDao.java
cdmlibrary/src/main/java/eu/etaxonomy/cdm/persistence/dao/TaxonNameDaoHibernateImpl.java
cdmlibrary/src/main/resources/log4j.properties
cdmlibrary/src/main/resources/sessionfactory.xml
cdmlibrary/src/test/resources/applicationContext-test.xml

index 2604a6658854ebe97276b196f79c881574430d5e..ff8645388fcbda40ab20eb580338e24b1ae69874 100644 (file)
@@ -18,7 +18,6 @@ import eu.etaxonomy.cdm.persistence.dao.ITaxonNameDao;
  * @author a.mueller\r
  *\r
  */\r
  * @author a.mueller\r
  *\r
  */\r
-@Service\r
 public class AgentServiceImpl implements IAgentService {\r
     private static final Logger logger = Logger.getLogger(AgentServiceImpl.class);\r
        \r
 public class AgentServiceImpl implements IAgentService {\r
     private static final Logger logger = Logger.getLogger(AgentServiceImpl.class);\r
        \r
index 3e7dd90946c8ea08eafdf9927f3c34d4a8404886..03b30f90fd6cfe4989072faeaadf78d98d562e62 100644 (file)
@@ -11,7 +11,7 @@ import eu.etaxonomy.cdm.database.DbType;
  * @author a.mueller\r
  *\r
  */\r
  * @author a.mueller\r
  *\r
  */\r
-@Service\r
+\r
 public class DatabaseServiceImpl implements IDatabaseService {\r
 \r
        /* (non-Javadoc)\r
 public class DatabaseServiceImpl implements IDatabaseService {\r
 \r
        /* (non-Javadoc)\r
index a40fe360c8c8522945e3ee8e2f42c5a6f3de0daa..c9050ab75cdcc7ad7c9e9e31a13f2caedc1a123b 100644 (file)
@@ -14,7 +14,6 @@ import java.util.List;
 \r
 \r
 \r
 \r
 \r
 \r
-@Service\r
 public class NameServiceImpl extends ServiceBase implements INameService {\r
        static Logger logger = Logger.getLogger(NameServiceImpl.class);\r
        \r
 public class NameServiceImpl extends ServiceBase implements INameService {\r
        static Logger logger = Logger.getLogger(NameServiceImpl.class);\r
        \r
index 67605ae1ee82ecadbd1d986f2e7672622cb17f24..aea9608baa112aa01b50835eb4c83e9233a4fb08 100644 (file)
@@ -7,17 +7,15 @@ import org.springframework.stereotype.Repository;
 \r
 import eu.etaxonomy.cdm.model.agent.Agent;\r
 \r
 \r
 import eu.etaxonomy.cdm.model.agent.Agent;\r
 \r
-@Repository\r
+\r
 public class AgentDaoHibernateImpl extends DaoBase<Agent, Integer> implements IAgentDao{\r
        private static final Logger logger = Logger.getLogger(AgentDaoHibernateImpl.class);\r
 \r
 public class AgentDaoHibernateImpl extends DaoBase<Agent, Integer> implements IAgentDao{\r
        private static final Logger logger = Logger.getLogger(AgentDaoHibernateImpl.class);\r
 \r
-       /**\r
-        * \r
-        */\r
        public AgentDaoHibernateImpl() {\r
                super(Agent.class); \r
        }\r
 \r
        public AgentDaoHibernateImpl() {\r
                super(Agent.class); \r
        }\r
 \r
+\r
        @Override\r
        public List<Agent> find(String queryString) {\r
                // TODO Auto-generated method stub\r
        @Override\r
        public List<Agent> find(String queryString) {\r
                // TODO Auto-generated method stub\r
index 3771a253d2254fa3cac2dcdb87f370697149b39e..5fe21787053702a1f73373717efc992dee841f0f 100644 (file)
@@ -7,83 +7,76 @@ import java.io.Serializable;
 import java.util.List;\r
 \r
 import org.apache.log4j.Logger;\r
 import java.util.List;\r
 \r
 import org.apache.log4j.Logger;\r
+import org.hibernate.Session;\r
+import org.hibernate.SessionFactory;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
 import org.springframework.dao.DataAccessException;\r
 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;\r
 import org.springframework.orm.hibernate3.HibernateTemplate;\r
 import org.springframework.dao.DataAccessException;\r
 import org.springframework.orm.hibernate3.support.HibernateDaoSupport;\r
 import org.springframework.orm.hibernate3.HibernateTemplate;\r
+import org.springframework.stereotype.Component;\r
 import org.springframework.stereotype.Repository;\r
 \r
 import org.springframework.stereotype.Repository;\r
 \r
+import eu.etaxonomy.cdm.model.common.Enumeration;\r
+\r
 \r
 /**\r
  * @author a.mueller\r
  *\r
  */\r
 \r
 /**\r
  * @author a.mueller\r
  *\r
  */\r
-public abstract class DaoBase<T, ID extends Serializable> \r
-               extends HibernateDaoSupport implements IDao<T, ID> {\r
+@Component\r
+public abstract class DaoBase<T, ID extends Serializable> implements IDao<T, ID> {\r
 \r
        static Logger logger = Logger.getLogger(DaoBase.class);\r
 \r
 \r
        static Logger logger = Logger.getLogger(DaoBase.class);\r
 \r
+       @Autowired\r
+       private SessionFactory factory;\r
        protected Class<T> type;\r
        \r
        public DaoBase(Class<T> type){\r
                this.type = type;\r
        protected Class<T> type;\r
        \r
        public DaoBase(Class<T> type){\r
                this.type = type;\r
-               logger.debug("DAO of type [" + type.getSimpleName() + "] created");\r
+               logger.debug("Creating DAO of type [" + type.getSimpleName() + "]");\r
        }\r
        \r
        }\r
        \r
-\r
-       public void saveOrUpdate(T transientObject) throws DataAccessException  {\r
-               HibernateTemplate ht = getHibernateTemplate();\r
-               ht.saveOrUpdate(transientObject);\r
+       protected Session getSession(){\r
+               Session s = factory.getCurrentSession();\r
+               s.beginTransaction();\r
+               return s;\r
        }\r
        \r
        }\r
        \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#save(java.lang.Object)\r
-        */\r
-       public ID save(T newInstance) throws DataAccessException  {\r
-               HibernateTemplate ht = getHibernateTemplate();\r
-               return (ID)ht.save(newInstance);\r
+       \r
+       public void saveOrUpdate(T transientObject) throws DataAccessException  {\r
+               getSession().saveOrUpdate(transientObject);\r
+       }\r
+\r
+       public Serializable save(T newInstance) throws DataAccessException {\r
+               return getSession().save(newInstance);\r
        }\r
        \r
        }\r
        \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#update(java.lang.Object)\r
-        */\r
        public void update(T transientObject) throws DataAccessException {\r
        public void update(T transientObject) throws DataAccessException {\r
-               //TODO update kommt in einem O/R-Mapping eigentlich gar nich vor!!\r
-               getHibernateTemplate().update(transientObject);\r
+               getSession().update(transientObject);\r
        }\r
        \r
        }\r
        \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#delete(java.lang.Object)\r
-        */\r
        public void delete(T persistentObject) throws DataAccessException {\r
        public void delete(T persistentObject) throws DataAccessException {\r
-               getHibernateTemplate().delete(persistentObject);\r
-       }\r
-       \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#findById(java.io.Serializable)\r
-        */\r
-       public T findById(ID id) throws DataAccessException {\r
-               return (T)getHibernateTemplate().get(type,id);\r
+               getSession().delete(persistentObject);\r
        }\r
 \r
        }\r
 \r
-//********************************************//       \r
-       \r
-       \r
-       public abstract List<T> find(String queryString);\r
-\r
+       public T findById(Integer id) throws DataAccessException {\r
+               // TODO Auto-generated method stub\r
+               return null;\r
+       }\r
 \r
 \r
 \r
 \r
-       /* (non-Javadoc)\r
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#exists(java.io.Serializable)\r
-        */\r
-       public Boolean exists(ID id) {\r
+       \r
+       public Boolean exists(Integer id) {\r
                // TODO Auto-generated method stub\r
                return null;\r
        }\r
 \r
                // TODO Auto-generated method stub\r
                return null;\r
        }\r
 \r
-       public List<T> list100() {\r
-               HibernateTemplate ht = getHibernateTemplate();\r
-               ht.setMaxResults(100);\r
-               return ht.loadAll(type); \r
+\r
+       public List<T> list(Integer limit) {\r
+               // TODO Auto-generated method stub\r
+               return null;\r
        }\r
 \r
        }\r
 \r
+       public abstract List<T> find(String queryString);\r
 }\r
 }\r
index 9b7e807384416b3c17f986bbfb9001771a62d28c..4f59f0792923a768369fd08a6e2875e60efb241f 100644 (file)
@@ -1,5 +1,6 @@
 package eu.etaxonomy.cdm.persistence.dao;
 
 package eu.etaxonomy.cdm.persistence.dao;
 
+import java.io.Serializable;
 import java.util.List;
 
 import org.apache.log4j.Logger;
 import java.util.List;
 
 import org.apache.log4j.Logger;
@@ -8,9 +9,9 @@ import org.springframework.stereotype.Repository;
 
 import eu.etaxonomy.cdm.model.common.Enumeration;
 
 
 import eu.etaxonomy.cdm.model.common.Enumeration;
 
-@Repository
-public class EnumerationDaoHibernateImpl extends DaoBase<Enumeration, Integer> 
-implements IEnumerationDAO {
+
+
+public class EnumerationDaoHibernateImpl extends DaoBase<Enumeration, Integer> implements IEnumerationDAO {
        private static final Logger logger = Logger.getLogger(EnumerationDaoHibernateImpl.class);
 
        public EnumerationDaoHibernateImpl() {
        private static final Logger logger = Logger.getLogger(EnumerationDaoHibernateImpl.class);
 
        public EnumerationDaoHibernateImpl() {
index 7b0da342baf38d54f0736fe11fd2d7498d136dae..c4cf06133b17af40933f072212ca13c6e48055a8 100644 (file)
@@ -10,6 +10,7 @@
 package eu.etaxonomy.cdm.persistence.dao;
 
 
 package eu.etaxonomy.cdm.persistence.dao;
 
 
+import java.io.Serializable;
 import java.util.List;
 
 import org.apache.log4j.Logger;
 import java.util.List;
 
 import org.apache.log4j.Logger;
@@ -25,13 +26,13 @@ import eu.etaxonomy.cdm.model.common.Enumeration;
  * @version 1.0
  * @created 02-Nov-2007 19:36:10
  */
  * @version 1.0
  * @created 02-Nov-2007 19:36:10
  */
-public interface IDao<T, ID> {
+public interface IDao<T, ID extends Serializable> {
        public void saveOrUpdate(T transientObject) throws DataAccessException;
        
        /* (non-Javadoc)
         * @see eu.etaxonomy.cdm.persistence.dao.IDAO#save(java.lang.Object)
         */
        public void saveOrUpdate(T transientObject) throws DataAccessException;
        
        /* (non-Javadoc)
         * @see eu.etaxonomy.cdm.persistence.dao.IDAO#save(java.lang.Object)
         */
-       public ID save(T newInstance) throws DataAccessException;
+       public Serializable save(T newInstance) throws DataAccessException;
        
        /* (non-Javadoc)
         * @see eu.etaxonomy.cdm.persistence.dao.IDAO#update(java.lang.Object)
        
        /* (non-Javadoc)
         * @see eu.etaxonomy.cdm.persistence.dao.IDAO#update(java.lang.Object)
@@ -53,11 +54,8 @@ public interface IDao<T, ID> {
        
        public List<T> find(String queryString);
 
        
        public List<T> find(String queryString);
 
-       /* (non-Javadoc)
-        * @see eu.etaxonomy.cdm.persistence.dao.IDAO#exists(java.io.Serializable)
-        */
        public Boolean exists(ID id);
 
        public Boolean exists(ID id);
 
-       public List<T> list100();
+       public List<T> list(Integer limit);
 
 }
 
 }
index 7291f348996fbc5783b52ef28054fad3e3cfe4c5..0fb43bc60b68d6154d96395b1c5b9b6e58bcee83 100644 (file)
@@ -15,11 +15,7 @@ public interface ITaxonNameDao extends IDao<TaxonNameBase,Integer> {
        /* any nice thing to find*/\r
        public List<TaxonNameBase> getRelatedNames(Integer id);\r
        \r
        /* any nice thing to find*/\r
        public List<TaxonNameBase> getRelatedNames(Integer id);\r
        \r
-       /* all names*/\r
-       public List<TaxonNameBase> getAllNames();\r
-       \r
        /* some names*/\r
        public List<TaxonNameBase> getNamesByName(String name);\r
        \r
        /* some names*/\r
        public List<TaxonNameBase> getNamesByName(String name);\r
        \r
-       \r
 }\r
 }\r
index 4f9bc8ded7ee754c0347b6d2007e924914bbfb2e..23eb5998fbf6b967b09f5ded56633a967280928b 100644 (file)
@@ -20,7 +20,6 @@ import eu.etaxonomy.cdm.model.name.TaxonNameBase;
  * @author a.mueller\r
  *\r
  */\r
  * @author a.mueller\r
  *\r
  */\r
-@Repository\r
 public class TaxonNameDaoHibernateImpl \r
                        extends DaoBase<TaxonNameBase, Integer> implements ITaxonNameDao {\r
        static Logger logger = Logger.getLogger(TaxonNameDaoHibernateImpl.class);\r
 public class TaxonNameDaoHibernateImpl \r
                        extends DaoBase<TaxonNameBase, Integer> implements ITaxonNameDao {\r
        static Logger logger = Logger.getLogger(TaxonNameDaoHibernateImpl.class);\r
@@ -41,20 +40,11 @@ public class TaxonNameDaoHibernateImpl
        }\r
        \r
        \r
        }\r
        \r
        \r
-       public List<TaxonNameBase> getAllNames() {\r
-               List<TaxonNameBase> list = ht().find("from TaxonNameBase");\r
-               return list;\r
-       }\r
-       \r
-       \r
        public List<TaxonNameBase> getNamesByName(String name) {\r
        public List<TaxonNameBase> getNamesByName(String name) {\r
-               List<TaxonNameBase> list = ht().find("from TaxonNameBase tn where tn.name=?", name);\r
+               List<TaxonNameBase> list = this.find(name);\r
                return list;\r
        }\r
        \r
                return list;\r
        }\r
        \r
-       private HibernateTemplate ht(){\r
-               return getHibernateTemplate();\r
-       }\r
 \r
        @Override\r
        public List<TaxonNameBase> find(String queryString) {\r
 \r
        @Override\r
        public List<TaxonNameBase> find(String queryString) {\r
index 08609162a074d934de06fad38811e6cfcc056805..6f608df2583d46475a7c1eeca744d0ff9357ef4c 100644 (file)
@@ -21,7 +21,7 @@ log4j.rootLogger=info, stdout
 
        ### *** CDM *** ###
 
 
        ### *** CDM *** ###
 
-log4j.logger.eu.etaxonomy.cdm.functiontest = debug 
+log4j.logger.eu.etaxonomy.cdm = debug 
 
        ### ***HIBERNATE ************ ###
 
 
        ### ***HIBERNATE ************ ###
 
index 7697c5e34f0b7229e68f26f868a78c811106c19c..6e3ef3fc7881439880113c5739338a26f432eba7 100644 (file)
@@ -7,9 +7,7 @@
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-2.5.xsd">
     
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-2.5.xsd">
     
-    <context:annotation-config/>
-
-    <context:component-scan base-package="eu.taxonomy.cdm"/>
+    <context:component-scan base-package="eu.etaxonomy.cdm"/>
     
     
 <bean id="sessionFactory" 
     
     
 <bean id="sessionFactory" 
index 81bb7c3fd8b9c26801d74a903db18ddea4cec37f..92c2a48c59a98f92fec3bc501d6dc78920fd5d9d 100644 (file)
@@ -7,7 +7,8 @@
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-2.5.xsd">
     
     http://www.springframework.org/schema/context
     http://www.springframework.org/schema/context/spring-context-2.5.xsd">
     
-    <import resource="sessionfactory.xml"/>
+
+        <import resource="sessionfactory.xml"/>
 
     <bean id="mysqlDataSource" 
         class="org.springframework.jdbc.datasource.DriverManagerDataSource">
 
     <bean id="mysqlDataSource" 
         class="org.springframework.jdbc.datasource.DriverManagerDataSource">
@@ -17,9 +18,4 @@
         <property name="password" value="wp5"/>
     </bean>
     
         <property name="password" value="wp5"/>
     </bean>
     
-    
-    
-    <bean id="enumerationDao" class="eu.etaxonomy.cdm.persistence.dao.EnumerationDaoHibernateImpl">
-        <property name="sessionFactory" ref="sessionFactory" />
-    </bean>
 </beans>
\ No newline at end of file
 </beans>
\ No newline at end of file