ujaen.sinai.iliasEBookServer_v20
Class EBookServer

java.lang.Object
  extended by ujaen.sinai.iliasEBookServer_v20.EBookServer

public class EBookServer
extends java.lang.Object

Clase EBookServer. Esta clase hace de intermediario entre ILIAS y el cliente Papire


Constructor Summary
EBookServer(java.lang.String connectHost, java.lang.String onlyPath, java.lang.String loginDB, java.lang.String passwordDB, java.lang.String driverDB, java.lang.String dbToConnect, java.lang.String endPointSOAP, java.lang.String clientSOAP, float timeToReload, boolean debug, java.lang.String userRegistered)
           Constructor de la clase
 
Method Summary
 void connect(java.lang.String loginIlias, java.lang.String passwordIlias)
           Abre la conexion con la base de datos y con el repositorio remoto
 void getResourceOfACourse(java.lang.String resource, java.lang.String directory, java.util.ArrayList<java.lang.String> resources, java.util.ArrayList<java.lang.Integer> typesResources)
           Obtienes los recursos de un curso y si cada uno de ellos es directorio o fichero
 void listResourcesCourse(java.lang.String course, java.util.ArrayList<java.lang.String> listResources, java.util.ArrayList listTypesResources)
           Obtiene los recursos de un curso
 void listResourcesUser(java.util.ArrayList<java.lang.String> listResources, java.util.ArrayList listTypesResources)
           Obtiene los recursos de un usuario
 void recordCoursesForUser(java.lang.String path, java.lang.String completeHost)
           Obtiene los cursos del alumno y los recursos de ese curso y los almacena en la base de datos.
 void setUpdatingCourse(java.lang.String course)
           Indica en la tabla course, que el curso esta siendo actualizado para que la interfaz pueda indicar cuando un curso está actualizado o no.
 void setUpdatingResourcesCourse(java.lang.String course)
           Indica en la tabla resources, que los recursos de un curso estan siendo actualizados Esta funcion fijara el campo updating a 1
 void unsetUpdatingCourse(java.lang.String course)
           Indica en la tabla course, que el curso ha sido actualizado para que la interfaz pueda indicar cuando un curso está actualizado o no.
 void unsetUpdatingResourcesCourse(java.lang.String course)
           Indica en la tabla resources, que los recursos de un curso estan actualizados Esta funcion fijara el campo updating a 0
 void updateFileSystem(java.lang.String course, java.lang.String completeHost, java.lang.String path)
           Actualiza el sistema de ficheros.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EBookServer

public EBookServer(java.lang.String connectHost,
                   java.lang.String onlyPath,
                   java.lang.String loginDB,
                   java.lang.String passwordDB,
                   java.lang.String driverDB,
                   java.lang.String dbToConnect,
                   java.lang.String endPointSOAP,
                   java.lang.String clientSOAP,
                   float timeToReload,
                   boolean debug,
                   java.lang.String userRegistered)

Constructor de la clase

Parameters:
connectHost - es el host al que se conectara. Ejemplo "http://dv.ujaen.es"
onlyPath - es el path dentro del host. Ejemplo: "/ilias/webdav.php/fijo/ref_"
loginDB - es el login del usuario en la base de datos
passwordDB - es el password del usuario en la base de datos
driverDB - es el driver que se usara para coenctar a la base de datos. Ejemplo "com.mysql.jdbc.Driver"
dbToConnect - es la base de datos a la que nos conectaremos. Ejemplo: "jdbc:mysql://localhost/EBookServer"
endPointSOAP - es el punto donde se conectara SOAP
clientSOAP - es el cliente que se usara para la conexion con SOAP
timeToReload - es el tiempo (float) para decidir si actualizar el curso o no
debug - indica si se desean mostrar los mensajes de debug por pantalla
Method Detail

connect

public void connect(java.lang.String loginIlias,
                    java.lang.String passwordIlias)
             throws java.sql.SQLException,
                    java.lang.ClassNotFoundException,
                    java.security.NoSuchAlgorithmException

