Author: solomax
Date: Fri Nov 27 05:59:50 2015
New Revision: 1716796

URL: http://svn.apache.org/viewvc?rev=1716796&view=rev
Log:
[OPENMEETINGS-1279] folder add/rename works as expected, code clean-up

Removed:
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/datasetHelper.lzx
Modified:
    
openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
    
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
    
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.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/base/mainMethods.lzx
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
    
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
    openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml
    
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
    
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
    
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
    
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
    
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
    
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java

Modified: 
openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/servlet/outputhandler/UploadController.java
 Fri Nov 27 05:59:50 2015
@@ -156,17 +156,6 @@ public class UploadController extends Ab
                msg.setFileHash(fileExplorerItem.getHash());
        }
     
-    @RequestMapping(value = "/remotelog.upload", method = RequestMethod.POST)
-    public void handleRemoteLog(HttpServletRequest request, 
HttpServletResponse response) throws ServletException {
-       String message = request.getParameter("message");
-       String sid = request.getParameter("sid");
-       if (sid == null || message == null) return;
-       Long userId = sessiondataDao.checkSession(sid);
-       if (userId != null && userId != 0) {
-               log.debug("[CLIENT MESSAGE] " + message);
-       }
-    }
-    
     @RequestMapping(value = "/upload.upload", method = RequestMethod.POST)
     public void handleFormUpload(HttpServletRequest request, 
HttpServletResponse response) throws ServletException {
                try {

Modified: 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
 Fri Nov 27 05:59:50 2015
@@ -205,25 +205,17 @@ public class FileExplorerItemDao {
         * @param id
         * @param name
         */
-       public void updateFileOrFolderName(Long id, String name) {
-               log.debug(".updateFileOrFolderName() started");
+       public FileExplorerItem rename(Long id, String name) {
+               log.debug("rename started");
 
-               try {
+               FileExplorerItem f = get(id);
 
-                       FileExplorerItem fId = get(id);
+               f.setName(name);
 
-                       fId.setName(name);
-                       fId.setUpdated(new Date());
-
-                       update(fId);
-               } catch (Exception ex2) {
-                       log.error("[updateFileOrFolderName]: ", ex2);
-               }
+               return update(f);
        }
 
        public FileExplorerItem update(FileExplorerItem f) {
-               // fId.setUpdated(new Date());
-
                if (f.getId() == null) {
                        f.setInserted(new Date());
                        em.persist(f);

Modified: 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
 Fri Nov 27 05:59:50 2015
@@ -74,9 +74,9 @@ public class FileExplorerItemDTO impleme
                f.setId(id);
                f.setName(name);
                f.setHash(hash);
-               f.setParentId(parentId);
-               f.setRoomId(roomId);
-               f.setOwnerId(ownerId);
+               f.setParentId(parentId != null && parentId > 0 ? parentId : 
null);
+               f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
+               f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
                f.setSize(size);
                f.setExternalId(externalId);
                f.setExternalType(externalType);

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=1716796&r1=1716795&r2=1716796&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
 Fri Nov 27 05:59:50 2015
@@ -20,10 +20,6 @@
 -->
 <library>
     
-<dataset name="myresultnavi" />
-
-<dataset name="languagesSet" />        
-
 <class name="userStatus" extends="view" width="250" height="30">
     <attribute name="statusText" type="string" />
     <attribute name="statusColor" type="number" value="0" />
@@ -329,47 +325,7 @@
                if (userlang == -1 && canvas.language_id != 0) {
                    userlang = canvas.language_id;
                } else if (userlang == -1) {
-                   var lang_id = canvas.default_lang_id;
-                   
-                   var browserLang = ExternalInterface.call("function(){return 
window.navigator.systemLanguage || window.navigator.userLanguage || 
window.navigator.language;}");
-                   if (browserLang == null) {
-                       browserLang = "" + Capabilities.language;
-                   }
-                   if (browserLang != null && browserLang.length > 1) {
-                       var lngCode = browserLang.substring(0, 2);
-                       
-                       //openlaszlo XPath is able to search nothing, so will 
iterate
-                       var xpath = "languagesSet:/item";
-                       var list = languagesSet.getPointer().xpathQuery(xpath);
-                       
-                       var partMatch = -1, fullMatch = -1; 
-                       for (var i = 1; list != null && i <= list.length; ++i) {
-                           xpath = "languagesSet:/item[" + i + "]/code/text()";
-                           var val = 
languagesSet.getPointer().xpathQuery(xpath);
-                           if (val != null && val.length > 1) {
-                               var partCode = ("" + val).substring(0, 2);
-                               
-                               if (browserLang == val) {
-                                   fullMatch = i;
-                               } else if (lngCode == val) {
-                                   partMatch = i;
-                               } else if (partCode == lngCode) {
-                                   partMatch = i;
-                               }
-                           }
-                       }
-                       if (partMatch != -1 || fullMatch != -1) {
-                           i = (fullMatch != -1) ? fullMatch : partMatch;
-                           xpath = "languagesSet:/item[" + i + 
"]/language_id/text()";
-                           lang_id = 
languagesSet.getPointer().xpathQuery(xpath);
-                       }
-                   }
-                   
-                   if (canvas.language_id == 0) {
-                       userlang = lang_id;
-                   } else {
-                       userlang = canvas.language_id;
-                   }
+                   userlang = canvas.default_lang_id;
                }
            ]]>
     </method>

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/mainMethods.lzx
 Fri Nov 27 05:59:50 2015
@@ -130,6 +130,7 @@
      -->
     
     <attribute name="colorArray" value="null" />
+    <attribute name="errorLoader" />
     
     <method name="getColorForUser">
        <![CDATA[
@@ -141,18 +142,15 @@
     
        <method name="remoteLogWrite" args="message">
                if ($debug) Debug.warn("remoteLogWrite:: ", message);
-               var request:URLRequest = new URLRequest(canvas.getUrl() + 
"remotelog.upload");
-               var requestVars:URLVariables = new URLVariables();
-       requestVars.message = message;
-       requestVars.sid = canvas.sessionId;
-       request.data = requestVars;
-               request.method = URLRequestMethod.POST;
-               
-               try {
-                       new URLLoader().load(request);
-               } catch (e:Error) {
-                       if ($debug) Debug.error(e);
+               if (!errorLoader) {
+                       errorLoader = new RestCall({
+                               url: canvas.getUrl() + 'services/error/report/'
+                               , method: URLRequestMethod.POST
+                       });
                }
+               var vars:URLVariables = new URLVariables();
+       vars.message = message;
+       errorLoader.load(vars);
     </method>
     
     <method name="getHttpHost">
@@ -166,8 +164,7 @@
         
        <method name="getUrl">
        <![CDATA[
-               return canvas.protocol + '://' + getHttpHost()
-                       + ':' + canvas.red5httpport + canvas.httpRootKey;
+               return canvas.protocol + '://' + getHttpHost() + ':' + 
canvas.red5httpport + canvas.httpRootKey;
        ]]>
        </method>
         

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/base/remote/library.lzx
 Fri Nov 27 05:59:50 2015
@@ -22,6 +22,5 @@
        <include href="baseVideoView.lzx" />
        <include href="baseVideoStream.lzx" />
        <include href="baseVideoStreamDevice.lzx" />
-       <include href="datasetHelper.lzx" />
        <include href="rtmpConnection.lzx" />
 </library>

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/dynamicFileName.lzx
 Fri Nov 27 05:59:50 2015
@@ -51,82 +51,73 @@
        </handler>
        
        <method name="add">
-        <![CDATA[
-            if ($debug) Debug.write("addFolder:: ", this);
-                       if (!addFolderLoader) {
-                               addFolderLoader = new RestCall({
-                                       url: canvas.getUrl() + 'services/file/'
-                                       , method: URLRequestMethod.POST
-                                       , dataFormat: URLLoaderDataFormat.BINARY
-                                       , contentType: "multipart/form-data; 
boundary=" + UploadPostHelper.getBoundary()
-                                       , errorCallback: httpRequestError
-                                       , successCallback: addFolderComplete
-                                       });
-                       }
-                       var vars = UploadPostHelper.getPostData(null, null, [
-                               {
-                                       name: 'file'
-                                       , type: 'application/json'
-                                       , value: 
JSON.stringify({fileExplorerItemDTO: {
-                                               name: this.text
-                                               , parentId: 
this.refObj.parentId > 0 ? this.refObj.parentId : null
-                                               , roomId: this.refObj.roomId > 
0 ? this.refObj.roomId : null
-                                               , ownerId: this.refObj.ownerId 
> 0 ? this.refObj.ownerId : null
-                                               , type: this.refObj.type
-                                               }})
-                                       }
-                               ]);
-            if ($debug) Debug.write("addFolder:: ", vars);
-                       addFolderLoader.load(vars);
-                       //FIXME TODO revert changes on error
-        ]]>
-    </method>
-    
+       <![CDATA[
+               if ($debug) Debug.write("addFolder:: ", this);
+               if (!addFolderLoader) {
+                       addFolderLoader = new RestCall({
+                               url: canvas.getUrl() + 'services/file/'
+                               , method: URLRequestMethod.POST
+                               , dataFormat: URLLoaderDataFormat.BINARY
+                               , contentType: "multipart/form-data; 
charset=utf-8; boundary=" + UploadPostHelper.getBoundary()
+                               , errorCallback: addFolderError
+                               , successCallback: addFolderComplete
+                               });
+               }
+               var vars = UploadPostHelper.getPostData(null, null, [
+                       {
+                               name: 'file'
+                               , type: 'application/json'
+                               , value: JSON.stringify({fileExplorerItemDTO: {
+                                       name: this.text
+                                       , parentId: this.refObj.parentId
+                                       , roomId: this.refObj.roomId
+                                       , ownerId: this.refObj.ownerId
+                                       , type: this.refObj.type
+                                       }})
+                               }
+                       ]);
+               //if ($debug) Debug.write("addFolder:: ", vars);
+               addFolderLoader.load(vars);
+       ]]>
+       </method>
+
        <method name="addFolderComplete" args="event">
-               if ($debug) Debug.info("addFolderComplete ", event);
-               completed();
+               var o = JSON.parse(event.target.data);
+               var f = o.fileExplorerItemDTO;
+               if ($debug) Debug.info("addFolderComplete ", event, o);
+               this.refObj.setAttribute("fileName", f.name);
+               this.refObj.setAttribute("fileId", f.id);
+               this.refObj.parent.parent.doOpen();
+               this.destroy();
        </method>
 
-       <method name="httpRequestError" args="event">
-               if ($debug) Debug.error("httpRequestError ", event);
-               completed();
+       <method name="addFolderError" args="event">
+               if ($debug) Debug.error("addFolderError ", event);
+               this.refObj.destroy();
+               this.destroy();
        </method>
        
-    <method name="rename">
-        <![CDATA[
-            if ($debug) Debug.write("moveFile HTTP 1: ");
-            var downloadurl = 
canvas.getUrl()+'services/FileService/updateFileOrFolderNameSelf?'
-                            +'SID='+canvas.sessionId
-                            +'&fileId='+this.fileId
-                            +'&fileName='+this.text;
-            
-            this.updateFileOrFolderNameSelf.setAttribute("src",downloadurl);
-            if ($debug) Debug.write("updateFileOrFolderNameSelf doRequest 
",downloadurl);
-            this.updateFileOrFolderNameSelf.doRequest();
-        ]]>
-    </method>
-    
-    <dataset name="updateFileOrFolderNameSelf" type="http" >
-        <handler name="ondata" args="d">
-            <![CDATA[
-                //if ($debug) Debug.write("ondata ",d);
-                if ($debug) Debug.write("updateFileOrFolderNameSelf: ",d);
-                parent.completedRename();
-            ]]>
-        </handler>
-    </dataset>
-    
-       <method name="completed">
+       <method name="rename">
+       <![CDATA[
+               var moveLoader = new RestCall({
+                               url: canvas.getUrl() + 'services/file/rename/' 
+ this.refObj.fileId + '/' + this.text
+                               , method: URLRequestMethod.POST
+                               , errorCallback: renameError
+                               , successCallback: renameComplete
+                               });
+               moveLoader.load(' ');
+       ]]>
+       </method>
+
+       <method name="renameComplete" args="event">
                this.refObj.setAttribute("fileName", this.text);
-               this.refObj.parent.parent.doOpen();
                this.destroy();
        </method>
        
-       <method name="completedRename">
-               this.refObj.setAttribute("fileName",this.text);
+       <method name="renameError" args="event">
+               if ($debug) Debug.error("renameError ", event);
                this.destroy();
        </method>
-       
 </class>
 
 </library>

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/fileExplorer.lzx
 Fri Nov 27 05:59:50 2015
@@ -185,96 +185,6 @@
                el.setAttribute("text","" + sizem + " MBytes");
        </method>
            
-       <method name="setNodes" args="list, root">
-       <![CDATA[
-               //if ($debug) Debug.info("setNodes:: ", list.length, list);
-               if (!list) {
-                       return;
-               }
-               if (!list.length) {
-                       list = [list];
-               }
-               for (var i = 0; i < list.length; ++i) {
-                       var f = list[i];
-                       //if ($debug) Debug.write("fileItem, ", f, root);
-                       switch (f.type) {
-                               case 'Folder':
-                                       new 
lz.folderFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileIcon: 
'icon_folder_rsc'
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , refObjListRoot:this
-                                                       });
-                                       break;
-                               case 'Image':
-                                       new 
lz.imageFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileHash: f.hash
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , fileIcon: 
'file_explorer_image_rsc'
-                                                       , refObjListRoot: this
-                                                       });
-                                       break;
-                               case 'Presentation':
-                                       new 
lz.documentFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileHash: f.hash
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , fileIcon: 
'file_explorer_document_rsc'
-                                                       , refObjListRoot: this
-                                                       });
-                                       break;
-                               case 'Video':
-                                       new 
lz.videoFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileHash: f.hash
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , fileIcon: 
'file_explorer_video_rsc'
-                                                       , flvHeight: f.flvHeight
-                                                       , flvWidth: f.flvWidth
-                                                       , refObjListRoot: this
-                                                       });
-                                       break;
-                               case 'WmlFile':
-                                       new 
lz.wmlFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileIcon: 
'file_explorer_wml_rsc'
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , isWmlFile: true
-                                                       , refObjListRoot: this
-                                                       });
-                                       break;
-                               case 'PollChart':
-                                       new 
lz.wmlFileExplorerItem(root.content,{
-                                                       fileId: f.id
-                                                       , fileName: f.name
-                                                       , fileIcon: 
'file_explorer_chart_rsc'
-                                                       , type: f.type
-                                                       , ownerId: f.ownerId
-                                                       , roomId: f.roomId
-                                                       , refObjListRoot: this
-                                                       });
-                                       break;
-                       }
-               }
-       ]]>
-       </method>
-       
        <method name="createRootItems" args="roomObject">
        <![CDATA[
                this.clearContent();
@@ -296,8 +206,7 @@
                userHome.content.setAttribute("visibility", "visible");
                userHome.icon_folder_pre.setAttribute("frame", 2);
                userHome._folderIcon.setAttribute("frame", 2);
-               if ($debug) Debug.info("createUserRootItems ");
-               setNodes(roomObject.userHome, userHome);
+               userHome.setNodes(roomObject.userHome);
                
                var roomHome = new 
lz.rootFileExplorerItem(this._filearea._contentarea,{
                                open: true
@@ -312,8 +221,7 @@
                roomHome.content.setAttribute("visibility", "visible");
                roomHome.icon_folder_pre.setAttribute("frame", 2);
                roomHome._folderIcon.setAttribute("frame", 2);
-               if ($debug) Debug.info("createRoomRootItems ");
-               setNodes(roomObject.roomHome, roomHome);
+               roomHome.setNodes(roomObject.roomHome);
        ]]>
        </method>
        

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/restCall.lzx
 Fri Nov 27 05:59:50 2015
@@ -194,7 +194,7 @@
                                import flash.net.*;
                        }#
                        private var url:String = null;
-                       private var method:String = null;
+                       private var method:String = URLRequestMethod.GET;
                        private var contentType:String = null;
                        private var dataFormat:String = "text";
                        private var errorCallback:Function;
@@ -245,7 +245,11 @@
                                //Add the URL vars
                                request.data = vars;
                                
-                               requestor.load(request);
+                               try {
+                                       requestor.load(request);
+                               } catch (e:Error) {
+                                       if ($debug) Debug.error(e);
+                               }
                        }
                }
        ]]>

