added option *generateUserId* in abstract connector

This commit is contained in:
Kevin Jahns
2017-03-06 13:27:04 +01:00
parent 922637930f
commit f996ac83d2
3 changed files with 18 additions and 10 deletions

View File

@@ -59,6 +59,9 @@ module.exports = function (Y/* :any */) {
this.protocolVersion = 11
this.authInfo = opts.auth || null
this.checkAuth = opts.checkAuth || function () { return Promise.resolve('write') } // default is everyone has write access
if (opts.generateUserId === true) {
this.setUserId(Y.utils.generateGuid())
}
}
resetAuth (auth) {
if (this.authInfo !== auth) {

View File

@@ -752,4 +752,9 @@ module.exports = function (Y /* : any*/) {
return SmallLookupBuffer
}
Y.utils.createSmallLookupBuffer = createSmallLookupBuffer
// Generates a unique id, for use as a user id.
// Thx to @jed for this script https://gist.github.com/jed/982883
function generateGuid(a){return a?(a^Math.random()*16>>a/4).toString(16):([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g,generateGuid)} // eslint-disable-line
Y.utils.generateGuid = generateGuid
}