OKMImport
Conceptos básicos
Sección titulada «Conceptos básicos»En la mayoría de los métodos verá un parámetro llamado “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 llamado “token”. Dado que las tareas cron se ejecutan en segundo plano sin autenticación, los métodos utilizados en este escenario pueden usar 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 nuevo documento. |
- El parámetro parentUuid debe ser un UUID válido de carpeta o registro.
- El parámetro file es el archivo 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 |
|---|---|---|
| createFolder(String token, String parentUuid, String fldName) | NodeFolder | Crea una nueva carpeta. |
- El parámetro parentUuid debe ser un UUID válido de carpeta o registro.
- 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 nuevo registro. |
- El parámetro parentUuid debe ser un UUID válido de carpeta o registro.
- El parámetro recName es el nombre del registro.
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 nuevo correo. |
- El parámetro parentUuid debe ser un UUID válido de carpeta o registro.
- El parámetro file es el archivo 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 un UUID válido de carpeta o registro.
- El valor threads establece el número de hilos concurrentes utilizados por la funcionalidad de importación. Este valor nunca debe superar el número de núcleos del servidor. Si tiene 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, el sistema operativo, etc., también utiliza 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(); } }}