You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by se...@apache.org on 2011/12/18 12:58:20 UTC
svn commit: r1220369 [4/4] - in /incubator/openmeetings/trunk/singlewebapp:
./ docs/ src/docgenerator/org/openmeetings/doc/
src/fileservice/org/openmeetings/axis/services/
src/userservice/org/openmeetings/axis/services/
Added: incubator/openmeetings/trunk/singlewebapp/docs/WebserviceIndex.html
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/docs/WebserviceIndex.html?rev=1220369&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/docs/WebserviceIndex.html (added)
+++ incubator/openmeetings/trunk/singlewebapp/docs/WebserviceIndex.html Sun Dec 18 11:58:19 2011
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--
+Copyright 1999-2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "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
+
+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 KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+ <!-- ====================================================================== -->
+ <!-- GENERATED FILE, DO NOT EDIT, EDIT THE TEMPLATE INSTEAD! -->
+ <!-- Main Page Section -->
+ <!-- ====================================================================== -->
+
+ <html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
+ <meta name="author" value="OpenMeetings Team">
+ <meta name="email" value="sebawagner@apache.org">
+ <title>OpenMeetings API Classes</title>
+ <link rel="stylesheet" type="text/css" href="openmeetings_docs.css">
+ </head>
+ <body>
+
+ <div class="navigation">
+ <div>
+ <a href="UserService.html" target="_PARENT"><b>UserService</b></a><br/>
+ <div class="navigation_comment"><i >The Service contains methods to login and create hash to directly enter
+ conference rooms, recordings or the application in general</i></div>
+ </div>
+ <div>
+ <a href="RoomService.html" target="_PARENT"><b>RoomService</b></a><br/>
+ <div class="navigation_comment"><i >RoomService contains methods to manipulate rooms and create invitation hash</i></div>
+ </div>
+ <div>
+ <a href="FileService.html" target="_PARENT"><b>FileService</b></a><br/>
+ <div class="navigation_comment"><i >Contains methods to import and upload files into the Files section of the
+ conference room and the personal drive of any user</i></div>
+ </div>
+ </div>
+
+
+ </body>
+ </html>
\ No newline at end of file
Modified: incubator/openmeetings/trunk/singlewebapp/src/docgenerator/org/openmeetings/doc/WebServiceDoclet.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/docgenerator/org/openmeetings/doc/WebServiceDoclet.java?rev=1220369&r1=1220368&r2=1220369&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/docgenerator/org/openmeetings/doc/WebServiceDoclet.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/docgenerator/org/openmeetings/doc/WebServiceDoclet.java Sun Dec 18 11:58:19 2011
@@ -2,9 +2,14 @@ package org.openmeetings.doc;
import java.io.File;
import java.io.FileWriter;
+import java.io.StringWriter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
+import org.apache.velocity.tools.generic.EscapeTool;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.MethodDoc;
@@ -16,60 +21,66 @@ public class WebServiceDoclet {
static final String basePath = "docs";
static final String templateName = "ApiMethodsTemplate.vm";
+ static final String templateNameIndex = "ApiClassesTemplate.vm";
public static boolean start(RootDoc root) {
try {
+
+ Velocity.init();
out("Start WebServiceDoclet templateNameNew " + templateName);
-
+
+ ArrayList<Map<String,String>> classesParsed = new ArrayList<Map<String,String>>(root.classes().length);
+
// iterate over all classes.
ClassDoc[] classes = root.classes();
for (int i = 0; i < classes.length; i++) {
// iterate over all methods and print their names.
- MethodDoc[] methods = classes[i].methods();
-
- Velocity.init();
+
VelocityContext vContext = new VelocityContext();
vContext.put("className", classes[i].name());
vContext.put("classComment", classes[i].commentText());
String defaultOutputName = classes[i].name();
for (Tag tag : classes[i].tags()) {
- out("Class Tag "+tag.name() + " || "+tag.text());
- if (tag.name().equals("webservice")) {
+ if (tag.name().equals("@webservice")) {
defaultOutputName = tag.text();
}
}
vContext.put("webServiceName", defaultOutputName);
+ HashMap<String,String> classItem = new HashMap<String,String>();
+ classItem.put("name",defaultOutputName);
+ classItem.put("comment",classes[i].commentText());
+ classesParsed.add(classItem);
+
vContext.put("methods", classes[i].methods());
-
+
FileWriter strWriter = new FileWriter(basePath
+ File.separatorChar + defaultOutputName + ".html");
Velocity.mergeTemplate(basePath + File.separatorChar
+ templateName, "UTF-8", vContext, strWriter);
-
- out("Methods");
- out("-------");
- for (int j = 0; j < methods.length; j++) {
- out("Method: name = " + methods[j].name() + " Comment "
- + methods[j].commentText() + " Return Type "
- + methods[j].returnType().simpleTypeName());
- int k = 0;
- for (ParamTag parameter : methods[j].paramTags()) {
- out("Param : "
- + parameter.parameterName()
- + " Type: "
- + methods[j].parameters()[k].type()
- .simpleTypeName() + " "
- + parameter.parameterComment());
- k++;
- }
- }
+
+ strWriter.flush();
+ strWriter.close();
}
+
+
+ VelocityContext vIndexContext = new VelocityContext();
+ vIndexContext.put("classes", classesParsed);
+
+ FileWriter newFileIndexWriter = new FileWriter(basePath
+ + File.separatorChar + "WebserviceIndex.html");
+
+ Velocity.mergeTemplate(basePath + File.separatorChar
+ + templateNameIndex, "UTF-8", vIndexContext, newFileIndexWriter);
+
+ newFileIndexWriter.flush();
+ newFileIndexWriter.close();
+
} catch (Exception err) {
err.printStackTrace();
Modified: incubator/openmeetings/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileWebService.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileWebService.java?rev=1220369&r1=1220368&r2=1220369&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileWebService.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/fileservice/org/openmeetings/axis/services/FileWebService.java Sun Dec 18 11:58:19 2011
@@ -35,6 +35,15 @@ import org.red5.logging.Red5LoggerFactor
import org.slf4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
+/**
+ *
+ * Contains methods to import and upload files into the Files section of the
+ * conference room and the personal drive of any user
+ *
+ * @author sebawagner
+ * @webservice FileService
+ *
+ */
public class FileWebService {
private static final Logger log = Red5LoggerFactory.getLogger(
@@ -178,7 +187,6 @@ public class FileWebService {
}
/**
- *
* Import file from external source
*
* to upload a file to a room-drive you specify: internalUserId, user if of
@@ -190,9 +198,10 @@ public class FileWebService {
* room id isOwner = 1 parentFolderId = -2
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param internalUserId
* the openmeetings user id => If the file should goto a private
- * section of any user, this number needs to be set
+ * section of any user, this number needs to be se
* @param externalFileId
* the external file-type to identify the file later
* @param externalType
@@ -296,19 +305,26 @@ public class FileWebService {
}
/**
- *
* to add a folder to the private drive, set parentFileExplorerItemId = 0
* and isOwner to 1/true and externalUserId/externalUserType to a valid user
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param externalUserId
- * @param externalUserType
+ * the external file-type to identify the file later
* @param parentFileExplorerItemId
- * @param fileName
+ * @param folderName
+ * the name of the folder
* @param room_id
+ * the room Id, if the file goes to the private folder of an
+ * user, you can set a random number here
* @param isOwner
+ * specify a 1/true AND parentFolderId==-2 to make the file goto
+ * the private section
* @param externalFilesid
+ * the external file-type to identify the file later
* @param externalType
+ * the name of the external system
* @return
* @throws AxisFault
*/
@@ -364,18 +380,17 @@ public class FileWebService {
}
/**
- *
* to add a folder to the private drive, set parentFileExplorerItemId = 0
* and isOwner to 1/true and userId to a valid user
*
- * @param SID
- * @param userId
- * @param parentFileExplorerItemId
- * @param fileName
- * @param room_id
- * @param isOwner
- * @param externalFilesid
- * @param externalType
+ * @param SID The SID of the User. This SID must be marked as logged in
+ * @param userId the openmeetings user id
+ * @param parentFileExplorerItemId specify a parentFolderId==-2 AND isOwner == 1/true AND to make the file goto the private section
+ * @param folderName the name of the folder
+ * @param room_id the room Id, if the file goes to the private folder of an user, you can set a random number here
+ * @param isOwner specify a 1/true AND parentFolderId==-2 to make the file goto the private section
+ * @param externalFilesid the external file-type to identify the file later
+ * @param externalType the name of the external system
* @return
* @throws AxisFault
*/
@@ -430,9 +445,13 @@ public class FileWebService {
* Add a folder by the current user - similar to RTMP Call
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param parentFileExplorerItemId
+ * parent folder id
* @param fileName
+ * the file name
* @param room_id
+ * the room id
* @param isOwner
* @return
*/
@@ -483,8 +502,11 @@ public class FileWebService {
* deletes a file by its external Id and type
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param externalFilesid
+ * the od of the file or folder
* @param externalType
+ * the externalType
* @return
*/
public Long deleteFileOrFolderByExternalIdAndType(String SID,
@@ -513,7 +535,9 @@ public class FileWebService {
* deletes files or folders based on it id
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param fileExplorerItemId
+ * the id of the file or folder
* @return
*/
public Long deleteFileOrFolder(String SID, Long fileExplorerItemId)
@@ -541,7 +565,9 @@ public class FileWebService {
* deletes files or folders based on it id
*
* @param SID
+ * The SID of the User. This SID must be marked as logged in
* @param fileExplorerItemId
+ * the id of the file or folder
* @return
*/
public Long deleteFileOrFolderSelf(String SID, Long fileExplorerItemId)
@@ -566,6 +592,12 @@ public class FileWebService {
return null;
}
+ /**
+ * Get available import File Extension allowed during import
+ *
+ * @return
+ * @throws AxisFault
+ */
public String[] getImportFileExtensions() throws AxisFault {
try {
@@ -577,6 +609,14 @@ public class FileWebService {
return null;
}
+ /**
+ * Get a LibraryPresentation-Object for a certain file
+ *
+ * @param SID
+ * @param parentFolder
+ * @return
+ * @throws AxisFault
+ */
public LibraryPresentation getPresentationPreviewFileExplorer(String SID,
String parentFolder) throws AxisFault {
@@ -617,6 +657,18 @@ public class FileWebService {
}
+ /**
+ * Get a File Explorer Object by a given Room and owner id
+ *
+ * @param SID
+ * The SID of the User. This SID must be marked as logged in
+ * @param room_id
+ * Room id
+ * @param owner_id
+ * Owner id
+ * @return
+ * @throws AxisFault
+ */
public FileExplorerObject getFileExplorerByRoom(String SID, Long room_id,
Long owner_id) throws AxisFault {
@@ -678,6 +730,16 @@ public class FileWebService {
}
}
+ /**
+ * Get a File Explorer Object by a given Room
+ *
+ * @param SID
+ * The SID of the User. This SID must be marked as logged in
+ * @param room_id
+ * Room Id
+ * @return
+ * @throws AxisFault
+ */
public FileExplorerObject getFileExplorerByRoomSelf(String SID, Long room_id)
throws AxisFault {
@@ -738,6 +800,22 @@ public class FileWebService {
}
}
+ /**
+ * Get FileExplorerItem list by parent folder
+ *
+ * @param SID
+ * The SID of the User. This SID must be marked as logged in
+ * @param parentFileExplorerItemId
+ * the parent folder id
+ * @param room_id
+ * the room id
+ * @param isOwner
+ * true if its a private drive
+ * @param owner_id
+ * the owner id
+ * @return
+ * @throws AxisFault
+ */
public FileExplorerItem[] getFileExplorerByParent(String SID,
Long parentFileExplorerItemId, Long room_id, Boolean isOwner,
Long owner_id) throws AxisFault {
@@ -773,6 +851,21 @@ public class FileWebService {
return null;
}
+ /**
+ *
+ * Get FileExplorerItem[] by parent and owner id
+ *
+ * @param SID
+ * SID The SID of the User. This SID must be marked as logged in
+ * @param parentFileExplorerItemId
+ * the parent folder id
+ * @param room_id
+ * the room id
+ * @param isOwner
+ * true to request private drive
+ * @return
+ * @throws AxisFault
+ */
public FileExplorerItem[] getFileExplorerByParentSelf(String SID,
Long parentFileExplorerItemId, Long room_id, Boolean isOwner)
throws AxisFault {
@@ -807,6 +900,18 @@ public class FileWebService {
return null;
}
+ /**
+ * update a file or folder name
+ *
+ * @param SID
+ * SID The SID of the User. This SID must be marked as logged in
+ * @param fileExplorerItemId
+ * file or folder id
+ * @param fileName
+ * new file or folder name
+ * @return
+ * @throws AxisFault
+ */
public Long updateFileOrFolderName(String SID, Long fileExplorerItemId,
String fileName) throws AxisFault {
@@ -830,6 +935,19 @@ public class FileWebService {
return null;
}
+ /**
+ *
+ * update a file or folder name
+ *
+ * @param SID
+ * SID The SID of the User. This SID must be marked as logged in
+ * @param fileExplorerItemId
+ * file or folder id
+ * @param fileName
+ * new file or folder name
+ * @return
+ * @throws AxisFault
+ */
public Long updateFileOrFolderNameSelf(String SID, Long fileExplorerItemId,
String fileName) throws AxisFault {
@@ -865,6 +983,26 @@ public class FileWebService {
return null;
}
+ /**
+ * move a file or folder
+ *
+ * @param SID
+ * SID The SID of the User. This SID must be marked as logged in
+ * @param fileExplorerItemId
+ * current file or folder id to be moved
+ * @param newParentFileExplorerItemId
+ * new parent folder id
+ * @param room_id
+ * room id
+ * @param isOwner
+ * if true owner id will be set
+ * @param moveToHome
+ * if true move to private drive
+ * @param owner_id
+ * owner id
+ * @return
+ * @throws AxisFault
+ */
public Long moveFile(String SID, Long fileExplorerItemId,
Long newParentFileExplorerItemId, Long room_id, Boolean isOwner,
Boolean moveToHome, Long owner_id) throws AxisFault {
@@ -906,6 +1044,24 @@ public class FileWebService {
return null;
}
+ /**
+ * move a file or folder
+ *
+ * @param SID
+ * SID The SID of the User. This SID must be marked as logged in
+ * @param fileExplorerItemId
+ * current file or folder id to be moved
+ * @param newParentFileExplorerItemId
+ * new parent folder id
+ * @param room_id
+ * room id
+ * @param isOwner
+ * if true owner id will be set
+ * @param moveToHome
+ * move to private drive
+ * @return
+ * @throws AxisFault
+ */
public Long moveFileSelf(String SID, Long fileExplorerItemId,
Long newParentFileExplorerItemId, Long room_id, Boolean isOwner,
Boolean moveToHome) throws AxisFault {
Modified: incubator/openmeetings/trunk/singlewebapp/src/userservice/org/openmeetings/axis/services/UserWebService.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/userservice/org/openmeetings/axis/services/UserWebService.java?rev=1220369&r1=1220368&r2=1220369&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/userservice/org/openmeetings/axis/services/UserWebService.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/userservice/org/openmeetings/axis/services/UserWebService.java Sun Dec 18 11:58:19 2011
@@ -29,6 +29,15 @@ import org.springframework.beans.factory
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
+/**
+ *
+ * The Service contains methods to login and create hash to directly enter
+ * conference rooms, recordings or the application in general
+ *
+ * @author sebawagner
+ * @webservice UserService
+ *
+ */
public class UserWebService {
private static final Logger log = Red5LoggerFactory.getLogger(
@@ -55,25 +64,32 @@ public class UserWebService {
@Autowired
private AuthLevelmanagement authLevelManagement;
- /*
- * (non-Javadoc)
+ /**
+ * load this session id before doing anything else Returns an Object of Type
+ * Sessiondata, this contains a sessionId, use that sessionId in all Methods
*
- * @see org.openmeetings.axis.services.IUserWebService#getSession()
+ * @return
*/
public Sessiondata getSession() {
log.debug("SPRING LOADED getSession -- ");
return mainService.getsessiondata();
}
- /*
- * (non-Javadoc)
+ /**
+ * uth function, use the SID you get by getSession, return positive means
+ * logged-in, if negative its an ErrorCode, you have to invoke the Method
+ * getErrorByCode to get the Text-Description of that ErrorCode
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#loginUser(java.lang.String
- * , java.lang.String, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * Username from OpenMeetings, the user has to have Admin-rights
+ * @param userpass
+ * Userpass from OpenMeetings
+ * @return
*/
- public Long loginUser(String SID, String username, String userpass) {
- log.debug("UserService.loginuser");
+ public Long loginUser(String SID, String username, String userpass)
+ throws AxisFault {
try {
Object obj = userManagement.loginUser(SID, username, userpass,
null, false);
@@ -81,7 +97,6 @@ public class UserWebService {
return new Long(-1);
}
String objName = obj.getClass().getName();
- log.debug("objName: " + objName);
if (objName.equals("java.lang.Long")) {
return (Long) obj;
} else {
@@ -93,15 +108,21 @@ public class UserWebService {
return new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ * loads an Error-Object. If a Method returns a negative Result, its an
+ * Error-id, it needs a language_id to specify in which language you want to
+ * display/read the error-message. English has the Language-ID one, for
+ * different one see the list of languages
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#getErrorByCode(java.lang
- * .String, java.lang.Long, java.lang.Long)
+ * @param SID
+ * The SID from getSession
+ * @param errorid
+ * the error id (negative Value here!)
+ * @param language_id
+ * The id of the language
+ * @return
*/
public ErrorResult getErrorByCode(String SID, Long errorid, Long language_id) {
- log.debug("UserService.getErrorbyCode");
try {
if (errorid < 0) {
ErrorValues eValues = errorManagement
@@ -111,7 +132,8 @@ public class UserWebService {
.getFieldByIdAndLanguage(
eValues.getFieldvalues_id(), language_id);
Fieldlanguagesvalues typeValue = fieldmanagment
- .getFieldByIdAndLanguage(errorManagement.getErrorType(eValues.getErrortype_id())
+ .getFieldByIdAndLanguage(errorManagement
+ .getErrorType(eValues.getErrortype_id())
.getFieldvalues_id(), language_id);
if (errorValue != null) {
return new ErrorResult(errorid, errorValue.getValue(),
@@ -128,14 +150,42 @@ public class UserWebService {
return null;
}
- /*
- * (non-Javadoc)
+ /**
+ * Adds a new Usre like through the Frontend, but also does activates the
+ * Account To do SSO see the methods to create a hash and use those ones!
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#addNewUser(java.lang.String
- * , java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, long, java.lang.String, long, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param userpass
+ * any userpass
+ * @param lastname
+ * any lastname
+ * @param firstname
+ * any firstname
+ * @param email
+ * any email
+ * @param additionalname
+ * any additionalname
+ * @param street
+ * any street
+ * @param zip
+ * any zip
+ * @param fax
+ * any fax
+ * @param states_id
+ * a valid states_id
+ * @param town
+ * any town
+ * @param language_id
+ * the language_id
+ * @param baseURL
+ * the baseURL is needed to send the Initial Email correctly to
+ * that User, otherwise the Link in the EMail that the new User
+ * will reveive is not valid
+ * @return
+ * @throws AxisFault
*/
public Long addNewUser(String SID, String username, String userpass,
String lastname, String firstname, String email,
@@ -192,15 +242,44 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
+ * Adds a new User like through the Frontend, but also does activates the
+ * Account
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#addNewUserWithTimeZone
- * (java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, long, java.lang.String, long,
- * java.lang.String, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param userpass
+ * any userpass
+ * @param lastname
+ * any lastname
+ * @param firstname
+ * any firstname
+ * @param email
+ * any email
+ * @param additionalname
+ * any additionalname
+ * @param street
+ * any street
+ * @param zip
+ * any zip
+ * @param fax
+ * any fax
+ * @param states_id
+ * a valid states_id
+ * @param town
+ * any town
+ * @param language_id
+ * the language_id
+ * @param baseURL
+ * the baseURL is needed to send the Initial Email correctly to
+ * that User, otherwise the Link in the EMail that the new User
+ * will reveive is not valid
+ * @param jNameTimeZone
+ * the name of the timezone for the user
+ * @return
+ * @throws AxisFault
*/
public Long addNewUserWithTimeZone(String SID, String username,
String userpass, String lastname, String firstname, String email,
@@ -249,15 +328,48 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
+ * Adds a new User like through the Frontend, but also does activates the
+ * Account, sends NO email (no matter what you configured) and sets the
+ * users external user id and type
+ *
+ * Use the methods to create a hash for SSO, creating users is not required
+ * for SSO
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#addNewUserWithExternalType
- * (java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, long, java.lang.String, long,
- * java.lang.String, java.lang.Long, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param userpass
+ * any userpass
+ * @param lastname
+ * any lastname
+ * @param firstname
+ * any firstname
+ * @param email
+ * any email
+ * @param additionalname
+ * any additionalname
+ * @param street
+ * any street
+ * @param zip
+ * any zip
+ * @param fax
+ * any fax
+ * @param states_id
+ * a valid states_id
+ * @param town
+ * any town
+ * @param language_id
+ * the language_id
+ * @param jNameTimeZone
+ * the name of the timezone for the user
+ * @param externalUserId
+ * externalUserId
+ * @param externalUserType
+ * externalUserType
+ * @return
+ * @throws AxisFault
*/
public Long addNewUserWithExternalType(String SID, String username,
String userpass, String lastname, String firstname, String email,
@@ -312,12 +424,16 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#deleteUserById(java.lang
- * .String, java.lang.Long)
+ * Delete a certain user by its id
+ *
+ * @param SID
+ * The SID from getSession
+ * @param userId
+ * the openmeetings user id
+ * @return
+ * @throws AxisFault
*/
public Long deleteUserById(String SID, Long userId) throws AxisFault {
try {
@@ -341,12 +457,18 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Delete a certain user by its external user id
*
- * @see org.openmeetings.axis.services.IUserWebService#
- * deleteUserByExternalUserIdAndType(java.lang.String, java.lang.Long,
- * java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param externalUserId
+ * externalUserId
+ * @param externalUserType
+ * externalUserId
+ * @return
+ * @throws AxisFault
*/
public Long deleteUserByExternalUserIdAndType(String SID,
Long externalUserId, String externalUserType) throws AxisFault {
@@ -376,14 +498,28 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
+ * deprecated use setUserObjectAndGenerateRoomHash
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#setUserObject(java.lang
- * .String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String)
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room.
+ *
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email
+ * @return
+ * @throws AxisFault
*/
+ @Deprecated
public Long setUserObject(String SID, String username, String firstname,
String lastname, String profilePictureUrl, String email)
throws AxisFault {
@@ -423,14 +559,32 @@ public class UserWebService {
// return new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ * deprecated use setUserObjectAndGenerateRoomHash
+ *
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room.
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#setUserObjectWithExternalUser
- * (java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.Long, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @return
+ * @throws AxisFault
*/
+ @Deprecated
public Long setUserObjectWithExternalUser(String SID, String username,
String firstname, String lastname, String profilePictureUrl,
String email, Long externalUserId, String externalUserType)
@@ -473,21 +627,42 @@ public class UserWebService {
}
}
- /*
- * (non-Javadoc)
+ /**
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room. ...
+ * Session-Hashs are deleted 15 minutes after the creation if not used.
*
- * @see org.openmeetings.axis.services.IUserWebService#
- * setUserObjectAndGenerateRoomHash(java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.Long, java.lang.String, java.lang.Long, int, int)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @param room_id
+ * the room id the user should be logged in
+ * @param becomeModeratorAsInt
+ * 0 means no Moderator, 1 means Moderator
+ * @param showAudioVideoTestAsInt
+ * 0 means don't show Audio/Video Test, 1 means show Audio/Video
+ * Test Application before the user is logged into the room
+ * @return
+ * @throws AxisFault
*/
public String setUserObjectAndGenerateRoomHash(String SID, String username,
String firstname, String lastname, String profilePictureUrl,
String email, Long externalUserId, String externalUserType,
Long room_id, int becomeModeratorAsInt, int showAudioVideoTestAsInt)
throws AxisFault {
- log.debug("UserService.setUserObject");
-
try {
Long users_id = sessionManagement.checkSession(SID);
Long user_level = userManagement.getUserLevelByID(users_id);
@@ -546,13 +721,40 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room.
+ *
+ * ++ the user can press f5 to reload the page / use the link several times,
+ * the SOAP Gateway does remember the IP of the user and the will only the
+ * first user that enters the room allow to re-enter. ... Session-Hashs are
+ * deleted 15 minutes after the creation if not used.
*
- * @see org.openmeetings.axis.services.IUserWebService#
- * setUserObjectAndGenerateRoomHashByURL(java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.Long, java.lang.String, java.lang.Long, int, int)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @param room_id
+ * the room id the user should be logged in
+ * @param becomeModeratorAsInt
+ * 0 means no Moderator, 1 means Moderator
+ * @param showAudioVideoTestAsInt
+ * 0 means don't show Audio/Video Test, 1 means show Audio/Video
+ * Test Application before the user is logged into the room
+ * @return
*/
public String setUserObjectAndGenerateRoomHashByURL(String SID,
String username, String firstname, String lastname,
@@ -618,22 +820,50 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room.
+ *
+ * ++ the user can press f5 to reload the page / use the link several times,
+ * the SOAP Gateway does remember the IP of the user and the will only the
+ * first user that enters the room allow to re-enter. ... Session-Hashs are
+ * deleted 15 minutes after the creation if not used.
+ *
+ * ++ sets the flag if the user can do recording in the conference room
*
- * @see org.openmeetings.axis.services.IUserWebService#
- * setUserObjectAndGenerateRoomHashByURLAndRecFlag(java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.Long, java.lang.String, java.lang.Long, int,
- * int, int)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @param room_id
+ * the room id the user should be logged in
+ * @param becomeModeratorAsInt
+ * 0 means no Moderator, 1 means Moderator
+ * @param showAudioVideoTestAsInt
+ * 0 means don't show Audio/Video Test, 1 means show Audio/Video
+ * Test Application before the user is logged into the room
+ * @param allowRecording
+ * 0 means don't allow Recording, 1 means allow Recording
+ * @return
*/
public String setUserObjectAndGenerateRoomHashByURLAndRecFlag(String SID,
String username, String firstname, String lastname,
String profilePictureUrl, String email, Long externalUserId,
String externalUserType, Long room_id, int becomeModeratorAsInt,
int showAudioVideoTestAsInt, int allowRecording) {
- log.debug("UserService.setUserObject");
-
try {
Long users_id = sessionManagement.checkSession(SID);
Long user_level = userManagement.getUserLevelByID(users_id);
@@ -697,13 +927,33 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID and directly login into the dashboard
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#setUserObjectMainLandingZone
- * (java.lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.Long, java.lang.String)
+ * ++ the user can press f5 to reload the page / use the link several times,
+ * the SOAP Gateway does remember the IP of the user and the will only the
+ * first user that enters the room allow to re-enter. ... Session-Hashs are
+ * deleted 15 minutes after the creation if not used.
+ *
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any absolute profilePictureUrl
+ * @param email
+ * any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @return
*/
public String setUserObjectMainLandingZone(String SID, String username,
String firstname, String lastname, String profilePictureUrl,
@@ -761,14 +1011,48 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Description: sets the SessionObject for a certain SID, after setting this
+ * Session-Object you can use the SID + a RoomId to enter any Room.
+ *
+ * ++ the user can press f5 to reload the page / use the link several times,
+ * the SOAP Gateway does remember the IP of the user and the will only the
+ * first user that enters the room allow to re-enter. ... Session-Hashs are
+ * deleted 15 minutes after the creation if not used.
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#setUserAndNickName(java
- * .lang.String, java.lang.String, java.lang.String, java.lang.String,
- * java.lang.String, java.lang.String, java.lang.Long, java.lang.String,
- * java.lang.Long, int, int, int)
+ * ++ Additionally you can set a param showNickNameDialogAsInt, the effect
+ * if that param is 1 is, that the user gets a popup where he can enter his
+ * nickname right before he enters the conference room. All nicknames and
+ * emails users enter are logged in the conferencelog table.
+ *
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param profilePictureUrl
+ * any profilePictureUrl
+ * @param email
+ * any email
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @param room_id
+ * the room id the user should be logged in
+ * @param becomeModeratorAsInt
+ * 0 means no Moderator, 1 means Moderator
+ * @param showAudioVideoTestAsInt
+ * 0 means don't show Audio/Video Test, 1 means show Audio/Video
+ * Test Application before the user is logged into the room
+ * @param showNickNameDialogAsInt
+ * 0 means do not show the popup to enter a nichname, 1 means
+ * that there is a popup to enter the nickname for the conference
+ * @return
*/
public String setUserAndNickName(String SID, String username,
String firstname, String lastname, String profilePictureUrl,
@@ -776,9 +1060,6 @@ public class UserWebService {
Long room_id, int becomeModeratorAsInt,
int showAudioVideoTestAsInt, int showNickNameDialogAsInt) {
try {
-
- log.debug("UserService.setUserObjectAndGenerateRoomHashByURLAndNick");
-
Long users_id = sessionManagement.checkSession(SID);
Long user_level = userManagement.getUserLevelByID(users_id);
if (authLevelManagement.checkWebServiceLevel(user_level)) {
@@ -839,19 +1120,29 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ * Use this method to access a Recording instead of Room
*
- * @see org.openmeetings.axis.services.IUserWebService#
- * setUserObjectAndGenerateRecordingHashByURL(java.lang.String,
- * java.lang.String, java.lang.String, java.lang.String, java.lang.Long,
- * java.lang.String, java.lang.Long)
+ * @param SID
+ * The SID from getSession
+ * @param username
+ * any username
+ * @param firstname
+ * any firstname
+ * @param lastname
+ * any lastname
+ * @param externalUserId
+ * if you have any external user Id you may set it here
+ * @param externalUserType
+ * you can specify your system-name here, for example "moodle"
+ * @param recording_id
+ * the id of the recording, get a List of all Recordings with
+ * RoomService::getFlvRecordingByExternalRoomType
+ * @return
*/
public String setUserObjectAndGenerateRecordingHashByURL(String SID,
String username, String firstname, String lastname,
Long externalUserId, String externalUserType, Long recording_id) {
- log.debug("UserService.setUserObject");
-
try {
Long users_id = sessionManagement.checkSession(SID);
Long user_level = userManagement.getUserLevelByID(users_id);
@@ -899,13 +1190,21 @@ public class UserWebService {
return "" + new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ *
+ * Add a user to a certain organization
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#addUserToOrganisation(
- * java.lang.String, java.lang.Long, java.lang.Long, java.lang.Long,
- * java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param user_id
+ * the user id
+ * @param organisation_id
+ * the organization id
+ * @param insertedby
+ * user id of the operating user
+ * @param comment
+ * any comment
+ * @return
*/
public Long addUserToOrganisation(String SID, Long user_id,
Long organisation_id, Long insertedby, String comment) {
@@ -926,12 +1225,22 @@ public class UserWebService {
return new Long(-1);
}
- /*
- * (non-Javadoc)
+ /**
+ * Search users and return them
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#getUsersByOrganisation
- * (java.lang.String, long, int, int, java.lang.String, boolean)
+ * @param SID
+ * The SID from getSession
+ * @param organisation_id
+ * the organization id
+ * @param start
+ * first record
+ * @param max
+ * max records
+ * @param orderby
+ * orderby clause
+ * @param asc
+ * asc or desc
+ * @return
*/
public SearchResult getUsersByOrganisation(String SID,
long organisation_id, int start, int max, String orderby,
@@ -955,12 +1264,15 @@ public class UserWebService {
return null;
}
- /*
- * (non-Javadoc)
+ /**
+ * Kick a user by its public SID
*
- * @see
- * org.openmeetings.axis.services.IUserWebService#kickUserByPublicSID(java
- * .lang.String, java.lang.String)
+ * @param SID
+ * The SID from getSession
+ * @param publicSID
+ * the publicSID (you can get it from the call to get users in a
+ * room)
+ * @return
*/
public Boolean kickUserByPublicSID(String SID, String publicSID) {
try {