Author: sebawagner
Date: Mon Oct 15 18:20:13 2012
New Revision: 1398432

URL: http://svn.apache.org/viewvc?rev=1398432&view=rev
Log:
OPENMEETINGS-445 - Fix one of the Backup tool errors: Password field that is 
now lazy fetched needs to be explicitly fetched in Backup (using FetchGroup) 

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/dao/UsersDaoImpl.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/dao/UsersDaoImpl.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/dao/UsersDaoImpl.java?rev=1398432&r1=1398431&r2=1398432&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/dao/UsersDaoImpl.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/dao/UsersDaoImpl.java
 Mon Oct 15 18:20:13 2012
@@ -32,6 +32,8 @@ import javax.persistence.criteria.Predic
 import javax.persistence.criteria.Root;
 
 import org.apache.commons.lang.StringUtils;
+import org.apache.openjpa.persistence.OpenJPAPersistence;
+import org.apache.openjpa.persistence.OpenJPAQuery;
 import org.apache.openmeetings.OpenmeetingsVariables;
 import org.apache.openmeetings.data.OmDAO;
 import org.apache.openmeetings.data.basic.dao.ConfigurationDaoImpl;
@@ -276,7 +278,10 @@ public class UsersDaoImpl implements OmD
                try {
                        TypedQuery<Users> q = em.createNamedQuery("getAllUsers",
                                        Users.class);
-                       return q.getResultList();
+                       @SuppressWarnings("unchecked")
+                       OpenJPAQuery<Users> kq = OpenJPAPersistence.cast(q);
+                       kq.getFetchPlan().addFetchGroup("passwordexport");
+                       return kq.getResultList();
                } catch (Exception ex2) {
                        log.error("[getAllUsersDeleted] ", ex2);
                }

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java?rev=1398432&r1=1398431&r2=1398432&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
 Mon Oct 15 18:20:13 2012
@@ -41,6 +41,10 @@ import javax.persistence.Table;
 import javax.persistence.Transient;
 
 import org.apache.openjpa.persistence.ElementDependent;
+import org.apache.openjpa.persistence.FetchAttribute;
+import org.apache.openjpa.persistence.FetchGroup;
+import org.apache.openjpa.persistence.FetchGroups;
+import org.apache.openjpa.persistence.LoadFetchGroup;
 import org.apache.openmeetings.persistence.beans.OmEntity;
 import org.apache.openmeetings.persistence.beans.adresses.Adresses;
 import org.apache.openmeetings.persistence.beans.adresses.States;
@@ -60,6 +64,11 @@ import org.simpleframework.xml.Root;
  * 
  */
 @Entity
+@FetchGroups({
+ @FetchGroup(name = "passwordexport",
+                attributes = { @FetchAttribute(name = "password")
+ })
+})
 @NamedQueries({
                @NamedQuery(name = "getAllUsers", query = "SELECT u FROM Users 
u"),
                @NamedQuery(name = "checkPassword", query = "select 
count(c.user_id) from Users c "
@@ -116,6 +125,7 @@ public class Users implements Serializab
 
        @Basic(fetch = FetchType.LAZY)
        @Column(name = "password")
+       @LoadFetchGroup("passwordexport")
        @Element(name = "pass", data = true)
        private String password;
 

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java?rev=1398432&r1=1398431&r2=1398432&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java
 Mon Oct 15 18:20:13 2012
@@ -56,10 +56,8 @@ import org.apache.openmeetings.data.cale
 import org.apache.openmeetings.data.calendar.daos.MeetingMemberDaoImpl;
 import org.apache.openmeetings.data.conference.PollManagement;
 import org.apache.openmeetings.data.conference.Roommanagement;
-import org.apache.openmeetings.data.conference.dao.RoomModeratorsDaoImpl;
 import org.apache.openmeetings.data.file.dao.FileExplorerItemDaoImpl;
 import org.apache.openmeetings.data.flvrecord.FlvRecordingDaoImpl;
-import org.apache.openmeetings.data.flvrecord.FlvRecordingMetaDataDaoImpl;
 import org.apache.openmeetings.data.user.Organisationmanagement;
 import org.apache.openmeetings.data.user.Usermanagement;
 import org.apache.openmeetings.data.user.dao.PrivateMessageFolderDaoImpl;
@@ -127,10 +125,6 @@ public class BackupExport {
        @Autowired
        private FlvRecordingDaoImpl flvRecordingDao;
        @Autowired
-       private FlvRecordingMetaDataDaoImpl flvRecordingMetaDataDao;
-       @Autowired
-       private RoomModeratorsDaoImpl roomModeratorsDao;
-       @Autowired
        private UsersDaoImpl usersDao;
        @Autowired
        private MeetingMemberDaoImpl meetingMemberDao;


Reply via email to