public void ReprocessBurnRequest(string requestId, int blockHeight, ConversionRequestStatus requestStatus) { ConversionRequest request = this.KeyValueStore.LoadValue <ConversionRequest>(requestId); if (request == null) { throw new Exception($"{requestId} does not exist."); } if (request.RequestType == ConversionRequestType.Mint) { throw new Exception($"{requestId} is not a burn request."); } if (blockHeight == 0) { throw new Exception($"Block height cannot be 0."); } request.BlockHeight = blockHeight; request.Processed = false; request.RequestStatus = requestStatus; this.KeyValueStore.SaveValue(request.RequestId, request, true); }
public List <ConversionRequest> GetAll(ConversionRequestType type, bool onlyUnprocessed) { var values = new List <ConversionRequest>(); IEnumerator <KeyValuePair <byte[], byte[]> > enumerator = this.leveldb.GetEnumerator(); while (enumerator.MoveNext()) { (byte[] key, byte[] value) = enumerator.Current; if (value == null) { continue; } ConversionRequest deserialized = this.dBreezeSerializer.Deserialize <ConversionRequest>(value); if (deserialized.RequestType != type) { continue; } if (deserialized.Processed && onlyUnprocessed) { continue; } values.Add(deserialized); } return(values); }
public void SetConversionRequestState(string requestId, ConversionRequestStatus requestStatus) { ConversionRequest request = this.KeyValueStore.LoadValue <ConversionRequest>(requestId); if (request == null) { throw new Exception($"{requestId} does not exist."); } if (request.RequestStatus == ConversionRequestStatus.OriginatorSubmitting || request.RequestStatus == ConversionRequestStatus.Processed) { throw new Exception($"Request with a status of '{request.RequestStatus}' can not be set to { requestStatus}."); } request.Processed = false; request.RequestStatus = requestStatus; this.KeyValueStore.SaveValue(request.RequestId, request, true); }
/// <inheritdoc /> public void Save(ConversionRequest request) { this.logger.Debug($"Saving conversion request {request.RequestId} to store."); this.KeyValueStore.SaveValue(request.RequestId, request); }
/// <inheritdoc /> public void Save(ConversionRequest request) { this.KeyValueStore.SaveValue(request.RequestId, request); }