Basic concepts
Autenticación
Sección titulada «Autenticación»Primero debe crear el objeto webservice:
OKMWebservices ws = OKMWebservicesFactory.newInstance(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();using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.exception;using com.openkm.sdk4csharp.impl;
namespace OKMRest{ public class Program { static void Main(string[] args) { String host = "http://localhost:8080/openkm"; String username = "okmAdmin"; String password = "admin"; OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try { ws.login(user, password); System.Console.WriteLine(ws.repository.getAppVersion().getVersion()); } catch (RepositoryException e) { System.Console.WriteLine(e.ToString()); } catch (DatabaseException e) { System.Console.WriteLine(e.ToString()); } catch (UnknowException e) { System.Console.WriteLine(e.ToString()); } catch (WebserviceException e) { System.Console.WriteLine(e.ToString()); }
System.Console.ReadKey(); } }}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.cs | BaseActivity.cs |
| 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.cs | BaseAuth.cs |
| OKMBookmark | Gestiona los marcadores de usuario. | Sí | BookmarkImpl.cs | BaseBookmark.cs |
| OKMDashboard | Gestiona todos los datos que se muestran en el escritorio. | Sí | DashboardImpl.cs | BaseDashboard.cs |
| OKMDocument | Gestiona documentos. Por ejemplo, crear, mover o eliminar un documento. | Sí | DocumentImpl.cs | BaseDocument.cs |
| OKMFolder | Gestiona carpetas. Por ejemplo, crear, mover o eliminar una carpeta. | Sí | FolderImpl.cs | BaseFolder.cs |
| OKMMail | Gestiona correos. Por ejemplo, crear, mover o eliminar un correo. | Sí | MailImpl.cs | BaseMail.cs |
| OKMNode | Gestiona acciones de propósito general sobre nodos. | Sí | NodeImpl.cs | BaseNode.cs |
| 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.cs | BaseNote.cs |
| OKMNotification | Gestiona notificaciones. Por ejemplo, añadir o quitar suscripciones a un documento o una carpeta. | Sí | NotificationImpl.cs | BaseNotification.cs |
| OKMProperty | Gestiona categorías y palabras clave. Por ejemplo, añadir o quitar palabras clave en un documento, carpeta, correo o expediente. | Sí | PropertyImpl.cs | BaseProperty.cs |
| OKMPropertyGroup | Gestiona metadatos. Por ejemplo, añadir un grupo de metadatos o establecer campos de metadatos. | Sí | PropertyGroupImpl.cs | BasePropertyGroup.cs |
| OKMRecord | Gestiona expedientes. Por ejemplo, crear, mover o eliminar un expediente. | Sí | RecordImpl.cs | BaseRecord.cs |
| OKMRelation | Gestiona relaciones entre nodos. Por ejemplo, crear una relación (padre-hijo) entre dos documentos. | Sí | RelationImpl.cs | BaseRelation.cs |
| OKMRepository | Multitud de operaciones relacionadas con el repositorio. Por ejemplo, obtener las propiedades del nodo raíz principal (/okm:root). | Sí | RepositoryImpl.cs | BaseRepository.cs |
| OKMReport | Gestiona informes. Por ejemplo, ejecutar informes. | Sí | ReportImpl.cs | BaseReport.cs |
| OKMSearch | Gestiona la funcionalidad de búsqueda. Por ejemplo, gestionar consultas guardadas o ejecutar una nueva consulta sobre el repositorio. | Sí | SearchImpl.cs | BaseSearch.cs |
| OKMStamp | Gestiona los sellos (stamps). | Sí | StampImpl.cs | BaseStamp.cs |
| OKMStats | Estadísticas generales del repositorio. | No | ||
| OKMTask | Gestiona tareas. Por ejemplo, crear una nueva tarea. | Sí | TaskImpl.cs | BaseTask.cs |
| OKMUserConfig | Gestiona la configuración de inicio del usuario. | No | UserConfigImpl.cs | BaseUserConfig.cs |
| OKMWorkflow | Gestiona flujos de trabajo. Por ejemplo, ejecutar un nuevo flujo de trabajo. | Sí | WorkflowImpl.cs | BaseWorkflow.cs |
Jerarquía de clases
Sección titulada «Jerarquía de clases»Detalle de los paquetes:
| Nombre | Descripción |
|---|---|
| com.openkm.sdk4csharp | El com.openkm.OKMWebservicesFactory que devuelve un objeto com.openkm.OKMWebservices que implementa todas las interfaces. OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); |
| com.openkm.sdk4csharp.bean | Contiene todas las clases resultantes de deserializar (unmarshalling) los objetos REST. |
| com.openkm.sdk4csharp.definition | Todas las clases de interfaz: - com.openkm.sdk4csharp.definition.BaseActivity - com.openkm.sdk4csharp.definition.BaseAuth - com.openkm.sdk4csharp.definition.AutoCAD - com.openkm.sdk4csharp.definition.Bookmark - com.openkm.sdk4csharp.definition.BaseConversion - com.openkm.sdk4csharp.definition.BaseDashboard - com.openkm.sdk4csharp.definition.BaseDocument - com.openkm.sdk4csharp.definition.BaseFolder - com.openkm.sdk4csharp.definition.BaseFilePlan - com.openkm.sdk4csharp.definition.BaseImport - com.openkm.sdk4csharp.definition.BaseMail - com.openkm.sdk4csharp.definition.BaseNode - com.openkm.sdk4csharp.definition.BaseNote - com.openkm.sdk4csharp.definition.BaseNotification - com.openkm.sdk4csharp.definition.BasePdf - com.openkm.sdk4csharp.definition.BasePlugin - com.openkm.sdk4csharp.definition.BaseProperty - com.openkm.sdk4csharp.definition.BasePropertyGroup - com.openkm.sdk4csharp.definition.BaseRecord - com.openkm.sdk4csharp.definition.BaseRelation - com.openkm.sdk4csharp.definition.BaseReport - com.openkm.sdk4csharp.definition.BaseRepository - com.openkm.sdk4csharp.definition.BaseSearch - com.openkm.sdk4csharp.definition.BaseShard - com.openkm.sdk4csharp.definition.BaseStamp - com.openkm.sdk4csharp.definition.BaseTask - com.openkm.sdk4csharp.definition.BaseUserConfig - com.openkm.sdk4csharp.definition.BaseWizard - com.openkm.sdk4csharp.definition.BaseWorkflow |
| com.openkm.sdk4csharp.impl | Todas las clases de implementación de las interfaces: - com.openkm.sdk4csharp.impl.ActivityImpl - com.openkm.sdk4csharp.impl.AuthImpl - com.openkm.sdk4csharp.impl.AutocadImpl - com.openkm.sdk4csharp.impl.BookmarkImpl - com.openkm.sdk4csharp.impl.ConversionImpl - com.openkm.sdk4csharp.impl.DashboardImpl - com.openkm.sdk4csharp.impl.DocumentImpl - com.openkm.sdk4csharp.impl.FilePlanImpl - com.openkm.sdk4csharp.impl.FolderImpl - com.openkm.sdk4csharp.impl.ImportImpl - com.openkm.sdk4csharp.impl.MailImpl - com.openkm.sdk4csharp.impl.NodeImpl - com.openkm.sdk4csharp.impl.NoteImpl - com.openkm.sdk4csharp.impl.NotificationImpl - com.openkm.sdk4csharp.impl.PdfImpl - com.openkm.sdk4csharp.impl.ShardImpl - com.openkm.sdk4csharp.impl.PropertyGroupImpl - com.openkm.sdk4csharp.impl.PropertyImpl - com.openkm.sdk4csharp.impl.RecordImpl - com.openkm.sdk4csharp.impl.RelationImpl - com.openkm.sdk4csharp.impl.RepositoryImpl - com.openkm.sdk4csharp.impl.SearchImpl - com.openkm.sdk4csharp.impl.ShardImpl - com.openkm.sdk4csharp.impl.StampImpl - com.openkm.sdk4csharp.impl.TaskImpl - com.openkm.sdk4csharp.impl.UserConfigImpl - com.openkm.sdk4csharp.impl.WizardImpl - com.openkm.sdk4csharp.impl.WorkflowImpl |
| com.openkm.sdk4csharp.util | Un conjunto de utilidades. La clase com.openkm.sdk4csharp.util.ISO8601 debe usarse para establecer y analizar (parse) campos de metadatos de tipo fecha. |
| com.openkm.sdk4csharp.exception | Todas las clases de excepción. |