Ir al contenido

OKMSearch

Casi todos los métodos usan QueryParams. Aquí tiene algunos consejos sobre cómo usarlo.

Variables Tipo Permite comodines Restricciones Descripción
domain long No. Valores disponibles:
- QueryParams.DOCUMENT
- QueryParams.FOLDER
- QueryParams.MAIL
- QueryParams.RECORD
Por defecto el valor es QueryParams.DOCUMENT.
Para buscar documentos y carpetas, use el valor:
<br>(QueryParams.DOCUMENT | QueryParams.FOLDER) <br>
Restringe la búsqueda a tipos de nodo.
author String No. El valor debe ser un userId válido. Filtra por usuario creador.
name String Sí. Filtra por nombre de nodo.
title String Sí. Filtra por título.
keywords Set Sí. Filtra por palabras clave.
categories Set No. Los valores deben ser un UUID de categoría; no use un valor de ruta. Filtra por categorías.
content Sí. Filtra por contenido binario.
mimeType No. El valor debe ser un tipo MIME válido y registrado.
Solo se puede aplicar a nodos de tipo documento.
Filtra por tipo MIME del documento.
language No. El valor debe ser un idioma válido.
Solo se puede aplicar a nodos de tipo documento.
Filtra por idioma del documento.
folder No. Cuando está vacío, se usa por defecto el nodo “/okm:root”.
El valor debe ser un UUID válido; no use un valor de ruta.
Filtra por una carpeta.
folderRecursive Boolean No. Solo tiene sentido establecer esta variable a true cuando la variable folder no está vacía. Habilita el filtrado recursivo por una carpeta.
lastModifiedFrom Calendar No. Filtra nodos creados después de una fecha.
lastModifiedTo Calendar No. Filtra nodos creados antes de una fecha.
mailSubject String Sí. Solo se aplica a nodos de tipo mail. Filtra por el campo asunto del correo.
mailFrom String Sí. Solo se aplica a nodos de tipo mail. Filtra por el campo “from” del correo.
mailTo Sí. Solo se aplica a nodos de tipo mail. Filtra por el campo “to” del correo.
notes Sí. Filtra por notas.
properties Map<String, String> Sí en casi todos. Los comodines no se pueden aplicar a valores de campos de metadatos tipo “date”.
El mapa de propiedades se compone de pares:
(‘metadata_field_name’,‘metadata_field_value’)
Por ejemplo:
javascript<br>Map<String, String> properties = new HashMap();<br>properties.put("okp:consulting.name", "name value");<br>
Filtrado por rango de fechas:
cs<br>Calendar to = Calendar.getInstance(); // hoy<br>to.set(0, Calendar.HOUR);<br>to.set(0, Calendar.MINUTE);<br>to.set(0, Calendar.SECOND);<br>to.set(0, Calendar.MILLISECOND);<br>Calendar from = (Calendar) to.clone();<br>from.add(-3, Calendar.DATE); // tres días antes<br>Map<String,String> properties = new HashMap<>();<br>properties.put("okp:consulting.date", ISO8601.formatBasic(from)+","+ISO8601.formatBasic(to));<br>
Al filtrar por un rango de fechas debe establecer ambos valores (from y to); de lo contrario, OpenKM ignorará el filtro.
Para filtrar por un campo de metadatos de tipo “multiple” como este:
cs<br><select label="Multiple" name="okp:consulting.multiple" type="multiple"><br> <option label="One" value="one"/><br> <option label="Two" value="two"/><br> <option label="Three" value="three" /><br></select><br>
Debe hacer:
bash<br>properties.put("okp:consulting.multiple", "one;two");<br>
Donde “one” y “two” son valores válidos y el carácter “;” se usa como separador.
Filtra por valores de un grupo de metadatos.

Ejemplos de comodines:

Variable Ejemplo Descripción
name test*.html Cualquier documento que empiece por los caracteres “test” y termine con los caracteres “.html”.
name test?.html Cualquier documento que empiece por los caracteres “test” seguido de un único carácter y termine con los caracteres “.html”.
name ?test* Cualquier documento donde el primer carácter no importa, pero está seguido por los caracteres “test”.

Descripción:

