public async Task AddOrReplaceRouteAsync(IMatchingEngineRoute route) { // Create Editable Object var matchingEngineRoute = MatchingEngineRoute.Create(route); matchingEngineRoute.ClientId = GetValueOrAnyIfValid(route.ClientId, ValidateClient); matchingEngineRoute.TradingConditionId = GetValueOrAnyIfValid(route.TradingConditionId, ValidateTradingCondition); matchingEngineRoute.Instrument = GetValueOrAnyIfValid(route.Instrument, ValidateInstrument); matchingEngineRoute.Asset = GetValueOrAnyIfValid(route.Asset, null); await _repository.AddOrReplaceRouteAsync(matchingEngineRoute); _routesCacheService.SaveRoute(matchingEngineRoute); }
//TODO: Risk manager related stuff may be removed one time.. public Task AddOrReplaceRouteInCacheAsync(IMatchingEngineRoute route) { // Create Editable Object var matchingEngineRoute = MatchingEngineRoute.Create(route); matchingEngineRoute.ClientId = GetValueOrAnyIfValid(route.ClientId, null); matchingEngineRoute.TradingConditionId = GetValueOrAnyIfValid(route.TradingConditionId, ValidateTradingCondition); matchingEngineRoute.Instrument = GetValueOrAnyIfValid(route.Instrument, ValidateInstrument); matchingEngineRoute.Asset = GetValueOrAnyIfValid(route.Asset, null); _routesCacheService.SaveRoute(matchingEngineRoute); return(Task.CompletedTask); }