You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2015/12/01 04:48:54 UTC

svn commit: r1717372 - in /openmeetings: branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/ branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ branches/3.1.x/openmeetings-flash/...

Author: solomax
Date: Tue Dec  1 03:48:53 2015
New Revision: 1717372

URL: http://svn.apache.org/viewvc?rev=1717372&view=rev
Log:
[OPENMEETINGS-1279] more work on wb sync

Modified:
    openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java
    openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
    openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
    openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/popups/syncWin.lzx
    openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/remoteWhiteboard.lzx
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java
    openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java

Modified: openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java Tue Dec  1 03:48:53 2015
@@ -85,8 +85,7 @@ public class WhiteBoardObjectSyncManager
 	}
 
 	public synchronized Map<String, WhiteboardSyncLockObject> getWhiteBoardObjectSyncListByRoomAndObjectId(Long roomId, String objectId) {
-		log.debug("getWhiteBoardImagesSyncListByRoomAndImageid roomId: "
-				+ roomId);
+		log.debug("getWhiteBoardImagesSyncListByRoomAndImageid roomId: " + roomId);
 		Map<String, Map<String, WhiteboardSyncLockObject>> roomList = whiteBoardObjectSyncList.get(roomId);
 		if (roomList == null) {
 			roomList = new HashMap<String, Map<String, WhiteboardSyncLockObject>>();

Modified: openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java Tue Dec  1 03:48:53 2015
@@ -465,8 +465,7 @@ public class WhiteBoardService implement
 				Map<String, Map<String, WhiteboardSyncLockObject>> syncListRoomImages = wbListManager.getWhiteBoardObjectSyncListByRoomid(roomId);
 
 				for (Map.Entry<String, Map<String, WhiteboardSyncLockObject>> e : syncListRoomImages.entrySet()) {
-					WhiteboardSyncLockObject wImagesSyncLockObject = e.getValue().get(currentClient.getPublicSID());
-					if (wImagesSyncLockObject != null) {
+					if (e.getValue().containsKey(currentClient.getPublicSID())) {
 						e.getValue().remove(currentClient.getPublicSID());
 					}
 					wbListManager.setWhiteBoardImagesSyncListByRoomAndObjectId(roomId, e.getKey(), e.getValue());

Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/hibernate/hibRtmpConnection.lzx Tue Dec  1 03:48:53 2015
@@ -186,8 +186,10 @@
         client.sendVarsToMessage = this.sendVarsToMessage;
         client.sendVarsToMessageWithClient = this.sendVarsToMessageWithClient;
         client.sendVarsToWhiteboardById = this.sendVarsToWhiteboardById;
-        client.sendSyncCompleteFlag = this.sendSyncCompleteFlag;
         client.sendVarsToModeratorGeneral = this.sendVarsToModeratorGeneral;
+        client.sendObjectSyncFlag = this.sendObjectSyncFlag;
+        client.sendSyncCompleteFlag = this.sendSyncCompleteFlag;
+        client.sendObjectSyncCompleteFlag = this.sendObjectSyncCompleteFlag;
         client.startedRecording = this.startedRecording;
         client.loadWmlToWhiteboardById = this.loadWmlToWhiteboardById;
         client.newMessageByRoomAndDomain = this.newMessageByRoomAndDomain;
@@ -1604,31 +1606,26 @@
 	</method>  
     
     <!-- Whiteboard Object Sync Process -->
-    <netRemoteCallHib name="sendObjectSyncFlag" funcname="sendObjectSyncFlag">
-        <handler name="ondata" args="value">
-            <![CDATA[
-                //The onResult-Handler will be called be the rtmpconnection
-                if ($debug) Debug.write("sendObjectSyncFlag: ",value);
-                if (canvas.syncImageWindow == null) {
-                    canvas.syncImageWindow = new lz.syncWin(canvas.main_content._content.inner,{labeliderror:591});
-                }
-            ]]>
-        </handler>   
-    </netRemoteCallHib>     
-    
-    <netRemoteCallHib name="sendObjectSyncCompleteFlag" funcname="sendObjectSyncCompleteFlag">
-        <handler name="ondata" args="value">
-            <![CDATA[
-                //The onResult-Handler will be called be the rtmpconnection
-                if ($debug) Debug.write("sendObjectSyncCompleteFlag: ",value);
-                if (canvas.syncImageWindow != null) {
-                    canvas.syncImageWindow.close();
-                    canvas.syncImageWindow = null;
-                }
-            ]]>
-        </handler>   
-    </netRemoteCallHib>  
+	<method name="sendObjectSyncFlag" args="value">
+	<![CDATA[
+		//The onResult-Handler will be called be the rtmpconnection
+		if ($debug) Debug.write("sendObjectSyncFlag: ",value);
+		if (canvas.syncImageWindow == null) {
+			canvas.syncImageWindow = new lz.syncWin(canvas.main_content._content.inner, {labeliderror: 591});
+		}
+	]]>
+	</method>     
     
+	<method name="sendObjectSyncCompleteFlag" args="value">
+	<![CDATA[
+		//The onResult-Handler will be called be the rtmpconnection
+		if ($debug) Debug.write("sendObjectSyncCompleteFlag: ",value);
+		if (canvas.syncImageWindow != null) {
+			canvas.syncImageWindow.close();
+			canvas.syncImageWindow = null;
+		}
+	]]>
+	</method>  
     
     <!-- Recording of Meetings -->
 	<method name="interviewStatus" args="value">

Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/popups/syncWin.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/popups/syncWin.lzx?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/popups/syncWin.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/popups/syncWin.lzx Tue Dec  1 03:48:53 2015
@@ -45,30 +45,4 @@
     </method>
     
 </class>
-	
-<!--
-<class name="syncWin" extends="labelExplorerBox" labelid="558"
-        docking="true" resizeable="false" closable="true" width="250"
-        x="$once{ canvas.width/2 - this.width/2 }" height="140">
-    
-	<handler name="oninit">
-		lz.ModeManager.makeModal(this);
-	</handler>
-    
-    <handler name="onclose">
-    	lz.ModeManager.release(this);
-    	canvas.syncWindow = null;
-    </handler>
-    
-    <attribute name="labeliderror" value="0" type="number" />
-    
-    <view x="2" width="$once{ parent.width -4 }" clip="true"
-        y="24" height="$once{ parent.height-25 }">
-        <labelText labelid="$once{ parent.parent.labeliderror }" 
-            width="$once{ parent.width }" multiline="true" resize="false"/>
-    </view>
-
-</class>
- -->
-
 </library>

Modified: openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/remoteWhiteboard.lzx
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/remoteWhiteboard.lzx?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/remoteWhiteboard.lzx (original)
+++ openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/remoteWhiteboard.lzx Tue Dec  1 03:48:53 2015
@@ -8,8 +8,8 @@
   "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
-    	  
+	  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
@@ -21,7 +21,6 @@
 <library>
 
 <class name="remoteWhiteboard" extends="baseDrawSave">
-	
 	<attribute name="loadingObjectListId" value="0" type="number" />
 	<attribute name="loadingObjectList" value="null" />
 	
@@ -75,231 +74,218 @@
 	</method>
 	
 	<method name="loadSavedObjectList" args="objList">
-        <![CDATA[
-            
-            var tempArray = new Array();            
-            tempArray[0] = "loadSavedWhiteboard";
-            ///tempArray[1] = itemObj;
-            tempArray[1] = objList;
-            hib.sendMessageWithClient.sendMessage("whiteboard", tempArray);
-        
-            this.loadingObjectList = objList;
-            
-            if ($debug) Debug.write("loadObjectList :: ",this.loadingObjectList);
-            
-            function sortItemByIndex(a,b){
-                var a1 = a[a.length-8];
-                var b1 = b[b.length-8];
-                //_root.//Debug.write("natcompare: ",a1,b1,natcompare(a1,b1));
-                if(a1==b1){
-                    return 0;
-                } else if(a1>b1){
-                    return 1;
-                } else {
-                    return -1;
-                }
-            }
-            
-            for (var i=0;i<this.loadingObjectList.length;i++) {
-                if ($debug) Debug.write(" 1 ",i,this.loadingObjectList[i][0],this.loadingObjectList[i][this.loadingObjectList[i].length-8]);
-            }
-            
-            this.loadingObjectList.sort(sortItemByIndex);
-            
-            for (var i=0;i<this.loadingObjectList.length;i++) {
-                if ($debug) Debug.write(" 2 ",i,this.loadingObjectList[i][0],this.loadingObjectList[i][this.loadingObjectList[i].length-8]);
-            }
-            
-            this.loadingObjectListId = 0;
-            //this.loadObjectDelegate = new LzDelegate( this, "loadRemoteObject" );
-            //if (this.loadingObjectList.length != 0){
-            //  lz.Timer.addTimer( this.loadObjectDelegate, 250 );
-            //}
-            //for (var i=0;i<this.loadingObjectList.length;i++){
-            //  if ($debug) Debug.write("i this.loadingObjectList[i] ",i,this.loadingObjectList[i]);
-            //}
-            if (this.loadingObjectList != null && this.loadingObjectList.length != 0){
-                this.startSavedSyncprocess.doCall();
-            }
-            
-        ]]>
-    </method>
-    
-    <method name="prepareLoadWMLFile" args="itemObj">
-        if ($debug) Debug.write("loadWMLFile: ",itemObj);
-        
-        this.loadWMLFile.setAttribute('fileEId', itemObj.fileId);
-                  
-        if ($debug) Debug.write("prepareLoadWMLFile 1: ",parent.parent.whiteboardId);
-        
-        this.loadWMLFile.doCall();
-    </method>
-    
-    
-    <netRemoteCallHib name="loadWMLFile" funcname="fileservice.loadWmlObject"
-        remotecontext="$once{ canvas.thishib }" >
-        <attribute name="fileId" type="number" value="0"/>
-        <netparam><method name="getValue">return canvas.sessionId;</method></netparam>
-        <netparam><method name="getValue">return hib.currentroomid;</method></netparam> 
-        <netparam><method name="getValue">return parent.fileId;</method></netparam> 
-        <netparam><method name="getValue">return parent.parent.parent.parent.whiteboardId;</method></netparam>
-        <handler name="ondata" args="value">
-            <![CDATA[
-                //The onResult-Handler will be called be the rtmpconnection
-                if ($debug) Debug.write("loadWMLFile: ",value);
-                //canvas._drawarea.clearAll();
-                //parent.loadSavedObjectList(value);
-                
-            ]]>
-        </handler>   
-    </netRemoteCallHib> 
-    
-    <method name="loadWmlToWhiteboardById" args="roomItems">
-    	this.clearRemote();
-    	this.loadSavedObjectList(roomItems);
-    </method>
-	
-    <netRemoteCallHib name="startNewSyncprocess" funcname="whiteboardservice.startNewSyncprocess"
-        remotecontext="$once{ canvas.thishib }" >
-        <handler name="ondata" args="value">
-            <![CDATA[
-            	//The onResult-Handler will be called be the rtmpconnection
-            	if ($debug) Debug.write("startNewSyncprocess: ",value);
-            	if (value.publicSID == canvas.publicSID){
-            		if ($debug) Debug.write("currentLoadingItem IS mine");
-                    //TODO: Check usage of currentLoadingItem
-            		//if (value.currentLoadingItem){
-            			parent.startInitialLoadinProcess();
-            		//}
-            	}
-            ]]>
-        </handler>   
-    </netRemoteCallHib> 
-    
-     <netRemoteCallHib name="startSavedSyncprocess" funcname="whiteboardservice.startNewSyncprocess"
-        remotecontext="$once{ canvas.thishib }" >
-        <handler name="ondata" args="value">
-            <![CDATA[
-                //The onResult-Handler will be called be the rtmpconnection
-                if ($debug) Debug.write("startNewSyncprocess: ",value);
-                //if (value.publicSID == canvas.publicSID){
-                    if ($debug) Debug.write("currentLoadingItem IS mine");
-                    //TODO: Check usage of currentLoadingItem
-                    //if (value.currentLoadingItem){
-                        parent.startInitialLoadinProcess();
-                    //}
-                //}
-            ]]>
-        </handler>   
-    </netRemoteCallHib> 
-    
-    <netRemoteCallHib name="sendCompletedSyncEvent" funcname="whiteboardservice.sendCompletedSyncEvent"
-        remotecontext="$once{ canvas.thishib }" >
-        <handler name="ondata" args="value">
-            <![CDATA[
-            	//The onResult-Handler will be called be the rtmpconnection
-            	if ($debug) Debug.write("sendCompletedSyncEvent: ",value);
-            ]]>
-        </handler>   
-    </netRemoteCallHib>     	
-    
-    <method name="startInitialLoadinProcess">
+	<![CDATA[
+		var tempArray = new Array();			
+		tempArray[0] = "loadSavedWhiteboard";
+		///tempArray[1] = itemObj;
+		tempArray[1] = objList;
+		hib.sendMessageWithClient.sendMessage("whiteboard", tempArray);
+	
+		this.loadingObjectList = objList;
+		
+		if ($debug) Debug.write("loadObjectList :: ",this.loadingObjectList);
+		
+		function sortItemByIndex(a,b){
+			var a1 = a[a.length-8];
+			var b1 = b[b.length-8];
+			//_root.//Debug.write("natcompare: ",a1,b1,natcompare(a1,b1));
+			if(a1==b1){
+				return 0;
+			} else if(a1>b1){
+				return 1;
+			} else {
+				return -1;
+			}
+		}
+		
+		for (var i=0;i<this.loadingObjectList.length;i++) {
+			if ($debug) Debug.write(" 1 ",i,this.loadingObjectList[i][0],this.loadingObjectList[i][this.loadingObjectList[i].length-8]);
+		}
+		
+		this.loadingObjectList.sort(sortItemByIndex);
+		
+		for (var i=0;i<this.loadingObjectList.length;i++) {
+			if ($debug) Debug.write(" 2 ",i,this.loadingObjectList[i][0],this.loadingObjectList[i][this.loadingObjectList[i].length-8]);
+		}
+		
+		this.loadingObjectListId = 0;
+		if (this.loadingObjectList != null && this.loadingObjectList.length != 0){
+			this.startSavedSyncprocess.doCall();
+		}
+	]]>
+	</method>
+	
+	<method name="prepareLoadWMLFile" args="itemObj">
+		if ($debug) Debug.write("loadWMLFile: ",itemObj);
+		
+		this.loadWMLFile.setAttribute('fileEId', itemObj.fileId);
+				  
+		if ($debug) Debug.write("prepareLoadWMLFile 1: ",parent.parent.whiteboardId);
+		
+		this.loadWMLFile.doCall();
+	</method>
+	
+	
+	<netRemoteCallHib name="loadWMLFile" funcname="fileservice.loadWmlObject" remotecontext="$once{ canvas.thishib }" >
+		<attribute name="fileId" type="number" value="0"/>
+		<netparam><method name="getValue">return canvas.sessionId;</method></netparam>
+		<netparam><method name="getValue">return hib.currentroomid;</method></netparam> 
+		<netparam><method name="getValue">return parent.fileId;</method></netparam> 
+		<netparam><method name="getValue">return parent.parent.parent.parent.whiteboardId;</method></netparam>
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("loadWMLFile: ",value);
+			//canvas._drawarea.clearAll();
+			//parent.loadSavedObjectList(value);
+			
+		]]>
+		</handler>   
+	</netRemoteCallHib> 
+	
+	<method name="loadWmlToWhiteboardById" args="roomItems">
+		this.clearRemote();
+		this.loadSavedObjectList(roomItems);
+	</method>
+	
+	<netRemoteCallHib name="startNewSyncprocess" funcname="whiteboardservice.startNewSyncprocess" remotecontext="$once{ canvas.thishib }" >
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("startNewSyncprocess: ",value);
+			if (value.publicSID == canvas.publicSID){
+				if ($debug) Debug.write("currentLoadingItem IS mine");
+				//TODO: Check usage of currentLoadingItem
+				//if (value.currentLoadingItem){
+					parent.startInitialLoadinProcess();
+				//}
+			}
+		]]>
+		</handler>   
+	</netRemoteCallHib> 
+	
+	 <netRemoteCallHib name="startSavedSyncprocess" funcname="whiteboardservice.startNewSyncprocess" remotecontext="$once{ canvas.thishib }" >
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("startNewSyncprocess: ",value);
+			//if (value.publicSID == canvas.publicSID){
+				if ($debug) Debug.write("currentLoadingItem IS mine");
+				//TODO: Check usage of currentLoadingItem
+				//if (value.currentLoadingItem){
+					parent.startInitialLoadinProcess();
+				//}
+			//}
+		]]>
+		</handler>   
+	</netRemoteCallHib> 
+	
+	<netRemoteCallHib name="sendCompletedSyncEvent" funcname="whiteboardservice.sendCompletedSyncEvent" remotecontext="$once{ canvas.thishib }" >
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("sendCompletedSyncEvent: ",value);
+		]]>
+		</handler>   
+	</netRemoteCallHib>	 	
+	
+	<method name="startInitialLoadinProcess">
 		this.loadObjectDelegate = new LzDelegate( this, "loadRemoteObject" );
 		if (this.loadingObjectList.length != 0){
 			lz.Timer.addTimer( this.loadObjectDelegate, 250 );
 		}