Abre la conexion con la base de datos y con el repositorio remoto

Parameters:
loginIlias - es el login del usuario en Ilias
passwordIlias - es el password del usuario en Ilias
Throws:
SQLException, - ClassNotFoundException
java.sql.SQLException
java.lang.ClassNotFoundException
java.security.NoSuchAlgorithmException

recordCoursesForUser

public void recordCoursesForUser(java.lang.String path,
                                 java.lang.String completeHost)
                          throws java.io.IOException,
                                 java.rmi.RemoteException,
                                 SoapIliasAccessException,
                                 org.jdom.JDOMException,
                                 javax.xml.rpc.ServiceException,
                                 java.sql.SQLException,
                                 java.lang.ClassNotFoundException,
                                 org.apache.jackrabbit.webdav.DavException

Obtiene los cursos del alumno y los recursos de ese curso y los almacena en la base de datos.

Throws:
IOException, - RemoteException, SoapIliasAccessException, JDOMException, ServiceException, SQLException, ClassNotFoundException, DavException

java.io.IOException
java.rmi.RemoteException
SoapIliasAccessException
org.jdom.JDOMException
javax.xml.rpc.ServiceException
java.sql.SQLException
java.lang.ClassNotFoundException
org.apache.jackrabbit.webdav.DavException

updateFileSystem

public void updateFileSystem(java.lang.String course,
                             java.lang.String completeHost,
                             java.lang.String path)
                      throws java.lang.ClassNotFoundException,
                             java.sql.SQLException,
                             java.net.MalformedURLException,
                             java.io.IOException

Actualiza el sistema de ficheros. Esta funcion es llamada tras actualizar las tablas de cursos y recursos para que el sistema de fichero este Actualizado

Parameters:
course - es el codigo del curso a actualizar
completeHost - ruta completa donde estan los recursos en ilias. Se obitene: en el escritorio de ilias, sobre un curso pulsar en "acciones->abrir como carpeta web". Es el trozo que hay hasta ref_ con protocolo http
path - es la ruta donde se encuentra el repositorio local
Throws:
ClassNotFoundException, - SQLException, MalformedURLException, IOException

java.lang.ClassNotFoundException
java.sql.SQLException
java.net.MalformedURLException
java.io.IOException

listResourcesUser

public void listResourcesUser(java.util.ArrayList<java.lang.String> listResources,
                              java.util.ArrayList listTypesResources)
                       throws java.lang.ClassNotFoundException,
                              java.sql.SQLException

Obtiene los recursos de un usuario

Parameters:
listResources - lista donde se almacenaran los recursos
listTypesResources - lista donde se almacena para cada recurso el tipo (1-directorio, 0-fichero)
Throws:
ClassNotFoundException, - SQLException
java.lang.ClassNotFoundException
java.sql.SQLException

listResourcesCourse

public void listResourcesCourse(java.lang.String course,
                                java.util.ArrayList<java.lang.String> listResources,
                                java.util.ArrayList listTypesResources)
                         throws java.lang.ClassNotFoundException,
                                java.sql.SQLException

Obtiene los recursos de un curso

Parameters:
listResources - lista donde se almacenaran los recursos
listTypesResources - lista donde se almacena para cada recurso el tipo (1-directorio, 0-fichero)
Throws:
ClassNotFoundException, - SQLException
java.lang.ClassNotFoundException
java.sql.SQLException

getResourceOfACourse

public void getResourceOfACourse(java.lang.String resource,
                                 java.lang.String directory,
                                 java.util.ArrayList<java.lang.String> resources,
                                 java.util.ArrayList<java.lang.Integer> typesResources)
                          throws java.io.IOException,
                                 org.apache.jackrabbit.webdav.DavException

Obtienes los recursos de un curso y si cada uno de ellos es directorio o fichero

