OKMImport
Conceptos básicos
Sección titulada «Conceptos básicos»En casi todos los métodos verá un parámetro denominado “parentUuid”. El valor de este parámetro puede ser el UUID de un nodo de documento válido.
Además, en todos los métodos verá un parámetro denominado “token”. Dado que las tareas cron 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»createDocument
Sección titulada «createDocument»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createDocument(String token, String parentUuid, String docName, File file) | NodeDocument | Crea un documento nuevo. |
- El parámetro parentUuid debe ser el UUID de una carpeta o de un expediente válido.
- El parámetro file es el fichero del documento.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMImport;import com.openkm.db.bean.NodeDocument;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMImport okmImport = ContextWrapper.getContext().getBean(OKMImport.class); File doc = new File("/home/openkm/sample.pdf"); NodeDocument nodeDoc = okmImport.createDocument(null, "0a19e616-1d11-4ef7-a7c7-f1e109f8ea3c", "document.pdf", file); System.out.println(nodeDoc); } catch (Exception e) { e.printStackTrace(); } }}createFolder
Sección titulada «createFolder»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createDocument(String token, String parentUuid, String fldName) | NodeFolder | Crea una carpeta nueva. |
- El parámetro parentUuid debe ser el UUID de una carpeta o de un expediente válido.
- El parámetro fldName es el nombre de la carpeta.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMImport;import com.openkm.db.bean.NodeFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMImport okmImport = ContextWrapper.getContext().getBean(OKMImport.class); NodeFolder nodeFld = okmImport.createFolder(null, "0a19e616-1d11-4ef7-a7c7-f1e109f8ea3c", "newFolderName"); System.out.println(nodeFld); } catch (Exception e) { e.printStackTrace(); } }}createRecord
Sección titulada «createRecord»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createRecord(String token, String parentUuid, String recName) | NodeRecord | Crea un expediente nuevo. |
- El parámetro parentUuid debe ser el UUID de una carpeta o de un expediente válido.
- El parámetro recName es el nombre del expediente.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMImport;import com.openkm.db.bean.NodeRecord;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMImport okmImport = ContextWrapper.getContext().getBean(OKMImport.class); NodeRecord nodeRec = okmImport.createRecord(null, "0a19e616-1d11-4ef7-a7c7-f1e109f8ea3c", "newRecordName"); System.out.println(nodeRec); } catch (Exception e) { e.printStackTrace(); } }}createMail
Sección titulada «createMail»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| createMail(String token, String parentUuid, File file) | NodeMail | Crea un correo nuevo. |
- El parámetro parentUuid debe ser el UUID de una carpeta o de un expediente válido.
- El parámetro file es el fichero del correo.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMImport;import com.openkm.db.bean.NodeMail;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMImport okmImport = ContextWrapper.getContext().getBean(OKMImport.class); NodeMail nodeMail = okmImport.createMail(null, "0a19e616-1d11-4ef7-a7c7-f1e109f8ea3c", "newMailName"); System.out.println(nodeMail); } catch (Exception e) { e.printStackTrace(); } }}importFolder
Sección titulada «importFolder»Descripción:
| Método | Valores devueltos | Descripción |
|---|---|---|
| importFolder(String token, String parentUuid, File folder, int threads) | void | Importa una jerarquía de carpetas local. |
- El parámetro parentUuid debe ser el UUID de una carpeta o de un expediente válido.
- El valor threads establece el número de hilos concurrentes que utiliza la funcionalidad de importación. Este valor nunca debe ser superior al número de núcleos del servidor. Si dispone de 20 núcleos, un buen punto de partida podría ser utilizar 10 hilos; tenga en cuenta que otro software, como la base de datos y el sistema operativo, también está utilizando el hardware.
Ejemplo:
package com.openkm;
import java.io.FileInputStream;import java.io.InputStream;
import org.apache.commons.io.IOUtils;
import com.openkm.api.OKMImport;import com.openkm.db.bean.NodeFolder;import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) { try { OKMImport okmImport = ContextWrapper.getContext().getBean(OKMImport.class); File fld = new File("/home/openkm/import/"); okmImport.importFolder(null, "0a19e616-1d11-4ef7-a7c7-f1e109f8ea3c", fld, 4); } catch (Exception e) { e.printStackTrace(); } }}