Search samples
Esta página aún no está disponible en tu idioma.
Basics
Section titled “Basics”Almosts all methods use QueryParams. Here there’re some tips about how using it.
| Variables | Type | Allow wildcards | Restrictions | Description |
|---|---|---|---|---|
| domain | long | No. | Available values: - QueryParams.DOCUMENT - QueryParams.FOLDER - QueryParams.MAIL - QueryParams.RECORD By default the value is set to QueryParams.DOCUMENT. For searching documents and folders use value: <br>(QueryParams.DOCUMENT | QueryParams.FOLDER) <br> |
Restricts the search to a node types. |
| author | String | No. | Value must be a valid userId. | Filters by creator user. |
| name | String | Yes. | Filters by node name. | |
| title | String | Yes. | Filters by title name. | |
| keywords | Set |
Yes. | Filters by keywords. | |
| categories | Set |
No. | Values should be a category UUID, not use path value. | Filters by categories. |
| content | Yes. | Filters by binary content. | ||
| mimeType | No. | Value should be a valid and registered MIME type. Only can be applied to documents node. |
Filters by document MIME type. | |
| language | No. | Value should be a valid language. Only can be applied to documents node. |
Filters by document language. | |
| folder | No. | When empty is used by default “/okm:root” node. Value should be a valid UUID, not use a path value. |
Filters by a folder. | |
| folderRecursive | Boolean | No. | Only has sense to set this variable to true when the variable folder is not empty. | Enables filter recursively by a folder. |
| lastModifiedFrom | Calendar | No. | Filters by nodes created after a date. | |
| lastModifiedTo | Calendar | No. | Filters by nodes created before a date. | |
| mailSubject | String | Yes. | Only apply to mail nodes. | Filters by mail subject field. |
| mailFrom | String | Yes. | Only apply to mail nodes. | Filters by mail from field. |
| mailTo | Yes. | Only apply to mail nodes. | Filters by mail to field. | |
| notes | Yes. | Filters by notes. | ||
| properties | Map<String, String> | Yes on almost. | On metadata field values like “date” can not be applied wilcards. The map of the properties is composed of pairs: (‘metadata_field_name’,’metada_field_value”) For example: <br>Map<String, String> properties = new HashMap();<br>properties.put("okp:consulting.name", "name value");<br>Filtering by range of dates: <br>Calendar to = Calendar.getInstance(); // today<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); // three days before<br>Map<String,String> properties = new HashMap<>();<br>properties.put("okp:consulting.date", ISO8601.formatBasic(from)+","+ISO8601.formatBasic(to));<br>When filtering by range of dates you must set both values ( from and to ), otherwise the filter will be ignored from the OpenKM side. To filtering by a metadata field of type multiple like this: 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>You should do: bash<br>properties.put("okp:consulting.multiple", "one;two");<br>Where “one” and “two” are valid values and character “;” is used as separator. |
Filters by metadata group values. |
Wildcard examples:
| Variable | Example | Description |
|---|---|---|
| name | test*.html | Any document that starts with characters “test” and ends with characters “.html” |
| name | test?.html | Any document that starts with characters “test” followed by a single character and ends with characters “.html” |
| name | ?test* | Any of the documents where the first character doesn’t matter, but is followed by the characters, “test”. |
Methods
Section titled “Methods”findByContent
Section titled “findByContent”Description:
| Method | Return values | Description |
|---|---|---|
| findByContent(String content) | List |
Returns a list of results filtered by the value of the content parameter. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryResult;
public class Test { public static void main(String[] args) { String host = "http://localhost:8180/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (QueryResult qr : ws.findByContent("test")) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}findByName
Section titled “findByName”Description:
| Method | Return values | Description |
|---|---|---|
| findByName(String name) | List |
Returns a list of results filtered by the value of the name parameter. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryResult;
public class Test { public static void main(String[] args) { String host = "http://localhost:8180/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (QueryResult qr : ws.findByName("test*.html")) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}findByKeywords
Section titled “findByKeywords”Description:
| Method | Return values | Description |
|---|---|---|
| findByKeywords(List |
List |
Returns a list of results filtered by the values of the keywords parameter. |
Example:
package com.openkm;
import java.util.Arrays;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryResult;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (QueryResult qr : ws.findByKeywords(Arrays.asList("test"))) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}Description:
| Method | Return values | Description |
|---|---|---|
| find(QueryParams queryParams, String propertiesPlugin) | List |
Returns a list of results filtered by the values of the queryParams parameter. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;import com.openkm.sdk4j.bean.QueryResult;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { QueryParams qParams = new QueryParams(); qParams.setDomain(QueryParams.DOCUMENT); qParams.setName("test*.html");
for (QueryResult qr : ws.find(qParams, null)) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}findPaginated
Section titled “findPaginated”Description:
| Method | Return values | Description |
|---|---|---|
| findPaginated(QueryParams queryParams, int offset, int limit, String propertiesPlugin) | ResultSet | Returns a list of paginated results filtered by the values of the queryParams parameter. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;import com.openkm.sdk4j.bean.QueryResult;import com.openkm.sdk4j.bean.ResultSet;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { QueryParams qParams = new QueryParams(); qParams.setDomain(QueryParams.DOCUMENT); qParams.setName("test*.html"); ResultSet rs = ws.findPaginated(qParams, 20, 10, null); System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}findSimpleQueryPaginated
Section titled “findSimpleQueryPaginated”Description:
| Method | Return values | Description |
|---|---|---|
| findSimpleQueryPaginated(String statement, int offset, int limit) | ResultSet | Returns a list of paginated results filtered by the values of the statement parameter. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryResult;import com.openkm.sdk4j.bean.ResultSet;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ResultSet rs = ws.findSimpleQueryPaginated("name:grial", 20, 10); System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}findMoreLikeThis
Section titled “findMoreLikeThis”Description:
| Method | Return values | Description |
|---|---|---|
| findMoreLikeThis(String uuid, int max) | ResultSet | Returns a list of documents that are considered similar by search engine. |
The uuid is a document UUID.
The max value is used to limit the number of results returned.
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryResult;import com.openkm.sdk4j.bean.ResultSet;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { ResultSet rs = ws.findMoreLikeThis("f123a950-0329-4d62-8328-0ff500fd42db", 100); System.out.println("Total results:"+rs.getTotal());
for (QueryResult qr : rs.getResults()) { System.out.println(qr); } } catch (Exception e) { e.printStackTrace(); } }}getKeywordMap
Section titled “getKeywordMap”Description:
| Method | Return values | Description |
|---|---|---|
| getKeywordMap(List |
Map<String, Integer> | Returns a map of keywords with its count value filtered by other keywords. |
Example:
package com.openkm;
import java.util.ArrayList;import java.util.Arrays;import java.util.Map;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8180/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { // All keywords without filtering System.out.println("Without filtering"); Map<String, Integer> keywords = ws.getKeywordMap(new ArrayList<String>());
for (String key : keywords.keySet()) { System.out.println(key + " is used :" + keywords.get(key) ); }
// Keywords filtered System.out.println("Filtering"); keywords = ws.getKeywordMap(Arrays.asList("test"));
for (String key : keywords.keySet()) { System.out.println(key + " is used :" + keywords.get(key) ); } } catch (Exception e) { e.printStackTrace(); } }}getCategorizedDocuments
Section titled “getCategorizedDocuments”Description:
| Method | Return values | Description |
|---|---|---|
| getCategorizedDocuments(String categoryId) | List |
Retrieves a list of all documents related with a category. |
The values of the categoryId parameter should be a category folder UUID or path.
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.Document;
public class Test { public static void main(String[] args) { String host = "http://localhost:8180/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (Document doc : ws.getCategorizedDocuments("/okm:categories/invoices")) { System.out.println(doc); } } catch (Exception e) { e.printStackTrace(); } }}saveSearch
Section titled “saveSearch”Description:
| Method | Return values | Description |
|---|---|---|
| saveSearch(QueryParams params) | Long | Saves a search parameters. |
The variable queryName of the parameter params, should have to be initialized.
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;import com.openkm.sdk4j.bean.QueryResult;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password); try { QueryParams qParams = new QueryParams(); qParams.setDomain(QueryParams.DOCUMENT); qParams.setName("test*.html"); for (QueryResult qr : ws.find(qParams,null)) { System.out.println(qr); } // Save the search to be used later qParams.setQueryName("sample search"); ws.saveSearch(qParams); } catch (Exception e) { e.printStackTrace(); } }}updateSearch
Section titled “updateSearch”Description:
| Method | Return values | Description |
|---|---|---|
| updateSearch(QueryParams params) | void | Updates a previously saved search parameters. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (QueryParams qParams : ws.getAllSearchs()) { if (qParams.getQueryName().equals("sample search")) { // Change some value. qParams.setName("admin*.html"); ws.updateSearch(qParams); } } } catch (Exception e) { e.printStackTrace(); } }}getSearch
Section titled “getSearch”Description:
| Method | Return values | Description |
|---|---|---|
| getSearch(int qpId) | QueryParams | Gets saved search parameters. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { int qpId = 12; // Some valid search id QueryParams qParams = ws.getSearch(qpId); System.out.println(qParams); } catch (Exception e) { e.printStackTrace(); } }}getAllSearchs
Section titled “getAllSearchs”Description:
| Method | Return values | Description |
|---|---|---|
| getAllSearchs() | List |
Retrieves a list of all saved search parameters. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;import com.openkm.sdk4j.bean.QueryParams;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { for (QueryParams qParams : ws.getAllSearchs()) { System.out.println(qParams); } } catch (Exception e) { e.printStackTrace(); } }}deleteSearch
Section titled “deleteSearch”Description:
| Method | Return values | Description |
|---|---|---|
| deleteSearch(int qpId) | void | Deletes a saved search parameters. |
Example:
package com.openkm;
import com.openkm.sdk4j.OKMWebservices;import com.openkm.sdk4j.OKMWebservicesFactory;
public class Test { public static void main(String[] args) { String host = "http://localhost:8080/OpenKM"; String username = "okmAdmin"; String password = "admin"; OKMWebservices ws = OKMWebservicesFactory.newInstance(host, username, password);
try { int qpId = 12; // Some valid search id ws.deleteSearch(qpId); } catch (Exception e) { e.printStackTrace(); } }}