Esempio n. 1
0
        /// <summary>
        /// 示例发布以后的后续处理
        /// </summary>
        /// <param name="server"></param>
        /// <param name="sender"></param>
        /// <param name="customData"></param>
        /// <returns></returns>
        public DeployState OnExample(AutoCSer.Deploy.Server server, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, byte[] customData)
        {
            string path = AutoCSer.Web.Config.Deploy.ServerPath + @"www.AutoCSer.com\Download\";

            System.IO.File.Copy(path + "AutoCSer.zip", path + "AutoCSer.Example.zip", true);
            return(DeployState.Success);
        }
            /// <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, Value, 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;
                }
            }
Esempio n. 3
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
                    {
                        {
                            (_s0 /**/.Pop() ?? new _s0()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.Timeout);
                            return;
                        }
                    }
                    catch (Exception error)
                    {
                        returnType = AutoCSer.Net.TcpServer.ReturnType.ServerException;
                        sender.AddLog(error);
                    }
                    sender.Push(returnType);
                    return;

                default: return;
                }
            }
Esempio n. 4
0
 private bool clear(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity)
 {
     if (checkCommand(sender, Command.clear))
     {
         Clear(ref identity);
         return(true);
     }
     return(false);
 }
Esempio n. 5
0
 private bool setFileSource(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, byte[][] files)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.setFileSource))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         if (deployPool.Array[identity.Index].SetFiles(identity.Identity, files))
         {
             Monitor.Exit(arrayLock);
             return(true);
         }
         Monitor.Exit(arrayLock);
     }
     return(false);
 }
Esempio n. 6
0
 private int addWaitRunSwitch(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, int taskIndex)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.addWaitRunSwitch))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].AddTask(identity.Identity, new Task {
                 TaskIndex = taskIndex, Type = TaskType.WaitRunSwitch
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(-1);
 }
Esempio n. 7
0
 private int addRun(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, KeyValue <string, int>[] files, ClientTask.Run run)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.addRun))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].AddTask(identity.Identity, new Task {
                 FileIndexs = files, ServerDirectory = new DirectoryInfo(run.ServerPath), Type = TaskType.Run, RunFileName = run.FileName, RunSleep = run.Sleep, IsWaitRun = run.IsWait
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(-1);
 }
Esempio n. 8
0
 private int addAssemblyFiles(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, KeyValue <string, int>[] files, ClientTask.AssemblyFile assemblyFile)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.addAssemblyFiles))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].AddTask(identity.Identity, new Task {
                 FileIndexs = files, ServerDirectory = new DirectoryInfo(assemblyFile.ServerPath), Type = TaskType.AssemblyFile
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(-1);
 }
Esempio n. 9
0
 private DeployState start(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, DateTime time)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.start))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].Start(identity.Identity, time, new Timer {
                 Server = this, Identity = identity
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(DeployState.IdentityError);
 }
Esempio n. 10
0
 private int addCustom(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, ClientTask.Custom custom)
 {
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCustom(sender, custom.CallName))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].AddTask(identity.Identity, new Task {
                 Sender = sender, RunFileName = custom.CallName, CustomData = custom.CustomData, Type = TaskType.Custom
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(-1);
 }
Esempio n. 11
0
 private bool clearAll(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender)
 {
     if (checkCommand(sender, Command.clearAll))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         DeployInfo[] deployArray = deployPool.Array;
         int          poolIndex   = deployPool.PoolIndex;
         while (poolIndex != 0)
         {
             deployArray[--poolIndex].Clear();
         }
         deployPool.ClearIndexContinue();
         Monitor.Exit(arrayLock);
         GC.Collect();
         return(true);
     }
     return(false);
 }
Esempio n. 12
0
 private int addFiles(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity identity, Directory directory, ClientTask.WebFile webFile, TaskType taskType)
 {
     //System.IO.FileInfo file = new System.IO.FileInfo(@"ServerDeSerializeError" + AutoCSer.Date.NowTime.Set().Ticks.ToString());
     //System.IO.File.WriteAllBytes(file.FullName, data.ToArray());
     //Console.WriteLine(file.FullName);
     if ((uint)identity.Index < (uint)deployPool.PoolIndex && checkCommand(sender, Command.addFiles))
     {
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             return(deployPool.Array[identity.Index].AddTask(identity.Identity, new Task {
                 Directory = directory, ServerDirectory = new DirectoryInfo(webFile.ServerPath), Type = taskType
             }));
         }
         finally { Monitor.Exit(arrayLock); }
     }
     return(-1);
 }
Esempio n. 13
0
 private IndexIdentity create(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, IndexIdentity clientId)
 {
     if (checkCommand(sender, Command.create))
     {
         int    index, identity;
         object arrayLock = deployPool.ArrayLock;
         Monitor.Enter(arrayLock);
         try
         {
             index    = deployPool.GetIndexContinue();
             identity = deployPool.Array[index].Set(ref clientId);
         }
         finally { Monitor.Exit(arrayLock); }
         return(new IndexIdentity {
             Index = index, Identity = identity
         });
     }
     return(new IndexIdentity {
         Index = -1
     });
 }
