Use the new error building system

This commit is contained in:
Esteban Ordano 2015-01-20 11:16:15 -03:00
parent 6550bba657
commit b47526fb42
4 changed files with 9 additions and 61 deletions

8
lib/errors.js Normal file
View File

@ -0,0 +1,8 @@
'use strict';
var spec = {
name: 'P2P',
message: 'Internal Error on bitcore-p2p Module {0}'
};
module.exports = require('bitcore').errors.extend(spec);

View File

@ -1,47 +0,0 @@
'use strict';
var _ = require('lodash');
var fs = require('fs');
var defineElement = function(fullName, baseClass, message) {
return fullName + ' = function() {\n' +
' this.message = ' + message + ';\n' +
' this.stack = this.message + \'\\n\' + (new Error()).stack;\n' +
'};\n' +
fullName + '.prototype = Object.create(' + baseClass + '.prototype);\n' +
fullName + '.prototype.name = "' + fullName + '";\n\n';
};
var traverseNode = function(baseClass, errorDefinition) {
var className = baseClass + '.' + errorDefinition.name;
var generated = defineElement(className, baseClass, errorDefinition.message);
if (errorDefinition.errors) {
generated += childDefinitions(className, errorDefinition.errors);
}
return generated;
};
/* jshint latedef: false */
var childDefinitions = function(parent, childDefinitions) {
var generated = '';
_.each(childDefinitions, function(childDefinition) {
generated += traverseNode(parent, childDefinition);
});
return generated;
};
/* jshint latedef: true */
var traverseRoot = function(errorsDefinition) {
var fullName = 'bitcore.errors';
var generated = '\'use strict\';\n\n';
generated += '/* jshint maxlen: 300 */\n';
generated += '/* jshint quotmark: false */\n';
generated += '/* AUTOGENERATED FILE. DON\'T EDIT, MODIFY "lib/errors/spec.js" INSTEAD */\n\n';
generated += 'var bitcore = require(\'bitcore\');\n\n';
generated += childDefinitions(fullName, errorsDefinition);
generated += 'module.exports = bitcore.errors;\n';
return generated;
};
var data = require('./spec');
fs.writeFileSync(__dirname + '/index.js', traverseRoot(data));

View File

@ -1,13 +0,0 @@
'use strict';
function format(arg) {
return '\'' + arg
.replace('{0}', '\' + arguments[0] + \'')
.replace('{1}', '\' + arguments[1] + \'')
.replace('{2}', '\' + arguments[2] + \'') + '\'';
}
module.exports = [{
name: 'P2P',
message: format('Internal Error on bitcore-p2p Module {0}')
}];

View File

@ -59,7 +59,7 @@
"socks5-client": "^0.3.6"
},
"devDependencies": {
"bitcore-build": "=0.4.2",
"bitcore-build": "^0.4.2",
"brfs": "^1.2.0",
"chai": "~1.10.0",
"gulp": "^3.8.10",