Basic concepts
Autenticación
Sección titulada «Autenticación»Primero debe crear el objeto webservice:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);A continuación, debe iniciar sesión mediante el método “login”. Puede acceder al método “login” desde el objeto webservice “ws”, tal y como se muestra a continuación:
ws.login(user, password);Llegados a este punto puede usar todos los métodos de Repository desde la clase “repository”, tal y como se muestra a continuación:
ws.repository.getAppVersion();package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.exception.DatabaseException;import com.openkm.sdk4j.exception.RepositoryException;import com.openkm.sdk4j.exception.UnknowException;import com.openkm.sdk4j.exception.WebserviceException;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.repository.getAppVersion()); } catch (RepositoryException e) { e.printStackTrace(); } catch (DatabaseException e) { e.printStackTrace(); } catch (UnknowException e) { e.printStackTrace(); } catch (WebserviceException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } }}Acceso a la API
Sección titulada «Acceso a la API»Las clases de la API de OpenKM están bajo el paquete com.openkm, tal y como se muestra en este resumen de la API en el javadoc.
Clases de la API de OpenKM:
| Clase de la API de OpenKM | Descripción | Soportado | Implementación | Interfaz |
|---|---|---|---|---|
| OKMActivity | Gestiona el registro de actividad. | Sí | ActivityImpl.java | BaseActivity.java |
| OKMAuth | Gestiona la seguridad y los usuarios. Por ejemplo, añadir o quitar permisos sobre un nodo, crear o modificar usuarios, u obtener los perfiles. | Sí | AuthImpl.java | BaseAuth.java |
| OKMBookmark | Gestiona los marcadores de usuario. | Sí | BookmarkImpl.java | BaseBookmark.java |
| OKMDashboard | Gestiona todos los datos que se muestran en el escritorio. | Sí | DashboardImpl.java | BaseDashboard.java |
| OKMDocument | Gestiona documentos. Por ejemplo, crear, mover o eliminar un documento. | Sí | DocumentImpl.java | BaseDocument.java |
| OKMFolder | Gestiona carpetas. Por ejemplo, crear, mover o eliminar una carpeta. | Sí | FolderImpl.java | BaseFolder.java |
| OKMMail | Gestiona correos. Por ejemplo, crear, mover o eliminar un correo. | Sí | MailImpl.java | BaseMail.java |
| OKMNode | Gestiona acciones de propósito general sobre nodos. | Sí | NodeImpl.java | NodeBase.java |
| OKMNote | Gestiona notas sobre cualquier tipo de nodo. Por ejemplo, crear, editar o eliminar una nota en un documento, carpeta, correo o expediente. | Sí | NoteImpl.java | BaseNote.java |
| OKMNotification | Gestiona notificaciones. Por ejemplo, añadir o quitar suscripciones a un documento o una carpeta. | Sí | NotificationImpl.java | BaseNotification.java |
| OKMProperty | Gestiona categorías y palabras clave. Por ejemplo, añadir o quitar palabras clave en un documento, carpeta, correo o expediente. | Sí | PropertyImpl.java | BaseProperty.java |
| OKMPropertyGroup | Gestiona metadatos. Por ejemplo, añadir un grupo de metadatos o establecer campos de metadatos. | Sí | PropertyGroupImpl.java | BasePropertyGroup.java |
| OKMRecord | Gestiona expedientes. Por ejemplo, crear, mover o eliminar un expediente. | Sí | RecordImpl.java | BaseRecord.java |
| OKMRelation | Gestiona relaciones entre nodos. Por ejemplo, crear una relación (padre-hijo) entre dos documentos. | Sí | RelationImpl.java | BaseRelation.java |
| OKMRepository | Multitud de operaciones relacionadas con el repositorio. Por ejemplo, obtener las propiedades del nodo raíz principal (/okm:root). | Sí | RepositoryImpl.java | BaseRepository.java |
| OKMReport | Gestiona informes. Por ejemplo, ejecutar informes. | Sí | ReportImpl.java | BaseReport.java |
| OKMSearch | Gestiona la funcionalidad de búsqueda. Por ejemplo, gestionar consultas guardadas o ejecutar una nueva consulta sobre el repositorio. | Sí | SearchImpl.java | BaseSearch.java |
| OKMStamp | Gestiona los sellos (stamps). | Sí | StampImpl.java | BaseStamp.java |
| OKMStats | Estadísticas generales del repositorio. | No | ||
| OKMTask | Gestiona tareas. Por ejemplo, crear una nueva tarea. | Sí | TaskImpl.java | BaseTask.java |
| OKMUserConfig | Gestiona la configuración de inicio del usuario. | No | ||
| OKMWorkflow | Gestiona flujos de trabajo. Por ejemplo, ejecutar un nuevo flujo de trabajo. | Sí | WorkflowImpl.java | BaseWorkflow.java |
Jerarquía de clases
Sección titulada «Jerarquía de clases»Detalle de los paquetes:
| Nombre | Descripción |
|---|---|
| com.openkm | El com.openkm.OKMWebservicesFactory devuelve un objeto com.openkm.OKMWebservices que implementa todas las interfaces. OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); |
| com.openkm.sdk4j.bean | Contiene todas las clases resultantes de deserializar (unmarshalling) los objetos REST. |
| com.openkm.sdk4j.definition | Todas las clases de interfaz: - com.openkm.sdk4j.definition.BaseActivity - com.openkm.sdk4j.definition.BaseAuth - com.openkm.sdk4j.definition.BaseBookmark - com.openkm.sdk4j.definition.BaseConversion - com.openkm.sdk4j.definition.BaseDashboard - com.openkm.sdk4j.definition.BaseFilePlan - com.openkm.sdk4j.definition.BaseDocument - com.openkm.sdk4j.definition.BaseFolder - com.openkm.sdk4j.definition.BaseMail - com.openkm.sdk4j.definition.BaseNode - com.openkm.sdk4j.definition.BaseNote - com.openkm.sdk4j.definition.BaseNotification - com.openkm.sdk4j.definition.BasePlugin - com.openkm.sdk4j.definition.BaseProperty - com.openkm.sdk4j.definition.BasePropertyGroup - com.openkm.sdk4j.definition.BaseRecord - com.openkm.sdk4j.definition.BaseRelation - com.openkm.sdk4j.definition.BaseRepository - com.openkm.sdk4j.definition.BaseSearch - com.openkm.sdk4j.definition.BaseStamp - com.openkm.sdk4j.definition.BaseTask - com.openkm.sdk4j.definition.BaseWorkflow |
| com.openkm.sdk4j.impl | Todas las clases de implementación de las interfaces: - com.openkm.sdk4j.impl.ActivityImpl - com.openkm.sdk4j.impl.AuthImpl - com.openkm.sdk4j.impl.BookmarkImpl - com.openkm.sdk4j.impl.ConversionImpl - com.openkm.sdk4j.impl.DashboardImpl - com.openkm.sdk4j.impl.DocumentImpl - com.openkm.sdk4j.impl.FileplanImpl - com.openkm.sdk4j.impl.FolderImpl - com.openkm.sdk4j.impl.MailImpl - com.openkm.sdk4j.impl.NodeImpl - com.openkm.sdk4j.impl.NoteImpl - com.openkm.sdk4j.impl.NotificationImpl - com.openkm.sdk4j.impl.PropertyGroupImpl - com.openkm.sdk4j.impl.PropertyImpl - com.openkm.sdk4j.impl.RecordImpl - com.openkm.sdk4j.impl.RelationImpl - com.openkm.sdk4j.impl.RepositoryImpl - com.openkm.sdk4j.impl.SearchImpl - com.openkm.sdk4j.impl.StampImpl - com.openkm.sdk4j.impl.taskImpl - com.openkm.sdk4j.impl.WorkflowImpl |
| com.openkm.sdk4j.util | Un conjunto de utilidades. La clase com.openkm.sdk4j.util.ISO8601 debe usarse para establecer y analizar (parse) campos de metadatos de tipo fecha. |
| com.openkm.sdk4j.exception | Todas las clases de excepción. |