Revision: 4034
Author: seba.wagner
Date: Sat Aug 13 02:49:39 2011
Log: Fix FieldLanguageDaoImpl
http://code.google.com/p/openmeetings/source/detail?r=4034
Modified:
/branches/dev/injection/server/red5/webapps/openmeetings/WEB-INF/red5-applicationContext.xml
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
/branches/dev/injection/src/app/org/openmeetings/app/installation/ImportInitvalues.java
/branches/dev/injection/src/app/org/openmeetings/app/remote/LanguageService.java
/branches/dev/injection/src/app/org/openmeetings/app/xmlimport/LanguageImport.java
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/LangExport.java
/branches/dev/injection/src/test/org/openmeetings/test/basic/StartUpLanguageFieldsConference.java
/branches/dev/injection/src/test/org/openmeetings/test/init/AdddefaultLanugages.java
=======================================
---
/branches/dev/injection/server/red5/webapps/openmeetings/WEB-INF/red5-applicationContext.xml
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/server/red5/webapps/openmeetings/WEB-INF/red5-applicationContext.xml
Sat Aug 13 02:49:39 2011
@@ -31,6 +31,7 @@
</property>
</bean>
+ <bean id="fieldLanguageDaoImpl"
class="org.openmeetings.app.data.basic.FieldLanguageDaoImpl"/>
<bean id="fieldmanagment"
class="org.openmeetings.app.data.basic.Fieldmanagment"/>
<bean id="importInitvalues" class="
org.openmeetings.app.installation.ImportInitvalues"/>
<bean id="cfgManagement"
class="org.openmeetings.app.data.basic.Configurationmanagement"/>
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
Sat Jul 23 04:37:43 2011
+++
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java
Sat Aug 13 02:49:39 2011
@@ -1,47 +1,35 @@
package org.openmeetings.app.data.basic;
-import java.util.List;
import java.util.Date;
-
-import org.slf4j.Logger;
-import org.red5.logging.Red5LoggerFactory;
+import java.util.List;
+
+import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
import javax.persistence.Query;
-import javax.persistence.EntityManager;
-import javax.persistence.EntityTransaction;
import org.openmeetings.app.persistence.beans.lang.FieldLanguage;
-import org.openmeetings.app.persistence.utils.PersistenceSessionUtil;
import org.openmeetings.app.remote.red5.ScopeApplicationAdapter;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+import org.springframework.transaction.annotation.Transactional;
/**
*
* @author sebastianwagner
- *
+ *
*/
+@Transactional
public class FieldLanguageDaoImpl {
- private static final Logger log =
Red5LoggerFactory.getLogger(FieldLanguageDaoImpl.class,
ScopeApplicationAdapter.webAppRootKey);
-
- private FieldLanguageDaoImpl() {
- }
-
- private static FieldLanguageDaoImpl instance = null;
-
- public static synchronized FieldLanguageDaoImpl getInstance() {
- if (instance == null) {
- instance = new FieldLanguageDaoImpl();
- }
- return instance;
- }
-
+ private static final Logger log = Red5LoggerFactory.getLogger(
+ FieldLanguageDaoImpl.class,
ScopeApplicationAdapter.webAppRootKey);
+
+ @PersistenceContext
+ private EntityManager em;
public Long addLanguage(String langName, Boolean langRtl) {
try {
- Object idf = PersistenceSessionUtil.createSession();
- EntityManager session =
PersistenceSessionUtil.getSession();
- EntityTransaction tx = session.getTransaction();
- tx.begin();
FieldLanguage fl = new FieldLanguage();
fl.setStarttime(new Date());
@@ -49,111 +37,82 @@
fl.setName(langName);
fl.setRtl(langRtl);
- fl = session.merge(fl);
- session.flush();
+ fl = em.merge(fl);
Long languages_id = fl.getLanguage_id();
- tx.commit();
- PersistenceSessionUtil.closeSession(idf);
-
return languages_id;
} catch (Exception ex2) {
- log.error("[addLanguage]: ",ex2);
+ log.error("[addLanguage]: ", ex2);
}
return null;
}
-
public void emptyFieldLanguage() {
try {
- Object idf = PersistenceSessionUtil.createSession();
- EntityManager session =
PersistenceSessionUtil.getSession();
- EntityTransaction tx = session.getTransaction();
- tx.begin();
-
-// TODO delete hql query doesn't work, must be repared
- session.createQuery("delete from FieldLanguage");
- tx.commit();
- PersistenceSessionUtil.closeSession(idf);
+
+ // TODO delete hql query doesn't work, must be repared
+ em.createQuery("delete from FieldLanguage");
} catch (Exception ex2) {
- log.error("[getConfKey]: ",ex2);
+ log.error("[getConfKey]: ", ex2);
}
}
-
- public Long updateFieldLanguage(Long language_id, String langName, String
deleted) {
+
+ public Long updateFieldLanguage(Long language_id, String langName,
+ String deleted) {
try {
FieldLanguage fl =
this.getFieldLanguageById(language_id);
fl.setUpdatetime(new Date());
- if (langName.length()>0) fl.setName(langName);
+ if (langName.length() > 0)
+ fl.setName(langName);
fl.setDeleted(deleted);
this.updateLanguage(fl);
return language_id;
} catch (Exception ex2) {
- log.error("[updateLanguage]: ",ex2);
+ log.error("[updateLanguage]: ", ex2);
}
return new Long(-1);
}
-
private void updateLanguage(FieldLanguage fl) throws Exception {
- Object idf = PersistenceSessionUtil.createSession();
- EntityManager session = PersistenceSessionUtil.getSession();
- EntityTransaction tx = session.getTransaction();
- tx.begin();
if (fl.getLanguage_id() == null) {
- session.persist(fl);
- } else {
- if (!session.contains(fl)) {
- session.merge(fl);
- }
- }
- tx.commit();
- PersistenceSessionUtil.closeSession(idf);
- }
-
+ em.persist(fl);
+ } else {
+ if (!em.contains(fl)) {
+ em.merge(fl);
+ }
+ }
+ }
public FieldLanguage getFieldLanguageById(Long language_id) {
try {
- String hql = "select c from FieldLanguage as c " +
- "WHERE c.deleted <> :deleted " +
- "AND c.language_id = :language_id";
- Object idf = PersistenceSessionUtil.createSession();
- EntityManager session =
PersistenceSessionUtil.getSession();
- EntityTransaction tx = session.getTransaction();
- tx.begin();
- Query query = session.createQuery(hql);
+ String hql = "select c from FieldLanguage as c "
+ + "WHERE c.deleted <> :deleted "
+ + "AND c.language_id = :language_id";
+ Query query = em.createQuery(hql);
query.setParameter("deleted", "true");
query.setParameter("language_id", language_id);
FieldLanguage fl = null;
try {
fl = (FieldLanguage) query.getSingleResult();
- } catch (NoResultException ex) {
- }
- tx.commit();
- PersistenceSessionUtil.closeSession(idf);
+ } catch (NoResultException ex) {
+ }
return fl;
} catch (Exception ex2) {
- log.error("[getLanguageById]: ",ex2);
+ log.error("[getLanguageById]: ", ex2);
}
return null;
}
-
+
public List<FieldLanguage> getLanguages() {
try {
- String hql = "select c from FieldLanguage as c " +
- "WHERE c.deleted <> :deleted ";
- Object idf = PersistenceSessionUtil.createSession();
- EntityManager session =
PersistenceSessionUtil.getSession();
- EntityTransaction tx = session.getTransaction();
- tx.begin();
- Query query = session.createQuery(hql);
+ String hql = "select c from FieldLanguage as c "
+ + "WHERE c.deleted <> :deleted ";
+ Query query = em.createQuery(hql);
query.setParameter("deleted", "true");
List<FieldLanguage> ll = query.getResultList();
- tx.commit();
- PersistenceSessionUtil.closeSession(idf);
return ll;
} catch (Exception ex2) {
- log.error("[getLanguages]: ",ex2);
+ log.error("[getLanguages]: ", ex2);
}
return null;
}
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/app/org/openmeetings/app/data/basic/Fieldmanagment.java
Sat Aug 13 02:49:39 2011
@@ -24,6 +24,7 @@
import org.openmeetings.app.remote.red5.ScopeApplicationAdapter;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
/**
@@ -40,6 +41,9 @@
@PersistenceContext
private EntityManager em;
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
+
// Reflect the Reverse Order!!
public Fieldlanguagesvalues getFieldByIdAndLanguageByNavi(
Long fieldvalues_id, Long language_id) {
@@ -58,7 +62,7 @@
} catch (NoResultException ex) {
}
- FieldLanguage fieldLanguage =
FieldLanguageDaoImpl.getInstance()
+ FieldLanguage fieldLanguage = fieldLanguageDaoImpl
.getFieldLanguageById(language_id);
log.debug("Getting FieldById for Language "
@@ -182,7 +186,7 @@
returnList.add(map);
}
}
- FieldLanguage fieldLanguage =
FieldLanguageDaoImpl.getInstance()
+ FieldLanguage fieldLanguage = fieldLanguageDaoImpl
.getFieldLanguageById(language_id);
log.debug("Getting Labels for Language " +
fieldLanguage.getName());
@@ -256,7 +260,7 @@
//
// }
- FieldLanguage fieldLanguage =
FieldLanguageDaoImpl.getInstance()
+ FieldLanguage fieldLanguage = fieldLanguageDaoImpl
.getFieldLanguageById(language_id);
log.debug("GEtting all fields by language : "
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/app/installation/ImportInitvalues.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/app/org/openmeetings/app/installation/ImportInitvalues.java
Sat Aug 13 02:49:39 2011
@@ -49,6 +49,8 @@
private Usermanagement userManagement;
@Autowired
private Fieldmanagment fieldmanagment;
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
public void loadMainMenu() {
@@ -752,8 +754,8 @@
if (rtl != null && rtl.equals("true"))
langRtl = true;
- Long languages_id =
FieldLanguageDaoImpl.getInstance().addLanguage(
- langName, langRtl);
+ Long languages_id =
fieldLanguageDaoImpl.addLanguage(langName,
+ langRtl);
SAXReader reader = new SAXReader();
Document document = reader.read(filePath + langName +
".xml");
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/app/remote/LanguageService.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/app/org/openmeetings/app/remote/LanguageService.java
Sat Aug 13 02:49:39 2011
@@ -35,6 +35,8 @@
private Usermanagement userManagement;
@Autowired
private Fieldmanagment fieldmanagment;
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
/**
* get a List of all availible Languages
@@ -42,7 +44,7 @@
* @return
*/
public List getLanguages() {
- return FieldLanguageDaoImpl.getInstance().getLanguages();
+ return fieldLanguageDaoImpl.getLanguages();
}
/**
@@ -90,8 +92,7 @@
if
(AuthLevelmanagement.getInstance().checkAdminLevel(user_level)) {
if (langName.length() == 0)
return new Long(-30);
- return
FieldLanguageDaoImpl.getInstance().addLanguage(langName,
- false);
+ return fieldLanguageDaoImpl.addLanguage(langName,
false);
}
return null;
}
@@ -102,8 +103,8 @@
if
(AuthLevelmanagement.getInstance().checkAdminLevel(user_level)) {
if (langName.length() == 0)
return new Long(-30);
- return
FieldLanguageDaoImpl.getInstance().updateFieldLanguage(
- language_id, langName, "false");
+ return
fieldLanguageDaoImpl.updateFieldLanguage(language_id,
+ langName, "false");
}
return null;
}
@@ -112,8 +113,8 @@
Long users_id = sessionManagement.checkSession(SID);
Long user_level = userManagement.getUserLevelByID(users_id);
if
(AuthLevelmanagement.getInstance().checkAdminLevel(user_level)) {
- return
FieldLanguageDaoImpl.getInstance().updateFieldLanguage(
- language_id, "", "true");
+ return fieldLanguageDaoImpl.updateFieldLanguage(language_id,
"",
+ "true");
}
return null;
}
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/app/xmlimport/LanguageImport.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/app/org/openmeetings/app/xmlimport/LanguageImport.java
Sat Aug 13 02:49:39 2011
@@ -21,6 +21,8 @@
@Autowired
private Fieldmanagment fieldmanagment;
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
public LanguageImport() {
}
@@ -38,8 +40,7 @@
throws Exception {
// return null if no language availible
- if (FieldLanguageDaoImpl.getInstance()
- .getFieldLanguageById(language_id) == null) {
+ if (fieldLanguageDaoImpl.getFieldLanguageById(language_id) ==
null) {
return null;
}
=======================================
---
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/LangExport.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/app/org/openmeetings/servlet/outputhandler/LangExport.java
Sat Aug 13 02:49:39 2011
@@ -43,6 +43,8 @@
private Usermanagement userManagement;
@Autowired
private Fieldmanagment fieldmanagment;
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
/*
* (non-Javadoc)
@@ -77,7 +79,7 @@
log.debug("user_level: " + user_level);
if (user_level != null && user_level > 0) {
- FieldLanguage fl =
FieldLanguageDaoImpl.getInstance()
+ FieldLanguage fl = fieldLanguageDaoImpl
.getFieldLanguageById(language_id);
List<Fieldvalues> fvList = fieldmanagment
=======================================
---
/branches/dev/injection/src/test/org/openmeetings/test/basic/StartUpLanguageFieldsConference.java
Sat Aug 13 02:42:52 2011
+++
/branches/dev/injection/src/test/org/openmeetings/test/basic/StartUpLanguageFieldsConference.java
Sat Aug 13 02:49:39 2011
@@ -1,69 +1,78 @@
package org.openmeetings.test.basic;
-import org.openmeetings.app.data.basic.Fieldmanagment;
-import org.openmeetings.app.data.basic.FieldLanguageDaoImpl;
+import java.io.File;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
import junit.framework.TestCase;
-import javax.xml.parsers.*;
-
-import org.w3c.dom.*;
-import java.io.*;
-import java.lang.Long;
+import org.openmeetings.app.data.basic.FieldLanguageDaoImpl;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
public class StartUpLanguageFieldsConference extends TestCase {
-
- public StartUpLanguageFieldsConference(String testname){
+
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
+
+ public StartUpLanguageFieldsConference(String testname) {
super(testname);
}
-
- public static NodeList getLanguageXmlFile(String fileLanguage) throws
Exception{
+
+ public static NodeList getLanguageXmlFile(String fileLanguage)
+ throws Exception {
File xml;
-
- try{
- xml = new File("src/languages/" + fileLanguage + ".xml");
- }catch(Exception e){
- throw e;
- }
-
- DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
-
- DocumentBuilder construct = factory.newDocumentBuilder();
- Document document = construct.parse(xml);
-
- Element root = document.getDocumentElement();
-
- return root.getElementsByTagName("string");
- }
-
- public void testStartUpLanguageFieldsConference() throws Exception{
- String listLanguages[] = {"deutsch", "english", "french",
"spanish"};
+
+ try {
+ xml = new File("src/languages/" + fileLanguage +
".xml");
+ } catch (Exception e) {
+ throw e;
+ }
+
+ DocumentBuilderFactory factory =
DocumentBuilderFactory.newInstance();
+
+ DocumentBuilder construct = factory.newDocumentBuilder();
+ Document document = construct.parse(xml);
+
+ Element root = document.getDocumentElement();
+
+ return root.getElementsByTagName("string");
+ }
+
+ public void testStartUpLanguageFieldsConference() throws Exception {
+ String listLanguages[] = { "deutsch", "english", "french",
"spanish" };
NodeList nodeListLanguages[] = new NodeList[4];
-
+
// TODO empty tables before launch unit test
- //Languagemanagement.getInstance().emptyFieldLanguage();
-
+ // Languagemanagement.getInstance().emptyFieldLanguage();
+
/** Read all languages files */
- for (int i = 0; i < listLanguages.length ; i ++)
- {
-
FieldLanguageDaoImpl.getInstance().addLanguage(listLanguages[i],false);
+ for (int i = 0; i < listLanguages.length; i++) {
+ fieldLanguageDaoImpl.addLanguage(listLanguages[i],
false);
nodeListLanguages[i] =
getLanguageXmlFile(listLanguages[i]);
- }
-
- /** Insert all languages strings into database
+ }
+
+ /**
+ * Insert all languages strings into database
*
- * This code can-not work
- * swagner 15.05.2007*/
-// for (int item_id = 0; item_id < nodeListLanguages[0].getLength();
item_id++)
-// {
-//
fieldmanagment.addField(nodeListLanguages[0].item(item_id).getAttributes().getNamedItem("name").getNodeValue());
-//
-// for (int language_id = 0; language_id < listLanguages.length;
language_id ++)
-// {
-//
fieldmanagment.addFieldValueByFieldAndLanguage(Long.valueOf(nodeListLanguages[language_id].item(item_id).getAttributes().getNamedItem("id").getNodeValue()),
(long) (language_id + 1),
nodeListLanguages[language_id].item(item_id).getTextContent());
-// }
-// }
- }
-
+ * This code can-not work swagner 15.05.2007
+ */
+ // for (int item_id = 0; item_id <
nodeListLanguages[0].getLength();
+ // item_id++)
+ // {
+ //
fieldmanagment.addField(nodeListLanguages[0].item(item_id).getAttributes().getNamedItem("name").getNodeValue());
+ //
+ // for (int language_id = 0; language_id < listLanguages.length;
+ // language_id ++)
+ // {
+ //
fieldmanagment.addFieldValueByFieldAndLanguage(Long.valueOf(nodeListLanguages[language_id].item(item_id).getAttributes().getNamedItem("id").getNodeValue()),
+ // (long) (language_id + 1),
+ //
nodeListLanguages[language_id].item(item_id).getTextContent());
+ // }
+ // }
+ }
}
=======================================
---
/branches/dev/injection/src/test/org/openmeetings/test/init/AdddefaultLanugages.java
Mon Oct 12 02:56:03 2009
+++
/branches/dev/injection/src/test/org/openmeetings/test/init/AdddefaultLanugages.java
Sat Aug 13 02:49:39 2011
@@ -3,18 +3,22 @@
import junit.framework.TestCase;
import org.openmeetings.app.data.basic.FieldLanguageDaoImpl;
+import org.springframework.beans.factory.annotation.Autowired;
public class AdddefaultLanugages extends TestCase {
- public AdddefaultLanugages(String testname){
+ @Autowired
+ private FieldLanguageDaoImpl fieldLanguageDaoImpl;
+
+ public AdddefaultLanugages(String testname) {
super(testname);
}
-
- public void testAdddefaultLanugages(){
-
- FieldLanguageDaoImpl.getInstance().addLanguage("deutsch",false);
- FieldLanguageDaoImpl.getInstance().addLanguage("english",false);
- FieldLanguageDaoImpl.getInstance().addLanguage("french",false);
-
+
+ public void testAdddefaultLanugages() {
+
+ fieldLanguageDaoImpl.addLanguage("deutsch", false);
+ fieldLanguageDaoImpl.addLanguage("english", false);
+ fieldLanguageDaoImpl.addLanguage("french", false);
+
}
}
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.