mirror of https://github.com/embarklabs/embark.git
EmbarkJS available
This commit is contained in:
parent
d772b4fdaf
commit
307b7dc8e7
|
@ -279,6 +279,7 @@ class EmbarkController {
|
||||||
engine.startService("storage");
|
engine.startService("storage");
|
||||||
engine.startService("codeGenerator");
|
engine.startService("codeGenerator");
|
||||||
engine.startService("webServer");
|
engine.startService("webServer");
|
||||||
|
engine.startService("namingSystem");
|
||||||
|
|
||||||
return callback();
|
return callback();
|
||||||
}
|
}
|
||||||
|
@ -315,6 +316,7 @@ class EmbarkController {
|
||||||
if(engine.ipc.connected && engine.ipc.isClient()) {
|
if(engine.ipc.connected && engine.ipc.isClient()) {
|
||||||
return callback();
|
return callback();
|
||||||
}
|
}
|
||||||
|
engine.config.reloadConfig();
|
||||||
engine.events.request('deploy:contracts', function (err) {
|
engine.events.request('deploy:contracts', function (err) {
|
||||||
callback(err);
|
callback(err);
|
||||||
});
|
});
|
||||||
|
|
|
@ -63,10 +63,7 @@ Config.prototype.loadConfigFiles = function(options) {
|
||||||
this.loadStorageConfigFile();
|
this.loadStorageConfigFile();
|
||||||
this.loadCommunicationConfigFile();
|
this.loadCommunicationConfigFile();
|
||||||
this.loadNameSystemConfigFile();
|
this.loadNameSystemConfigFile();
|
||||||
|
|
||||||
this.loadContractsConfigFile();
|
|
||||||
this.loadPipelineConfigFile();
|
this.loadPipelineConfigFile();
|
||||||
|
|
||||||
this.loadContractsConfigFile();
|
this.loadContractsConfigFile();
|
||||||
this.loadExternalContractsFiles();
|
this.loadExternalContractsFiles();
|
||||||
this.loadWebServerConfigFile();
|
this.loadWebServerConfigFile();
|
||||||
|
@ -82,7 +79,6 @@ Config.prototype.reloadConfig = function() {
|
||||||
this.loadStorageConfigFile();
|
this.loadStorageConfigFile();
|
||||||
this.loadCommunicationConfigFile();
|
this.loadCommunicationConfigFile();
|
||||||
this.loadNameSystemConfigFile();
|
this.loadNameSystemConfigFile();
|
||||||
this.loadContractsConfigFile();
|
|
||||||
this.loadPipelineConfigFile();
|
this.loadPipelineConfigFile();
|
||||||
this.loadContractsConfigFile();
|
this.loadContractsConfigFile();
|
||||||
this.loadExternalContractsFiles();
|
this.loadExternalContractsFiles();
|
||||||
|
|
|
@ -1,5 +1,9 @@
|
||||||
const RunCode = require('./runCode.js');
|
const RunCode = require('./runCode.js');
|
||||||
const EmbarkJS = require('embarkjs');
|
const EmbarkJS = require('embarkjs');
|
||||||
|
const IpfsApi = require('ipfs-api');
|
||||||
|
const Web3 = require('web3');
|
||||||
|
const namehash = require('eth-ens-namehash');
|
||||||
|
|
||||||
class CodeRunner {
|
class CodeRunner {
|
||||||
constructor(options) {
|
constructor(options) {
|
||||||
this.plugins = options.plugins;
|
this.plugins = options.plugins;
|
||||||
|
@ -26,6 +30,9 @@ class CodeRunner {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
|
this.runCode.registerVar('IpfsApi', IpfsApi);
|
||||||
|
this.runCode.registerVar('Web3', Web3);
|
||||||
|
this.runCode.registerVar('namehash', namehash);
|
||||||
this.runCode.registerVar('EmbarkJS', EmbarkJS);
|
this.runCode.registerVar('EmbarkJS', EmbarkJS);
|
||||||
this.events.on('code-generator-ready', () => {
|
this.events.on('code-generator-ready', () => {
|
||||||
this.events.request('code-generator:embarkjs:initialization-code', (code) => {
|
this.events.request('code-generator:embarkjs:initialization-code', (code) => {
|
||||||
|
|
|
@ -9,7 +9,7 @@ class RunCode {
|
||||||
try {
|
try {
|
||||||
return vm.runInNewContext(code, this.context);
|
return vm.runInNewContext(code, this.context);
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
console.log(e)
|
console.log(e.message)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,6 +19,8 @@ class RunCode {
|
||||||
// /*global web3*/
|
// /*global web3*/
|
||||||
if (varName === 'web3') {
|
if (varName === 'web3') {
|
||||||
global.web3 = code;
|
global.web3 = code;
|
||||||
|
} else if (varName === 'namehash') {
|
||||||
|
global.namehash = code;
|
||||||
}
|
}
|
||||||
this.context[varName] = code;
|
this.context[varName] = code;
|
||||||
}
|
}
|
||||||
|
|
|
@ -350,16 +350,22 @@ class CodeGenerator {
|
||||||
code += plugin.embarkjs_code.join('\n');
|
code += plugin.embarkjs_code.join('\n');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const codeTypes = {'communication': this.communicationConfig,
|
||||||
|
'names': this.namesystemConfig,
|
||||||
|
'storage': this.storageConfig};
|
||||||
|
|
||||||
let initCodes = this.plugins.getPluginsFor('initCode');
|
let initCodes = this.plugins.getPluginsFor('initCode');
|
||||||
for (let plugin of initCodes) {
|
for (let plugin of initCodes) {
|
||||||
let initCodes = plugin.embarkjs_init_code['communication'] || [];
|
for (let codeTypeName of Object.keys(codeTypes)) {
|
||||||
|
let initCodes = plugin.embarkjs_init_code[codeTypeName] || [];
|
||||||
for (let initCode of initCodes) {
|
for (let initCode of initCodes) {
|
||||||
let [block, shouldInit] = initCode;
|
let [block, shouldInit] = initCode;
|
||||||
if (shouldInit.call(plugin, this.communicationConfig)) {
|
if (shouldInit.call(plugin, codeTypes[codeTypeName])) {
|
||||||
code += block;
|
code += block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
|
@ -307,7 +307,6 @@ class ENS {
|
||||||
}
|
}
|
||||||
|
|
||||||
addSetProvider(config) {
|
addSetProvider(config) {
|
||||||
|
|
||||||
let code = "\nEmbarkJS.Names.setProvider('ens'," + JSON.stringify(config) + ");";
|
let code = "\nEmbarkJS.Names.setProvider('ens'," + JSON.stringify(config) + ");";
|
||||||
|
|
||||||
let shouldInit = (namesConfig) => {
|
let shouldInit = (namesConfig) => {
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
/*global web3*/
|
/*global web3, namehash*/
|
||||||
const namehash = require('eth-ens-namehash');
|
|
||||||
|
|
||||||
function registerSubDomain(ens, registrar, resolver, defaultAccount, subdomain, rootDomain, reverseNode, address, logger, secureSend, callback) {
|
function registerSubDomain(ens, registrar, resolver, defaultAccount, subdomain, rootDomain, reverseNode, address, logger, secureSend, callback) {
|
||||||
const subnode = namehash.hash(subdomain);
|
const subnode = namehash.hash(subdomain);
|
||||||
|
|
Loading…
Reference in New Issue