starting to implement new sharedObjects idea

This commit is contained in:
Kevin Jahns 2015-11-30 15:56:45 +01:00
parent f6c5051472
commit 8d14a9cbba
2 changed files with 12 additions and 13 deletions

View File

@ -186,10 +186,13 @@ module.exports = function (Y /* :any */) {
}
}
getNextOpId () {
if (this.userId == null) {
if (this._temporaryUserIdGenerator != null) {
return this._temporaryUserIdGenerator()
} else if (this.userId == null) {
throw new Error('OperationStore not yet initialized!')
} else {
return [this.userId, this.opClock++]
}
return [this.userId, this.opClock++]
}
/*
Apply a list of operations.

View File

@ -111,18 +111,14 @@ class YConfig {
this.connector = new Y[opts.connector.name](this, opts.connector)
this.db.requestTransaction(function * requestTransaction () {
// create initial Map type
var model = {
id: ['_', 0],
struct: 'Map',
type: 'Map',
map: {}
this.store._temporaryUserIdGenerator = function () {
return ['_', 0]
}
yield* this.store.tryExecute.call(this, model)
var root = yield* this.getType(model.id)
this.store.y.root = root
setTimeout(function () {
callback()
}, 0)
var typeid = yield* Y.Map.createType.call(this)
var type = yield* this.getType(typeid)
this.store.y.root = type
this.store._temporaryUserIdGenerator = null
setTimeout(callback, 0)
})
}
isConnected () {