Example #1
0
        public void Setup()
        {
            _container?.Dispose();
            TestUtils.DeleteTestChainData();
            var containerBuilder = new SimpleInjectorContainerBuilder(new ConfigManager(
                                                                          Path.Join(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "config.json"),
                                                                          new RunOptions()
                                                                          ));

            containerBuilder.RegisterModule <BlockchainModule>();
            containerBuilder.RegisterModule <ConfigModule>();
            containerBuilder.RegisterModule <StorageModule>();
            _container       = containerBuilder.Build();
            _blockManager    = _container.Resolve <IBlockManager>();
            _stateManager    = _container.Resolve <IStateManager>();
            _wallet          = _container.Resolve <IPrivateWallet>();
            _transactionPool = _container.Resolve <ITransactionPool>();
            _configManager   = _container.Resolve <IConfigManager>();
            // set chainId from config
            if (TransactionUtils.ChainId(false) == 0)
            {
                var chainId    = _configManager.GetConfig <NetworkConfig>("network")?.ChainId;
                var newChainId = _configManager.GetConfig <NetworkConfig>("network")?.ChainId;
                TransactionUtils.SetChainId((int)chainId !, (int)newChainId !);
                HardforkHeights.SetHardforkHeights(_configManager.GetConfig <HardforkConfig>("hardfork") ?? throw new InvalidOperationException());
            }
            _validatorStatusManager = new ValidatorStatusManager(
                _transactionPool, _container.Resolve <ITransactionSigner>(), _container.Resolve <ITransactionBuilder>(),
                _wallet, _stateManager, _container.Resolve <IValidatorAttendanceRepository>(),
                _container.Resolve <ISystemContractReader>()
                );
        }
Example #2
0
        public void Setup()
        {
            _container?.Dispose();
            TestUtils.DeleteTestChainData();

            var containerBuilder = new SimpleInjectorContainerBuilder(new ConfigManager(
                                                                          Path.Join(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "config2.json"),
                                                                          new RunOptions()
                                                                          ));

            containerBuilder.RegisterModule <BlockchainModule>();
            containerBuilder.RegisterModule <ConfigModule>();
            containerBuilder.RegisterModule <StorageModule>();
            containerBuilder.RegisterModule <ConsensusModule>();
            containerBuilder.RegisterModule <NetworkModule>();

            _container = containerBuilder.Build();


            _privateWallet          = _container.Resolve <IPrivateWallet>();
            _validatorStatusManager = _container.Resolve <IValidatorStatusManager>();
            _configManager          = _container.Resolve <IConfigManager>();
            _transactionBuilder     = _container.Resolve <ITransactionBuilder>();

            ServiceBinder.BindService <GenericParameterAttributes>();
            _apiService = new ValidatorServiceWeb3(_validatorStatusManager, _privateWallet, _transactionBuilder);
        }
Example #3
0
 public ValidatorServiceWeb3(
     IValidatorStatusManager validatorStatusManager, IPrivateWallet privateWallet,
     ITransactionBuilder transactionBuilder)
 {
     _validatorStatusManager = validatorStatusManager;
     _privateWallet          = privateWallet;
     _transactionBuilder     = transactionBuilder;
 }
        public void Setup()
        {
            _container?.Dispose();
            TestUtils.DeleteTestChainData();

            var containerBuilder = new SimpleInjectorContainerBuilder(new ConfigManager(
                                                                          Path.Join(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "config2.json"),
                                                                          new RunOptions()
                                                                          ));

            containerBuilder.RegisterModule <BlockchainModule>();
            containerBuilder.RegisterModule <ConfigModule>();
            containerBuilder.RegisterModule <StorageModule>();
            containerBuilder.RegisterModule <ConsensusModule>();
            containerBuilder.RegisterModule <NetworkModule>();

            _container = containerBuilder.Build();

            _stateManager           = _container.Resolve <IStateManager>();
            _transactionManager     = _container.Resolve <ITransactionManager>();
            _transactionBuilder     = _container.Resolve <ITransactionBuilder>();
            _transactionSigner      = _container.Resolve <ITransactionSigner>();
            _transactionPool        = _container.Resolve <ITransactionPool>();
            _contractRegisterer     = _container.Resolve <IContractRegisterer>();
            _privateWallet          = _container.Resolve <IPrivateWallet>();
            _snapshotIndexer        = _container.Resolve <ISnapshotIndexRepository>();
            _networkManager         = _container.Resolve <INetworkManager>();
            _nodeRetrieval          = _container.Resolve <INodeRetrieval>();
            _systemContractReader   = _container.Resolve <ISystemContractReader>();
            _blockManager           = _container.Resolve <IBlockManager>();
            _validatorStatusManager = _container.Resolve <IValidatorStatusManager>();
            _configManager          = _container.Resolve <IConfigManager>();
            _consensusManager       = _container.Resolve <IConsensusManager>();
            if (TransactionUtils.ChainId(false) == 0)
            {
                var chainId    = _configManager.GetConfig <NetworkConfig>("network")?.ChainId;
                var newChainId = _configManager.GetConfig <NetworkConfig>("network")?.NewChainId;
                TransactionUtils.SetChainId((int)chainId !, (int)newChainId !);
                HardforkHeights.SetHardforkHeights(_configManager.GetConfig <HardforkConfig>("hardfork") ?? throw new InvalidOperationException());
            }

            ServiceBinder.BindService <GenericParameterAttributes>();
            _apiService = new BlockchainServiceWeb3(_transactionManager, _blockManager, _transactionPool,
                                                    _stateManager, _snapshotIndexer, _networkManager, _nodeRetrieval, _systemContractReader, _consensusManager);
        }