Modified: 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/tabcontent/fileexplorer/treeitems/baseFileExplorerItem.lzx
 Fri Nov 27 05:59:50 2015
@@ -21,6 +21,13 @@
 <library>
 
 <class name="baseFileExplorerItem" extends="view">
+       <switch>
+               <when property="$as3">
+                       <passthrough>
+                               import flash.net.*;
+                       </passthrough>
+               </when>
+       </switch>
        <attribute name="refObjListRoot" value="null"/>
        <attribute name="isRoot" value="false" type="boolean" />
        <attribute name="fileIcon" type="string" value="string" />
@@ -39,19 +46,20 @@
        <attribute name="mouseDownClickUsed" value="false" type="boolean" />
        <attribute name="mouseDownClickDelegate" value="null" />
        <attribute name="isTrashCan" value="false" type="boolean" />
-       
+       <attribute name="folderLoader" />
+               
        <handler name="oninit">
                this.singleClickDelegate = new LzDelegate( this, 
"doSingleClick" );
                this.resetClickDelegate = new LzDelegate( this, 
"doResetSingleClick" );
                this.mouseDownClickDelegate = new LzDelegate( this, 
"doMouseDownClick" );
-               if (this.type = 'Folder') {
+               if (this.type == 'Folder') {
                    lz.Track.register(this._fileName, 
canvas.currentImagesListdraw.currentTrackGroupName);
                }
        </handler>
        
        <method name="doOpen">
                this.open = true;
-               if (this.type = 'Folder') {
+               if (this.type == 'Folder') {
                this.icon_folder_pre.setAttribute("frame",2);
                this.content.setAttribute("visibility","visible");
                        this._folderIcon.setAttribute("frame",2);
@@ -61,7 +69,7 @@
        
        <method name="doClose">
                this.open = false;
-               if (this.type = 'Folder') {
+               if (this.type == 'Folder') {
             this.icon_folder_pre.setAttribute("frame",1);
             this.content.setAttribute("visibility","hidden");
             this._folderIcon.setAttribute("frame",1);
@@ -378,37 +386,37 @@
     </method>
        
        <method name="clearContent">
-        <![CDATA[
-            for (var eg in this.content.subviews) {
-                this.content.subviews[eg].destroy();
-            }
-        ]]>
-    </method>
-    
-    <method name="loadFiles">
-       <![CDATA[
-            var downloadurl = 
canvas.getUrl()+'services/FileService/getFileExplorerByParentSelfInternal?'
-                            +'SID='+canvas.sessionId
-                            +'&parentFileExplorerItemId='+this.fileId
-                            +'&roomId='+hib.currentroomid
-                            +'&isOwner='+this.isOwner;
-            
-            this.getFileExplorerByParentSelf.setAttribute("src",downloadurl);
-            if ($debug) Debug.write("getFileExplorerByParentSelf doRequest 
",downloadurl);
-            this.getFileExplorerByParentSelf.doRequest();
-        ]]>
-    </method>
+       <![CDATA[
+               while (this.content.subviews.length > 0) {
+                       this.content.subviews[0].destroy();
+               }
+       ]]>
+       </method>
     
-    <dataset name="getFileExplorerByParentSelf" type="http" >
-        <handler name="ondata" args="d">
-            <![CDATA[
-                //if ($debug) Debug.write("ondata ",d);
-                //FIXME TODO 
-                
parent.renderFilesAndFolders(canvas.currentFileExplorer.parseParentToRoomObject(d));
-            ]]>
-        </handler>
-    </dataset>
+       <method name="loadFiles">
+       <![CDATA[
+               if (!folderLoader) {
+                       folderLoader = new RestCall({
+                               url: canvas.getUrl() + 'services/file/room/' + 
hib.currentroomid + '/' + this.fileId
+                               , method: URLRequestMethod.GET
+                               , errorCallback: loadFilesError
+                               , successCallback: loadFilesComplete
+                               });
+               }
+               folderLoader.load('');
+       ]]>
+       </method>
+
+       <method name="loadFilesComplete" args="event">
+               var o = JSON.parse(event.target.data);
+               if ($debug) Debug.info("base::loadFilesComplete ", o);
+               setNodes(o.fileExplorerItemDTO);
+       </method>
     
+       <method name="loadFilesError" args="event">
+               if ($debug) Debug.error("base::loadFilesError ", event);
+       </method>
+
        <view name="icon_folder_pre" visible="$once{ parent.type == 'Folder' }" 
resource="icon_folder_pre_rsc" frame="1" >
                <handler name="onclick">
                        parent.toggleOpen(false);
@@ -465,7 +473,96 @@
        <method name="downloadImageByName">
                lz.Browser.loadURL(this.getDownloadURL(this.fileHash, ''), 
'_parent');
        </method>
-</class>
-
 
+       <method name="setNodes" args="list">
+       <![CDATA[
+               this.clearContent();
+               //if ($debug) Debug.info("setNodes:: ", list.length, list);
+               if (!list) {
+                       return;
+               }
+               if (!list.length) {
+                       list = [list];
+               }
+               for (var i = 0; i < list.length; ++i) {
+                       var f = list[i];
+                       //if ($debug) Debug.write("fileItem, ", f);
+                       switch (f.type) {
+                               case 'Folder':
+                                       new 
lz.folderFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileIcon: 
'icon_folder_rsc'
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , refObjListRoot:this
+                                                       });
+                                       break;
+                               case 'Image':
+                                       new 
lz.imageFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileHash: f.hash
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , fileIcon: 
'file_explorer_image_rsc'
+                                                       , refObjListRoot: this
+                                                       });
+                                       break;
+                               case 'Presentation':
+                                       new 
lz.documentFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileHash: f.hash
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , fileIcon: 
'file_explorer_document_rsc'
+                                                       , refObjListRoot: this
+                                                       });
+                                       break;
+                               case 'Video':
+                                       new 
lz.videoFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileHash: f.hash
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , fileIcon: 
'file_explorer_video_rsc'
+                                                       , flvHeight: f.flvHeight
+                                                       , flvWidth: f.flvWidth
+                                                       , refObjListRoot: this
+                                                       });
+                                       break;
+                               case 'WmlFile':
+                                       new 
lz.wmlFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileIcon: 
'file_explorer_wml_rsc'
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , isWmlFile: true
+                                                       , refObjListRoot: this
+                                                       });
+                                       break;
+                               case 'PollChart':
+                                       new 
lz.wmlFileExplorerItem(this.content,{
+                                                       fileId: f.id
+                                                       , fileName: f.name
+                                                       , fileIcon: 
'file_explorer_chart_rsc'
+                                                       , type: f.type
+                                                       , ownerId: f.ownerId
+                                                       , roomId: f.roomId
+                                                       , refObjListRoot: this
+                                                       });
+                                       break;
+                       }
+               }
+       ]]>
+       </method>
+</class>
 </library>

