コード例 #1
0
        private static JsonRpcContractResolver CreateJsonRpcContractResolver(T handler)
        {
            var contracts = handler.GetContracts();
            var resolver  = new JsonRpcContractResolver();

            foreach (var kvp in contracts)
            {
                if (kvp.Key is null)
                {
                    throw new InvalidOperationException(Strings.GetString("handler.contract.method_name.invalid_value"));
                }
                if (JsonRpcProtocol.IsSystemMethod(kvp.Key))
                {
                    throw new InvalidOperationException(string.Format(CultureInfo.CurrentCulture, Strings.GetString("handler.contract.method_name.reserved_prefix"), kvp.Key));
                }

                resolver.AddRequestContract(kvp.Key, kvp.Value);
            }

            return(resolver);
        }
コード例 #2
0
ファイル: JsonRpcProtocolTests.cs プロジェクト: vcdy/json-rpc
        public void IsSystemMethodIsTrueWithUpperCase()
        {
            var result = JsonRpcProtocol.IsSystemMethod("RPC.M");

            Assert.IsTrue(result);
        }
コード例 #3
0
ファイル: JsonRpcProtocolTests.cs プロジェクト: vcdy/json-rpc
        public void IsSystemMethodIsTrueWithLowerCase()
        {
            var result = JsonRpcProtocol.IsSystemMethod("rpc.m");

            Assert.IsTrue(result);
        }
コード例 #4
0
ファイル: JsonRpcProtocolTests.cs プロジェクト: vcdy/json-rpc
        public void IsSystemMethodIsFalse()
        {
            var result = JsonRpcProtocol.IsSystemMethod("m");

            Assert.IsFalse(result);
        }
コード例 #5
0
ファイル: JsonRpcProtocolTests.cs プロジェクト: vcdy/json-rpc
 public void IsSystemMethodWhenMethodIsNull()
 {
     Assert.ThrowsException <ArgumentNullException>(() =>
                                                    JsonRpcProtocol.IsSystemMethod(null));
 }