ether-camp / ethereum-harmony

DEPRECATED! Ethereum Independent Peer
GNU General Public License v3.0
253 stars 89 forks source link

Harmony should start EthereumJ only by request #119

Open zilm13 opened 6 years ago

zilm13 commented 6 years ago

Currently EthereumJ automatically starts with start of Harmony and this behaviour follows growing number of hacks to run Harmony as desired: 1) Harmony config is added to ethereum.conf.res so it could be overwritten by other configs 2) Miner is disabled on start even if it's enabled in config and started a bit later in MinerService

Fundamental improvements in EthereumJ are needed to fix it but most of them are planned and will enhance EthereumJ usage as library and improve Harmony code quality: 1) Disable triggering of config load by static methods https://github.com/ethereum/ethereumj/issues/1012 2) Detach EthereumJ to separate ApplicationContext in Harmony 3) Build config for EthereumJ from code and instantiate it with this config, there should be an option in EthereumJ when it doesn't try to read config at all and starts with input config https://github.com/ethereum/ethereumj/issues/469 4) Don't use beans from EthereumJ by Autowired in Harmony. Instead improve EthereumJ to provide any of this beans from some facade and we should use it that way in Harmony.