Modified: 
openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml 
(original)
+++ 
openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/web.xml 
Fri Nov 27 05:59:50 2015
@@ -71,7 +71,7 @@
                </init-param>
                <init-param>
                        <param-name>ignorePaths</param-name>
-                       
<param-value>conf,css,default,docs,images,js,persistence,public,screensharing,streams,upload,uploadtemp,services,networktest.,file.,remotelog.,screen.,DownloadHandler</param-value>
+                       
<param-value>conf,css,default,docs,images,js,persistence,public,screensharing,streams,upload,uploadtemp,services,networktest.,file.,screen.,DownloadHandler</param-value>
                </init-param>
        </filter>
        <filter-mapping>

Modified: 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
 Fri Nov 27 05:59:50 2015
@@ -20,17 +20,21 @@ package org.apache.openmeetings.webservi
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
+import javax.jws.WebMethod;
 import javax.jws.WebParam;
 import javax.jws.WebService;
 import javax.ws.rs.GET;
+import javax.ws.rs.POST;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 
 import org.apache.cxf.feature.Features;
 import org.apache.openmeetings.db.dao.basic.ErrorDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.dao.server.SessiondataDao;
 import org.apache.openmeetings.db.dto.basic.ServiceResult;
 import org.apache.openmeetings.db.entity.basic.ErrorValue;
 import org.red5.logging.Red5LoggerFactory;
