Ejemplos de Folder
Conceptos básicos
Sección titulada «Conceptos básicos»Ejemplo de código sugerido
Sección titulada «Ejemplo de código sugerido»Primero, debes crear el objeto de servicio web:
OKMWebservices ws = OKMWebservicesFactory.getInstance(host);A continuación debes iniciar sesión usando el método “login”. Puedes acceder al método “login” desde el objeto de servicio web “ws” como se muestra a continuación:
ws.login(user, password);Llegados a este punto puedes usar todos los métodos de Folder desde la clase “folder” como se muestra a continuación:
ws.folder.create("1be884f4-5758-4985-94d1-f18bfe004db8", "test");Métodos
Sección titulada «Métodos»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| create(String uuid, String name) | Folder | Crea una nueva carpeta y devuelve un objeto Folder. |
- El parámetro uuid debe ser un UUID de carpeta o expediente válido.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Folder;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Folder folder = ws.folder.create("1be884f4-5758-4985-94d1-f18bfe004db8", "test"); System.out.println(folder); } catch (Exception e) { e.printStackTrace(); } }}createWithPropertyGroup
Sección titulada «createWithPropertyGroup»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createWithPropertyGroup(String uuid, String name, long nodeClass, String grpName, Map<String, String> properties) | Folder | Crea una nueva carpeta y establece las propiedades de un grupo de metadatos en la misma llamada. Devuelve un objeto Folder. |
- El parámetro uuid debe ser un UUID de carpeta o expediente válido.
- El parámetro nodeClass debe ser un valor de tipo de negocio (series) válido. Un nodeClass con valor 0 significa que no hay tipo de negocio (series) seleccionado.
- El grpName debe ser un nombre de grupo de Metadata válido.
- No es obligatorio establecer todos los valores de campo en el parámetro properties; solo se aplican las propiedades que pertenecen a grpName.
Ejemplo:
package com.openkm;
import java.util.HashMap;import java.util.Map;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Folder;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); long nodeClass = 0; Map<String, String> properties = new HashMap<>(); properties.put("okp:technology.comment", "comment sample"); properties.put("okp:technology.description", "description sample"); Folder folder = ws.folder.createWithPropertyGroup("1be884f4-5758-4985-94d1-f18bfe004db8", "test", nodeClass, "okg:technology", properties); System.out.println(folder); } catch (Exception e) { e.printStackTrace(); } }}getProperties
Sección titulada «getProperties»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getProperties(String uuid) | Folder | Devuelve las propiedades de la carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.folder.getProperties("76f4155e-42af-4be4-9a1c-756497616fb6")); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| delete(String fldId) | void | Elimina una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.delete("76f4155e-42af-4be4-9a1c-756497616fb6"); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| rename(String fldId, String newName) | void | Renombra una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Existe la carpeta /okm:root/test ws.folder.rename("91264771-02b9-471d-b7a3-ba8cc49a10dd", "renamedFolder"); // La carpeta se ha renombrado a /okm:root/renamedFolder } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| move(String uuid, String dstId) | void | Mueve una carpeta a otra carpeta o expediente. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Existe la carpeta /okm:root/test ws.folder.move("ada67d44-b081-4b23-bdc1-74181cafbc5d", "8599eab7-ae61-4628-8010-1103d6950c63"); // La carpeta se ha movido a /okm:root/tmp/test } catch (Exception e) { e.printStackTrace(); } }}getChildren
Sección titulada «getChildren»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getChildren(String uuid) | List |
Devuelve una lista de todas las carpetas cuyo padre es fldId. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Folder;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); for (Folder fld : ws.folder.getChildren("1be884f4-5758-4985-94d1-f18bfe004db8")) { System.out.println(fld); } } catch (Exception e) { e.printStackTrace(); } }}isValid
Sección titulada «isValid»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| isValid(String uuid) | Boolean | Devuelve un booleano que indica si el nodo es una carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); // Devuelve false ws.folder.isValid("8cd1e072-8595-4dd3-b121-41d622c43f08");
// Devuelve true ws.folder.isValid("1be884f4-5758-4985-94d1-f18bfe004db8"); } catch (Exception e) { e.printStackTrace(); } }}getPath
Sección titulada «getPath»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getPath(String uuid) | String | Convierte el UUID de una carpeta en su ruta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.folder.getPath("1be884f4-5758-4985-94d1-f18bfe004db8")); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| copy(String uuid, String dstId, String newName) | void | Copia una carpeta a otra carpeta o expediente. |
- Los valores del parámetro dstId deben ser el UUID de una carpeta o expediente.
- Cuando el valor del parámetro newName es null, la carpeta conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.copy("ada67d44-b081-4b23-bdc1-74181cafbc5d", "8599eab7-ae61-4628-8010-1103d6950c63", "new_name"); } catch (Exception e) { e.printStackTrace(); } }}extendedCopy
Sección titulada «extendedCopy»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| extendedCopy(String uuid, String dstId, String newName, boolean categories, boolean keywords, boolean propertyGroups, boolean notes, boolean security) | void | Copia una carpeta con los datos asociados a otra carpeta o expediente. |
- Los valores del parámetro dstId deben ser el UUID de una carpeta o expediente.
- Cuando el valor del parámetro newName es null, la carpeta conservará el mismo nombre.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Folder;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); Folder folder = ws.folder.extendedCopy("ada67d44-b081-4b23-bdc1-74181cafbc5d", "8599eab7-ae61-4628-8010-1103d6950c63", "new name folder", true, true, true, true, true); System.out.println(folder); } catch (Exception e) { e.printStackTrace(); } }}getContentInfo
Sección titulada «getContentInfo»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| getContentInfo(String uuid) | ContentInfo | Devuelve un objeto ContentInfo con información sobre la carpeta. |
- El objeto ContentInfo proporciona información sobre:
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); System.out.println(ws.folder.getContentInfo("ada67d44-b081-4b23-bdc1-74181cafbc5d")); } catch (Exception e) { e.printStackTrace(); } }}Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| purge(String uuid) | void | La carpeta se elimina permanentemente del repositorio. |
- Normalmente purgarás carpetas a /okm:trash/userId - las ubicaciones personales de papelera del usuario - pero es posible purgar directamente cualquier carpeta del repositorio.
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.purge("ada67d44-b081-4b23-bdc1-74181cafbc5d"); } catch (Exception e) { e.printStackTrace(); } }}setStyle
Sección titulada «setStyle»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setStyle(String uuid, long styleId) | void | Establece el estilo de la carpeta. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.setStyle("ada67d44-b081-4b23-bdc1-74181cafbc5d", 1); } catch (Exception e) { e.printStackTrace(); } }}createMissingFolders
Sección titulada «createMissingFolders»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createMissingFolders(String fldPath) | String | Crea las carpetas que falten. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.createMissingFolders("/okm:root/missingfld1/missingfld2/missingfld3"); } catch (Exception e) { e.printStackTrace(); } }}setDescription
Sección titulada «setDescription»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| setDescription(String uuid, String description) | void | Establece una descripción. |
Ejemplo:
package com.openkm;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.impl.OKMWebservices;
public class Test {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password); ws.folder.setDescription("4c195453-246b-4ce9-86ba-b84e68d1f284", "some description"); } catch (Exception e) { e.printStackTrace(); } }}createFromTemplate
Sección titulada «createFromTemplate»Descripción:
| Método | Valores de retorno | Descripción |
|---|---|---|
| createFromTemplate(String uuid, String dstPath, boolean categories, boolean keywords, boolean notes, Map<String, String> properties) |
Folder | Crea una nueva carpeta a partir de la plantilla y devuelve un objeto Folder. |
- El parámetro uuid es el valor UUID del fichero plantilla.
- El valor dstPath es la ruta de destino de la carpeta.
- Cuando la plantilla usa grupos de metadatos para rellenar campos, estos valores son obligatorios y deben establecerse en el parámetro properties.
Ejemplo:
package com.openkm.example;
import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Folder;import com.openkm.sdk4j.bean.PropertyGroup;import com.openkm.sdk4j.impl.OKMWebservices;import com.openkm.sdk4j.util.ISO8601;
import java.util.Calendar;import java.util.HashMap;import java.util.List;import java.util.Map;
public class FolderExample {
public static void main(String[] args) { String host = "http://localhost:8080/openkm"; String user = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.getInstance(host);
try { ws.login(user, password);
// createFolderFromTemplate Map<String, String> properties = new HashMap<>(); // okg:tpl properties.put("okp:tpl.name", "sdk name"); Calendar cal = Calendar.getInstance(); // Value must be converted to String ISO 8601 compliant properties.put("okp:tpl.bird_date", ISO8601.formatBasic(cal)); properties.put("okp:tpl.language", "[ \"java\" ]");
// Property okg:technology properties.put("okp:technology.comment", "sdk name"); Folder folder = ws.folder.createFromTemplate("47c70047-2924-483c-bc42-23d0cbef6b17", "/okm:root/sdk/template", true, true, true, properties); System.out.println(folder); } catch (Exception e) { e.printStackTrace(); } }}