Esempio n. 14
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 1:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p1 inputParameter = new _p1();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            (_s1 /**/.Pop() ?? new _s1()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.Queue, 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 2:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        {
                            _p3 outputParameter = new _p3();
                            _s2 serverCall      = _s2 /**/.Pop() ?? new _s2();
                            serverCall.AsynchronousCallback = sender.GetCallback <_p3, AutoCSer.Net.TcpRegister.ServerLog>(_c2, ref outputParameter);
                            serverCall.Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.QueueLink);
                            return;
                        }
                    }
                    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
                    {
                        _p4 inputParameter = new _p4();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            (_s3 /**/.Pop() ?? new _s3()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.Queue, 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;
                }
            }
Esempio n. 15
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);
                }
            }
Esempio n. 16
0
 /// <summary>
 /// 发布服务更新以后的后续处理
 /// </summary>
 /// <param name="server"></param>
 /// <param name="sender"></param>
 /// <param name="customData"></param>
 /// <returns></returns>
 public DeployState OnDeployServerUpdated(Server server, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, byte[] customData)
 {
     AutoCSer.Threading.ThreadPool.TinyBackground.Start(server.OnDeployServerUpdated);
     return(DeployState.Success);
 }
Esempio n. 17
0
 /// <summary>
 /// 游戏服务更新以后的后续处理
 /// </summary>
 /// <param name="server"></param>
 /// <param name="sender"></param>
 /// <param name="customData"></param>
 /// <returns></returns>
 public DeployState OnGameServerUpdated(Server server, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, byte[] customData)
 {
     AutoCSer.Deploy.Server.UpdateSwitchFile(@"C:\AutoCSer\GameServer\", "AutoCSer.GameServer.exe")
     .StartProcessDirectory();
     return(DeployState.Success);
 }
Esempio n. 18
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))
                        {
                            _p2 outputParameter = new _p2();

                            Value.append(inputParameter.p0, sender.GetCallback <_p2, ulong>(_c0, 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))
                        {
                            (_s1 /**/.Pop() ?? new _s1()).Set(sender, Value, AutoCSer.Net.TcpServer.ServerTaskType.Queue, 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 2:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p5 inputParameter = new _p5();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            _p6 outputParameter = new _p6();

                            Value.read(inputParameter.p0, inputParameter.p1, sender.GetCallback <_p6, AutoCSer.DiskBlock.ClientBuffer>(_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;

                default: return;
                }
            }
Esempio n. 19
0
 /// <summary>
 /// 检测自定义任务权限
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="customName"></param>
 /// <returns></returns>
 protected virtual bool checkCustom(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, string customName)
 {
     return(true);
 }
Esempio n. 20
0
 public static void SetReadCommand(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender)
 {
     sender.SetCommand((int)command.register);
     sender.SetCommand((int)command.getLog);
 }
        /// <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;
            }
        }
Esempio n. 22
0
 private static string myName(AutoCSer.Net.TcpInternalServer.ServerSocketSender client)
 {
     return(MyName(client));
 }
Esempio n. 23
0
 public static bool _M2(AutoCSer.Net.TcpInternalServer.ServerSocketSender _sender_, string userID, ulong randomPrefix, byte[] md5Data, ref long ticks)
 {
     return(AutoCSer.Web.SearchServer.Server.verify(_sender_, userID, randomPrefix, md5Data, ref ticks));
 }
Esempio n. 24
0
 /// <summary>
 /// 调用自定义任务
 /// </summary>
 /// <param name="server"></param>
 /// <param name="sender"></param>
 /// <param name="task"></param>
 /// <returns></returns>
 internal virtual DeployState Call(Server server, AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, Task task)
 {
     return(DeployState.Success);
 }
Esempio n. 25
0
 private string myName(AutoCSer.Net.TcpInternalServer.ServerSocketSender client)
 {
     return(TcpStaticServer.GetSession.MyName(client));
 }
Esempio n. 26
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))
                        {
                            _p2 outputParameter = new _p2();

                            Value.append(inputParameter.p0, sender.GetCallback <_p2, ulong>(_c0, 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 = Value.verify(sender, inputParameter.p2, inputParameter.p3, inputParameter.p0, ref inputParameter.p1);
                            if (Return)
                            {
                                sender.SetVerifyMethod();
                            }

                            _outputParameter_.p0     = inputParameter.p1;
                            _outputParameter_.Return = Return;
                            sender.Push(_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 2:
                    returnType = AutoCSer.Net.TcpServer.ReturnType.Unknown;
                    try
                    {
                        _p5 inputParameter = new _p5();
                        if (sender.DeSerialize(ref data, ref inputParameter))
                        {
                            _p6 outputParameter = new _p6();

                            Value.read(inputParameter.p0, inputParameter.p1, sender.GetCallback <_p6, AutoCSer.DiskBlock.ClientBuffer>(_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;

                default: return;
                }
            }
Esempio n. 27
0
 private static bool login(AutoCSer.Net.TcpInternalServer.ServerSocketSender client, string user, string password)
 {
     return(Login(client, user, password));
 }
Esempio n. 28
0
 /// <summary>
 /// 检测任务权限
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="command"></param>
 /// <returns></returns>
 protected virtual bool checkCommand(AutoCSer.Net.TcpInternalServer.ServerSocketSender sender, Command command)
 {
     return(true);
 }