Método Valores de retorno Descripción
find(String token, QueryParams params) List Devuelve una lista de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
for (QueryResult qr : okmSearch.find(null, qParams)) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
find(String token, QueryParams params, String propertiesPlugin) List Devuelve una lista de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
for (QueryResult qr : okmSearch.find(null, qParams, "com.openkm.plugin.properties.SimpleNodeProperties")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findPaginated(String token, QueryParams params, int offset, int limit) ResultSet Devuelve una lista paginada de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
ResultSet rs = okmSearch.findPaginated(null, qParams, 20, 10);
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadata(String token, QueryParams params, String propertiesPlugin, List groups) List Devuelve una lista de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
List<String> groups = new ArrayList<>();
groups.add("okg:tpl");
for (QueryResult qr : okmSearch.findWithMetadata(null, qParams, "com.openkm.plugin.properties.SimpleNodeProperties",
groups)) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findWithMetadataPaginated(String token, QueryParams params, int offset, int limit, String propertiesPlugin, List groups) ResultSet Devuelve una lista paginada de resultados filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import java.util.ArrayList;
import java.util.List;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
List<String> groups = new ArrayList<>();
groups.add("okg:tpl");
ResultSet rs = okmSearch.findWithMetadataPaginated(null, qParams, 0, 10, "com.openkm.plugin.properties.SimpleNodeProperties", groups);
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQuery(String token, String query) List Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (QueryResult qr : okmSearch.findByQuery(null, "text:grial AND name:o*.pdf")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQuery(String token, String query, String propertiesPlugin) List Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (QueryResult qr : okmSearch.findByQuery(null, "text:grial AND name:o*.pdf",
"com.openkm.plugin.properties.SimpleNodeProperties")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQuery(String token, String query, String sortField, boolean sortReverse, String propertiesPlugin) List Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (QueryResult qr : okmSearch.findByQuery(null, "text:grial AND name:o*.pdf", "name", true, "com.openkm.plugin.properties.SimpleNodeProperties")) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQueryPaginated(String token, String query, int offset, int limit) ResultSet Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
ResultSet rs = okmSearch.findByQueryPaginated(null, "text:grial AND name:o*.pdf", 10, 10);
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQueryPaginated(String token, String query, int offset, int limit, String propertiesPlugin) ResultSet Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
ResultSet rs = okmSearch.findByQueryPaginated(null, "text:grial AND name:o*.pdf", 0, 10,
"com.openkm.plugin.properties.SimpleNodeProperties");
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQueryPaginated(String token, String query, String sortField, boolean sortReverse, int offset, int limit) ResultSet Devuelve una lista paginada y ordenada de resultados filtrados por el valor del parámetro query.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
ResultSet rs = okmSearch.findByQueryPaginated(null, "text:grial AND name:o*.pdf", "name", true, 0, 10);
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findByQueryPaginated(String token, String query, String sortField, boolean sortReverse, int offset, int limit, String propertiesPlugin) ResultSet Devuelve una lista paginada de resultados filtrados por el valor del parámetro query.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
ResultSet rs = okmSearch.findByQueryPaginated(null, "text:grial AND name:o*.pdf", "name", true, 0, 10,
"com.openkm.plugin.properties.SimpleNodeProperties");
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBaseByQueryPaginated(String token, String query, String sortField, boolean sortReverse, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados SimpleNodeBase filtrados por los valores del parámetro queryParams.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
import com.openkm.ws.rest.util.SimpleNodeBase;
import com.openkm.ws.rest.util.SimpleNodeBaseResultSet;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
SimpleNodeBaseResultSet resultSet = okmSearch.findSimpleNodeBaseByQueryPaginated(null, "name:test*", "name", true, 0, 10);
System.out.println("Total results:" + resultSet.getTotal());
for (SimpleNodeBase simpleNodeBase : resultSet.getResults()) {
System.out.println(simpleNodeBase);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findSimpleNodeBasePaginated(String token, QueryParams params, int offset, int limit) SimpleNodeBaseResultSet Devuelve una lista paginada de resultados SimpleNodeBase filtrados por los valores del parámetro QueryParams.

Ejemplo:

package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
import com.openkm.ws.rest.util.SimpleNodeBase;
import com.openkm.ws.rest.util.SimpleNodeBaseResultSet;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
SimpleNodeBaseResultSet resultSet = okmSearch.findSimpleNodeBasePaginated(null, qParams, 0, 10);
System.out.println("Total results:" + resultSet.getTotal());
for (SimpleNodeBase snb : resultSet.getResults()) {
System.out.println(snb);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
saveSearch(String token, QueryParams params) Long Guarda los parámetros de búsqueda.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams qParams = new QueryParams();
qParams.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
qParams.setName("test*");
// Guardar la búsqueda para usarla más tarde
qParams.setQueryName("sample search");
okmSearch.saveSearch(null, qParams);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
updateSearch(String token, QueryParams params) void Guarda los parámetros de búsqueda.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (QueryParams qParams : okmSearch.getAllSearches(null)) {
if (qParams.getQueryName().equals("sample search")) {
// Cambiar algún valor.
qParams.setName("admin*.html");
okmSearch.updateSearch(null, qParams);
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getSearch(String token, int qpId) QueryParams Obtiene una búsqueda guardada.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
int qpId = 1; // Algún id de búsqueda válido
QueryParams qParams = okmSearch.getSearch(null, qpId);
System.out.println(qParams);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getAllSearches(String token) List Recupera una lista de todas las búsquedas guardadas.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (QueryParams qParams : okmSearch.getAllSearches(null)) {
System.out.println(qParams);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
deleteSearch(String token, long qpId) void Elimina una búsqueda guardada.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
int qpId = 1; // Algún id de búsqueda válido
okmSearch.deleteSearch(null, qpId);
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getCategorizedDocuments(String token, String categoryId) List Recupera una lista de todos los documentos relacionados con una categoría.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Document;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Document doc : okmSearch.getCategorizedDocuments(null, "5cbc35fc-23c0-48f5-a7bc-3cfa1e7be25f")) {
System.out.println(doc);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getCategorizedFolders(String token, String categoryId) List Recupera una lista de todas las carpetas relacionadas con una categoría.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Folder;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Folder fld : okmSearch.getCategorizedFolders(null, "5cbc35fc-23c0-48f5-a7bc-3cfa1e7be25f")) {
System.out.println(fld);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getCategorizedMails(String token, String categoryId) List Recupera una lista de todos los correos relacionados con una categoría.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Mail;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Mail mail : okmSearch.getCategorizedMails(null, "5cbc35fc-23c0-48f5-a7bc-3cfa1e7be25f")) {
System.out.println(mail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getCategorizedRecords(String token, String categoryId) List Recupera una lista de todos los registros relacionados con una categoría.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Record rec : okmSearch.getCategorizedRecords(null, "5cbc35fc-23c0-48f5-a7bc-3cfa1e7be25f")) {
System.out.println(rec);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getDocumentsByKeyword(String token, String keyword) List Recupera una lista de todos los documentos relacionados con una palabra clave.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Document;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Document doc : okmSearch.getDocumentsByKeyword(null, "test")) {
System.out.println(doc);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getFoldersByKeyword(String token, String keyword) List Recupera una lista de todas las carpetas relacionadas con una palabra clave.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Folder;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Folder fld : okmSearch.getFoldersByKeyword(null, "test")) {
System.out.println(fld);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getMailsByKeyword(String token, String keyword) List Recupera una lista de todos los correos relacionados con una palabra clave.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Mail;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Mail mail : okmSearch.getMailsByKeyword(null, "test")) {
System.out.println(mail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getRecordsByKeyword(String token, String keyword) List Recupera una lista de todos los registros relacionados con una palabra clave.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Record rec : okmSearch.getRecordsByKeyword(null, "test")) {
System.out.println(rec);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getDocumentsByPropertyValue(String token, String group, String property, String value) List Recupera una lista de todos los documentos relacionados con un valor de campo de metadatos.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Document;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Document doc : okmSearch.getDocumentsByPropertyValue(null, "okg:consulting", "okp:consulting.name", "value")) {
System.out.println(doc);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getFoldersByPropertyValue(String token, String group, String property, String value) List Recupera una lista de todas las carpetas relacionadas con un valor de campo de metadatos.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Folder;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Folder fld : okmSearch.getFoldersByPropertyValue(null, "okg:consulting", "okp:consulting.name", "value")) {
System.out.println(fld);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getMailsByPropertyValue(String token, String group, String property, String value) List Recupera una lista de todos los correos relacionados con un valor de campo de metadatos.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Mail;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Mail mail : okmSearch.getMailsByPropertyValue(null, "okg:consulting", "okp:consulting.name", "value")) {
System.out.println(mail);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
getRecordsByPropertyValue(String token, String group, String property, String value) List Recupera una lista de todos los registros relacionados con un valor de campo de metadatos.
package com.openkm;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
for (Record rec : okmSearch.getRecordsByPropertyValue(null, "okg:consulting", "okp:consulting.name", "value")) {
System.out.println(rec);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
findMailPaginated(String token, Map<String, String> filter, String sortField, boolean sortReverse, int type,
int offset, int limit)
ResultSet Devuelve una lista paginada de resultados de correo filtrados por los valores de los parámetros.
package com.openkm;
import java.util.HashMap;
import java.util.Map;
import com.openkm.api.OKMSearch;
import com.openkm.bean.QueryResult;
import com.openkm.bean.ResultSet;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
Map<String, String> filter = new HashMap<>();
String sortField = "okm:";
int type = OKMSearch.TYPE_MAIL_ALL;
ResultSet rs = okmSearch.findMailPaginated(null, filter, sortField, false, type, 0, 10);
System.out.println("Total results:" + rs.getTotal());
for (QueryResult qr : rs.getResults()) {
System.out.println(qr);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

Descripción:

Método Valores de retorno Descripción
csvExport(String token, String lang, QueryParams params, List propertyGroups, boolean compact, Ref fileName) InputStream Exporta una lista de resultados como un fichero CSV filtrado por los valores del parámetro queryParams. Devuelve los datos CSV como un InputStream.

Ejemplo:

package com.openkm;
import java.io.InputStream;
import java.util.Arrays;
import java.util.List;
import com.openkm.api.OKMSearch;
import com.openkm.bean.Ref;
import com.openkm.db.bean.QueryParams;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMSearch okmSearch = ContextWrapper.getContext().getBean(OKMSearch.class);
QueryParams params = new QueryParams();
params.setDomain(QueryParams.DOCUMENT + QueryParams.FOLDER);
params.setName("test*");
List<String> propertyGroups = Arrays.asList("okg:consulting");
Ref<String> fileName = new Ref<>();
InputStream is = okmSearch.csvExport(null, "en", params, propertyGroups, false, fileName);
System.out.println("File name: " + fileName.get());
} catch (Exception e) {
e.printStackTrace();
}
}
}