Revision: 4738
Author:   [email protected]
Date:     Sun Dec 18 01:41:15 2011
Log: Organisation_Users objects are cleaned up on organization deletion; code cleanup
http://code.google.com/p/openmeetings/source/detail?r=4738

Modified:
/trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Organisationmanagement.java /trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java
 /trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java

=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Organisationmanagement.java Tue Dec 13 06:45:12 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Organisationmanagement.java Sun Dec 18 01:41:15 2011
@@ -111,11 +111,11 @@
         * @param orderby
         * @return
         */
-       public SearchResult getOrganisations(long user_level, int start, int 
max,
+ public SearchResult<Organisation> getOrganisations(long user_level, int start, int max,
                        String orderby, boolean asc) {
                try {
                        if (authLevelManagement.checkAdminLevel(user_level)) {
-                               SearchResult sresult = new SearchResult();
+                               SearchResult<Organisation> sresult = new 
SearchResult<Organisation>();
                                
sresult.setObjectName(Organisation.class.getName());
                                
sresult.setRecords(this.selectMaxFromOrganisations());
                                sresult.setResult(this.getOrganisations(start, 
max, orderby,
@@ -410,6 +410,9 @@
         */
        public Long deleteOrganisation(long organisation_id, long updatedby) {
                try {
+                       em.createNamedQuery("deleteUsersFromOrganisation")
+                               .setParameter("organisation_id", 
organisation_id)
+                               .executeUpdate();

                        Organisation org = 
this.getOrganisationById(organisation_id);
                        org.setDeleted("true");
@@ -533,12 +536,12 @@
                return null;
        }

-       public SearchResult getUsersSearchResultByOrganisationId(
+       public SearchResult<Users> getUsersSearchResultByOrganisationId(
                        long organisation_id, int start, int max, String 
orderby,
                        boolean asc) {
                try {

-                       SearchResult sResult = new SearchResult();
+                       SearchResult<Users> sResult = new SearchResult<Users>();
                        sResult.setObjectName(Users.class.getName());
                        
sResult.setRecords(selectMaxUsersByOrganisationId(organisation_id));
                        
sResult.setResult(getUsersByOrganisationId(organisation_id,
@@ -708,20 +711,8 @@
         * @return
         * @throws Exception
         */
-       @SuppressWarnings("rawtypes")
-       private boolean checkOrgInList(Long orgId, List org) throws Exception {
-               // log.error("checkOrgInList "+orgId);
-               for (Iterator it = org.iterator(); it.hasNext();) {
-                       Integer key = (Integer) it.next();
-                       Long newOrgId = key.longValue();
-                       // log.error("[checkOrgInList 1]: newOrgId "+newOrgId);
-                       // log.error("[checkOrgInList 2]: org "+orgId);
-                       if (newOrgId.equals(orgId)) {
-                               // log.error("checkOrgInList 3 found");
-                               return true;
-                       }
-               }
-               return false;
+ private boolean checkOrgInList(Long orgId, List<Long> org) throws Exception {
+               return org != null && org.contains(orgId);
        }

        /**
@@ -732,11 +723,9 @@
         * @return
         * @throws Exception
         */
-       @SuppressWarnings("rawtypes")
- private boolean checkOrgInStoredList(long orgId, List org) throws Exception { + private boolean checkOrgInStoredList(long orgId, List<Organisation_Users> org) throws Exception {
                // log.debug("checkOrgInStoredList "+orgId);
-               for (Iterator it = org.iterator(); it.hasNext();) {
-                       Organisation_Users orgUsers = (Organisation_Users) 
it.next();
+               for (Organisation_Users orgUsers : org) {
// log.debug("checkOrgInStoredList 2 "+orgUsers.getOrganisation().getOrganisation_id());
                        if 
(orgUsers.getOrganisation().getOrganisation_id().equals(orgId)) {
                                // log.debug("checkOrgInStoredList 3 found");
@@ -753,27 +742,21 @@
         * @param organisations
         * @return
         */
-       @SuppressWarnings("rawtypes") //FIXME need to refactor
-       public Long updateUserOrganisationsByUser(Users us, List organisations) 
{
+       //FIXME need to refactor
+ public Long updateUserOrganisationsByUser(Users us, List<Long> organisations) {
                try {
                        LinkedList<Long> orgIdsToAdd = new LinkedList<Long>();
                        LinkedList<Long> orgIdsToDelete = new 
LinkedList<Long>();

                        if (us.getOrganisation_users() != null) {
-
-                               for (Iterator it = organisations.iterator(); 
it.hasNext();) {
-                                       Integer key = (Integer) it.next();
-                                       Long orgIdToAdd = key.longValue();
+                               for (Long orgIdToAdd : organisations) {
                                        boolean isAlreadyStored = 
this.checkOrgInStoredList(
                                                        orgIdToAdd, 
us.getOrganisation_users());
                                        if (!isAlreadyStored)
                                                orgIdsToAdd.add(orgIdToAdd);
                                }

-                               for (Iterator it = 
us.getOrganisation_users().iterator(); it
-                                               .hasNext();) {
-                                       Organisation_Users orgUsers = 
(Organisation_Users) it
-                                                       .next();
+                               for (Organisation_Users orgUsers : 
us.getOrganisation_users()) {
                                        Long orgIdStored = 
orgUsers.getOrganisation()
                                                        .getOrganisation_id();
                                        // log.error("updateUserOrganisationsByUser 
check1 : "+orgIdStored);
@@ -784,15 +767,13 @@
                                }

// log.error("updateUserOrganisationsByUser size ADD: "+orgIdsToAdd.size());
-                               for (Iterator it = orgIdsToAdd.iterator(); 
it.hasNext();) {
-                                       Long orgToAdd = (Long) it.next();
+                               for (Long orgToAdd : orgIdsToAdd) {
                                        
this.addUserToOrganisation(us.getUser_id(), orgToAdd,
                                                        us.getUser_id(), "");
                                }

// log.error("updateUserOrganisationsByUser size DELETE: "+orgIdsToDelete.size());
-                               for (Iterator it = orgIdsToDelete.iterator(); 
it.hasNext();) {
-                                       Long orgToDel = (Long) it.next();
+                               for (Long orgToDel : orgIdsToDelete) {
                                        this.deleteUserFromOrganisation(new 
Long(3),
                                                        us.getUser_id(), 
orgToDel);
                                }
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java Tue Dec 13 06:45:12 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/data/user/Usermanagement.java Sun Dec 18 01:41:15 2011
@@ -108,11 +108,11 @@
         * @param orderby
         * @return
         */
-       public SearchResult getUsersList(long user_level, int start, int max,
+ public SearchResult<Users> getUsersList(long user_level, int start, int max,
                        String orderby, boolean asc) {
                try {
                        if (authLevelManagement.checkAdminLevel(user_level)) {
-                               SearchResult sresult = new SearchResult();
+                               SearchResult<Users> sresult = new 
SearchResult<Users>();
                                sresult.setObjectName(Users.class.getName());
                                
sresult.setRecords(usersDao.selectMaxFromUsers());

@@ -131,8 +131,8 @@
                                TypedQuery<Users> q = em.createQuery(cq);
                                q.setFirstResult(start);
                                q.setMaxResults(max);
-                               @SuppressWarnings("unused")
                                List<Users> ll = q.getResultList();
+                               sresult.setResult(ll);
                                return sresult;
                        }
                } catch (Exception ex2) {
@@ -141,10 +141,10 @@
                return null;
        }

-       public SearchResult getAllUserByRange(String search, int start, int max,
+ public SearchResult<Users> getAllUserByRange(String search, int start, int max,
                        String orderby, boolean asc) {
                try {
-                       SearchResult sresult = new SearchResult();
+                       SearchResult<Users> sresult = new SearchResult<Users>();
                        sresult.setObjectName(Users.class.getName());
                        sresult.setRecords(usersDao.getAllUserMax(search));

@@ -186,7 +186,7 @@

                        log.debug("Show HQL: " + hql);

-                       Query query = em.createQuery(hql);
+                       TypedQuery<Users> query = em.createQuery(hql, 
Users.class);
                        // query.setParameter("macomUserId", userId);

                        // query
@@ -194,7 +194,6 @@
                        // else ((Criteria) 
query).addOrder(Order.desc(orderby));
                        query.setFirstResult(start);
                        query.setMaxResults(max);
-                       @SuppressWarnings("unchecked")
                        List<Users> ll = query.getResultList();

                        sresult.setResult(ll);
@@ -245,11 +244,10 @@
+ "(c.login LIKE :userOrEmail OR c.adresses.email LIKE :userOrEmail ) "
                                        + "AND c.deleted <> :deleted";

-                       Query query = em.createQuery(hql);
+                       TypedQuery<Users> query = em.createQuery(hql, 
Users.class);
                        query.setParameter("userOrEmail", userOrEmail);
                        query.setParameter("deleted", "true");

-                       @SuppressWarnings("unchecked")
                        List<Users> ll = query.getResultList();

                        log.debug("debug SIZE: " + ll.size());
@@ -407,11 +405,10 @@
        public List<Userdata> getUserdataDashBoard(Long user_id) {
                if (user_id.longValue() > 0) {
                        try {
-                               Query query = em
- .createQuery("select c from Userdata as c where c.user_id = :user_id AND c.deleted <> :deleted");
+                               TypedQuery<Userdata> query = em
+ .createQuery("select c from Userdata as c where c.user_id = :user_id AND c.deleted <> :deleted", Userdata.class);
                                query.setParameter("user_id", 
user_id.longValue());
                                query.setParameter("deleted", "true");
-                               @SuppressWarnings("unchecked")
                                List<Userdata> ll = query.getResultList();
                                return ll;
                        } catch (Exception ex2) {
@@ -425,13 +422,12 @@
                Userdata userdata = new Userdata();
                if (user_id.longValue() > 0) {
                        try {
-                               Query query = em
- .createQuery("select c from Userdata as c where c.user_id = :user_id AND c.data_key = :data_key AND c.deleted <> :deleted");
+                               TypedQuery<Userdata> query = em
+ .createQuery("select c from Userdata as c where c.user_id = :user_id AND c.data_key = :data_key AND c.deleted <> :deleted", Userdata.class);
                                query.setParameter("user_id", 
user_id.longValue());
                                query.setParameter("data_key", DATA_KEY);
                                query.setParameter("deleted", "true");
-                               for (@SuppressWarnings("unchecked")
-                               Iterator<Userdata> it2 = 
query.getResultList().iterator(); it2
+                               for (Iterator<Userdata> it2 = 
query.getResultList().iterator(); it2
                                                .hasNext();) {
                                        userdata = it2.next();
                                }
@@ -449,7 +445,7 @@
                        Date age, String street, String additionalname, String 
zip,
                        long states_id, String town, Long language_id, int 
availible,
                        String telefon, String fax, String mobil, String email,
-                       String comment, int status, List<?> organisations, int 
title_id,
+                       String comment, int status, List<Long> organisations, 
int title_id,
                        String phone, String sip_user, String sip_pass, String 
sip_auth,
                        Boolean generateSipUserData, String jNameTimeZone,
                        Boolean forceTimeZoneCheck, String userOffers, String 
userSearchs,
@@ -703,12 +699,11 @@
        private Userlevel getUserLevel(Long level_id) {
                Userlevel userlevel = new Userlevel();
                try {
-                       Query query = em
- .createQuery("select c from Userlevel as c where c.level_id = :level_id AND c.deleted <> :deleted");
+                       TypedQuery<Userlevel> query = em
+ .createQuery("select c from Userlevel as c where c.level_id = :level_id AND c.deleted <> :deleted", Userlevel.class);
                        query.setParameter("level_id", level_id.longValue());
                        query.setParameter("deleted", "true");
-                       for (@SuppressWarnings("unchecked")
-                       Iterator<Userlevel> it2 = 
query.getResultList().iterator(); it2
+                       for(Iterator<Userlevel> it2 = 
query.getResultList().iterator(); it2
                                        .hasNext();) {
                                userlevel = it2.next();
                        }
@@ -1130,12 +1125,11 @@
                                        + "AND c.externalUserType LIKE 
:externalUserType "
                                        + "AND c.deleted <> :deleted";

-                       Query query = em.createQuery(hql);
+                       TypedQuery<Users> query = em.createQuery(hql, 
Users.class);
                        query.setParameter("externalUserId", externalUserId);
                        query.setParameter("externalUserType", 
externalUserType);
                        query.setParameter("deleted", "true");

-                       @SuppressWarnings("unchecked")
                        List<Users> users = query.getResultList();

                        if (users.size() > 0) {
@@ -1542,11 +1536,10 @@
+ "(c.login LIKE :userOrEmail OR c.adresses.email LIKE :userOrEmail ) "
                                + "AND c.externalUserId IS NULL " + "AND c.deleted 
<> :deleted";

-               Query query = em.createQuery(hql);
+               TypedQuery<Users> query = em.createQuery(hql, Users.class);
                query.setParameter("userOrEmail", userOrEmail);
                query.setParameter("deleted", "true");

-               @SuppressWarnings("unchecked")
                List<Users> ll = query.getResultList();

                if (ll.size() > 1) {
@@ -1568,10 +1561,9 @@
                String hql = "SELECT c from Users AS c " + "WHERE "
                                + "c.adresses.email LIKE :userOrEmail";

-               Query query = em.createQuery(hql);
+               TypedQuery<Users> query = em.createQuery(hql, Users.class);
                query.setParameter("userOrEmail", userOrEmail);

-               @SuppressWarnings("unchecked")
                List<Users> ll = query.getResultList();

                if (ll.size() > 1) {
@@ -1734,7 +1726,7 @@
         * @param search
         * @return
         */
-       public SearchResult getUsersListWithSearch(Long user_level, int start,
+ public SearchResult<Users> getUsersListWithSearch(Long user_level, int start,
                        int max, String orderby, boolean asc, String search) {
                try {
                        if (authLevelManagement.checkAdminLevel(user_level)) {
@@ -1764,13 +1756,13 @@
                                }
                                log.debug("getUsersList search: " + search);

-                               SearchResult sresult = new SearchResult();
+                               SearchResult<Users> sresult = new 
SearchResult<Users>();
                                sresult.setObjectName(Users.class.getName());
                                sresult.setRecords(usersDao
                                                
.selectMaxFromUsersWithSearch(search));

                                // get all users
-                               Query query = em.createQuery(hql);
+                               TypedQuery<Users> query = em.createQuery(hql, 
Users.class);
                                query.setParameter("search", 
StringUtils.lowerCase(search));
                                query.setMaxResults(max);
                                query.setFirstResult(start);
@@ -1874,7 +1866,7 @@
                        log.debug("hql :: " + hql);

                        // get all users
-                       Query query = em.createQuery(hql);
+                       TypedQuery<Users> query = em.createQuery(hql, 
Users.class);

                        if (searchTxt.length() != 0 && userOffers.length() != 0
                                        && userSearchs.length() != 0) {
@@ -1923,7 +1915,6 @@
                        query.setMaxResults(max);
                        query.setFirstResult(start);

-                       @SuppressWarnings("unchecked")
                        List<Users> userList = query.getResultList();

                        return userList;
@@ -2016,7 +2007,7 @@
                        log.debug("hql :: " + hql);

                        // get all users
-                       Query query = em.createQuery(hql);
+                       TypedQuery<Long> query = em.createQuery(hql, 
Long.class);

                        if (searchTxt.length() != 0 && userOffers.length() != 0
                                        && userSearchs.length() != 0) {
@@ -2062,10 +2053,9 @@

                        }

-                       @SuppressWarnings("rawtypes")
-                       List userList = query.getResultList();
-
-                       return (Long) userList.get(0);
+                       List<Long> userList = query.getResultList();
+
+                       return userList.get(0);

                } catch (Exception ex2) {
                        log.error("[getUsersList] ", ex2);
@@ -2108,16 +2098,15 @@
                        }

                        // get all users
-                       Query query = em.createQuery(hql);
+                       TypedQuery<Long> query = em.createQuery(hql, 
Long.class);
                        query.setParameter("search", 
StringUtils.lowerCase(searchTxt));
                        query.setParameter("userOffers", 
StringUtils.lowerCase(userOffers));
                        query.setParameter("userSearchs",
                                        StringUtils.lowerCase(userSearchs));

-                       @SuppressWarnings("rawtypes")
-                       List ll = query.getResultList();
-
-                       return (Long) ll.get(0);
+                       List<Long> ll = query.getResultList();
+
+                       return ll.get(0);

                } catch (Exception ex2) {
                        log.error("[searchMaxUserProfile] " + ex2);
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java Tue Dec 13 06:45:12 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/domain/Organisation_Users.java Sun Dec 18 01:41:15 2011
@@ -21,6 +21,8 @@
query="SELECT COUNT(c.organisation_users_id) FROM Organisation_Users c WHERE c.deleted = 'false' AND c.organisation.organisation_id = :organisation_id")
        , @NamedQuery(name="getOrganisation_UserByUserAndOrganisation",
query="SELECT ou FROM Users u, IN(u.organisation_users) ou WHERE u.deleted = 'false' AND u.user_id = :user_id AND ou.organisation.organisation_id = :organisation_id")
+       , @NamedQuery(name="deleteUsersFromOrganisation",
+ query="DELETE FROM Organisation_Users c WHERE c.organisation.organisation_id = :organisation_id")
 })
 @Table(name = "organisation_users")
 public class Organisation_Users implements Serializable {
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java Tue Dec 13 06:45:12 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/remote/UserService.java Sun Dec 18 01:41:15 2011
@@ -257,7 +257,7 @@
         * @param orderby
         * @return
         */
-       public SearchResult getUserList(String SID, int start, int max,
+       public SearchResult<Users> getUserList(String SID, int start, int max,
                        String orderby, boolean asc) {
                Long users_id = sessionManagement.checkSession(SID);
                Long user_level = userManagement.getUserLevelByID(users_id);
@@ -265,7 +265,7 @@
                                .getUsersList(user_level, start, max, orderby, 
asc);
        }

-       public SearchResult getUserListWithSearch(String SID, int start, int 
max,
+ public SearchResult<Users> getUserListWithSearch(String SID, int start, int max,
                        String orderby, boolean asc, String search) {
                Long users_id = sessionManagement.checkSession(SID);
                Long user_level = userManagement.getUserLevelByID(users_id);
@@ -283,7 +283,7 @@
         * @param orderby
         * @return
         */
-       public SearchResult getAllUserBySearchRange(String SID, String search,
+ public SearchResult<Users> getAllUserBySearchRange(String SID, String search,
                        int start, int max, String orderby, boolean asc) {
                return userManagement.getAllUserByRange(search, start, max, 
orderby,
                                asc);
@@ -549,7 +549,7 @@
                return null;
        }

-       public SearchResult searchUserProfile(String SID, String searchTxt,
+       public SearchResult<Users> searchUserProfile(String SID, String 
searchTxt,
                        String userOffers, String userSearchs, String orderBy, 
int start,
                        int max, boolean asc) {
                try {
@@ -558,7 +558,7 @@
                        // users only
                        if (authLevelManagement.checkUserLevel(user_level)) {

-                               SearchResult searchResult = new SearchResult();
+                               SearchResult<Users> searchResult = new 
SearchResult<Users>();
                                
searchResult.setObjectName(Users.class.getName());
                                List<Users> userList = 
userManagement.searchUserProfile(
                                                searchTxt, userOffers, 
userSearchs, orderBy, start,
@@ -1074,7 +1074,7 @@

        }

-       public SearchResult getInbox(String SID, String search, String orderBy,
+ public SearchResult<PrivateMessages> getInbox(String SID, String search, String orderBy,
                        int start, Boolean asc, Integer max) {
                try {

@@ -1083,7 +1083,7 @@
                        // users only
                        if (authLevelManagement.checkUserLevel(user_level)) {

-                               SearchResult searchResult = new SearchResult();
+ SearchResult<PrivateMessages> searchResult = new SearchResult<PrivateMessages>();
                                
searchResult.setObjectName(Users.class.getName());
                                List<PrivateMessages> userList = 
privateMessagesDao
                                                
.getPrivateMessagesByUser(users_id, search, orderBy,
@@ -1106,7 +1106,7 @@
                return null;
        }

-       public SearchResult getSend(String SID, String search, String orderBy,
+ public SearchResult<PrivateMessages> getSend(String SID, String search, String orderBy,
                        Integer start, Boolean asc, Integer max) {
                try {

@@ -1115,7 +1115,7 @@
                        // users only
                        if (authLevelManagement.checkUserLevel(user_level)) {

-                               SearchResult searchResult = new SearchResult();
+ SearchResult<PrivateMessages> searchResult = new SearchResult<PrivateMessages>();
                                
searchResult.setObjectName(Users.class.getName());
                                List<PrivateMessages> userList = 
privateMessagesDao
                                                
.getSendPrivateMessagesByUser(users_id, search,
@@ -1138,7 +1138,7 @@
                return null;
        }

-       public SearchResult getTrash(String SID, String search, String orderBy,
+ public SearchResult<PrivateMessages> getTrash(String SID, String search, String orderBy,
                        Integer start, Boolean asc, Integer max) {
                try {

@@ -1147,7 +1147,7 @@
                        // users only
                        if (authLevelManagement.checkUserLevel(user_level)) {

-                               SearchResult searchResult = new SearchResult();
+ SearchResult<PrivateMessages> searchResult = new SearchResult<PrivateMessages>();
                                
searchResult.setObjectName(Users.class.getName());
                                List<PrivateMessages> userList = 
privateMessagesDao
                                                
.getTrashPrivateMessagesByUser(users_id, search,
@@ -1170,7 +1170,7 @@
                return null;
        }

-       public SearchResult getFolder(String SID, Long privateMessageFolderId,
+ public SearchResult<PrivateMessages> getFolder(String SID, Long privateMessageFolderId,
                        String search, String orderBy, Integer start, Boolean 
asc,
                        Integer max) {
                try {
@@ -1180,7 +1180,7 @@
                        // users only
                        if (authLevelManagement.checkUserLevel(user_level)) {

-                               SearchResult searchResult = new SearchResult();
+ SearchResult<PrivateMessages> searchResult = new SearchResult<PrivateMessages>();
                                
searchResult.setObjectName(Users.class.getName());
                                List<PrivateMessages> userList = 
privateMessagesDao
                                                
.getFolderPrivateMessagesByUser(users_id, search,

--
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.

Reply via email to