Esempio n. 1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void te_Ended(object sender, EventArgs e)
        {
            TaskExecutor     exe    = (TaskExecutor)sender;
            ExecuteEventArgs eeArgs = Get(exe);

            ResultArgs args = new ResultArgs();

            args.ExecuteArgs = eeArgs.ExecuteArgs;
            args.IsComplete  = true;
            args.IsSuccess   = exe.Task.LastParseResult.IsSuccess;
            args.Message     = exe.Task.LastParseResult.ToString();
            if (args.IsSuccess)
            {
                args.KeyValues = exe.Task.LastParseResult.Results;
            }

            eeArgs.CallbackWrapper.Callback(args);
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void te_Ended(object sender, EventArgs e)
        {
            TaskExecutor te         = (TaskExecutor)sender;
            ResultArgs   resultArgs = new ResultArgs();

            resultArgs.ExecuteArgs = this._executeArgs;
            resultArgs.IsComplete  = true;
            resultArgs.IsSuccess   = te.Task.LastParseResult.IsSuccess;
            resultArgs.Message     = te.Task.LastParseResult.ToString();
            resultArgs.KeyValues   = te.Task.LastParseResult.Results;

            this._resultArgs = resultArgs;

            if (this.ResultEvent != null)
            {
                ResultEvent(this, EventArgs.Empty);
            }
        }
Esempio n. 3
0
        public ExecuteResult Doit(ExecuteArgs args)
        {
            if (args == null)
            {
                throw new ArgumentNullException("args");
            }

            this._executeArgs = args;
            int     deviceID = args.DeviceID;
            IDevice device   = SoftManager.GetSoft().Hardware.FindDevice(deviceID);

            ExecuteResult r = null;

            if (StringHelper.Equal(args.ExecuteName, DefineExecuteNames.IsReady))
            {
                if (device == null)
                {
                    string s = string.Format(RemoteStrings.NotFindDeviceByID, deviceID);
                    r = ExecuteResult.CreateFailExecuteResult(s);
                }
                else
                {
                    if (device.Station.CommuniPort != null &&
                        device.Station.CommuniPort.IsOpened)
                    {
                        r = ExecuteResult.CreateSuccessExecuteResult();
                    }
                    else
                    {
                        r = ExecuteResult.CreateFailExecuteResult(RemoteStrings.NotConnection);
                    }
                }
            }
            else
            {
                Debug.Assert(device != null);
                TaskExecutor te = new TaskExecutor();
                te.Ended += new EventHandler(te_Ended);
                r         = te.Execute(device, args.ExecuteName, args.KeyValues);
            }
            return(r);
        }
Esempio n. 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void RemoteObject_Executeing(object sender, ExecuteEventArgs e)
        {
            ExecuteResult r      = null;
            int           id     = e.ExecuteArgs.DeviceID;
            IDevice       device = SoftManager.GetSoft().Hardware.FindDevice(id);

            if (StringHelper.Equal(e.ExecuteArgs.ExecuteName, DefineExecuteNames.IsReady))
            {
                if (device == null)
                {
                    string s = string.Format(RemoteStrings.NotFindDeviceByID, id);
                    r = ExecuteResult.CreateFailExecuteResult(s);
                }
                else
                {
                    if (device.Station.CommuniPort != null &&
                        device.Station.CommuniPort.IsOpened)
                    {
                        r = ExecuteResult.CreateSuccessExecuteResult();
                    }
                    else
                    {
                        r = ExecuteResult.CreateFailExecuteResult(RemoteStrings.NotConnection);
                    }
                }
            }
            else
            {
                TaskExecutor te = new TaskExecutor();
                r = te.Execute(device, e.ExecuteArgs.ExecuteName, e.ExecuteArgs.KeyValues);
                log.Info("task execute : {0}, {1}", r.IsSuccess, r.FailMessage);
                if (r.IsSuccess)
                {
                    this.Add(e, te);
                }
            }
            e.Result = r;
        }
Esempio n. 5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="eeArgs"></param>
 /// <param name="te"></param>
 private void Add(ExecuteEventArgs eeArgs, TaskExecutor te)
 {
     te.Ended += new EventHandler(te_Ended);
     _eeArgs_te_hash.Add(eeArgs, te);
 }
Esempio n. 6
0
        public ExecuteResult Doit(ExecuteArgs args)
        {
            if (args == null)
            {
                throw new ArgumentNullException("args");
            }

            this._executeArgs = args;
            int deviceID = args.DeviceID;
            IDevice device = SoftManager.GetSoft().Hardware.FindDevice(deviceID);

            ExecuteResult r = null;
            if (StringHelper.Equal(args.ExecuteName, DefineExecuteNames.IsReady))
            {
                if (device == null)
                {
                    string s = string.Format(RemoteStrings.NotFindDeviceByID, deviceID);
                    r = ExecuteResult.CreateFailExecuteResult(s);
                }
                else
                {
                    if (device.Station.CommuniPort != null &&
                            device.Station.CommuniPort.IsOpened)
                    {
                        r = ExecuteResult.CreateSuccessExecuteResult();
                    }
                    else
                    {
                        r = ExecuteResult.CreateFailExecuteResult(RemoteStrings.NotConnection);
                    }
                }
            }
            else
            {
                Debug.Assert(device != null);
                TaskExecutor te = new TaskExecutor();
                te.Ended += new EventHandler(te_Ended);
                r = te.Execute(device, args.ExecuteName, args.KeyValues);
            }
            return r;
        }