private void Events_TransactionCommit(RemoteDbTransaction connection) { var id = GetOrThrowConnectionId(connection.Connection as RemotingDbConnection); var transaction = TransactionIds.GetOrAdd(connection, f => null); CommitTransaction(id, transaction); }
public virtual ResourceCollection <Transaction> Transactions() { var gateway = new TransactionGateway(this.gateway); var searchRequest = new TransactionSearchRequest(). Ids.IncludedIn(TransactionIds.ToArray()); return(gateway.Search(searchRequest)); }
public ResourceCollection <Transaction> Transactions() { TransactionGateway gateway = new TransactionGateway(service); TransactionSearchRequest searchRequest = new TransactionSearchRequest(). Ids.IncludedIn(TransactionIds.ToArray()); return(gateway.Search(searchRequest)); }
/// <summary> /// if we want to add an element to the SIL, we should provide the row (means which sequence) and the value(the position of the item in the sequence) information /// </summary> /// <param name="row"></param> /// <param name="value"></param> public void AddElement(int row, int value) { if (Vector[row] == null) { Vector[row] = new TransactionIds(); Support++; } Vector[row].Add(new ListNode(value)); }
/// <summary> /// Gets the transactions. /// </summary> /// <param name="transactionId">The transaction identifier.</param> /// <returns>IObservable<List<Transaction>>.</returns> /// <exception cref="ArgumentNullException">transactionId</exception> /// <exception cref="ArgumentException">Collection contains one or more invalid ids.</exception> public IObservable <List <Transaction> > GetTransactions(TransactionIds transactionId) { if (transactionId == null) { throw new ArgumentNullException(nameof(transactionId)); } if (transactionId.transactionIds.Any(hash => hash.Length != 24 || !Regex.IsMatch(hash, @"\A\b[0-9a-fA-F]+\b\Z"))) { throw new ArgumentException("Collection contains one or more invalid ids."); } return(Observable.FromAsync(async ar => await TransactionRoutesApi.GetTransactionsAsync(transactionId))); }
private string TryGetTransactionId(RemoteDbTransaction connection) { if (connection == null) { return(null); } if (TransactionIds.TryGetValue(connection, out var id)) { return(id); } return(null); }
/// <summary> /// Returns transactions information for a given array of transactionIds /// </summary> /// <param name="transactionHashes">Transaction hashes</param> /// <returns>IObservable<List<Transaction>></returns> public IObservable <List <Transaction> > GetTransactions(List <string> transactionHashes, TransactionGroupType group) { if (transactionHashes.Count < 0) { throw new ArgumentNullException(nameof(transactionHashes)); } var hashes = new TransactionIds { _TransactionIds = transactionHashes }; var route = $"{BasePath}/transactions/{group}"; return(Observable.FromAsync(async ar => await route.PostJsonAsync(hashes).ReceiveJson <List <JObject> >()) .Select(h => h.Select(t => new TransactionMapping().Apply(t)).ToList())); }
public Block Clone() => new Block { Original = Original, Id = Id, PreviousHash = PreviousHash, Difficulty = Difficulty, Nonce = Nonce, Timestamp = Timestamp, TransactionRootHash = TransactionRootHash, TransactionIds = TransactionIds?.ToList(), Transactions = Transactions?.ToList(), Height = Height, ParsedTransactions = ParsedTransactions ?.Select(x => x.Clone()).ToArray(), TotalDifficulty = TotalDifficulty, };
private void Events_TransactionCreated(RemoteDbTransaction connection) { TransactionIds.TryAdd(connection, RegisterTransaction(GetOrThrowConnectionId(connection.Connection as RemotingDbConnection))); }
internal NetworkGetExecutionTimeQuery(IEnumerable <TxId> transactionIds) : this() { TransactionIds.AddRange(transactionIds.Select(t => new TransactionID(t))); }