Revision: 3975
Author: seba.wagner
Date: Thu Jul 7 05:55:42 2011
Log: File Explorer reworked to use REST instead of RTMP
http://code.google.com/p/openmeetings/source/detail?r=3975
Modified:
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dynamicFileName.lzx
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/ConferenceLibrary.java
/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java
=======================================
---
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx
Thu Jul 7 05:23:20 2011
+++
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dragItemFileExplorer.lzx
Thu Jul 7 05:55:42 2011
@@ -12,6 +12,9 @@
<attribute name="alreadySent" value="false" type="boolean" />
<attribute name="fileExplorerItemId" value="0" type="number" />
+ <attribute name="newParentFileExplorerItemId" value="0" type="number" />
+ <attribute name="isOwner" value="false" type="boolean" />
+ <attribute name="moveToHome" value="false" type="boolean" />
<handler name="oninit">
lz.Track.activate(canvas.currentImagesListdraw.currentTrackGroupName);
@@ -76,16 +79,16 @@
} else if (this.overItem.isFolder){
if ($debug) Debug.write("MOVE
ITEM",this.refObj.fileExplorerItemId);
if ($debug) Debug.write("MOVE TO
PARENT",this.overItem.fileExplorerItemId);
- this.moveFile.fileExplorerItemId =
this.refObj.fileExplorerItemId;
- this.moveFile.newParentFileExplorerItemId =
this.overItem.fileExplorerItemId;
+ this.fileExplorerItemId =
this.refObj.fileExplorerItemId;
+ this.newParentFileExplorerItemId =
this.overItem.fileExplorerItemId;
if (this.overItem.fileExplorerItemId == 0) {
- this.moveFile.isOwner = this.overItem.isOwner;
+ this.isOwner = this.overItem.isOwner;
}
//check if this is a home folder or not
var checkForOwer = this.overItem.checkForIsOwner();
if ($debug) Debug.write("checkForOwer ::",checkForOwer);
- this.moveFile.moveToHome = checkForOwer;
+ this.moveToHome = checkForOwer;
//check that the file is not moved inside itself
if
(this.overItem.checkForIsChild(this.refObj.fileExplorerItemId)) {
@@ -94,7 +97,7 @@
return;
}
- this.moveFile.doCall();
+ this.moveFile();
} else {
if ($debug) Debug.warn("Drag to whiteboard !!! ");
if (this.refObj.isPresentation) {
@@ -159,13 +162,49 @@
</netRemoteCallHib>
-->
+ <!--
+ public Long moveFileSelf(String SID, Long fileExplorerItemId,
+ Long newParentFileExplorerItemId, Long room_id, Boolean
isOwner,
+ Boolean moveToHome)
+ -->
+
+ <method name="moveFile">
+ <![CDATA[
+ if ($debug) Debug.write("moveFile HTTP 1: ");
+ //this.getFileExplorerByRoom.doCall();
+ var downloadurl
= 'http://'+canvas.rtmphostlocal+':'+canvas.red5httpport
+
+canvas.httpRootKey+'services/FileService/moveFileSelf?'
+ +'SID='+canvas.sessionId
+ +'&fileExplorerItemId='+this.fileExplorerItemId
+
+'&newParentFileExplorerItemId='+this.newParentFileExplorerItemId
+ +'&room_id='+hib.currentroomid
+ +'&isOwner='+this.isOwner
+ +'&moveToHome='+this.moveToHome;
+
+ this.moveFileSelf.setAttribute("src",downloadurl);
+ if ($debug) Debug.write("moveFileSelf doRequest ",downloadurl);
+ this.moveFileSelf.doRequest();
+ ]]>
+ </method>
+
+ <dataset name="moveFileSelf" type="http" >
+ <handler name="ondata" args="d">
+ <![CDATA[
+ //if ($debug) Debug.write("ondata ",d);
+ if ($debug) Debug.write("moveFileSelf: ",d);
+ parent.overItem.doOpen();
+ parent.refObj.parent.parent.doOpen();
+ parent.destroy();
+ ]]>
+ </handler>
+ </dataset>
+
+ <!--
<netRemoteCallHib name="moveFile" funcname="fileservice.moveFile"
remotecontext="$once{ canvas.thishib }" >
<attribute name="fileExplorerItemId" value="0" type="number" />
- <attribute name="newParentFileExplorerItemId" value="0"
type="number" />
- <attribute name="isOwner" value="false" type="boolean" />
- <attribute name="moveToHome" value="false" type="boolean" />
+
<netparam><method name="getValue">return
canvas.sessionId;</method></netparam>
<netparam><method name="getValue">return
parent.fileExplorerItemId;</method></netparam>
@@ -180,7 +219,8 @@
parent.refObj.parent.parent.doOpen();
parent.destroy();
</handler>
- </netRemoteCallHib>
+ </netRemoteCallHib>
+ -->
<view name="_dragFileSymbol" x="10" y="10"
resource="$once{ parent.dragItemResource }" />
=======================================
---
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dynamicFileName.lzx
Fri Apr 15 04:58:38 2011
+++
/trunk/singlewebapp/WebContent/openmeetings/plugins/fileexplorer/dynamicFileName.lzx
Thu Jul 7 05:55:42 2011
@@ -18,9 +18,9 @@
lz.ModeManager.release(this);
if ($debug) Debug.write("Store and
Destroy ",this.parentFileExplorerItemId);
if (this.isNew) {
- this.addFolder.doCall();
+ this.addFolder();
} else {
- this.updateFileOrFolderName.doCall();
+ this.updateFileOrFolderName();
}
</handler>
@@ -32,6 +32,40 @@
]]>
</handler>
+ <!--
+ public Long addFolderSelf(String SID, Long parentFileExplorerItemId,
+ String fileName, Long room_id, Boolean isOwner)
+ -->
+
+ <method name="addFolder">
+ <![CDATA[
+ if ($debug) Debug.write("moveFile HTTP 1: ");
+ //this.getFileExplorerByRoom.doCall();
+ var downloadurl
= 'http://'+canvas.rtmphostlocal+':'+canvas.red5httpport
+
+canvas.httpRootKey+'services/FileService/addFolderSelf?'
+ +'SID='+canvas.sessionId
+
+'&parentFileExplorerItemId='+this.parentFileExplorerItemId
+ +'&fileName='+this.text
+ +'&room_id='+hib.currentroomid
+ +'&isOwner='+this.isOwner;
+
+ this.addFolderSelf.setAttribute("src",downloadurl);
+ if ($debug) Debug.write("addFolderSelf
doRequest ",downloadurl);
+ this.addFolderSelf.doRequest();
+ ]]>
+ </method>
+
+ <dataset name="addFolderSelf" type="http" >
+ <handler name="ondata" args="d">
+ <![CDATA[
+ //if ($debug) Debug.write("ondata ",d);
+ if ($debug) Debug.write("addFolderSelf: ",d);
+ parent.completed();
+ ]]>
+ </handler>
+ </dataset>
+
+ <!--
<netRemoteCallHib name="addFolder" funcname="fileservice.addFolder"
remotecontext="$once{ canvas.thishib }" >
<netparam><method name="getValue">return
canvas.sessionId;</method></netparam>
@@ -44,7 +78,39 @@
parent.completed(value);
</handler>
</netRemoteCallHib>
-
+ -->
+
+ <!--
+ public Long updateFileOrFolderNameSelf(String SID, Long
fileExplorerItemId,
+ String fileName)
+ -->
+ <method name="updateFileOrFolderName">
+ <![CDATA[
+ if ($debug) Debug.write("moveFile HTTP 1: ");
+ //this.getFileExplorerByRoom.doCall();
+ var downloadurl
= 'http://'+canvas.rtmphostlocal+':'+canvas.red5httpport
+
+canvas.httpRootKey+'services/FileService/updateFileOrFolderNameSelf?'
+ +'SID='+canvas.sessionId
+ +'&fileExplorerItemId='+this.fileExplorerItemId
+ +'&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>
+
+ <!--
<netRemoteCallHib name="updateFileOrFolderName"
funcname="fileservice.updateFileOrFolderName"
remotecontext="$once{ canvas.thishib }" >
<netparam><method name="getValue">return
canvas.sessionId;</method></netparam>
@@ -55,9 +121,10 @@
parent.completedRename();
</handler>
</netRemoteCallHib>
-
- <method name="completed" args="fileExplorerItemId">
- this.refObj.fileExplorerItemId = fileExplorerItemId;
+ -->
+
+ <method name="completed">
+ //this.refObj.fileExplorerItemId = fileExplorerItemId;
this.refObj.setAttribute("fileName",this.getText());
this.refObj.parent.parent.doOpen();
this.destroy();
=======================================
---
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/ConferenceLibrary.java
Tue Jul 5 02:59:20 2011
+++
/trunk/singlewebapp/src/app/org/openmeetings/app/remote/ConferenceLibrary.java
Thu Jul 7 05:55:42 2011
@@ -127,84 +127,6 @@
}
}
-
-
-
- /**
- * @deprecated
- * @param SID
- * @param fileName
- * @param moduleName
- * @param parentFolder
- * @param room_id
- * @return
- */
- public Boolean deleteFile(String SID, String fileName, String
moduleName,
- String parentFolder, Long room_id) {
- try {
- Long users_id =
Sessionmanagement.getInstance().checkSession(SID);
- Long user_level =
Usermanagement.getInstance().getUserLevelByID(
- users_id);
- if
(AuthLevelmanagement.getInstance().checkUserLevel(user_level)) {
-
- String current_dir = ScopeApplicationAdapter.webAppPath
- + File.separatorChar + "upload";
- String roomName = room_id.toString();
- String working_dir = current_dir + File.separatorChar
- + roomName + parentFolder;
- log.debug("working_dir+fileName: " + working_dir
- + File.separatorChar + fileName);
- File dir = new File(working_dir + File.separatorChar +
fileName);
-
- File thumb = new File(working_dir + File.separatorChar
- + "_thumb_" + fileName);
- if (thumb.exists())
- thumb.delete();
-
- boolean returnVal = dir.delete();
- log.debug("delete file: " + working_dir +
File.separatorChar
- + fileName);
-
- // Iterate through the Files if it is a directory
- if (!returnVal && dir.isDirectory()) {
- String[] listOfFiles = dir.list();
- for (int i = 0; i < listOfFiles.length; i++) {
- log.debug("Deleting recursive: " + working_dir
- + File.separatorChar + fileName
- + File.separatorChar + listOfFiles[i]);
- File d2 = new File(working_dir + File.separatorChar
- + fileName + File.separatorChar
- + listOfFiles[i]);
- d2.delete();
- File thumb2 = new File(working_dir +
File.separatorChar
- + fileName + File.separatorChar + "_thumb_"
- + listOfFiles[i]);
- if (thumb2.exists())
- thumb2.delete();
- }
- dir.delete();
- }
- return returnVal;
- }
- } catch (Exception e) {
- log.error("[deleteFile]: ", e);
- }
- return false;
- }
-
- /**
- * @deprecated
- * @param t
- * @return
- */
- public String saveAsImage(Object t) {
- try {
- log.error("saveAsImage" + t);
- } catch (Exception err) {
- log.error("[saveAsImage] ", err);
- }
- return null;
- }
/**
*
@@ -384,7 +306,7 @@
* @param SID
* @param room_id
* @return
- */
+
public FileExplorerObject getFileExplorerByRoom(String SID, Long
room_id) {
try {
Long users_id =
Sessionmanagement.getInstance().checkSession(SID);
@@ -591,7 +513,7 @@
}
return null;
}
-
+ */
public Long copyFileToCurrentRoom(String SID, Long flvFileExplorerId) {
=======================================
---
/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java
Thu Jul 7 05:23:20 2011
+++
/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileService.java
Thu Jul 7 05:55:42 2011
@@ -359,6 +359,60 @@
}
return null;
}
+
+ /**
+ *
+ * Add a folder by the current user - similar to RTMP Call
+ *
+ * @param SID
+ * @param parentFileExplorerItemId
+ * @param fileName
+ * @param room_id
+ * @param isOwner
+ * @return
+ */
+ public Long addFolderSelf(String SID, Long parentFileExplorerItemId,
+ String fileName, Long room_id, Boolean isOwner) throws
AxisFault {
+ try {
+ Long users_id =
Sessionmanagement.getInstance().checkSession(SID);
+ Long user_level =
Usermanagement.getInstance().getUserLevelByID(
+ users_id);
+ if
(AuthLevelmanagement.getInstance().checkUserLevel(user_level)) {
+
+ log.debug("addFolder " + parentFileExplorerItemId);
+
+ if (parentFileExplorerItemId == 0 && isOwner) {
+ // users_id (OwnerID) => only set if its directly root
in
+ // Owner Directory,
+ // other Folders and Files maybe are also in a Home
+ // directory
+ // but just because their parent is
+ return
FileExplorerItemDaoImpl.getInstance().add(fileName,
+ "", parentFileExplorerItemId, users_id,
room_id,
+ users_id, true, // isFolder
+ false, // isImage
+ false, // isPresentation
+ "", // WML Path
+ false, // isStoredWML file
+ false // isXmlFile
+ , 0L, "");
+ } else {
+ return
FileExplorerItemDaoImpl.getInstance().add(fileName,
+ "", parentFileExplorerItemId, null, room_id,
+ users_id, true, // isFolder
+ false, // isImage
+ false, // isPresentation
+ "", // WML Paht
+ false, // isStoredWML file
+ false // isXmlFile
+ , 0L, "");
+ }
+ }
+ } catch (Exception err) {
+ log.error("[getFileExplorerByParent] ", err);
+ }
+ return null;
+ }
/**
*
--
You received this message because you are subscribed to the Google Groups
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/openmeetings-dev?hl=en.