public async Task <IReadOnlyList <AssetPair> > GetAssetPairsAsync()
        {
            IReadOnlyList <AssetPair> assetPairs = _assetPairsCache.GetAll();

            if (assetPairs == null)
            {
                assetPairs = await _assetPairRepository.GetAllAsync();

                _assetPairsCache.Initialize(assetPairs);
            }

            return(assetPairs);
        }
        protected override async Task OnActivateAsync()
        {
            ActorEventSource.Current.ActorMessage(this, "Actor activated.");

            var assetPairs = await _assetPairRepository.GetAllAsync();

            var marginalAssetPairs = await _marginalAssetPairRepository.GetAllAsync();

            var marginalIssuers = await _marginalIssuerRepository.GetAllAsync();

            var marginalAssets = await _marginalAssetRepository.GetAllAsync();

            await StateManager.TryAddStateAsync("AssetPairs", assetPairs);

            await StateManager.TryAddStateAsync("MarginalAssetPairs", marginalAssetPairs);

            await StateManager.TryAddStateAsync("MarginalIssuers", marginalIssuers);

            await StateManager.TryAddStateAsync("MarginalAssets", marginalAssets);
        }
 public async Task <IEnumerable <IAssetPair> > GetAllAsync()
 {
     return(await _assetPairRepository.GetAllAsync());
 }