Skip to content

Commit

Permalink
Builder refactored; Added security report link into Builder
Browse files Browse the repository at this point in the history
  • Loading branch information
akru committed Aug 17, 2016
1 parent a660c5d commit ae22cfb
Show file tree
Hide file tree
Showing 18 changed files with 33 additions and 107 deletions.
72 changes: 29 additions & 43 deletions sol/builder/Builder.sol
Original file line number Diff line number Diff line change
Expand Up @@ -7,64 +7,50 @@ import './BuilderBase.sol';
* @title Builder based contract
*/
contract Builder is BuilderBase {
/* Proposal */
Proposal proposal;
/* Building beneficiary */
address public beneficiary;

/* The DAO cashflow */
CashFlow cashflow;
/**
* @dev Set beneficiary
* @param _beneficiary is address of beneficiary
*/
function setBeneficiary(address _beneficiary) onlyOwner
{ beneficiary = _beneficiary; }

/* Building cost */
uint public buildingCostWei;

/**
* @dev Builder constructor
* @param _buildingCostWei is module name
* @param _cashflow is address cashflow
* @param _proposal is address proposal
*/
function Builder(uint _buildingCostWei, address _cashflow, address _proposal) {
buildingCostWei = _buildingCostWei;
proposal = Proposal(_proposal);
cashflow = CashFlow(_cashflow);
}

/**
* @dev Set cashflow
* @param _cashflow is address cashflow
*/
function setCashflow(address _cashflow) onlyOwner {
cashflow = CashFlow(_cashflow);
}

/**
* @dev Set proposal
* @param _proposal is address proposal
*/
function setProposal(address _proposal) onlyOwner {
proposal = Proposal(_proposal);
}

/**
* @dev Set building cost
* @param _buildingCostWei is cost
*/
function setCost(uint _buildingCostWei) onlyOwner {
buildingCostWei = _buildingCostWei;
}

function setCost(uint _buildingCostWei) onlyOwner
{ buildingCostWei = _buildingCostWei; }

/* Security check report */
string public securityCheckURI;

/**
* @dev Set security check report URI
* @param _uri is an URI to report
*/
function setSecurityCheck(string _uri) onlyOwner
{ securityCheckURI = _uri; }

/**
* @dev Payment for builded contract and a request for release of shares
* @param _contract is address contract
* @notice Called after builded contract
*/
function deal(address _contract) internal {
if (msg.value < buildingCostWei) throw;
if (!msg.sender.send(msg.value - buildingCostWei)) throw;

TokenEther(cashflow.credits()).refill.value(buildingCostWei)();
cashflow.credits().approve(cashflow, buildingCostWei);
cashflow.fundback(proposal, buildingCostWei);
getContractsOf[msg.sender].push(_contract);
Builded(msg.sender, _contract);
getContractsOf[msg.sender].push(_contract);

if (buildingCostWei > 0 && beneficiary != 0) {
if ( msg.value < buildingCostWei
|| !msg.sender.send(msg.value - buildingCostWei)
|| !beneficiary.send(buildingCostWei)
) throw;
}
}
}
4 changes: 0 additions & 4 deletions sol/builder/BuilderACLStorage.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderACLStorage contract
*/
contract BuilderACLStorage is Builder {
function BuilderACLStorage(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @return address new contract
Expand Down
4 changes: 2 additions & 2 deletions sol/builder/BuilderBase.sol
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import 'common/Owned.sol';
import 'common/Mortal.sol';

/**
* @title Builder based contract
*/
contract BuilderBase is Owned {
contract BuilderBase is Mortal {
/* Addresses builded contracts at sender */
mapping(address => address[]) public getContractsOf;

Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderBoardOfDirectors.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderBoardOfDirectors contract
*/
contract BuilderBoardOfDirectors is Builder {
function BuilderBoardOfDirectors(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _dao_core is a DAO core register
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderCashFlow.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderCashFlow contract
*/
contract BuilderCashFlow is Builder {
function BuilderCashFlow(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _credits is address credits token
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderCore.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderCore contract
*/
contract BuilderCore is Builder {
function BuilderCore(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _name is DAO name
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderCrowdSale.sol
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ import './Builder.sol';
* @title BuilderStart contract
*/
contract BuilderCrowdSale is Builder {
function BuilderCrowdSale(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _target is a target address for send given credits of success end
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderDAO.sol
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@ import 'creator/CreatorCore.sol';
import './Builder.sol';

contract BuilderDAO is Builder {
function BuilderDAO(uint _price, address _cashflow, address _proposal)
Builder(_price, _cashflow, _proposal)
{}

function create(string _dao_name, string _dao_description,
string _shares_name, string _shares_symbol, uint _shares_count) {
// DAO core
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderDAOMarketRegulator.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderDAOMarketRegulator contract
*/
contract BuilderDAOMarketRegulator is Builder {
function BuilderDAOMarketRegulator(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _shares is address shares token
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderMarket.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderMarket contract
*/
contract BuilderMarket is Builder {
function BuilderMarket(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @return address new contract
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderMarketRuleConstant.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderMarketRuleConstant contract
*/
contract BuilderMarketRuleConstant is Builder {
function BuilderMarketRuleConstant(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _emission is how amount of tokens should be emissed
Expand Down
4 changes: 2 additions & 2 deletions sol/builder/BuilderOffer.sol
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
//

import 'creator/CreatorOffer.sol';
import './BuilderBase.sol';
import './Builder.sol';

/**
* @title BuilderOffer contract
*/
contract BuilderOffer is BuilderBase {
contract BuilderOffer is Builder {
/**
* @dev Run script creation contract
* @param _description is a short description
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderShareSale.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title ShareSale contract builder
*/
contract BuilderShareSale is Builder {
function BuilderShareSale(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _target is a target of funds
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderShareholder.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderShareholder contract
*/
contract BuilderShareholder is Builder {
function BuilderShareholder(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _shares is a shares token address
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderToken.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderToken contract
*/
contract BuilderToken is Builder {
function BuilderToken(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _name is name token
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderTokenEmission.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderTokenEmission contract
*/
contract BuilderTokenEmission is Builder {
function BuilderTokenEmission(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _name is name token
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderTokenEmissionACL.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderTokenEmissionACL contract
*/
contract BuilderTokenEmissionACL is Builder {
function BuilderTokenEmissionACL(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _name is name token
Expand Down
4 changes: 0 additions & 4 deletions sol/builder/BuilderTokenEther.sol
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@ import './Builder.sol';
* @title BuilderTokenEther contract
*/
contract BuilderTokenEther is Builder {
function BuilderTokenEther(uint _buildingCost, address _cashflow, address _proposal)
Builder(_buildingCost, _cashflow, _proposal)
{}

/**
* @dev Run script creation contract
* @param _name is name token
Expand Down

0 comments on commit ae22cfb

Please sign in to comment.