-    </method>
+	</method>
 	
 	<method name="loadRemoteObject" args="ref">
-		<![CDATA[
-			this.sendRemoteWatchObject(this.loadingObjectList[this.loadingObjectListId]);
-			this.loadingObjectListId++;
-			if (this.loadingObjectListId < this.loadingObjectList.length){
-				lz.Timer.addTimer( this.loadObjectDelegate, 250 );
-			} else {
-				this.sendCompletedSyncEvent.doCall();
-				this.updateAllObjectsToSlideNumber();
-				this.setModusWithUpdate("hand");
-				this.onupdateScale.sendEvent(null);
-			}
-		]]>
+	<![CDATA[
+		this.sendRemoteWatchObject(this.loadingObjectList[this.loadingObjectListId]);
+		this.loadingObjectListId++;
+		if (this.loadingObjectListId < this.loadingObjectList.length){
+			lz.Timer.addTimer( this.loadObjectDelegate, 250 );
+		} else {
+			this.sendCompletedSyncEvent.doCall();
+			this.updateAllObjectsToSlideNumber();
+			this.setModusWithUpdate("hand");
+			this.onupdateScale.sendEvent(null);
+		}
+	]]>
 	</method>
 	
 	<method name="sendRemoteWatchObject" args="actionObject">
+	<![CDATA[
 		if ($debug) Debug.write("[sendRemoteWatchObject]: ",actionObject);
-		<![CDATA[
-			
-			//Redraw the View on the paintarea
-			if (actionObject[0]=='paint'){
-				this.paintactionHistory(actionObject,this);
-			} else if (actionObject[0]=='line'){
-				this.lineactionHistory(actionObject,this);
-			} else if (actionObject[0]=='uline'){
-				this.ulineactionHistory(actionObject,this);
-			} else if (actionObject[0]=='drawarrow'){
-				this.drawarrowlineactionHistory(actionObject,this);
-			} else if(actionObject[0]=='letter'){
-				this.drawactionHistory(actionObject,this);
-			} else if(actionObject[0]=='image'){
-				this.addImageToLayerHistoryToLocal(actionObject,this);
-			} else if(actionObject[0]=='swf'){
-				this.addSWFToLayerHistory(actionObject,this,true);
-			} else if(actionObject[0]=='rectangle'){
-				this.drawrectangleToHistory(actionObject,this);
-			} else if(actionObject[0]=='ellipse'){
-				this.drawellipseToHistory(actionObject,this);
-			} else if(actionObject[0]=='flv'){
-                this.drawFlvToHistory(actionObject,this);
-            } else if(actionObject[0]=='mindMapCenter'){
-                this.drawMindMapCenterToHistory(actionObject,this);
-            } else if(actionObject[0]=='mindMapNode'){
-                this.drawMindMapNodeToHistory(actionObject,this);
-            } else if(actionObject[0]=='clipart'){
-                this.drawClipArtToHistory(actionObject,this);
-            }
-			
-			if ($debug) Debug.write("[store actionObject] ",actionObject);
+		
+		//Redraw the View on the paintarea
+		if (actionObject[0]=='paint'){
+			this.paintactionHistory(actionObject,this);
+		} else if (actionObject[0]=='line'){
+			this.lineactionHistory(actionObject,this);
+		} else if (actionObject[0]=='uline'){
+			this.ulineactionHistory(actionObject,this);
+		} else if (actionObject[0]=='drawarrow'){
+			this.drawarrowlineactionHistory(actionObject,this);
+		} else if(actionObject[0]=='letter'){
+			this.drawactionHistory(actionObject,this);
+		} else if(actionObject[0]=='image'){
+			this.addImageToLayerHistoryToLocal(actionObject,this);
+		} else if(actionObject[0]=='swf'){
+			this.addSWFToLayerHistory(actionObject,this,true);
+		} else if(actionObject[0]=='rectangle'){
+			this.drawrectangleToHistory(actionObject,this);
+		} else if(actionObject[0]=='ellipse'){
+			this.drawellipseToHistory(actionObject,this);
+		} else if(actionObject[0]=='flv'){
+			this.drawFlvToHistory(actionObject,this);
+		} else if(actionObject[0]=='mindMapCenter'){
+			this.drawMindMapCenterToHistory(actionObject,this);
+		} else if(actionObject[0]=='mindMapNode'){
+			this.drawMindMapNodeToHistory(actionObject,this);
+		} else if(actionObject[0]=='clipart'){
+			this.drawClipArtToHistory(actionObject,this);
+		}
+		
+		if ($debug) Debug.write("[store actionObject] ",actionObject);
+		
+		this.baseactionobjectList.push(actionObject);
 			
-			this.baseactionobjectList.push(actionObject);
-				
-		]]>
-	</method>	
+	]]>
+	</method>
 	
 	<!-- methods for syncing events -->
