node: refactor opt parsing.

This commit is contained in:
Christopher Jeffrey 2016-08-26 01:14:02 -07:00
parent 09d699109e
commit 311b0f905f
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD
2 changed files with 12 additions and 12 deletions

View File

@ -47,7 +47,7 @@ config.parse = function parse(options) {
var env = {};
var arg = {};
var data = {};
var text, prefix, filename, dirname;
var conf, prefix, filename, dirname;
if (!options)
options = {};
@ -72,8 +72,8 @@ config.parse = function parse(options) {
filename = resolve(prefix, 'bcoin.conf');
dirname = utils.normalize(filename, true);
text = config.readConfig(filename, prefix, dirname);
data = merge(text, data);
conf = config.readConfig(filename, prefix, dirname);
data = merge(conf, data);
prefix = config.getPrefix(data);
@ -88,6 +88,10 @@ config.parse = function parse(options) {
}
}
// Force fast properties
// after all those merges.
utils.fastProp(data);
return data;
};

View File

@ -26,7 +26,10 @@ function Node(options) {
AsyncObject.call(this);
options = this._parseOptions(options);
if (!options)
options = {};
options = this.parseOptions(options);
this.options = options;
this.network = bcoin.network.get(options.network);
@ -161,12 +164,7 @@ Node.prototype._error = function _error(err) {
* @returns {Object}
*/
Node.prototype._parseOptions = function _parseOptions(options) {
if (!options)
options = {};
options = utils.merge({}, options);
Node.prototype.parseOptions = function parseOptions(options) {
options.network = bcoin.network.get(options.network);
if (!options.prefix)
@ -197,8 +195,6 @@ Node.prototype._parseOptions = function _parseOptions(options) {
if (options.witness == null)
options.witness = options.network.witness;
utils.fastProp(options);
return options;
};