Author: solomax
Date: Fri Oct 12 09:23:41 2012
New Revision: 1397489
URL: http://svn.apache.org/viewvc?rev=1397489&view=rev
Log:
MySQL is switched to InnoDB
Wicket: language panel is fixed
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldValueDaoImpl.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
incubator/openmeetings/trunk/singlewebapp/src/META-INF/mysql_persistence.xml
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguagesValuesDaoImpl.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldvalues.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
Fri Oct 12 09:23:41 2012
@@ -188,6 +188,7 @@
<bean id="omTimeZoneDaoImpl"
class="org.apache.openmeetings.data.basic.dao.OmTimeZoneDaoImpl" />
<bean id="statemanagement"
class="org.apache.openmeetings.data.user.dao.StateDaoImpl" />
<bean id="fieldLanguageDaoImpl"
class="org.apache.openmeetings.data.basic.FieldLanguageDaoImpl" />
+ <bean id="fieldValueDaoImpl"
class="org.apache.openmeetings.data.basic.FieldValueDaoImpl" />
<bean id="fieldLanguagesValuesDAO"
class="org.apache.openmeetings.data.basic.FieldLanguagesValuesDaoImpl" />
<bean id="fieldmanagment"
class="org.apache.openmeetings.data.basic.Fieldmanagment" />
<bean id="configurationDaoImpl"
class="org.apache.openmeetings.data.basic.dao.ConfigurationDaoImpl" />
Modified:
incubator/openmeetings/trunk/singlewebapp/src/META-INF/mysql_persistence.xml
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/META-INF/mysql_persistence.xml?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/META-INF/mysql_persistence.xml
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/META-INF/mysql_persistence.xml
Fri Oct 12 09:23:41 2012
@@ -89,7 +89,7 @@
<property name="openjpa.DataCache" value="true"/>
<!-- QueryCache disabled due to changes outside of JPA
doesn't take effect with caching -->
<property name="openjpa.QueryCache" value="false"/>
- <property name="openjpa.jdbc.DBDictionary"
value="batchLimit=100,tableType=myisam"/>
+ <property name="openjpa.jdbc.DBDictionary"
value="batchLimit=100"/>
<property name="openjpa.jdbc.QuerySQLCache"
value="false"/>
</properties>
</persistence-unit>
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguagesValuesDaoImpl.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguagesValuesDaoImpl.java?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguagesValuesDaoImpl.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguagesValuesDaoImpl.java
Fri Oct 12 09:23:41 2012
@@ -92,6 +92,19 @@ public class FieldLanguagesValuesDaoImpl
return flv;
}
+ public Fieldlanguagesvalues get(long fieldValuesId, long langId) {
+ TypedQuery<Fieldlanguagesvalues> q = em.createNamedQuery(
+ "getFieldLanguagesValuesByValueAndLang",
Fieldlanguagesvalues.class);
+ q.setParameter("fieldValuesId", fieldValuesId);
+ q.setParameter("lang", langId);
+ Fieldlanguagesvalues flv = null;
+ try {
+ flv = q.getSingleResult();
+ } catch (NoResultException e) {
+ }
+ return flv;
+ }
+
/*
* (non-Javadoc)
*
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldValueDaoImpl.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldValueDaoImpl.java?rev=1397489&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldValueDaoImpl.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldValueDaoImpl.java
Fri Oct 12 09:23:41 2012
@@ -0,0 +1,88 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.data.basic;
+
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import javax.persistence.TypedQuery;
+
+import org.apache.openmeetings.data.OmDAO;
+import org.apache.openmeetings.data.basic.dao.ConfigurationDaoImpl;
+import org.apache.openmeetings.persistence.beans.lang.Fieldvalues;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+
+@Transactional
+public class FieldValueDaoImpl implements OmDAO<Fieldvalues> {
+ @PersistenceContext
+ private EntityManager em;
+ @Autowired
+ private ConfigurationDaoImpl configurationDaoImpl;
+ @Autowired
+ private FieldLanguagesValuesDaoImpl flvDaoImpl;
+
+ public Fieldvalues get(long id) {
+ return get(configurationDaoImpl.getConfValue("default_lang_id",
+ Long.class, "1"), id);
+ }
+
+ public Fieldvalues get(Long language_id, long id) {
+ TypedQuery<Fieldvalues> q =
em.createNamedQuery("getFieldByIdAndLanguage", Fieldvalues.class);
+ q.setParameter("id", id);
+ q.setParameter("lang", language_id);
+ List<Fieldvalues> l = q.getResultList();
+ return l == null || l.isEmpty() ? null : l.get(0);
+ }
+
+ public List<Fieldvalues> get(int start, int count) {
+ return get(configurationDaoImpl.getConfValue("default_lang_id",
+ Long.class, "1"), start, count);
+ }
+
+ public List<Fieldvalues> get(Long language_id, int start, int count) {
+ TypedQuery<Fieldvalues> q =
em.createNamedQuery("getFieldByLanguage", Fieldvalues.class);
+ //q.setParameter("lang", language_id); //FIXME commented for now
+ q.setFirstResult(start);
+ q.setMaxResults(count);
+ List<Fieldvalues> result = q.getResultList();
+ for (Fieldvalues fv : result) {
+ //FIXME ineffective !!!!!!!!!!!!!!!!!!!!
+
fv.setFieldlanguagesvalue(flvDaoImpl.get(fv.getFieldvalues_id(), language_id));
+ }
+ return result;
+ }
+
+ public long count() {
+ TypedQuery<Long> q = em.createNamedQuery("getFieldCount",
Long.class);
+ return q.getSingleResult();
+ }
+
+ public void update(Fieldvalues entity, long userId) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void delete(Fieldvalues entity, long userId) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
Fri Oct 12 09:23:41 2012
@@ -54,6 +54,8 @@ import org.apache.openmeetings.persisten
+ " AND flv.language_id = 1 AND flv.fieldvalues_id
NOT IN (:id_list)")
, @NamedQuery(name="getFieldLanguagesValuesById"
, query = "SELECT f FROM Fieldlanguagesvalues f WHERE
f.fieldlanguagesvalues_id = :id")
+ , @NamedQuery(name="getFieldLanguagesValuesByValueAndLang"
+ , query = "SELECT f FROM Fieldlanguagesvalues f WHERE
f.fieldvalues_id = :fieldValuesId AND f.language_id = :lang AND f.deleted =
false")
})
@Table(name = "fieldlanguagesvalues")
public class Fieldlanguagesvalues implements Serializable, OmEntity {
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldvalues.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldvalues.java?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldvalues.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldvalues.java
Fri Oct 12 09:23:41 2012
@@ -33,12 +33,18 @@ import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Transient;
+import org.apache.openmeetings.persistence.beans.OmEntity;
+
@Entity
@NamedQueries({
@NamedQuery(name = "getFieldCount", query = "SELECT COUNT(fv) FROM
Fieldvalues fv WHERE fv.deleted = false ")
+ , @NamedQuery(name = "getFieldByIdAndLanguage", query = "SELECT fv FROM
Fieldvalues fv " +
+ "LEFT OUTER JOIN FETCH fv.fieldlanguagesvalues flv WHERE " +
+ " fv.fieldvalues_id = :id AND fv.deleted = false AND
flv.language_id = :lang")
+ , @NamedQuery(name = "getFieldByLanguage", query = "SELECT fv FROM
Fieldvalues fv WHERE fv.deleted = false") //FIXME no language yet
})
@Table(name = "fieldvalues")
-public class Fieldvalues implements Serializable {
+public class Fieldvalues implements Serializable, OmEntity {
private static final long serialVersionUID = -3439614511218028085L;
@Id
@Column(name="id")
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
Fri Oct 12 09:23:41 2012
@@ -80,7 +80,6 @@ public class GroupsPanel extends AdminPa
form.hideNewRecord();
form.setModelObject(organisation);
form.updateView(target);
- //target.add(form);
}
});
item.add(AttributeModifier.append("class",
"clickable " + ((item.getIndex() % 2 == 1) ? "even" : "odd")));
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java?rev=1397489&r1=1397488&r2=1397489&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
Fri Oct 12 09:23:41 2012
@@ -21,9 +21,10 @@ package org.apache.openmeetings.web.comp
import java.util.Iterator;
import org.apache.openmeetings.data.basic.FieldLanguageDaoImpl;
-import org.apache.openmeetings.data.basic.FieldLanguagesValuesDaoImpl;
+import org.apache.openmeetings.data.basic.FieldValueDaoImpl;
import org.apache.openmeetings.persistence.beans.lang.FieldLanguage;
import org.apache.openmeetings.persistence.beans.lang.Fieldlanguagesvalues;
+import org.apache.openmeetings.persistence.beans.lang.Fieldvalues;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.components.admin.AdminPanel;
import org.apache.openmeetings.web.components.admin.PagedEntityListPanel;
@@ -60,15 +61,15 @@ public class LangPanel extends AdminPane
form.showNewRecord();
add(form);
- final DataView<Fieldlanguagesvalues> dataView = new
DataView<Fieldlanguagesvalues>(
- "langList", new
OmDataProvider<Fieldlanguagesvalues>(
-
FieldLanguagesValuesDaoImpl.class) {
+ final DataView<Fieldvalues> dataView = new
DataView<Fieldvalues>(
+ "langList", new OmDataProvider<Fieldvalues>(
+ FieldValueDaoImpl.class) {
private static final long
serialVersionUID = -6822789354860988626L;
- public Iterator<? extends
Fieldlanguagesvalues> iterator(
+ public Iterator<? extends Fieldvalues>
iterator(
long first, long count)
{
return Application
-
.getBean(FieldLanguagesValuesDaoImpl.class)
+
.getBean(FieldValueDaoImpl.class)
.get(language.getLanguage_id(), (int) first,
(int) count).iterator();
}
@@ -76,16 +77,16 @@ public class LangPanel extends AdminPane
private static final long serialVersionUID =
8715559628755439596L;
@Override
- protected void populateItem(final
Item<Fieldlanguagesvalues> item) {
- final Fieldlanguagesvalues flv =
item.getModelObject();
- item.add(new Label("lblId", "" +
flv.getFieldvalues_id()));
- item.add(new Label("name",
flv.getFieldvalues().getName()));
- item.add(new Label("value", flv.getValue()));
+ protected void populateItem(final Item<Fieldvalues>
item) {
+ final Fieldvalues fv = item.getModelObject();
+ item.add(new Label("lblId", "" +
fv.getFieldvalues_id()));
+ item.add(new Label("name", fv.getName()));
+ item.add(new Label("value",
fv.getFieldlanguagesvalue() != null ? fv.getFieldlanguagesvalue().getValue() :
null));
item.add(new AjaxEventBehavior("onclick") {
private static final long
serialVersionUID = -8069413566800571061L;
protected void
onEvent(AjaxRequestTarget target) {
- form.setModelObject(flv);
+
form.setModelObject(fv.getFieldlanguagesvalue());
form.hideNewRecord();
target.add(form);
}