public void AddSmartContractCode(Address address, Hash codeHash, BlockIndex blockIndex)
        {
            if (!_addressSmartContractCodeHistoryMappingCache.TryGetValue(address, out var codeHistory))
            {
                codeHistory = new SmartContractCodeHistory();
                _addressSmartContractCodeHistoryMappingCache[address] = codeHistory;
            }

            codeHistory.Codes.Add(new SmartContractCode
            {
                BlockHash   = blockIndex.BlockHash,
                BlockHeight = blockIndex.BlockHeight,
                CodeHash    = codeHash
            });
        }
 public void SetSmartContractCodeHistory(Address address, SmartContractCodeHistory smartContractCodeHistory)
 {
     _addressSmartContractCodeHistoryMappingCache[address] = smartContractCodeHistory;
 }
 public async Task SetSmartContractCodeHistoryAsync(Address address, SmartContractCodeHistory smartContractCodeHistory)
 {
     await _smartContractCodeHistoryStore.SetAsync(address.ToStorageKey(), smartContractCodeHistory);
 }