Ir al contenido
Otras versiones

Cargando…

OKMNode

En casi todos los métodos verá un parámetro llamado “nodeId”. El valor de este parámetro puede ser un UUID de nodo válido.

Sobre el parámetro llamado “fldId”, el valor de este parámetro puede ser un UUID de carpeta válido o un nodo de record.

Sobre el parámetro llamado “dstId”, el valor de este parámetro puede ser un UUID de carpeta válido o un nodo de record.

Además, en todos los métodos verá un parámetro llamado “token”. Como las tareas cron se ejecutan en segundo plano sin autenticación, los métodos usados en ese escenario pueden 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 de retorno Descripción
getNodeByUuid(String token, String uuid) Node Obtiene un nodo por UUID.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.bean.Node;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
Node node = okmNode.getNodeByUuid(null, "78f9c377-e557-48c7-804e-35c0ca284739");
System.out.println(node);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getVersionHistory(String token, String nodeId) List Devuelve la lista del historial de versiones de un nodo.

Ejemplo:

package com.openkm;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.Version;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<Version> versions = okmNode.getVersionHistory(null, "78f9c377-e557-48c7-804e-35c0ca284739");
for (Version version : versions) {
System.out.println(version);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
restoreVersion(String token, String nodeId, String versionId) void Restaura la versión de un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.restoreVersion(null, "78f9c377-e557-48c7-804e-35c0ca284739", "1.2");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
renameVersion(String token, String nodeId, String versionId, String newName) void Renombra la versión de un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.renameVersion(null, "78f9c377-e557-48c7-804e-35c0ca284739", "1.2", "newName");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
purgeVersionHistory(String token, String nodeId) void Purga el historial de versiones de un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.purgeVersionHistory(null, "3767deb4-21e7-4272-82be-fece5384fbab");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
mayBePromotedAsRecord(String token, String nodeId, boolean fullEvaluation) PromoteAsRecordEvaluation Devuelve el resultado de la evaluación para promover un nodo al estado “record”. Cuando el nodo no puede promoverse al estado “record”, el resultado de la evaluación contiene información sobre el motivo por el que no puede promoverse.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.plugin.fileplan.record.bean.PromoteAsRecordEvaluation;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
PromoteAsRecordEvaluation pre = okmNode.mayBePromotedAsRecord(null, "3767deb4-21e7-4272-82be-fece5384fbab", false);
System.out.println(pre);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
promoteAsRecord(String token, String nodeId) void Promueve el nodo al estado “record”.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.promoteAsRecord(null, "3767deb4-21e7-4272-82be-fece5384fbab");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
degradeRecord(String token, String nodeId) void Degrada un nodo con estado “record”.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.degradeRecord(null, "3767deb4-21e7-4272-82be-fece5384fbab");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
isElectronicRecordPath(String token, String nodeId) boolean Devuelve true cuando el nodo está dentro de un electronic record.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
System.out.println(okmNode.isElectronicRecordPath(null, "3767deb4-21e7-4272-82be-fece5384fbab"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getElectronicRecordInPath(String token, String nodeId) Record Obtiene el electronic record en la ruta del nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
Record record = okmNode.getElectronicRecordInPath(null, "3767deb4-21e7-4272-82be-fece5384fbab");
System.out.println(record);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getChildrenPaginated(String token, String nodeId, int offset, int limit, String filter, String orderByField, boolean orderAsc, List<Class<? extends NodeBase>> filteredByNodeTypeList) PageInfo Obtiene los nodos hijos, paginados.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.PageInfo;
import com.openkm.db.bean.NodeBase;
import com.openkm.db.bean.NodeDocument;
import com.openkm.db.bean.NodeFolder;
import com.openkm.db.bean.NodeMail;
import com.openkm.db.bean.NodeRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<Class<? extends NodeBase>> filteredByNodeTypeList = new ArrayList<>();
filteredByNodeTypeList.add(NodeDocument.class);
filteredByNodeTypeList.add(NodeFolder.class);
filteredByNodeTypeList.add(NodeMail.class);
filteredByNodeTypeList.add(NodeRecord.class);
// nodeId Folder and Record UUID or Path
String nodeId = "39479efe-de5e-468e-91a7-24d2aa3f8837";
String orderByField = "created";
boolean orderAsc = true;
PageInfo pageInfo = okmNode.getChildrenPaginated(null, nodeId, 0, 10, "", orderByField, orderAsc,
filteredByNodeTypeList);
System.out.println("Filtered Elements: " + pageInfo.getFilteredElements());
System.out.println("Total Elements: " + pageInfo.getTotalElements());
for (Object object : pageInfo.getObjects()) {
NodeBase nodeBase = (NodeBase) object;
System.out.println(nodeBase.getPath());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getChildrenByCategoryPaginated(String token, String nodeId, int offset, int limit, String filter, String orderByField, boolean orderAsc, List<Class<? extends NodeBase>> filteredByNodeTypeList) PageInfo Obtiene los nodos hijos por categoría, paginados.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.PageInfo;
import com.openkm.db.bean.NodeBase;
import com.openkm.db.bean.NodeDocument;
import com.openkm.db.bean.NodeFolder;
import com.openkm.db.bean.NodeMail;
import com.openkm.db.bean.NodeRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<Class<? extends NodeBase>> filteredByNodeTypeList = new ArrayList<>();
filteredByNodeTypeList.add(NodeDocument.class);
filteredByNodeTypeList.add(NodeFolder.class);
filteredByNodeTypeList.add(NodeMail.class);
filteredByNodeTypeList.add(NodeRecord.class);
// nodeId Folder and Record UUID or Path
String nodeId = "39479efe-de5e-468e-91a7-24d2aa3f8837";
String orderByField = "created";
boolean orderAsc = true;
PageInfo pageInfo = okmNode.getChildrenByCategoryPaginated(null, nodeId, 0, 10, "", orderByField, orderAsc,
filteredByNodeTypeList);
System.out.println("Filtered Elements: " + pageInfo.getFilteredElements());
System.out.println("Total Elements: " + pageInfo.getTotalElements());
for (Object object : pageInfo.getObjects()) {
NodeBase nodeBase = (NodeBase) object;
System.out.println(nodeBase.getPath());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getBreadcrumb(String token, String fldId) List Obtiene el breadcrumb.

Ejemplo:

package com.openkm;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.BreadCrumbItem;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<BreadCrumbItem> list = okmNode.getBreadcrumb(null, "39479efe-de5e-468e-91a7-24d2aa3f8837");
for (BreadCrumbItem item : list) {
System.out.println(item.getPath());
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
subscribe(String token, String nodeId) void Añade una suscripción a un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.subscribe(null, "39479efe-de5e-468e-91a7-24d2aa3f8837");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
unsubscribe(String token, String nodeId) void Elimina una suscripción a un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.unsubscribe(null, "39479efe-de5e-468e-91a7-24d2aa3f8837");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
importZip(String token, String fldUuid, InputStream inputStream) void Importa un fichero ZIP.

Ejemplo:

package com.openkm;
import java.io.FileInputStream;
import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
InputStream is = new FileInputStream("/home/gnujavasergio/okm/import.zip");
okmNode.importZip(null, "212e7c1f-443d-4aac-a12c-0b818ca03419", is);
IOUtils.closeQuietly(is);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
unzip(String token, String uuid, String destinationPath) void Descomprime un fichero.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
String uuid = "82555dd1-bcc2-4e64-81cb-5f7c2b0d7801"; // zip File
String destinationPath = "/okm:root/test"; // destination path
okmNode.unzip(null, uuid, destinationPath);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
exportZip(List paths, boolean withPath, boolean background, boolean excludeProperties) ByteArrayInputStream Exporta como fichero ZIP.

Ejemplo:

package com.openkm;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<String> uuids = new ArrayList<>();
uuids.add("/okm:root/test/logo.png");
uuids.add("/okm:root/test/invoice.pdf");
OutputStream fos = new FileOutputStream("/home/openkm/import.zip");
InputStream is = okmNode.exportZip(uuids, true, true, true);
IOUtils.copy(is, fos);
IOUtils.closeQuietly(is);
IOUtils.closeQuietly(fos);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getNodesFromUuids(String token, String[] uuids) List Devuelve una lista de nodos.

Ejemplo:

package com.openkm;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.Node;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
String[] uuids = {"0f6463f3-4d36-4091-b518-4fe7c353ee70", "d386cff8-1d4d-472f-9c6d-f21955ec499a"};
List<Node> nodes = okmNode.getNodesFromUuids(null, uuids);
for (Node node : nodes) {
System.out.println(node);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
evaluateZipDownload(String token, List uuids) ZipDownloadEvaluationResult Evalúa si un fichero ZIP puede descargarse en tiempo real o en segundo plano.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMNode;
import com.openkm.bean.ZipDownloadEvaluationResult;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
List<String> uuids = new ArrayList<>();
uuids.add("0f6463f3-4d36-4091-b518-4fe7c353ee70");
uuids.add("d386cff8-1d4d-472f-9c6d-f21955ec499a");
ZipDownloadEvaluationResult result = okmNode.evaluateZipDownload(null, uuids);
System.out.println(result);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
restore(String token, String nodeId) Node Restaura un nodo desde la papelera.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.bean.Node;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
Node node = okmNode.restore(null, "0f6463f3-4d36-4091-b518-4fe7c353ee70");
System.out.println(node);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
hasNodesLockedByOtherUser(String token, String nodeId) boolean Comprueba si el nodo y sus descendientes han sido bloqueados por otros usuarios.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
if (okmNode.hasNodesLockedByOtherUser(null, "0f6463f3-4d36-4091-b518-4fe7c353ee70")) {
System.out.println("Is blocked");
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
lock(String token, String nodeId) LockInfo Bloquea un nodo y devuelve un objeto con la información del bloqueo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.lock(null, "1ec49da9-1746-4875-ae32-9281d7303a62");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
forceLock(String token, String nodeId) void Bloquea un nodo ya bloqueado.
  • Este método permite bloquear cualquier nodo ya bloqueado.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.forceLock(null, "1ec49da9-1746-4875-ae32-9281d7303a62");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
unlock(String token, String nodeId) void Desbloquea un nodo bloqueado.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.unlock(null, "1ec49da9-1746-4875-ae32-9281d7303a62");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
forceUnlock(String token, String nodeId) void Desbloquea un nodo bloqueado.
  • Este método permite desbloquear cualquier nodo bloqueado.
  • No es obligatorio que esta acción la realice el mismo usuario que ejecutó previamente el bloqueo por checkout.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.forceUnlock(null, "1ec49da9-1746-4875-ae32-9281d7303a62");
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
isLocked(String token, String nodeId) Boolean Devuelve un booleano que indica si el nodo está bloqueado o no.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
System.out.println(okmNode.getLockInfo(null, "1ec49da9-1746-4875-ae32-9281d7303a62"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getLockInfo(String token, String nodeId) LockInfo Devuelve un objeto con la información del bloqueo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
System.out.println(okmNode.getLockInfo(null, "1ec49da9-1746-4875-ae32-9281d7303a62"));
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
setComment(String token, String nodeId, String versionName, String comment) void Establece el comentario de una versión específica de un nodo.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMNode okmNode = ContextWrapper.getContext().getBean("okmNode", OKMNode.class);
okmNode.setComment(null, "1ec49da9-1746-4875-ae32-9281d7303a62", "1.14", "Update comment");
} catch (Exception e) {
e.printStackTrace();
}
}
}