示例#1
0
        public JsonRpcParams Filter(JsonRpcParams requestParams)
        {
            var stringLength = requestParams.Value.Primitive["String"].ToString().Length;

            requestParams.Value.Primitive = new Dictionary <string, object> {
                { "Int", stringLength }
            };

            return(requestParams);
        }
示例#2
0
        private static void CreateInstance()
        {
            JsonRpcParams param = new JsonRpcParams();

            param.JsonrpcVersion = "2.0";

            var logger  = new Logger();
            var jsonrpc = new JsonRpc(new Wsclient(logger), logger, param);

            _instance = new Application(logger, jsonrpc);
        }
        public void Ok()
        {
            JsonRpcParams param = new JsonRpcParams
            {
                JsonrpcVersion = "2.0"
            };

            var logger  = new Logger();
            var jsonrpc = new MockJsonRpc(new Wsclient(logger), logger, param);

            using (var _instance = new Application(logger, jsonrpc))
            {
                // _instance.Connect();
                var result = _instance.GetRuntimeVersion(
                    new GetRuntimeVersionParams
                {
                    BlockHash = "0x37096ff58d1831c2ee64b026f8b70afab1942119c022d1dcfdbdc1558ebf63fa"
                });

                // Ensure all items are present in api
                int apiItemCount = 0;
                foreach (var item in result.Api)
                {
                    if (item.Num.Length == 18)
                    {
                        apiItemCount++;
                    }
                }

                Assert.Equal(9, apiItemCount);

                // Check implName
                Assert.Equal("parity-polkadot", result.ImplName);

                // Check implVersion
                Assert.Equal(1, result.ImplVersion);

                // Check specName
                Assert.Equal("polkadot", result.SpecName);

                // Check specVersion
                Assert.Equal(112, result.SpecVersion);

                output.WriteLine($"AuthoringVersion:    {result.AuthoringVersion}");
                output.WriteLine($"ImplVersion:         {result.ImplVersion}");
                output.WriteLine($"ImplName:            {result.ImplName}");
                output.WriteLine($"SpecName:            {result.SpecName}");
                output.WriteLine($"SpecVersion:         {result.SpecVersion}");

                //  _instance.Disconnect();
            }
        }
示例#4
0
        public NftClient(NftClientSettings settings)
        {
            Settings = settings;

            var param = new JsonRpcParams();

            param.JsonrpcVersion = "2.0";

            var jsonRpc = new JsonRpc(new Wsclient(settings.Logger), settings.Logger, param);

            _application = new Application(settings.Logger, jsonRpc, settings.SerializerSettings);

            CollectionManagement = new CollectionManagement(this);
            ItemManagement       = new ItemManagement(this);
        }
        public static SafeApplication CreateApplication(Action <Exception> onError, ILogger logger, PublicKey?matcherContract)
        {
            var param = new JsonRpcParams {
                JsonrpcVersion = "2.0"
            };

            var substrateLogger = new SubstrateApiLogger(logger);
            var jsonRpc         = new JsonRpc(new Wsclient(substrateLogger), substrateLogger, param, onError);

            var settings = Application.DefaultSubstrateSettings();

            if (matcherContract != null)
            {
                settings = settings.RegisterMatcherContract(matcherContract);
            }

            return(new SafeApplication(new Application(substrateLogger, jsonRpc, settings)));
        }
示例#6
0
 public JsonRpcValueResponse(JsonRpcParams rpcParams) => Params = new