ppsService.write()

Write data to a PPS object file

Signature

ppsService.write(fd, jsonobject, errorlistener);

Arguments

Argument Type Description
fd Integer A file descriptor with write permission, returned by ppsService.open(). Required.
jsonobject JSON The PPS data in JSON object format to be published. Required.
errorlistener Function The callback function that gets called if an error occurs. Required. See errorListener() for details.

Description

The ppsService.write() method writes data to the PPS object represented by the file descriptor specified in the fd argument. The data should be in JSON object format. Before ppsService.write() applies the PPS data to the native PPS object, it parses the JSON object and encodes it again in native PPS data format, using PPS encoding APIs.

Returns

True on success, false otherwise.

Examples

var PATH = '/pps/person';

var errorHandler = function(fd, errorID, errorMessage) {
   // handle the error
   console.log('FD: %d, Error ID: %d, Message: %s.', fd, errorID, errorMessage);
}

// open for write, create the file if it does not exist.
var fd_wrt = ppsService.open(PATH, ppsService.FLAG_WRONLY | ppsService.FLAG_CREAT | 
                                   ppsService.MODE_TRUNC, ppsService.MODE_IRWXU | 
                                   ppsService.MODE_IRWXG | ppsService.MODE_IRWXO, 
                                   errorHandler);
if (fd_wrt < 1) {
   console.log('Open for write failed.');
}

// write PPS data
var PPS_DATA = { "name":"John", "age":31, "city":"New York" };
if (fd_wrt > 1 && !ppsService.write(fd_wrt, PPS_DATA, errorHandler)) {
   console.log('Write PPS data failed, FD: %d.', fd_wrt);
}

// delete PPS object attribute
var PPS_ATTRIBUTES_TO_DELETE = { "-age":31, "-city":"New York" };
if (fd_wrt > 1 && !ppsService.write(fd_wrt, PPS_ATTRIBUTES_TO_DELETE, errorHandler)) {
   console.log('Delete PPS attributes failed, FD: %d.', fd_wrt);
}

// make PPS object attribute non-persistent
var PPS_ATTRIBUTES_NONPERSISTENT = { "[n]name":"John" };
   if (fd_wrt > 1 && !ppsService.write(fd_wrt, PPS_ATTRIBUTES_NONPERSISTENT, errorHandler)) {
   console.log('Make PPS attribute non-persistent failed, FD: %d.', fd_wrt);
}