Esempio n. 1
0
        /// <summary>
        /// 命令处理
        /// </summary>
        /// <param name="index">命令序号</param>
        /// <param name="sender">TCP 内部服务套接字数据发送</param>
        /// <param name="data">命令数据</param>
        public override void DoCommand(int index, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, ref SubArray <byte> data)
        {
            AutoCSer.Net.TcpServer.ReturnType returnType;
            switch (index - 128)
            {
            case 0:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p1 inputParameter = new _p1();
                    if (sender.DeSerialize(ref data, ref inputParameter, true))
                    {
                        _p2 outputParameter = new _p2();
                        AutoCSer.Web.SearchServer.Server /**/.TcpStaticServer._M1(inputParameter.p0, sender.GetCallback <_p2, AutoCSer.Web.SearchServer.SearchItem[]>(_c1, ref outputParameter));
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            case 1:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p3 inputParameter = new _p3();
                    if (sender.DeSerialize(ref data, ref inputParameter))
                    {
                        _p4 _outputParameter_ = new _p4();

                        bool Return;

                        Return = AutoCSer.Web.SearchServer.Server /**/.TcpStaticServer._M2(sender, inputParameter.p2, inputParameter.p3, inputParameter.p0, ref inputParameter.p1);
                        if (Return)
                        {
                            sender.SetVerifyMethod();
                        }

                        _outputParameter_.p0     = inputParameter.p1;
                        _outputParameter_.Return = Return;
                        sender.Push(_c2, ref _outputParameter_);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            case 2:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p5 inputParameter = new _p5();
                    if (sender.DeSerialize(ref data, ref inputParameter))
                    {
                        (_s2 /**/.Pop() ?? new _s2()).Set(sender, AutoCSer.Net.TcpServer.ServerTaskType.Timeout, ref inputParameter);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            default: return;
            }
        }

        private static readonly AutoCSer.Net.TcpServer.OutputInfo _c1 = new AutoCSer.Net.TcpServer.OutputInfo {
            OutputParameterIndex = 2, IsBuildOutputThread = true
        };
        private static readonly AutoCSer.Net.TcpServer.OutputInfo _c2 = new AutoCSer.Net.TcpServer.OutputInfo {
            OutputParameterIndex = 4, IsSimpleSerializeOutputParamter = true, IsBuildOutputThread = true
        };
        sealed class _s2 : AutoCSer.Net.TcpStaticServer.ServerCall <_s2, _p5>
        {
            private void get(ref AutoCSer.Net.TcpServer.ReturnValue <_p6> value)
            {
                try
                {
                    string Return;


                    Return = AutoCSer.Web.SearchServer.SearchItem /**/.TcpStaticServer._M3(inputParameter.p0);

                    value.Value.Return = Return;
                    value.Type         = AutoCSer.Net.TcpServer.ReturnType.Success;
                }
                catch (Exception error)
                {
                    value.Type = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    Sender.AddLog(error);
                }
            }
        /// <summary>
        /// 命令处理
        /// </summary>
        /// <param name="index">命令序号</param>
        /// <param name="sender">TCP 内部服务套接字数据发送</param>
        /// <param name="data">命令数据</param>
        public override void DoCommand(int index, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, ref SubArray <byte> data)
        {
            AutoCSer.Net.TcpServer.ReturnType returnType;
            switch (index - 128)
            {
            case 0:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p1 inputParameter = new _p1();
                    if (sender.DeSerialize(ref data, ref inputParameter, true))
                    {
                        (_s0 /**/.Pop() ?? new _s0()).Set(sender, AutoCSer.Net.TcpServer.ServerTaskType.Timeout, ref inputParameter);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            case 1:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p3 inputParameter = new _p3();
                    if (sender.DeSerialize(ref data, ref inputParameter))
                    {
                        _p4 _outputParameter_ = new _p4();

                        bool Return;

                        Return = AutoCSer.Web.SearchServer.Server /**/.TcpStaticServer._M2(sender, inputParameter.p2, inputParameter.p0, ref inputParameter.p1);
                        if (Return)
                        {
                            sender.SetVerifyMethod();
                        }

                        _outputParameter_.p0     = inputParameter.p1;
                        _outputParameter_.Return = Return;
                        sender.Push(_c2, ref _outputParameter_);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            case 2:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p5 inputParameter = new _p5();
                    if (sender.DeSerialize(ref data, ref inputParameter))
                    {
                        (_s2 /**/.Pop() ?? new _s2()).Set(sender, AutoCSer.Net.TcpServer.ServerTaskType.Timeout, ref inputParameter);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            case 4:
                returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                try
                {
                    _p7 inputParameter = new _p7();
                    if (sender.DeSerialize(ref data, ref inputParameter, true))
                    {
                        (_s4 /**/.Pop() ?? new _s4()).Set(sender, AutoCSer.Net.TcpServer.ServerTaskType.Timeout, ref inputParameter);
                        return;
                    }
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                }
                catch (Exception error)
                {
                    returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                    sender.AddLog(error);
                }
                sender.Push(returnType);
                return;

            default: return;
            }
        }
            /// <summary>
            /// 命令处理
            /// </summary>
            /// <param name="index">命令序号</param>
            /// <param name="sender">TCP 内部服务套接字数据发送</param>
            /// <param name="data">命令数据</param>
            public override void DoCommand(int index, AutoCSer.Net.TcpOpenServer.ServerSocketSender sender, ref SubArray <byte> data)
            {
                AutoCSer.Net.TcpServer.ReturnType returnType;
                switch (index - 128)
                {
                case 0:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p1 inputParameter = new _p1();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            _p2 _outputParameter_ = new _p2();

                            bool Return;

                            Return = Value.login(sender, inputParameter.userName);
                            if (Return)
                            {
                                sender.SetVerifyMethod();
                            }
                            _outputParameter_.Return = Return;
                            sender.Push(_c0, ref _outputParameter_);
                            return;
                        }
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.Log(error);
                    }
                    sender.Push(returnType);
                    return;

                case 1:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            (_s1 /**/.Pop() ?? new _s1()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue);
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.Log(error);
                    }
                    sender.Push(returnType);
                    return;

                case 2:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p3 inputParameter = new _p3();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            (_s2 /**/.Pop() ?? new _s2()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue, ref inputParameter);
                            return;
                        }
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.Log(error);
                    }
                    sender.Push(returnType);
                    return;

                case 3:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            _p4 outputParameter = new _p4();

                            Value.getUser(sender, sender.GetCallback <_p4, AutoCSer.TestCase.ChatData.UserLogin>(_c3, ref outputParameter));
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.Log(error);
                    }
                    sender.Push(returnType);
                    return;

                case 4:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            _p5 outputParameter = new _p5();

                            Value.getMessage(sender, sender.GetCallback <_p5, AutoCSer.TestCase.ChatData.Message>(_c4, ref outputParameter));
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.Log(error);
                    }
                    sender.Push(returnType);
                    return;

                default: return;
                }
            }
