OKMRecord
Conceptos básicos
Sección titulada «Conceptos básicos»En casi todos los métodos verá un parámetro llamado “recId”. El valor de este parámetro puede ser el UUID de un registro válido.
Además, en todos los métodos verá un parámetro llamado “token”. Dado que las tareas cron se ejecutan en segundo plano sin autenticación, los métodos utilizados en este escenario pueden usar el parámetro token. Desde el contexto de ejecución predeterminado de la aplicación debe utilizar el valor “null”, que indica que la aplicación debe usar la “sesión de usuario”.
Métodos
Sección titulada «Métodos»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| create(String token, Record rec) | Record | Crea un nuevo registro y devuelve como resultado un objeto Record. |
- La variable path del parámetro rec debe estar inicializada. Indica la ruta de la carpeta en OpenKM.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.bean.Record;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); Record rec = new Record(); rec.setPath("/okm:root/test"); okmRecord.create(null, rec); } catch (Exception e) { e.printStackTrace(); } }}createSimple
Sección titulada «createSimple»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createSimple(String token, String recPath) | Record | Crea un nuevo registro y devuelve como resultado un objeto Record. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); String recPath = "/okm:root/PKI-100200"; okmRecord.createSimple(null, recPath); } catch (Exception e) { e.printStackTrace(); } }}getProperties
Sección titulada «getProperties»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| getProperties(String token, String recId) | Record | Devuelve las propiedades del registro. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.bean.Record;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); Record rec = okmRecord.getProperties(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f"); System.out.println(rec); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| delete(String token, String recId) | void | Elimina un registro. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.delete(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| purge(String token, String recId) | void | El registro se elimina definitivamente del repositorio. |
- Normalmente purgará carpetas de /okm:trash/userId (las ubicaciones de la papelera personal del usuario), pero es posible purgar directamente cualquier registro de todo el repositorio.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.purge(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| rename(String token, String recId, String newName) | Record | Renombra un registro. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.rename(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "newname"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| move(String token, String recId, String dstId) | void | Mueve un registro a una carpeta o a otro registro |
- Los valores del parámetro dstId deben ser el UUID o la ruta de una carpeta o de un expediente.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.move(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| copy(String token, String recId, String dstId) | void | Copia un registro en una carpeta o en otro registro. |
- Los valores del parámetro dstId deben ser el UUID o la ruta de una carpeta o de un expediente.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.copy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| copy(String token, String recId, String dstId, String newName) | void | Copia un registro en una carpeta o en otro registro. |
- Los valores del parámetro dstId deben ser el UUID o la ruta de una carpeta o de un registro.
- Cuando el valor del parámetro newName es null, el registro conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.copy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6", "newname"); } catch (Exception e) { e.printStackTrace(); } }}extendedCopy
Sección titulada «extendedCopy»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| extendedCopy(String token, String recId, String dstId, String newName, ExtendedAttributes extAttr) | void | Copia un registro con sus datos asociados en una carpeta o en otro registro. |
- Los valores del parámetro dstId deben ser el UUID o la ruta de una carpeta o de un registro.
- Cuando el valor del parámetro newName es null, el registro conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.bean.ExtendedAttributes;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); ExtendedAttributes extAttr = new ExtendedAttributes(); extAttr.setKeywords(true); extAttr.setCategories(true); extAttr.setNotes(true);
okmRecord.extendedCopy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474", "PKI-100201", extAttr); } catch (Exception e) { e.printStackTrace(); } }}isValid
Sección titulada «isValid»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| isValid(String token, String recId) | boolean | Devuelve un booleano que indica si el nodo es un registro o no. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); boolean valid = okmRecord.isValid(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f"); System.out.println(valid); } catch (Exception e) { e.printStackTrace(); } }}getPath
Sección titulada «getPath»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| getPath(String token, String recId) | String | Convierte el UUID de una carpeta en la ruta del registro. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); String path = okmRecord.getPath(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f"); System.out.println(path); } catch (Exception e) { e.printStackTrace(); } }}getChildren
Sección titulada «getChildren»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| getChildren(String token, String fldId) | List |
Devuelve una lista de todos los registros cuyo padre es fldId. |
- El parámetro fldId puede ser un nodo de tipo carpeta o registro.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.bean.Record;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); for (Record rec : okmRecord.getChildren(null, "b6848ac2-345f-454e-964a-eba4dcc020e6")) { System.out.println(rec); } } catch (Exception e) { e.printStackTrace(); } }}setTitle
Sección titulada «setTitle»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| setTitle(String token, String recId, String title) | void | Establece el título de un registro. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.setTitle(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "new title"); } catch (Exception e) { e.printStackTrace(); } }}setDescription
Sección titulada «setDescription»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| setDescription(String token, String uuid, String description) | void | Establece una descripción. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.setDescription(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", "some description"); } catch (Exception e) { e.printStackTrace(); } }}createMissingRecords
Sección titulada «createMissingRecords»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createMissingRecords(String token, String recPath) | void | Crea los registros que faltan en la ruta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); okmRecord.createMissingRecords(null, "/okm:root/test/test1/test2"); } catch (Exception e) { e.printStackTrace(); } }}createFromTemplate
Sección titulada «createFromTemplate»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createFromTemplate(String token, String fldId, String dstPath, Map<String, String> properties, ExtendedAttributes extAttr) | Record | Crea un nuevo registro a partir de un registro plantilla. |
Ejemplo:
package com.openkm;
import java.util.HashMap;import java.util.Map;
import com.openkm.api.OKMRecord;import com.openkm.bean.ExtendedAttributes;import com.openkm.bean.Record;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class); Map properties = new HashMap<>(); ExtendedAttributes extAttr = new ExtendedAttributes(); Record record = okmRecord.createFromTemplate(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", "/okm:root/newRecord", properties, extAttr); System.out.println(record); } catch (Exception e) { e.printStackTrace(); } }}createWizard
Sección titulada «createWizard»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createWizard(String token, String recPath, String title, long nodeClass) | WizardNode | Crea un nuevo registro mediante un asistente y una clase de nodo. |
- El parámetro recPath debe ser el UUID de cualquier carpeta o registro válido.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMRecord;import com.openkm.bean.WizardNode;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
WizardNode wn = okmRecord.createWizard(null, "1f323e88-64ee-4f57-91e2-9276f8c603f9", "PKI-100200", 1); System.out.print(wn); } catch (Exception e) { e.printStackTrace(); } }}