public IAsyncOperation <GarageDoorCloseGarageResult> CloseGarageAsync(AllJoynMessageInfo info)
        {
            Task <GarageDoorCloseGarageResult> task = new Task <GarageDoorCloseGarageResult>(() =>
            {
                try
                {
                    _driver.OpenGarageDoor(false);
                    return(GarageDoorCloseGarageResult.CreateSuccessResult());
                }
                catch (Exception ex)
                {
                    return(GarageDoorCloseGarageResult.CreateFailureResult(1));
                }
            });

            task.Start();
            return(task.AsAsyncOperation());
        }
Пример #2
0
        public IAsyncOperation <GarageDoorCloseGarageResult> CloseGarageAsync(AllJoynMessageInfo info)
        {
            Task <GarageDoorCloseGarageResult> task = new Task <GarageDoorCloseGarageResult>(() =>
            {
                try
                {
                    if (_currentState != "Closed")
                    {
                        _currentState = "Closing";
                    }
                    return(GarageDoorCloseGarageResult.CreateSuccessResult());
                }
                catch (Exception ex)
                {
                    return(GarageDoorCloseGarageResult.CreateFailureResult(1));
                }
            });

            task.Start();
            return(task.AsAsyncOperation());
        }