SecureDelete.WipeContext.SetContextStatus C# (CSharp) Method

SetContextStatus() public method

Set the status of the context (wipe,paused,stopped)
public SetContextStatus ( ContextStatus newStatus ) : bool
newStatus ContextStatus
return bool
        public bool SetContextStatus(ContextStatus newStatus)
        {
            CheckContextInitialized();
            int result = NativeMethods.ERRORCODE_SUCCESS;

            switch(newStatus) {
                case ContextStatus.Wipe: {
                    if(_status == ContextStatus.Stopped) {
                        result = NativeMethods.StartWipeContext(_contextId);
                    }
                    else if(_status == ContextStatus.Paused) {
                        result = NativeMethods.ResumeWipeContext(_contextId);
                    }

                    break;
                }
                case ContextStatus.Paused: {
                    if(_status == ContextStatus.Wipe) {
                        result = NativeMethods.PauseWipeContext(_contextId);
                    }

                    break;
                }
                case ContextStatus.Stopped: {
                    if(_status == ContextStatus.Wipe || _status == ContextStatus.Paused) {
                        result = NativeMethods.StopWipeContext(_contextId);
                    }

                    break;
                }
            }

            _status = newStatus;
            return ValidResult(result);
        }