refactor determining method arguments
This commit is contained in:
parent
df7ff3916f
commit
88bdd662de
|
@ -15,6 +15,21 @@ var Deploy = function(options) {
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Deploy.prototype.determineArguments = function(suppliedArgs) {
|
||||||
|
var realArgs = [], l, arg, contractName, referedContract;
|
||||||
|
|
||||||
|
for (l = 0; l < suppliedArgs.length; l++) {
|
||||||
|
arg = suppliedArgs[l];
|
||||||
|
if (arg[0] === "$") {
|
||||||
|
contractName = arg.substr(1);
|
||||||
|
referedContract = this.contractsManager.getContract(contractName);
|
||||||
|
realArgs.push(referedContract.deployedAddress);
|
||||||
|
} else {
|
||||||
|
realArgs.push(arg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
Deploy.prototype.checkAndDeployContract = function(contract, params, callback) {
|
Deploy.prototype.checkAndDeployContract = function(contract, params, callback) {
|
||||||
var self = this;
|
var self = this;
|
||||||
var suppliedArgs;
|
var suppliedArgs;
|
||||||
|
@ -32,20 +47,7 @@ Deploy.prototype.checkAndDeployContract = function(contract, params, callback) {
|
||||||
|
|
||||||
if (contract.address !== undefined) {
|
if (contract.address !== undefined) {
|
||||||
|
|
||||||
// determine arguments
|
realArgs = self.determineArguments(params || contract.args);
|
||||||
suppliedArgs = (params || contract.args);
|
|
||||||
realArgs = [];
|
|
||||||
|
|
||||||
for (l = 0; l < suppliedArgs.length; l++) {
|
|
||||||
arg = suppliedArgs[l];
|
|
||||||
if (arg[0] === "$") {
|
|
||||||
contractName = arg.substr(1);
|
|
||||||
referedContract = this.contractsManager.getContract(contractName);
|
|
||||||
realArgs.push(referedContract.deployedAddress);
|
|
||||||
} else {
|
|
||||||
realArgs.push(arg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
contract.deployedAddress = contract.address;
|
contract.deployedAddress = contract.address;
|
||||||
self.deployTracker.trackContract(contract.className, contract.code, realArgs, contract.address);
|
self.deployTracker.trackContract(contract.className, contract.code, realArgs, contract.address);
|
||||||
|
@ -63,20 +65,7 @@ Deploy.prototype.checkAndDeployContract = function(contract, params, callback) {
|
||||||
return callback();
|
return callback();
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
// determine arguments
|
realArgs = self.determineArguments(params || contract.args);
|
||||||
suppliedArgs = (params || contract.args);
|
|
||||||
realArgs = [];
|
|
||||||
|
|
||||||
for (l = 0; l < suppliedArgs.length; l++) {
|
|
||||||
arg = suppliedArgs[l];
|
|
||||||
if (arg[0] === "$") {
|
|
||||||
contractName = arg.substr(1);
|
|
||||||
referedContract = this.contractsManager.getContract(contractName);
|
|
||||||
realArgs.push(referedContract.deployedAddress);
|
|
||||||
} else {
|
|
||||||
realArgs.push(arg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.deployContract(contract, realArgs, function(err, address) {
|
this.deployContract(contract, realArgs, function(err, address) {
|
||||||
if (err) {
|
if (err) {
|
||||||
|
|
Loading…
Reference in New Issue