OKMFolder
Conceptos básicos
Sección titulada «Conceptos básicos»En la mayoría de los métodos verá un parámetro denominado “fldId”. El valor de este parámetro puede ser un UUID de carpeta válido.
También verá en todos los métodos un parámetro denominado “token”. Como las tareas programadas (Cron Tasks) se ejecutan en segundo plano sin autenticación, los métodos utilizados en este escenario pueden emplear 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, Folder fld) | Folder | Crea una carpeta nueva y devuelve un objeto Folder como resultado. |
- Debe inicializarse la variable path del parámetro fld. Indica la ruta de la carpeta en OpenKM.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.Folder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); Folder fld = new Folder(); fld.setPath("/okm:root/test"); okmFolder.create(null, fld); } catch (Exception e) { e.printStackTrace(); } }}createSimple
Sección titulada «createSimple»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createSimple(String token, String fldPath) | Folder | Crea una carpeta nueva y devuelve un objeto Folder como resultado. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); String fldPath = "/okm:root/test"; okmFolder.createSimple(null, fldPath); } catch (Exception e) { e.printStackTrace(); } }}getProperties
Sección titulada «getProperties»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| getProperties(String token, String fldId) | Folder | Devuelve las propiedades de la carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.Folder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); Folder fld = okmFolder.getProperties(null, "9f64248c-e049-4706-b89e-6d725842c7f7"); System.out.println(fld); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| delete(String token, String fldId) | void | Elimina una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.delete(null, "9f64248c-e049-4706-b89e-6d725842c7f7"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| purge(String token, String fldId) | void | La carpeta se elimina de forma permanente del repositorio. |
- Normalmente purgará carpetas de /okm:trash/userId (la ubicación de la papelera personal del usuario), pero es posible purgar directamente cualquier carpeta del repositorio.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.delete(null, "9f64248c-e049-4706-b89e-6d725842c7f7"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| rename(String token, String fldId, String newName) | Folder | Cambia el nombre de una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.rename(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "newname"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| move(String token, String fldId, String dstId) | void | Mueve una carpeta a otra carpeta o expediente. |
- El valor del parámetro dstId debe ser el UUID de una carpeta o de un expediente.
Ejemplo:
package com.openkm;import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.move(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| copy(String token, String fldId, String dstId) | void | Copia una carpeta en otra carpeta o expediente. |
- Los valores del parámetro dstId deben ser el UUID de una carpeta o de un expediente.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.copy(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| copy(String token, String fldId, String dstId, String newName) | void | Copia una carpeta en otra carpeta o expediente. |
- Los valores del parámetro dstId deben ser el UUID de una carpeta o de un expediente.
- Cuando el valor del parámetro newName es null, la carpeta conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.copy(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474", "newname"); } catch (Exception e) { e.printStackTrace(); } }}extendedCopy
Sección titulada «extendedCopy»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| extendedCopy(String token, String fldId, String dstId, ExtendedAttributes extAttr) | void | Copia una carpeta con los datos asociados en otra carpeta o expediente. |
- El valor del parámetro dstId debe ser el UUID de una carpeta o de un expediente.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.ExtendedAttributes;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class);
ExtendedAttributes extAttr = new ExtendedAttributes(); extAttr.setKeywords(true); extAttr.setNotes(true); extAttr.setCategories(true); extAttr.setPropertyGroups(true);
okmFolder.extendedCopy(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474", extAttr); } catch (Exception e) { e.printStackTrace(); } }}extendedCopy
Sección titulada «extendedCopy»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| extendedCopy(String token, String fldId, String dstId, ExtendedAttributes extAttr, String newName) | void | Copia una carpeta con los datos asociados en otra carpeta o expediente. |
- El valor del parámetro dstId debe ser el UUID de una carpeta o de un expediente.
- Cuando el valor del parámetro newName es null, la carpeta conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.ExtendedAttributes;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class);
ExtendedAttributes extAttr = new ExtendedAttributes(); extAttr.setKeywords(true); extAttr.setNotes(true); extAttr.setCategories(true); extAttr.setPropertyGroups(true);
okmFolder.extendedCopy(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474", extAttr, "newname"); } 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 todas las carpetas cuyo padre es fldId. |
- El parámetro fldId puede ser un nodo de tipo carpeta o de tipo expediente.
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.Folder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); for (Folder fld : okmFolder.getChildren(null, "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474")) { System.out.println(fld); } } catch (Exception e) { e.printStackTrace(); } }}getContentInfo
Sección titulada «getContentInfo»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| getContentInfo(String token, String fldId) | ContentInfo | Devuelve un objeto ContentInfo con información sobre la carpeta. |
- El objeto ContentInfo recupera información sobre:
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.bean.ContentInfo;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); ContentInfo ci = okmFolder.getContentInfo(null, "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474"); System.out.println(ci); } catch (Exception e) { e.printStackTrace(); } }}isValid
Sección titulada «isValid»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| isValid(String token, String fldId) | boolean | Devuelve un valor booleano que indica si el nodo es una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); boolean valid = okmFolder.isValid(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263"); 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 uuid) | String | Convierte el UUID de una carpeta en la ruta de la carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); String path = okmFolder.getPath(null, "7aceb86c-1dc8-4551-aebd-b7bd73d01263"); System.out.println(path); } catch (Exception e) { e.printStackTrace(); } }}setStyle
Sección titulada «setStyle»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| setStyle(String token, String fldId, long styleId) | void | Establece el estilo de la carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.setStyle(null, "/okm:root/test", 1); } catch (Exception e) { e.printStackTrace(); } }}createMissingFolders
Sección titulada «createMissingFolders»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createMissingFolders(String token, String fldPath) | void | Crea las carpetas que faltan a partir de todos los nodos de la ruta. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.createMissingFolders(null, "/okm:root/test/missing/from/here"); } catch (Exception e) { e.printStackTrace(); } }}addNodeClassChildren
Sección titulada «addNodeClassChildren»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| addNodeClassChildren(String token, String fldId, long ncId) | void | Añade la NodeClass. |
Ejemplo:
package com.openkm;
import com.openkm.api.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); long ncId = 2; okmFolder.addNodeClassChildren(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", ncId); } 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.OKMFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMFolder okmFolder = ContextWrapper.getContext().getBean(OKMFolder.class); okmFolder.setDescription(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", "some description"); } catch (Exception e) { e.printStackTrace(); } }}