@@ -56,6 +60,8 @@ public class ErrorWebService {
        private ErrorDao errorDao;
        @Autowired
        private LabelDao labelDao;
+       @Autowired
+       private SessiondataDao sessionDao;
 
        /**
         * loads an Error-Object. If a Method returns a negative Result, its an
@@ -70,6 +76,7 @@ public class ErrorWebService {
         *            
         * @return - error with the code given
         */
+       @WebMethod
        @GET
        @Path("/{id}/{lang}")
        public ServiceResult get(@WebParam(name="id") @PathParam("id") long id, 
@WebParam(name="lang") @PathParam("lang") long lang) {
@@ -93,4 +100,16 @@ public class ErrorWebService {
                }
                return null;
        }
+       
+       @WebMethod
+       @POST
+       @Path("/report/")
+       public void report(@WebParam(name="sid") @QueryParam("sid") String sid, 
@WebParam(name="message") @QueryParam("message") String message) {
+       if (sid != null && message != null) {
+               Long userId = sessionDao.checkSession(sid);
+               if (userId != null && userId != 0) {
+                       log.debug("[CLIENT MESSAGE] " + message);
+               }
+       }
+       }
 }

Modified: 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
 (original)
+++ 
openmeetings/branches/3.1.x/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
 Fri Nov 27 05:59:50 2015
