/// <summary> /// Initializes the EthereumTransactionManager by initializing all collections and adding the proper methods to the events needed. /// </summary> /// <param name="disposableComponentManager"> The active DisposableComponentManager. </param> /// <param name="periodicUpdateManager"> The PeriodicUpdateManager to use when periodically checking for new transactions. </param> /// <param name="updateManager"> The UpdateManager to use when getting the transactions for each asset. </param> /// <param name="userWalletManager"> The active UserWalletManager. </param> /// <param name="apiService"> The active EtherscanApiService. </param> /// <param name="tradableAssetManager"> The active TradableAssetManager. </param> public EthereumTransactionManager( DisposableComponentManager disposableComponentManager, PeriodicUpdateManager periodicUpdateManager, UpdateManager updateManager, TradableAssetManager tradableAssetManager, UserWalletManager userWalletManager, EtherscanApiService apiService) { tradableAssetManager.OnTradableAssetAdded += AddAssetToScrape; OptimizedScrollview.OnOptimizedScrollviewInitialized += optimizedScrollview => { if (optimizedScrollview.scrollviewKey.Equals("asset_scrollview")) { scrollview = optimizedScrollview; scrollview.OnVisibleItemsChanged += OnVisibleAssetsChanged; periodicUpdateManager.AddPeriodicUpdater(this); } }; this.tradableAssetManager = tradableAssetManager; this.userWalletManager = userWalletManager; this.apiService = apiService; disposableComponentManager.AddDisposable(this); updateManager.AddUpdater(this); }
public LockedPRPSManager( DisposableComponentManager disposableComponentManager, UserWalletManager userWalletManager, Hodler hodlerContract, PRPS prpsContract, PeriodicUpdateManager periodicUpdateManager, EtherscanApiService apiService, TradableAssetManager tradableAssetManager) { this.userWalletManager = userWalletManager; this.periodicUpdateManager = periodicUpdateManager; this.hodlerContract = hodlerContract; this.prpsContract = prpsContract; this.apiService = apiService; disposableComponentManager.AddDisposable(this); tradableAssetManager.OnTradableAssetAdded += CheckIfPRPSAdded; tradableAssetManager.OnTradableAssetRemoved += CheckIfPRPSRemoved; }