-    <netRemoteCallHib name="startNewObjectSyncProcess" funcname="whiteboardservice.startNewObjectSyncProcess"
-        remotecontext="$once{ canvas.thishib }" >
-    	<attribute name="isStarting" value="false" type="boolean" />
-    	<attribute name="uniqueObjectSyncName" value="" type="string" />
-    	<netparam><method name="getValue">return parent.uniqueObjectSyncName;</method></netparam>
-        <netparam><method name="getValue">return parent.isStarting;</method></netparam>
-        <handler name="ondata" args="value">
-            <![CDATA[
-            	//The onResult-Handler will be called be the rtmpconnection
-            	if ($debug) Debug.write("startNewImagesSyncprocess: ",value);
-            ]]>
-        </handler>   
-    </netRemoteCallHib> 
-    
-    <netRemoteCallHib name="sendCompletedObjectSyncEvent" funcname="whiteboardservice.sendCompletedObjectSyncEvent"
-        remotecontext="$once{ canvas.thishib }" >
-    	<attribute name="uniqueObjectSyncName" value="" type="string" />
-    	<netparam><method name="getValue">return parent.uniqueObjectSyncName;</method></netparam>
-        <handler name="ondata" args="value">
-            <![CDATA[
-            	//The onResult-Handler will be called be the rtmpconnection
-            	if ($debug) Debug.write("sendCompletedImagesSyncEvent: ",value);
-            ]]>
-        </handler>   
-    </netRemoteCallHib>   
-    
-    
-    <method name="startStreaming" args="messageObj">
-        new lz.incomingScreenSharing(canvas,{messageObj:messageObj});
-    </method>
-    
-    <method name="stopStreaming" args="messageObj">
-        
-    </method>
+	<netRemoteCallHib name="startNewObjectSyncProcess" funcname="whiteboardservice.startNewObjectSyncProcess" remotecontext="$once{ canvas.thishib }" >
+		<attribute name="isStarting" value="false" type="boolean" />
+		<attribute name="uniqueObjectSyncName" value="" type="string" />
+		<netparam><method name="getValue">return parent.uniqueObjectSyncName;</method></netparam>
+		<netparam><method name="getValue">return parent.isStarting;</method></netparam>
+		
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("startNewImagesSyncprocess: ",value);
+		]]>
+		</handler>   
+	</netRemoteCallHib> 
+	
+	<netRemoteCallHib name="sendCompletedObjectSyncEvent" funcname="whiteboardservice.sendCompletedObjectSyncEvent"
+		remotecontext="$once{ canvas.thishib }" >
+		<attribute name="uniqueObjectSyncName" value="" type="string" />
+		<netparam><method name="getValue">return parent.uniqueObjectSyncName;</method></netparam>
+		<handler name="ondata" args="value">
+		<![CDATA[
+			//The onResult-Handler will be called be the rtmpconnection
+			if ($debug) Debug.write("sendCompletedImagesSyncEvent: ",value);
+		]]>
+		</handler>   
+	</netRemoteCallHib>   
+	
+	
+	<method name="startStreaming" args="messageObj">
+		new lz.incomingScreenSharing(canvas,{messageObj:messageObj});
+	</method>
+	
+	<method name="stopStreaming" args="messageObj">
+		
+	</method>
 	
 </class>
 

