OKMRecord
Basics
On almost methods you'll see parameter named "recId". The value of this parameter can be some valid record UUID.
Example of recId:
- Using UUID -> "7f867772-7476-4176-b86f-bdeb8bce1c5f";
Also on all methods you'll see parameter named "token". Because the Cron Task are executed in background without authentication, the methods used in this scenario might use the token parameter. From default application execution context you must use "null" value what indicates to the application must use the "user session".
On special cases you might be "promoted as Administrator" using the "administrator token".
String systemToken = DbSessionManager.getInstance().getSystemToken();
Methods
create
Description:
Method | Return values | Description |
---|---|---|
create(String token, Record rec) |
Record |
Creates a new record and returns as a result an object Record. |
The variable path into the parameter rec, must be initializated. It indicates the folder path into OpenKM.
The other variables of the Record ( rec ) will not take any effect on the record creation. We suggest using the method below to create the Record Simply rather this one. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
Record rec = new Record();
rec.setPath("/okm:root/test");
okmRecord.create(null, rec);
} catch (Exception e) {
e.printStackTrace();
}
}
}
createSimple
Description:
Method | Return values | Description |
---|---|---|
createSimple(String token, String recPath) |
Record |
Creates a new record and returns as a result an object Record. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
String recPath = "/okm:root/PKI-100200";
okmRecord.createSimple(null, recPath);
} catch (Exception e) {
e.printStackTrace();
}
}
}
getProperties
Description:
Method | Return values | Description |
---|---|---|
getProperties(String token, String recId) |
Record |
Return the record properties. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
Record rec = okmRecord.getProperties(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
System.out.println(rec);
} catch (Exception e) {
e.printStackTrace();
}
}
}
delete
Description:
Method | Return values | Description |
---|---|---|
delete(String token, String recId) |
void |
Delete a record. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.delete(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
} catch (Exception e) {
e.printStackTrace();
}
}
}
purge
Description:
Method | Return values | Description |
---|---|---|
purge(String token, String recId) |
void |
The record is definitely removed from the repository. |
Usually you will purge folders into /okm:trash/userId - the personal trash user locations - but it is possible to directly purge any record from the whole repository. When a record is purged, it will only be able to be restored from a previously repository backup. The purge action removes the record definitely from the repository. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.purge(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
} catch (Exception e) {
e.printStackTrace();
}
}
}
rename
Description:
Method | Return values | Description |
---|---|---|
rename(String token, String recId, String newName) |
Record |
Rename a record. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.rename(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "newname");
} catch (Exception e) {
e.printStackTrace();
}
}
}
move
Description:
Method | Return values | Description |
---|---|---|
move(String token, String recId, String dstId) |
void |
Moves record into some folder or record |
The values of the dstId parameter should be a folder or record UUID. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.move(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6");
} catch (Exception e) {
e.printStackTrace();
}
}
}
copy
Description:
Method | Return values | Description |
---|---|---|
copy(String token, String recId, String dstId) |
void |
Copies a record into a folder or record. |
The values of the dstId parameter should be a folder or record UUID. Only the binary data and the security grants are copied to destination, the metadata, keywords, etc. of the document are not copied. See "extendedCopy" method for this feature. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.copy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6");
} catch (Exception e) {
e.printStackTrace();
}
}
}
copy
Description:
Method | Return values | Description |
---|---|---|
copy(String token, String recId, String dstId, String newName) |
void |
Copies a record into a folder or record. |
The values of the dstId parameter should be a folder or record UUID. When parameter newName value is null, folder will preservate the same name. Only the binary data and the security grants are copied to destination, the metadata, keywords, etc. of the document are not copied. See "extendedCopy" method for this feature. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.copy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b6848ac2-345f-454e-964a-eba4dcc020e6", "newname");
} catch (Exception e) {
e.printStackTrace();
}
}
}
extendedCopy
Description:
Method | Return values | Description |
---|---|---|
extendedCopy(String token, String recId, String dstId, String newName, ExtendedAttributes extAttr) |
void |
Copies a record with associated data into some folder or record. |
The values of the dstId parameter should be a folder or a record UUID. When the parameter newName value is null, the record will preserve the same name. By default only the binary data and the security grants, the metadata, keywords, etc. of the document are not copied. Additional:
|
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.bean.ExtendedAttributes;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
ExtendedAttributes extAttr = new ExtendedAttributes();
extAttr.setKeywords(true);
extAttr.setCategories(true);
extAttr.setNotes(true);
okmRecord.extendedCopy(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "b67fe3ae-bcca-4947-b8ea-0cc7aedd4474", "PKI-100201", extAttr);
} catch (Exception e) {
e.printStackTrace();
}
}
}
isValid
Description:
Method | Return values | Description |
---|---|---|
isValid(String token, String recId) |
boolean |
Returns a boolean that indicates if the node is a record or not. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
boolean valid = okmRecord.isValid(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
System.out.println(valid);
} catch (Exception e) {
e.printStackTrace();
}
}
}
getPath
Description:
Method | Return values | Description |
---|---|---|
getPath(String token, String recId) |
String |
Convert folder UUID to record path. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
String path = okmRecord.getPath(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
System.out.println(path);
} catch (Exception e) {
e.printStackTrace();
}
}
}
getChildren
Description:
Method | Return values | Description |
---|---|---|
getChildren(String token, String fldId) |
List<Record> |
Returns a list of all records which their parent is fldId. |
The parameter fldId can be a folder or a record node. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.bean.Record;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
for (Record rec : okmRecord.getChildren(null, "b6848ac2-345f-454e-964a-eba4dcc020e6")) {
System.out.println(rec);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
lock
Description:
Method | Return values | Description |
---|---|---|
lock(String token, String recId) |
LockInfo |
Locks a record and return an object with the Lock information. |
Only the user who locked the record is allowed to unlock. A locked record can not be modified by other users. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.lock(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
} catch (Exception e) {
e.printStackTrace();
}
}
}
unlock
Description:
Method | Return values | Description |
---|---|---|
unlock(String token, String recId) |
LockInfo |
Unlock a locked record. |
Only the user who locked the record is allowed to unlock. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.unlock(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
} catch (Exception e) {
e.printStackTrace();
}
}
}
forceUnlock
Description:
Method | Return values | Description |
---|---|---|
forceUnlock(String token, String recId) |
void |
Unlock a locked record. |
This method allows to unlock any locked record. It is not mandatory to execute this action by the same user who previously executed the checkout lock action. This action can only be done by a super user ( user with ROLE_ADMIN ). |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.forceUnlock(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f");
} catch (Exception e) {
e.printStackTrace();
}
}
}
setTitle
Description:
Method | Return values | Description |
---|---|---|
setTitle(String token, String recId, String title) |
void |
Sets a record title. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.setTitle(null, "7f867772-7476-4176-b86f-bdeb8bce1c5f", "new title");
} catch (Exception e) {
e.printStackTrace();
}
}
}
setNodeClass
Description:
Method | Return values | Description |
---|---|---|
setNodeClass(String token, String recId, long ncId) |
void |
Set the NodeClass. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
long ncId = 2;
okmRecord.setNodeClass(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", ncId);
} catch (Exception e) {
e.printStackTrace();
}
}
}
setDispositionStage
Description:
Method | Return values | Description |
---|---|---|
setDispositionStage(String token, String recId, long stage) |
void |
Set the disposition stage |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
long stage = 1;
okmRecord.setDispositionStage(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", stage);
} catch (Exception e) {
e.printStackTrace();
}
}
}
addNodeClassChildren
Description:
Method | Return values | Description |
---|---|---|
addNodeClassChildren(String token, String recId, long ncId) |
void |
Add NodeClass of the record in the folder parents. |
Used for navigation purposes to evaluating when a folder contains a node of type node class. The method propagate the node class value in the parent containers ( folders ) to indicate there's a node of this type. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
long ncId = 2;
okmRecord.addNodeClassChildren(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", ncId);
} catch (Exception e) {
e.printStackTrace();
}
}
}
setDescription
Description:
Method | Return values | Description |
---|---|---|
setDescription(String token, String uuid, String description) |
void |
Set a description. |
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
okmRecord.setDescription(null, "7ce1b4a8-4ade-4dce-8d7d-4e99a6cd368b", "some description");
} catch (Exception e) {
e.printStackTrace();
}
}
}
createWizard
Description:
Method | Return values | Description |
---|---|---|
createWizard(String token, String recPath, String title, long nodeClass) |
WizardNode |
Create a new record with wizard. |
The parameters recPath should be any valid folder or record UUID The WizardNode contains a list of pending actions what should be done to complete the process of record creation. These might be:
|
Example:
package com.openkm;
import com.openkm.api.OKMRecord;
import com.openkm.bean.WizardNode;
import com.openkm.util.ContextWrapper;
public class Test {
public static void main(String[] args) {
try {
OKMRecord okmRecord = ContextWrapper.getContext().getBean(OKMRecord.class);
WizardNode wn = okmRecord.createWizard(null, "1f323e88-64ee-4f57-91e2-9276f8c603f9", "PKI-100200", 0);
System.out.print(wn);
} catch (Exception e) {
e.printStackTrace();
}
}
}