Relation samples
Aspectos básicos
Sección titulada «Aspectos básicos»En la mayoría de los métodos verá el parámetro llamado “nodeId”. El valor de este parámetro puede ser un UUID o un path válido de documento, carpeta, correo o expediente.
Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»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 Relation desde la clase “relation”, tal y como se muestra a continuación:
ws.relation.getRelationTypes(RelationType.BIDIRECTIONAL);Métodos
Sección titulada «Métodos»getRelationTypes
Sección titulada «getRelationTypes»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getRelationTypes(String type) | List |
Obtiene una lista con todas las relaciones definidas para un tipo. |
Tipos disponibles:
- RelationType.BIDIRECTIONAL
- RelationType.PARENT_CHILD
- RelationType.MANY_TO_MANY
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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); foreach (RelationType type in ws.relation.getRelationTypes(RelationType.PARENT_CHILD)) { System.Console.WriteLine(type); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}add-relation
Sección titulada «add-relation»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| add-relation(String nodeAId, String nodeBId, long relTypeId) | void | Establece una relación entre dos nodos. |
Los parámetros nodeAId y nodeBId deben ser UUID válidos de documento, carpeta, correo o expediente.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);foreach (RelationType type in ws.relation.getRelationTypes(RelationType.BIDIRECTIONAL)){// looking for a relation named invoiceif (type.title.Equals("invoice")){ws.relation.addRelation("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "055e4384-7c70-4456-b32b-f5a55a79861f", type.id);}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}deleteRelation
Sección titulada «deleteRelation»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteRelation(long relationId) | void | Elimina una relación. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);foreach (RelationType type in ws.relation.getRelationTypes(RelationType.BIDIRECTIONAL)){// looking for a relation named invoiceif (type.title.Equals("invoice")){ws.relation.deleteRelation(type.id);}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getRelations
Sección titulada «getRelations»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getRelations(String uuid) | List |
Obtiene una lista con todas las relaciones de un nodo. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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); foreach (Relation relation in ws.relation.getRelations("055e4384-7c70-4456-b32b-f5a55a79861f")) { System.Console.WriteLine(relation); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}getRelationGroups
Sección titulada «getRelationGroups»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getRelationGroups(String uuid) | List |
Obtiene una lista con todos los grupos de relación de un nodo. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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); foreach (RelationGroup rGroup in ws.relation.getRelationGroups("055e4384-7c70-4456-b32b-f5a55a79861f")) { System.Console.WriteLine(rGroup.toString()); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}addRelationGroup
Sección titulada «addRelationGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| addRelationGroup(String nodeId, String groupName, long type) | void | Añade un grupo de relación a un nodo. |
Para un grupo de relación, solo tiene sentido aplicar el tipo de relación RelationType.MANY_TO_MANY.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);foreach (RelationType type in ws.relation.getRelationTypes(RelationType.MANY_TO_MANY)){if (type.title.Equals("staple")){ws.relation.addRelationGroup("055e4384-7c70-4456-b32b-f5a55a79861f", "staple group", type.id);}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}addNodeToGroup
Sección titulada «addNodeToGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| addNodeToGroup(String nodeId, long groupId) | void | Añade un nodo a un grupo de relación existente. |
Un grupo de relación solo tiene sentido con el tipo de relación RelationType.MANY_TO_MANY.
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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); foreach (RelationGroup rGroup in ws.relation.getRelationGroups("055e4384-7c70-4456-b32b-f5a55a79861f")) { if (rGroup.name.Equals("staple group")) { ws.relation.addNodeToGroup("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", rGroup.id); } } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}deleteRelationGroup
Sección titulada «deleteRelationGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteRelationGroup(long groupId) | void | Elimina un nodo de un grupo de relación. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);foreach (RelationGroup rGroup in ws.relation.getRelationGroups("50b7a5b9-89d2-430e-bbc9-6a6e01662a71")){if (rGroup.name.Equals("staple group")){ws.relation.deleteRelationGroup(rGroup.id);}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}findRelationGroup
Sección titulada «findRelationGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| findRelationGroup(long groupId) | RelationGroup | Busca un grupo de relación por id. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);RelationGroup rg = new RelationGroup();foreach (RelationGroup rGroup in ws.getRelationGroups("50b7a5b9-89d2-430e-bbc9-6a6e01662a71")){if (rGroup.name.Equals("staple group3")){rg = ws.relation.findRelationGroup(rGroup.id);break;}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}setRelationGroupName
Sección titulada «setRelationGroupName»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setRelationGroupName(long groupId, String groupName) | void | Cambia el nombre del grupo de relación. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);RelationGroup rg = new RelationGroup();foreach (RelationGroup rGroup in ws.relation.getRelationGroups("50b7a5b9-89d2-430e-bbc9-6a6e01662a71")){if (rGroup.name.Equals("staple group3")){ws.relation.setRelationGroupName(rGroup.id, "newGroup");rg = ws.relation.findRelationGroup(rGroup.id);break;}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}getAllRelationGroups
Sección titulada «getAllRelationGroups»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getAllRelationGroups(int relationTypeId, String filter, int offset, int limit) | RelationGroupResultSet | Obtiene una lista con todos los grupos de relación. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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); int relationTypeId = 1; String filter = ""; RelationGroupResultSet resultSet = ws.relation.getAllRelationGroups(relationTypeId, filter, 0, 10); foreach (RelationGroup relationGroup in resultSet.results) { Console.WriteLine(relationGroup.toString()); } } catch (Exception e) { System.Console.WriteLine(e.ToString()); } } }}deleteRelationGroupItem
Sección titulada «deleteRelationGroupItem»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| deleteRelationGroupItem(String nodeId, long groupId) | void | Elimina la relación de un nodo con un grupo. |
Ejemplo:
using System;using System.Collections.Generic;using System.Linq;using System.Text;using com.openkm.sdk4csharp;using com.openkm.sdk4csharp.bean;
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);foreach (RelationGroup rGroup in ws.relation.getRelationGroups("50b7a5b9-89d2-430e-bbc9-6a6e01662a71")){if (rGroup.name.Equals("staple group3")){ws.relation.deleteRelationGroupItem("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", rGroup.id);}}}catch (Exception e){System.Console.WriteLine(e.ToString());}}}}