Ir al contenido

OKMPropertyGroup

En la mayoría de los métodos verá un parámetro llamado “nodeId”. El valor de este parámetro puede ser un UUID válido de documento, carpeta, correo o registro.

Además, en todos los métodos verá un parámetro llamado “token”. Dado que las Tareas de Cron se ejecutan en segundo plano sin autenticación, los métodos usados en este escenario podrían usar el parámetro token. En el contexto de ejecución por defecto de la aplicación, debe usar el valor “null”, que indica que la aplicación debe usar la “sesión de usuario”.

Descripción:

Método Valores devueltos Descripción
addGroup(String token, String nodeId, String grpName, Map<String, String> properties) void Añade un grupo de metadatos y sus valores a un nodo.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.google.gson.Gson;
import com.openkm.Config;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.util.ISO8601;
import java.util.*;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
Map<String, String> properties = new HashMap<>();
Gson gson = new Gson();
List<String> values = new ArrayList<>();
values.add("t1");
values.add("t2");
properties.put("okp:technology.type", gson.toJson(values));
properties.put("okp:technology.language", "[ \"java\" ]");
Calendar cal = Calendar.getInstance();
// Value must be converted to String ISO 8601 compliant
properties.put("okp:technology.date", ISO8601.formatBasic(cal));
properties.put("okp:technology.comment", "comment sample");
properties.put("okp:technology.description", "description sample");
properties.put("okp:technology.important", String.valueOf(true));
okmPropertyGroup.addGroup(null, "4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5", "okg:technology", properties);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
removeGroup(String token, String nodeId, String grpName) void Elimina un grupo de metadatos de un nodo.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
okmPropertyGroup.removeGroup(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:consulting");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getGroups(String token, String nodeId) List Recupera una lista de los grupos de metadatos asignados a un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.bean.PropertyGroup;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getGroups(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338")) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getAllGroups(String token) List Recupera una lista de todos los grupos de metadatos de la aplicación.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.bean.PropertyGroup;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getAllGroups(null)) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getAllGroups(String token, String nodeId) List Recupera una lista de todos los grupos de metadatos de la aplicación.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.bean.PropertyGroup;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getAllGroups(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338")) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getUserGroups(String token) List Recupera una lista de todos los grupos de metadatos del usuario en la aplicación.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.bean.PropertyGroup;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getUserGroups(null)) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getUserGroups(String token, String nodeId) List Recupera una lista de todos los grupos de metadatos del usuario, filtrada para un nodo específico mediante reglas de automatización.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.bean.PropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getUserGroups(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338")) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getProperties(String token, String nodeId, String grpName) Map<String, String> Recupera una lista de todos los elementos de un grupo de metadatos y sus valores en el nodo.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import java.util.Map;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
Map<String, String> properties = okmPropertyGroup.getProperties(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:consulting");
for (String key : properties.keySet()) {
System.out.println(key + ": " + properties.get(key));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
setProperties(String token, String nodeId, String grpName, Map<String, String> properties) void Cambia los valores del grupo de metadatos de un nodo.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.google.gson.Gson;
import com.openkm.Config;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
import com.openkm.util.ISO8601;
import java.util.*;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
Map<String, String> properties = new HashMap<>();
Gson gson = new Gson();
List<String> values = new ArrayList<>();
values.add("t1");
values.add("t2");
properties.put("okp:technology.type", gson.toJson(values));
properties.put("okp:technology.language", "[ \"java\" ]");
Calendar cal = Calendar.getInstance();
// Value must be converted to String ISO 8601 compliant
properties.put("okp:technology.date", ISO8601.formatBasic(cal));
properties.put("okp:technology.comment", "comment sample");
properties.put("okp:technology.description", "description sample");
properties.put("okp:technology.important", String.valueOf(true));
okmPropertyGroup.setProperties(null, "4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5", "okg:technology", properties);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getPropertyGroupForm(String token, String grpName) List Recupera una lista de las definiciones de todos los elementos de un grupo de metadatos.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.bean.form.FormElement;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (FormElement fe : okmPropertyGroup.getPropertyGroupForm(null, "okg:consulting")) {
System.out.println(fe);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getPropertyGroupForm(String token, String nodeId, String grpName) List Recupera una lista de las definiciones de todos los elementos de un grupo de metadatos para un nodo específico. Permite que las reglas de automatización personalicen los elementos del formulario según el contexto del nodo.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.bean.form.FormElement;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (FormElement fe : okmPropertyGroup.getPropertyGroupForm(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:consulting")) {
System.out.println(fe);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
hasGroup(String token, String nodeId, String grpName) boolean Devuelve un booleano que indica si el nodo tiene un grupo de metadatos.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
boolean found = okmPropertyGroup.hasGroup(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:consulting");
System.out.println(found);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getSuggestions(String token, String nodeId, String grpName, String propName) List Recupera una lista de valores sugeridos para un campo de metadatos.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (String value : okmPropertyGroup.getSuggestions(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:technology",
"okp:technology.language")) {
System.out.println(value);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
registerDefinition(String token, String pgDef, String pgName) void Establece la definición XML de grupos de metadatos en el repositorio.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
InputStream is = null;
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
is = new FileInputStream("/home/files/PropertyGroups.xml");
String pgDef = IOUtils.toString(is);
okmPropertyGroup.registerDefinition(null, pgDef, "test");
} catch (Exception e) {
e.printStackTrace();
} finally {
IOUtils.closeQuietly(is);
}
}
}

Descripción:

Método Valores devueltos Descripción
getRegisteredDefinition(String token) String Devuelve la definición XML de grupos de metadatos.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
String pgDef = okmPropertyGroup.getRegisteredDefinition(null);
System.out.println(pgDef);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getGroups(String token, String nodeId, String versionName) List Recupera una lista de los grupos de metadatos asignados a una versión específica de un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.bean.PropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
for (PropertyGroup pg : okmPropertyGroup.getGroups(null, "82555dd1-bcc2-4e64-81cb-5f7c2b0d7801", "1.2")) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getGroupProperties(String token, Long pgdId) List Recupera una lista de las propiedades de un grupo de metadatos.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.bean.PropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
long pgdId = 1;
for (PropertyGroup pg : okmPropertyGroup.getGroupProperties(null, pgdId)) {
System.out.println(pg);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getProperties(String token, String nodeId, String grpName, String versionName) Map<String, String> Recupera un mapa (pares clave-valor) de los valores del grupo de metadatos asignados a una versión específica de un nodo.

Ejemplo:

package com.openkm;
import java.util.Map;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
Map<String, String> properties = okmPropertyGroup.getProperties(null, "82555dd1-bcc2-4e64-81cb-5f7c2b0d7801", "okg:tpl", "1.2");
for (String key : properties.keySet()) {
System.out.println(key + ": " + properties.get(key));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getSuggestBoxKeyValue(String token, String nodeId, String grpName, String propertyName, String key) KeyValue Recupera un objeto que contiene la clave y el valor del suggest box.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;import com.openkm.bean.KeyValue;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
KeyValue kv = okmPropertyGroup.getSuggestBoxKeyValue(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:groupname", "okp:groupname.propertyname", "namekey");
System.out.println(kv.getKey() + ": " + kv.getValue());
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getSuggestBoxKeyValuesFiltered(String token, String nodeId, String grpName, String propertyName, String filter) List Recupera una lista de objetos que contienen la clave y el valor del suggest box, filtrados por valor.

Ejemplo:

package com.openkm;
import java.util.List;
import com.openkm.api.OKMPropertyGroup;import com.openkm.bean.KeyValue;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
List<KeyValue> kvList = okmPropertyGroup.getSuggestBoxKeyValuesFiltered(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:groupname", "okp:groupname.propertyname", "filter");
for (KeyValue kv : kvList) {
System.out.println(kv.getKey() + ": " + kv.getValue());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
addOrSetPropertyGroupWithAI(String token, String nodeId, String grpName) void Usa IA para extraer y rellenar automáticamente los valores del grupo de metadatos de un nodo. Si el grupo aún no está asignado, se añade; en caso contrario, se actualizan los valores existentes.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
okmPropertyGroup.addOrSetPropertyGroupWithAI(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:technology");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores devueltos Descripción
getExtractedPropertyGroupWithAI(String token, String nodeId, String grpName) Map<String, String> Usa IA para extraer los valores del grupo de metadatos de un nodo y los devuelve como un mapa sin guardarlos en el repositorio.
  • El grpName debe ser un nombre de grupo de metadatos válido.

Ejemplo:

package com.openkm;
import java.util.Map;
import com.openkm.api.OKMPropertyGroup;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMPropertyGroup okmPropertyGroup = ContextWrapper.getContext().getBean(OKMPropertyGroup.class);
Map<String, String> props = okmPropertyGroup.getExtractedPropertyGroupWithAI(null, "b153c4b7-3d1c-4589-bd42-0ed0f34fd338", "okg:technology");
for (String key : props.keySet()) {
System.out.println(key + ": " + props.get(key));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}