git ssb

0+

wanderer🌟 / js-primea-hypervisor



Commit 1171580743394a34306e2a12800ea5606f7e5d67

use new tree method in ipld-graph-builder

wanderer committed on 4/22/2017, 3:30:11 PM
Parent: aa1510bda0bef9b7d7261249e14f2f553ca0ed32

Files changed

index.jschanged
kernel.jschanged
package.jsonchanged
tests/index.jschanged
index.jsView
@@ -20,13 +20,15 @@
2020 const vm = this.getInstaceFromPort(portObj)
2121 vm.queue(message)
2222 }
2323
24- getVMFromPort (port) {
24+ async getVMFromPort (port) {
2525 const id = Kernel.id(port)
2626 let kernel = this._vms.get(id)
2727 if (!kernel) {
28- kernel = new Kernel(port)
28+ // load the container from the state
29+ await this.graph.tree(port, 2)
30+ kernel = new Kernel()
2931 kernel.on('idle', () => {
3032 this._vms.delete(id)
3133 })
3234 this._vms.set(id, kernel)
@@ -34,9 +36,13 @@
3436 }
3537
3638 // given a port, wait untill its source contract has reached the threshold
3739 // tick count
38- waitOnPort (port, ticks) {
39- let kernel = this.getVMFromPort(port)
40+ async waitOnPort (port, ticks) {
41+ let kernel = await this.getVMFromPort(port)
4042 return kernel.wait(ticks)
4143 }
44+
45+ addVM (container) {
46+ this._vms.type = container.type
47+ }
4248 }
kernel.jsView
@@ -11,10 +11,8 @@
1111 // set up the state
1212 this.opts = {}
1313 this._stateIndex = 0
1414 Object.assign(this.opts, opts)
15- // set up the vm
16- this.vm = (this.opts.codeHandler).init(this.opts.state)
1715 this.ports = new PortManager(this)
1816 this._waitingQueue = new PriorityQueue((a, b) => {
1917 return a.threshold > b.threshold
2018 })
package.jsonView
@@ -45,8 +45,9 @@
4545 "deepcopy": "^0.6.3",
4646 "ethereumjs-block": "^1.5.0",
4747 "ethereumjs-tx": "^1.2.5",
4848 "ethereumjs-util": "^5.1.0",
49+ "file-type": "^4.2.0",
4950 "fixed-bn.js": "0.0.2",
5051 "ipld-graph-builder": "1.0.1",
5152 "primea-message": "0.0.0",
5253 "primea-wasm-container": "0.0.0",
tests/index.jsView
@@ -1,0 +1,10 @@
1+const tape = require('tape')
2+const ipfs = require('ipfs')
3+const graph = require('ipld-graph-builder')
4+const Hypervisor = require('../')
5+
6+tape('base kernel tests', t => {
7+ const state = {}
8+ const hypervisor = new Hypervisor()
9+ t.equal()
10+})

Built with git-ssb-web