Commands
documentation in progress
modify
Description
Modify simple objects and attributes or even complete graphs
Parameters
poidOPTIONAL. The oid of the parent object which this command will function on. Defaults to '0', the root of your database.
dataArray of objects with each sub-object being another array of objects. The first array entry under any object or atribute is the SubCommand for that object or attribute: (e.g. add, put, remove).
Simple Example
In this example, we set the value of text attribute "companyName" under object "0" to "ABC Inc."
{"modify": { "poid":"0", "data":[{"s:companyName": "ABC Inc."}] }}
Graph Example
{"modify": { "cmdid":"1234", "poid":"0", "data":[ {"s:companyName": "ABC Inc."}, {"s:companyPhone": "100-200-3000"}, {"o:person": [ {"add":{}}, {"s:firstName": "Ian"}, {"s:lastName": "Redy"}, {"o:address": [ {"add":{}}, {"s:name": "home"}, {"s:street": "123 N Main St."}, {"s:city": "Rochester"}, {"s:state": "NY"}, {"s:pcode": "14604"} ]}, ]}, ] }}
SubCommand: add
Add this object under the current parent.
Parameters: none
Example - add a "person" object to parent
... {"o:person": [ {"add":{}}, ...
SubCommand: put
Add a new object under given position or update if it already exists.
Parameters:
match OPTIONAL. The filter used to find the matching object which will be updated. Results in an error if more than one object matches. Defaults to open query under this current object attribute, which means this object must be a singleton under it's parent attribute.

Example: $s:phone.name='home'
poid OPTIONAL. Only applies if 'match' is specified. Indicates where to initiate the match under. If unspecified, then the match is conducted under the current parent object. If specified as '0', then match is conducted under the root of your database. If '-1' is specified (no parent) then a 'global' match is performed against any matching attribute name across all possible parent objects in database.
SubCommand: update
Update an pre-existing object.
Parameters:
match REQUIRED. The filter used to find the matching object which will be updated.
Results in an error if the object is not found or if more than one object matches.
poid OPTIONAL. Only applies if 'match' is specified. Indicates where to initiate the match under. If unspecified, then the match is conducted under the current parent object. If specified as '0', then match is conducted under the root of your database. If '-1' is specified (no parent) then a 'global' match is performed against any matching attribute name across all possible parent objects in database.
SubCommand: remove
Remove an object.
Parameters:
matchOPTIONAL. The filter used to find the matching object which will be updated. Results in an error if more than one object matches. Defaults to open query under this current object attribute, which means this object must be a singleton under it's parent attribute.

Example: $s:phone.name='home'
delay OPTIONAL. The amount of time the newly removed object/attribute will remain in the database until permanently removed. Default: no value, permanently remove immediately. Format: Any valid date shortcut.
query
documentation needed - see demo page for working example
export
documentation needed - see demo page for working example
beginTransaction
documentation needed - see demo page for working example
commitTransaction
documentation needed - see demo page for working example
rollbackTransaction
documentation needed
rename
documentation needed
showAttributes
documentation needed - see demo page for working example
initSeq
documentation needed
getSeq
documentation needed
getSeqBatch
documentation needed
print
documentation needed
println
documentation needed
move
documentation needed
copy
documentation needed
startTimer
documentation needed - see demo page for working example
stopTimer
documentation needed - see demo page for working example
getElapsedTimeMillis
documentation needed - see demo page for working example
getConfig
documentation needed
setConfig
documentation needed