Author: solomax
Date: Mon Oct 28 04:59:41 2013
New Revision: 1536252

URL: http://svn.apache.org/r1536252
Log:
[OPENMEETINGS-820] guard against double adding is aaded to addRoomToOrg 
REST/SOAP method

Modified:
    
openmeetings/branches/2.x/src/org/apache/openmeetings/axis/services/RoomWebService.java
    
openmeetings/branches/2.x/src/org/apache/openmeetings/data/conference/RoomManager.java
    
openmeetings/trunk/singlewebapp/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
    
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java

Modified: 
openmeetings/branches/2.x/src/org/apache/openmeetings/axis/services/RoomWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/2.x/src/org/apache/openmeetings/axis/services/RoomWebService.java?rev=1536252&r1=1536251&r2=1536252&view=diff
==============================================================================
--- 
openmeetings/branches/2.x/src/org/apache/openmeetings/axis/services/RoomWebService.java
 (original)
+++ 
openmeetings/branches/2.x/src/org/apache/openmeetings/axis/services/RoomWebService.java
 Mon Oct 28 04:59:41 2013
@@ -2528,7 +2528,9 @@ public class RoomWebService {
                        Long users_id = sessiondataDao.checkSession(SID);
                        Long user_level = 
userManager.getUserLevelByID(users_id);
                        if (authLevelUtil.checkWebServiceLevel(user_level)) {
-                               return 
roomManager.addRoomToOrganisation(user_level, rooms_id, organisation_id);
+                               if (null == 
roomManager.getRoomsOrganisationByOrganisationIdAndRoomId(organisation_id, 
rooms_id)) {
+                                       return 
roomManager.addRoomToOrganisation(user_level, rooms_id, organisation_id);
+                               }
                        }
                } catch (Exception err) {
                        log.error("[addRoomToOrg]", err);

Modified: 
openmeetings/branches/2.x/src/org/apache/openmeetings/data/conference/RoomManager.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/2.x/src/org/apache/openmeetings/data/conference/RoomManager.java?rev=1536252&r1=1536251&r2=1536252&view=diff
==============================================================================
--- 
openmeetings/branches/2.x/src/org/apache/openmeetings/data/conference/RoomManager.java
 (original)
+++ 
openmeetings/branches/2.x/src/org/apache/openmeetings/data/conference/RoomManager.java
 Mon Oct 28 04:59:41 2013
@@ -998,11 +998,9 @@ public class RoomManager {
                return null;
        }
 
-       private RoomOrganisation getRoomsOrganisationByOrganisationIdAndRoomId(
-                       long organisation_id, long rooms_id) {
+       public RoomOrganisation 
getRoomsOrganisationByOrganisationIdAndRoomId(long organisation_id, long 
rooms_id) {
                try {
-                       TypedQuery<RoomOrganisation> q = em.
-                                       
createNamedQuery("getRoomsOrganisationByOrganisationIdAndRoomId", 
RoomOrganisation.class);
+                       TypedQuery<RoomOrganisation> q = 
em.createNamedQuery("getRoomsOrganisationByOrganisationIdAndRoomId", 
RoomOrganisation.class);
 
                        q.setParameter("rooms_id", rooms_id);
                        q.setParameter("organisation_id", organisation_id);

Modified: 
openmeetings/trunk/singlewebapp/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java?rev=1536252&r1=1536251&r2=1536252&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/axis/java/org/apache/openmeetings/axis/services/RoomWebService.java
 Mon Oct 28 04:59:41 2013
@@ -2492,7 +2492,9 @@ public class RoomWebService {
                        Long users_id = sessiondataDao.checkSession(SID);
                        Long user_level = 
userManager.getUserLevelByID(users_id);
                        if (AuthLevelUtil.checkWebServiceLevel(user_level)) {
-                               return 
roomManager.addRoomToOrganisation(user_level, rooms_id, organisation_id);
+                               if (null == 
roomManager.getRoomsOrganisationByOrganisationIdAndRoomId(organisation_id, 
rooms_id)) {
+                                       return 
roomManager.addRoomToOrganisation(user_level, rooms_id, organisation_id);
+                               }
                        }
                } catch (Exception err) {
                        log.error("[addRoomToOrg]", err);

Modified: 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java?rev=1536252&r1=1536251&r2=1536252&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/main/java/org/apache/openmeetings/data/conference/RoomManager.java
 Mon Oct 28 04:59:41 2013
@@ -926,7 +926,7 @@ public class RoomManager implements IRoo
                return null;
        }
 
-       private RoomOrganisation getRoomsOrganisationByOrganisationIdAndRoomId(
+       public RoomOrganisation getRoomsOrganisationByOrganisationIdAndRoomId(
                        long organisation_id, long rooms_id) {
                try {
                        TypedQuery<RoomOrganisation> q = em.


Reply via email to