Parameters:
resource - es el recurso del cual se quiere obtener sus recursos
directory - es usado para la recursividad, por si venia de un directorio...
resources - es un array en el que se devovleran los recursos de un curso
typesResources - es un array en el que se indica si el resource[i] es fichero (0) o directorio (1)
Throws:
IOException, - DavException
java.io.IOException
org.apache.jackrabbit.webdav.DavException

setUpdatingCourse

public void setUpdatingCourse(java.lang.String course)
                       throws java.lang.ClassNotFoundException,
                              java.sql.SQLException,
                              org.jdom.JDOMException,
                              java.io.IOException,
                              javax.xml.rpc.ServiceException,
                              java.rmi.RemoteException,
                              SoapIliasAccessException

Indica en la tabla course, que el curso esta siendo actualizado para que la interfaz pueda indicar cuando un curso está actualizado o no. Esta funcion fijara el campo updating a 1

Parameters:
course - es el curso que se pondra como actualizando
Throws:
ClassNotFoundException, - SQLException, JDOMException, IOException, ServiceException, RemoteException, SoapIliasAccessException

java.lang.ClassNotFoundException
java.sql.SQLException
org.jdom.JDOMException
java.io.IOException
javax.xml.rpc.ServiceException
java.rmi.RemoteException
SoapIliasAccessException

setUpdatingResourcesCourse

public void setUpdatingResourcesCourse(java.lang.String course)
                                throws java.lang.ClassNotFoundException,
                                       java.sql.SQLException,
                                       org.jdom.JDOMException,
                                       java.io.IOException,
                                       javax.xml.rpc.ServiceException,
                                       java.rmi.RemoteException,
                                       SoapIliasAccessException

Indica en la tabla resources, que los recursos de un curso estan siendo actualizados Esta funcion fijara el campo updating a 1

Parameters:
course - es el curso del cual los rescursos se pondran como actualizando
Throws:
throws - ClassNotFoundException, SQLException, JDOMException, IOException, ServiceException, RemoteException, SoapIliasAccessException

java.lang.ClassNotFoundException
java.sql.SQLException
org.jdom.JDOMException
java.io.IOException
javax.xml.rpc.ServiceException
java.rmi.RemoteException
SoapIliasAccessException

unsetUpdatingResourcesCourse

public void unsetUpdatingResourcesCourse(java.lang.String course)
                                  throws java.lang.ClassNotFoundException,
                                         java.sql.SQLException,
                                         org.jdom.JDOMException,
                                         java.io.IOException,
                                         javax.xml.rpc.ServiceException,
                                         java.rmi.RemoteException,
                                         SoapIliasAccessException

Indica en la tabla resources, que los recursos de un curso estan actualizados Esta funcion fijara el campo updating a 0

Parameters:
course - es el curso del cual los rescursos se pondran como actualizados
Throws:
ClassNotFoundException, - SQLException, JDOMException, IOException, ServiceException, RemoteException, SoapIliasAccessException

java.lang.ClassNotFoundException
java.sql.SQLException
org.jdom.JDOMException
java.io.IOException
javax.xml.rpc.ServiceException
java.rmi.RemoteException
SoapIliasAccessException

unsetUpdatingCourse

public void unsetUpdatingCourse(java.lang.String course)
                         throws java.lang.ClassNotFoundException,
                                java.sql.SQLException,
                                org.jdom.JDOMException,
                                java.io.IOException,
                                javax.xml.rpc.ServiceException,
                                java.rmi.RemoteException,
                                SoapIliasAccessException

Indica en la tabla course, que el curso ha sido actualizado para que la interfaz pueda indicar cuando un curso está actualizado o no. Esta funcion fijara el campo updating a 0

Parameters:
course - es el curso que se pondra como actualizado
Throws:
ClassNotFoundException, - SQLException, JDOMException, IOException, ServiceException, RemoteException, SoapIliasAccessException

java.lang.ClassNotFoundException
java.sql.SQLException
org.jdom.JDOMException
java.io.IOException
javax.xml.rpc.ServiceException
java.rmi.RemoteException
SoapIliasAccessException