Example #1
0
        public Caladan.Models.TransactionReceipt ConvertToDbTransactionReceipt(TransactionReceipt transaction)
        {
            var result = new Caladan.Models.TransactionReceipt()
            {
                BlockHash         = transaction.BlockHash,
                BlockNumber       = transaction.BlockNumber,
                From              = transaction.From,
                To                = transaction.To,
                TransactionHash   = transaction.TransactionHash,
                TransactionIndex  = transaction.TransactionIndex,
                ContractAddress   = transaction.ContractAddress,
                CumulativeGasUsed = transaction.CumulativeGasUsed,
                GasUsed           = transaction.GasUsed,
                LogsBloom         = transaction.LogsBloom,
                Root              = transaction.Root
            };

            if (transaction.Logs != null)
            {
                using (var jsonReader = new MongoDB.Bson.IO.JsonReader(transaction.Logs.ToString()))
                {
                    var serializer = new MongoDB.Bson.Serialization.Serializers.BsonArraySerializer();
                    result.Logs = serializer.Deserialize(BsonDeserializationContext.CreateRoot(jsonReader));
                }
            }

            return(result);
        }
Example #2
0
        private static string SerializeTransactionReceipt(Caladan.Models.TransactionReceipt receipt)
        {
            var jsonResolver = new PropertyRenameAndIgnoreSerializerContractResolver();

            jsonResolver.IgnoreProperty(typeof(Caladan.Models.TransactionReceipt), "Id");

            var serializerSettings = new JsonSerializerSettings();

            serializerSettings.ContractResolver = jsonResolver;

            var json = JsonConvert.SerializeObject(receipt, Formatting.Indented, serializerSettings);

            return(json);
        }