Example #5
0
 public FrontEndService(
     IStateManager stateManager,
     ITransactionPool transactionPool,
     ITransactionSigner transactionSigner,
     ISystemContractReader systemContractReader,
     ILocalTransactionRepository localTransactionRepository,
     IValidatorStatusManager validatorStatusManager,
     IPrivateWallet privateWallet,
     ITransactionManager transactionManager
     )
 {
     _stateManager               = stateManager;
     _transactionPool            = transactionPool;
     _transactionSigner          = transactionSigner;
     _systemContractReader       = systemContractReader;
     _localTransactionRepository = localTransactionRepository;
     _validatorStatusManager     = validatorStatusManager;
     _privateWallet              = privateWallet;
     _transactionManager         = transactionManager;
 }
Example #6
0
 public ConsoleManager(
     ITransactionBuilder transactionBuilder,
     ITransactionPool transactionPool,
     ITransactionManager transactionManager,
     ITransactionSigner transactionSigner,
     IBlockManager blockManager,
     IStateManager stateManager,
     ISystemContractReader systemContractReader,
     IValidatorStatusManager validatorStatusManager
     )
 {
     _blockManager           = blockManager;
     _transactionBuilder     = transactionBuilder;
     _transactionPool        = transactionPool;
     _transactionManager     = transactionManager;
     _transactionSigner      = transactionSigner;
     _stateManager           = stateManager;
     _systemContractReader   = systemContractReader;
     _validatorStatusManager = validatorStatusManager;
 }
Example #7
0
 public RpcManager(
     ITransactionManager transactionManager,
     IBlockManager blockManager,
     IConfigManager configManager,
     IStateManager stateManager,
     ISnapshotIndexRepository snapshotIndexer,
     ITransactionPool transactionPool,
     IVirtualMachine virtualMachine,
     IContractRegisterer contractRegisterer,
     IValidatorStatusManager validatorStatusManager,
     ISystemContractReader systemContractReader,
     IBlockSynchronizer blockSynchronizer,
     ILocalTransactionRepository localTransactionRepository,
     ITransactionSigner transactionSigner,
     IPrivateWallet privateWallet,
     ITransactionBuilder transactionBuilder,
     IBlockchainEventFilter blockchainEventFilter,
     INetworkManager networkManager,
     INodeRetrieval nodeRetrieval,
     IConsensusManager consensusManager
     )
 {
     _transactionManager         = transactionManager;
     _blockManager               = blockManager;
     _configManager              = configManager;
     _stateManager               = stateManager;
     _snapshotIndexer            = snapshotIndexer;
     _transactionPool            = transactionPool;
     _contractRegisterer         = contractRegisterer;
     _validatorStatusManager     = validatorStatusManager;
     _systemContractReader       = systemContractReader;
     _blockSynchronizer          = blockSynchronizer;
     _localTransactionRepository = localTransactionRepository;
     _transactionSigner          = transactionSigner;
     _transactionBuilder         = transactionBuilder;
     _privateWallet              = privateWallet;
     _blockchainEventFilter      = blockchainEventFilter;
     _networkManager             = networkManager;
     _nodeRetrieval              = nodeRetrieval;
     _consensusManager           = consensusManager;
 }
Example #8
0
 public ConsoleCommands(
     ITransactionBuilder transactionBuilder,
     ITransactionPool transactionPool,
     ITransactionManager transactionManager,
     ITransactionSigner transactionSigner,
     IBlockManager blockManager,
     IStateManager stateManager,
     ISystemContractReader systemContractReader,
     IValidatorStatusManager validatorStatusManager,
     EcdsaKeyPair keyPair
     )
 {
     _blockManager           = blockManager;
     _transactionBuilder     = transactionBuilder;
     _transactionPool        = transactionPool;
     _transactionManager     = transactionManager;
     _transactionSigner      = transactionSigner;
     _stateManager           = stateManager;
     _systemContractReader   = systemContractReader;
     _validatorStatusManager = validatorStatusManager;
     _keyPair = keyPair;
 }