Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core JavaScript-API
Diese Bibliothek bietet Funktionen, um auf einen beliebigen CMIS-Server zuzugreifen.
let cmis = require('common/cmis'); let session = cmis.connect('https://cmis-server/cmis/atom', 'user', 'password', 'repository');
cmis.connect(<server>, <user>, <password>, <repository>);
Parameter | Beschreibung |
---|---|
server | Definiert die URL zum atom-/pub-Service des CMIS-Servers. |
user | Definiert den Benutzernamen des CMIS-Servers. |
password | Definiert das Passwort des CMIS-Servers. |
repository | Definiert das Repository des CMIS-Servers. |
Sie erhalten ein session-Objekt zurück, das Sie für alle Funktionen verwenden können, die die CMIS Client-Bibliothek anbietet. Der Zugriff erfolgt über den Apache Chemistry CMIS Client.
Dieses Beispiel greift auf den in agorum core integrierten CMIS-Server zu und dort auf das Repository dms.
let cmis = require('common/cmis'); let session = cmis.connect('https://agorum-core-server/cmis/atom', 'agorum-user', 'agorum-password', 'dms');
Lädt ein Objekt anhand seiner ID.
Beispiel
cmis.get(session, 'cmis-id');
Parameter
Parameter | Beschreibung |
---|---|
session | Definiert die CMIS-Session. Holen Sie die CMIS-Sessions zuvor über cmis.connect. |
id | Definiert die CMIS-ID des Objekts, das das System holt. Deren Aufbau ist vom jeweiligen CMIS-Server abhängig. Im Falle des agorum core CMIS-Servers ist dies etwa die ID eines Objekts. |
Return
Sie erhalten das CMIS-Objekt zurück, mit dem Sie weitere Abfragen durchführen können. Sie können somit alle weiteren Funktionen der CMIS Client-API verwenden.
Holt die Objekte eines Ordners.
Beispiel
let start = 0; let limit = 10; let folder = session.rootFolder; let items = cmis.items(session, folder, start, limit);
Parameter
Parameter | Beschreibung | Standard |
---|---|---|
session | Definiert die CMIS-Session. Holen Sie die CMIS-Sessions zuvor über cmis.connect. |
– |
folder | Definiert das CMIS Ordner-Objekt, von dem das System die Unterelemente holt. | – |
start | Definiert den Start-Index, ab dem das System die Objekte holt. | 0 (ab dem ersten Element, kann für Pagination verwendet werden) |
limit | Definiert die maximale Anzahl, die das System mit einem Aufruf zurückgibt. | 10 (In Kombination mit start kann durch eine große Ergebnismenge stückweise durchgegangen werden.) |
Return
Sie erhalten ein Iterable zurück.
Beispiel: Namen aller items holen
let names = items.map(i => { return i.name; });
Erstellt einen Ordner.
Beispiel
let folder = session.rootFolder; // Anlage des neuen Ordners im root let data = { 'cmis:objectTypeId': 'cmis:folder', // optional, Standard ist cmis:folder 'cmis:name': 'Testordner 1' // Pflichtfeld name }; cmis.createFolder(session, folder, data);
Parameter
Parameter | Beschreibung | Pflichtfeld |
---|---|---|
session | Definiert die CMIS-Session. Holen Sie die CMIS-Sessions zuvor über cmis.connect. |
– |
folder | Definiert das CMIS Ordner-Objekt, in dem das System den neuen Ordner erstellt. | – |
data | Definiert die Daten zur Anlage des Ordners. | – |
cmis:name | Definiert den Namen des neuen Ordners. | ja |
cmis:objectTypeId | Definiert ein vom Server unterstützten Ordnertyp (Standard: cmis:folder). |
nein |
weitere Parameter | Gibt in Abhängigkeit des jeweiligen Typs weitere Daten mit. | nein |
Return
Sie erhalten das neu angelegte CMIS Ordner-Objekt.
Erstellt ein neues Dokument.
let folder = session.rootFolder; // Anlage des neuen Dokuments im root let data = { 'cmis:objectTypeId': 'cmis:document', // optional, Standard ist cmis:document 'cmis:name': 'test1.txt' // Pflichtfeld name }; let content = { string: 'Dies ist der Inhalt' }; cmis.createDocument(session, folder, data, content);
Parameter
Parameter | Beschreibung | Pflichtfeld |
---|---|---|
session | Definiert die CMIS-Session. Holen Sie die CMIS-Sessions zuvor über cmis.connect. |
– |
folder | Definiert das CMIS Ordner-Objekt, in dem das System das neue Dokument erstellt. | – |
data | Definiert die Daten zur Anlage des Dokuments. | – |
cmis:name | Definiert den Namen des neuen Dokuments. | ja |
cmis:objectTypeId | Definiert ein vom Server unterstützten Dokumententyp. | nein |
weitere Parameter | Gibt in Abhängigkeit des jeweiligen Typs weitere Daten mit. | nein |
content | Definiert den Content, den das System mitliefert.
|
nein |
string | Definiert den Inhalt des Dokuments als Text. | nein |
stream | Definiert den Inhalt des Dokuments als InputStream. | ja nein* * nur wenn string angegeben ist |
length | Definiert die Anzahl Bytes des Contents. | ja* nein * nur wenn stream angegeben ist |
mineType | Definiert den Mimetype des Dokuments. Beispiel text/plain |
ja* nein * nur wenn stream angegeben ist |
Beispiel mit stream: agorum core-Objekt auf einen CMIS-Server hochladen
let objects = require('common/objects'); let acObject = objects.find('id-des-agorum-core-objectes'); let folder = session.rootFolder; // Anlage des neuen Dokuments im root let data = { 'cmis:objectTypeId': 'cmis:document', // optional, default ist cmis:document 'cmis:name': acObject.name // Pflichtfeld name }; let content = { stream: acObject.contentStream, length: acObject.contentSize, mimeType: 'application/pdf' }; cmis.createDocument(session, folder, data, content);
Return
Sie erhalten das neu angelegte CMIS Dokumenten-Objekt.
Sie können alle in der Bibliothek Apache Chemistry OpenCMIS-Client enthaltenen Funktionen und Methoden verwenden.