in source/rest-api-handler/index.js [181:207]
function upsertEndpoints(projectID, endpoints, metadata) {
log.trace("upsertEndpoints...");
return new Promise((resolve, reject) => {
var userID = '';
endpoints.forEach(endpoint => {
if(endpoint.User.UserId) userID = endpoint.User.UserId;
});
if(!userID) userID = uuidv4(); //New user so generate a UUID
//Run these synchronously so we don't hammer the API
endpoints.reduce( (previousPromise, nextEndpoint) => {
return previousPromise.then(() => {
return upsertEndpoint(projectID, userID, nextEndpoint, metadata);
});
}, Promise.resolve())
.then(()=>{
log.debug(userID);
resolve(userID);
}).catch((err)=>{
log.error(err);
reject(err);
});
});
}