using Nethereum.Contracts.QueryHandlers; using Nethereum.JsonRpc.Client; using Nethereum.RPC.Eth.DTOs; namespace Nethereum.Contracts.ContractHandlers { #if !DOTNET35 public class ContractQueryHandler: ContractQueryHandlerBase where TFunctionMessage : FunctionMessage, new() { private readonly IClient _client; private readonly BlockParameter _defaultBlockParameter; public string DefaultAddressFrom { get; set; } public ContractQueryHandler(IClient client, string defaultAddressFrom = null, BlockParameter defaultBlockParameter = null) { _client = client; _defaultBlockParameter = defaultBlockParameter; DefaultAddressFrom = defaultAddressFrom; } protected override QueryToDTOHandler GetQueryDTOHandler() { return new QueryToDTOHandler(_client, DefaultAddressFrom, _defaultBlockParameter); } protected override QueryToSimpleTypeHandler GetQueryToSimpleTypeHandler() { return new QueryToSimpleTypeHandler(_client, DefaultAddressFrom, _defaultBlockParameter); } protected override QueryRawHandler GetQueryRawHandler() { return new QueryRawHandler(_client, DefaultAddressFrom, _defaultBlockParameter); } } #endif }