Modified: openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/whiteboard/WhiteBoardObjectSyncManager.java Tue Dec  1 03:48:53 2015
@@ -85,8 +85,7 @@ public class WhiteBoardObjectSyncManager
 	}
 
 	public synchronized Map<String, WhiteboardSyncLockObject> getWhiteBoardObjectSyncListByRoomAndObjectId(Long roomId, String objectId) {
-		log.debug("getWhiteBoardImagesSyncListByRoomAndImageid roomId: "
-				+ roomId);
+		log.debug("getWhiteBoardImagesSyncListByRoomAndImageid roomId: " + roomId);
 		Map<String, Map<String, WhiteboardSyncLockObject>> roomList = whiteBoardObjectSyncList.get(roomId);
 		if (roomList == null) {
 			roomList = new HashMap<String, Map<String, WhiteboardSyncLockObject>>();

Modified: openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java?rev=1717372&r1=1717371&r2=1717372&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/WhiteBoardService.java Tue Dec  1 03:48:53 2015
@@ -465,8 +465,7 @@ public class WhiteBoardService implement
 				Map<String, Map<String, WhiteboardSyncLockObject>> syncListRoomImages = wbListManager.getWhiteBoardObjectSyncListByRoomid(roomId);
 
 				for (Map.Entry<String, Map<String, WhiteboardSyncLockObject>> e : syncListRoomImages.entrySet()) {
-					WhiteboardSyncLockObject wImagesSyncLockObject = e.getValue().get(currentClient.getPublicSID());
-					if (wImagesSyncLockObject != null) {
+					if (e.getValue().containsKey(currentClient.getPublicSID())) {
 						e.getValue().remove(currentClient.getPublicSID());
 					}
 					wbListManager.setWhiteBoardImagesSyncListByRoomAndObjectId(roomId, e.getKey(), e.getValue());