Esempio n. 4
0
            /// <summary>
            /// 命令处理
            /// </summary>
            /// <param name="index">命令序号</param>
            /// <param name="sender">TCP 内部服务套接字数据发送</param>
            /// <param name="data">命令数据</param>
            public override void DoCommand(int index, AutoCSer.Net.TcpOpenServer.ServerSocketSender sender, ref SubArray <byte> data)
            {
                AutoCSer.Net.TcpServer.ReturnType returnType;
                switch (index - 128)
                {
                case 0:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            _p1 outputParameter = new _p1();
                            _s0 serverCall      = _s0 /**/.Pop() ?? new _s0();
                            serverCall.AsynchronousCallback = sender.GetCallback <_p1, AutoCSer.TestCase.ChatData.Message>(_c0, ref outputParameter);
                            serverCall.Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue);
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                case 1:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            _p2 outputParameter = new _p2();
                            _s1 serverCall      = _s1 /**/.Pop() ?? new _s1();
                            serverCall.AsynchronousCallback = sender.GetCallback <_p2, AutoCSer.TestCase.ChatData.UserLogin>(_c1, ref outputParameter);
                            serverCall.Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue);
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                case 2:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p3 inputParameter = new _p3();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            (_s2 /**/.Pop() ?? new _s2()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue, ref inputParameter);
                            return;
                        }
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                case 3:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            (_s3 /**/.Pop() ?? new _s3()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue);
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                case 4:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p5 inputParameter = new _p5();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            (_s4 /**/.Pop() ?? new _s4()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.TcpQueue, ref inputParameter);
                            return;
                        }
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerDeSerializeError;
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                default: return;
                }
            }