@@ -353,38 +353,38 @@ public class FileWebService {
         * 
         * @param sid
         *            SID The SID of the User. This SID must be marked as 
logged in
-        * @param fileId
+        * @param id
         *            file or folder id
-        * @param fileName
+        * @param name
         *            new file or folder name
         * @return - null
         * @throws ServiceException
         */
-       public Long rename(String sid, Long fileId, String fileName) throws 
ServiceException {
-
+       @WebMethod
+       @POST
+       @Path("/rename/{id}/{name}")
+       public FileExplorerItemDTO rename(@WebParam(name="sid") 
@QueryParam("sid") String sid
+                       , @WebParam(name="id") @PathParam("id") long id
+                       , @WebParam(name="name") @PathParam("name") String 
name) throws ServiceException
+       {
                try {
-
                        Long userId = sessionDao.checkSession(sid);
 
                        if 
(AuthLevelUtil.hasUserLevel(userDao.getRights(userId))) {
+                               // FIXME TODO: check if this user is allowed to 
change this file
 
-                               // TODO: check if this user is allowed to 
change this file
-                               /*
-                                * FileExplorerItem fileExItem = 
fileExplorerItemDao.getFileExplorerItemsById (fileExplorerItemId);
-                                * 
-                                * if (fileExItem.getOwnerId() != null && 
!fileExItem.getOwnerId().equals(users_id)) { throw new
-                                * Exception( "This user is not the owner of 
the file and not allowed to edit its name" ); }
-                                */
-
-                               log.debug("updateFileOrFolderSelf " + fileId);
-
-                               fileDao.updateFileOrFolderName(fileId, 
fileName);
+                               log.debug("rename " + id);
 
+                               return new 
FileExplorerItemDTO(fileDao.rename(id, name));
+                       } else {
+                               throw new ServiceException("Insufficient 
permissins"); //TODO code -26
                        }
-               } catch (Exception err) {
-                       log.error("[updateFileOrFolderNameSelf] ", err);
+               } catch (ServiceException e) {
+                       throw e;
+               } catch (Exception e) {
+                       log.error("[rename] ", e);
+                       throw new ServiceException(e.getMessage());
                }
-               return null;
        }
 
        /**

Modified: 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
 Fri Nov 27 05:59:50 2015
@@ -205,25 +205,17 @@ public class FileExplorerItemDao {
         * @param id
         * @param name
         */
-       public void updateFileOrFolderName(Long id, String name) {
-               log.debug(".updateFileOrFolderName() started");
+       public FileExplorerItem rename(Long id, String name) {
+               log.debug("rename started");
 
-               try {
+               FileExplorerItem f = get(id);
 
-                       FileExplorerItem fId = get(id);
+               f.setName(name);
 
-                       fId.setName(name);
-                       fId.setUpdated(new Date());
-
-                       update(fId);
-               } catch (Exception ex2) {
-                       log.error("[updateFileOrFolderName]: ", ex2);
-               }
+               return update(f);
        }
 
        public FileExplorerItem update(FileExplorerItem f) {
-               // fId.setUpdated(new Date());
-
                if (f.getId() == null) {
                        f.setInserted(new Date());
                        em.persist(f);

Modified: 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
 Fri Nov 27 05:59:50 2015
@@ -74,9 +74,9 @@ public class FileExplorerItemDTO impleme
                f.setId(id);
                f.setName(name);
                f.setHash(hash);
-               f.setParentId(parentId);
-               f.setRoomId(roomId);
-               f.setOwnerId(ownerId);
+               f.setParentId(parentId != null && parentId > 0 ? parentId : 
null);
+               f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
+               f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
                f.setSize(size);
                f.setExternalId(externalId);
                f.setExternalType(externalType);

Modified: 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/ErrorWebService.java
 Fri Nov 27 05:59:50 2015
@@ -20,17 +20,21 @@ package org.apache.openmeetings.webservi
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
+import javax.jws.WebMethod;
 import javax.jws.WebParam;
 import javax.jws.WebService;
 import javax.ws.rs.GET;
+import javax.ws.rs.POST;
 import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
+import javax.ws.rs.QueryParam;
 import javax.ws.rs.core.MediaType;
 
 import org.apache.cxf.feature.Features;
 import org.apache.openmeetings.db.dao.basic.ErrorDao;
 import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.dao.server.SessiondataDao;
 import org.apache.openmeetings.db.dto.basic.ServiceResult;
 import org.apache.openmeetings.db.entity.basic.ErrorValue;
 import org.red5.logging.Red5LoggerFactory;
@@ -56,6 +60,8 @@ public class ErrorWebService {
        private ErrorDao errorDao;
        @Autowired
        private LabelDao labelDao;
+       @Autowired
+       private SessiondataDao sessionDao;
 
        /**
         * loads an Error-Object. If a Method returns a negative Result, its an
@@ -70,6 +76,7 @@ public class ErrorWebService {
         *            
         * @return - error with the code given
         */
+       @WebMethod
        @GET
        @Path("/{id}/{lang}")
        public ServiceResult get(@WebParam(name="id") @PathParam("id") long id, 
@WebParam(name="lang") @PathParam("lang") long lang) {
@@ -93,4 +100,16 @@ public class ErrorWebService {
                }
                return null;
        }
+       
+       @WebMethod
+       @POST
+       @Path("/report/")
+       public void report(@WebParam(name="sid") @QueryParam("sid") String sid, 
@WebParam(name="message") @QueryParam("message") String message) {
+       if (sid != null && message != null) {
+               Long userId = sessionDao.checkSession(sid);
+               if (userId != null && userId != 0) {
+                       log.debug("[CLIENT MESSAGE] " + message);
+               }
+       }
+       }
 }

Modified: 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java?rev=1716796&r1=1716795&r2=1716796&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
 Fri Nov 27 05:59:50 2015
@@ -353,38 +353,38 @@ public class FileWebService {
         * 
         * @param sid
         *            SID The SID of the User. This SID must be marked as 
logged in
-        * @param fileId
+        * @param id
         *            file or folder id
-        * @param fileName
+        * @param name
         *            new file or folder name
         * @return - null
         * @throws ServiceException
         */
-       public Long rename(String sid, Long fileId, String fileName) throws 
ServiceException {
-
+       @WebMethod
+       @POST
+       @Path("/rename/{id}/{name}")
+       public FileExplorerItemDTO rename(@WebParam(name="sid") 
@QueryParam("sid") String sid
+                       , @WebParam(name="id") @PathParam("id") long id
+                       , @WebParam(name="name") @PathParam("name") String 
name) throws ServiceException
+       {
                try {
-
                        Long userId = sessionDao.checkSession(sid);
 
                        if 
(AuthLevelUtil.hasUserLevel(userDao.getRights(userId))) {
+                               // FIXME TODO: check if this user is allowed to 
change this file
 
-                               // TODO: check if this user is allowed to 
change this file
-                               /*
-                                * FileExplorerItem fileExItem = 
fileExplorerItemDao.getFileExplorerItemsById (fileExplorerItemId);
-                                * 
-                                * if (fileExItem.getOwnerId() != null && 
!fileExItem.getOwnerId().equals(users_id)) { throw new
-                                * Exception( "This user is not the owner of 
the file and not allowed to edit its name" ); }
-                                */
-
-                               log.debug("updateFileOrFolderSelf " + fileId);
-
-                               fileDao.updateFileOrFolderName(fileId, 
fileName);
+                               log.debug("rename " + id);
 
+                               return new 
FileExplorerItemDTO(fileDao.rename(id, name));
+                       } else {
+                               throw new ServiceException("Insufficient 
permissins"); //TODO code -26
                        }
-               } catch (Exception err) {
-                       log.error("[updateFileOrFolderNameSelf] ", err);
+               } catch (ServiceException e) {
+                       throw e;
+               } catch (Exception e) {
+                       log.error("[rename] ", e);
+                       throw new ServiceException(e.getMessage());
                }
-               return null;
        }
 
        /**



Reply via email to