예제 #1
0
        private static string errorToString(BrickError error)
        {
            string errorDescription = "";

            switch (error)
            {
            case BrickError.CorruptFile:
                errorDescription = "File is corrupted";
                break;

            case BrickError.EndOfFile:
                errorDescription = "End of file";
                break;

            case BrickError.FileExits:
                errorDescription = "File already exists";
                break;

            case BrickError.HandleNotReady:
                errorDescription = "File handle is not ready";
                break;

            case BrickError.IllegalPath:
                errorDescription = "Illegal file path";
                break;

            case BrickError.NoHandlesAvailable:
                errorDescription = "No more file handles";
                break;

            case BrickError.NoPermissions:
                errorDescription = "File permission denied";
                break;

            case BrickError.SizeError:
                errorDescription = "File size error";
                break;

            case BrickError.UnknownError:
                errorDescription = "Unknown error";
                break;

            case BrickError.UnknownHandle:
                errorDescription = "Unknown file handle";
                break;

            case BrickError.WrongNumberOfBytes:
                errorDescription = "Wrong number of bytes received";
                break;

            case BrickError.WrongSequenceNumber:
                errorDescription = "Reply has wrong sequence number";
                break;

            default:
                errorDescription = "Unknown brick error";
                break;
            }
            return(errorDescription);
        }
예제 #2
0
        /// <summary>
        /// Convert errorCode to ErrorType
        /// </summary>
        /// <returns>
        /// The error type
        /// </returns>
        /// <param name='errorCode'>
        /// Error code
        /// </param>
        internal static ErrorType ToErrorType(byte errorCode)
        {
            BrickError brickError = (BrickError)errorCode;

            if (Enum.IsDefined(typeof(BrickError), brickError))
            {
                return(ErrorType.Brick);
            }
            TunnelError serverError = (TunnelError)errorCode;

            if (Enum.IsDefined(typeof(TunnelError), serverError))
            {
                return(ErrorType.Tunnel);
            }
            ConnectionError connectionError = (ConnectionError)errorCode;

            if (Enum.IsDefined(typeof(ConnectionError), connectionError))
            {
                return(ErrorType.Connection);
            }

            if (errorCode != 0)
            {
                return(ErrorType.Brick);
            }
            return(ErrorType.NoError);
        }
   		private static string errorToString(BrickError error){
			string errorDescription = "";
			switch(error){
                case BrickError.CorruptFile:
                    errorDescription = "File is corrupted";
                    break;
                case BrickError.EndOfFile:
				    errorDescription = "End of file";
					break;
			    case BrickError.FileExits:
				    errorDescription = "File already exists";
				    break;
				case BrickError.HandleNotReady:
					errorDescription = "File handle is not ready";
					break;
				case BrickError.IllegalPath:
					errorDescription = "Illegal file path";
					break;
				case BrickError.NoHandlesAvailable:
					errorDescription = "No more file handles";
					break;
				case BrickError.NoPermissions:
					errorDescription = "File permission denied";
					break;
				case BrickError.SizeError:
					errorDescription = "File size error";
					break;
				case BrickError.UnknownError:
					errorDescription = "Unknown error";
					break;
				case BrickError.UnknownHandle:
					errorDescription = "Unknown file handle";
					break;
				case BrickError.WrongNumberOfBytes:
					errorDescription = "Wrong number of bytes received";
					break;
				case BrickError.WrongSequenceNumber:
					errorDescription = "Reply has wrong sequence number";
					break;
				default:
	            	errorDescription = "Unknown brick error";
				    break;
			}
			return errorDescription;
		}
예제 #4
0
 /// <summary>
 /// Initializes a new instance of EV3 exception
 /// </summary>
 /// <param name='error'>
 /// Brick Error.
 /// </param>
 public BrickException(BrickError error) : base(errorToString(error), (byte)error)
 {
 }
		/// <summary>
		/// Initializes a new instance of EV3 exception
		/// </summary>
		/// <param name='error'>
		/// Brick error
		/// </param>
		/// <param name='inner'>
		/// Inner exception
		/// </param>
		public BrickException(BrickError error, Exception inner): base(errorToString(error), inner, (byte) error){}
   		private static string errorToString(BrickError error){
			string errorDescription = "";
			switch(error){
                case BrickError.WrongNumberOfBytes:
                    errorDescription = "Wrong number of bytes received";
                    break;
                case BrickError.UnknownErrorCode:
				    errorDescription = "ErrorCode is unknown";
					break;
			    case BrickError.I2CTimeOut:
				    errorDescription = "I2C sensor timeout";
				    break;
				case BrickError.NoMoreHandles:
					errorDescription = "No more file handles";
					break;
				case BrickError.NoSpace:
					errorDescription = "No more space for file";
					break;
				case BrickError.NoMoreFiles:
					errorDescription = "No more files";
					break;
				case BrickError.EndOfFileExpected:
					errorDescription = "End of file expected";
					break;
				case BrickError.EndOfFile:
					errorDescription = "End of file";
					break;
				case BrickError.NotALinearFile:
					errorDescription = "Not a none-fragmented file";
					break;
				case BrickError.FileNotFound:
					errorDescription = "File not found";
					break;
				case BrickError.HandleAlreadyClosed:
					errorDescription = "Handle already closed";
					break;
				case BrickError.NolinearSpace:
					errorDescription = "No space for none-fragmented file";
					break;
				case BrickError.UndefinedFileError:
					errorDescription = "Undefined file error";
					break;
				case BrickError.FileBussy:
					errorDescription = "File is busy";
					break;
				case BrickError.NoWriteBuffers:
					errorDescription = "No write buffers";
					break;
				case BrickError.AppendNotPossible:
					errorDescription = "Append to file is not possible";	
					break;
				case BrickError.FileIsFull:
					errorDescription = "File is full";
					break;
				case BrickError.FileAlreadyExists:
					errorDescription = "File already exists";
					break;
				case BrickError.ModuleNotFound:
					errorDescription = "Module not found";
					break;
				case BrickError.OutOfBoundary:
					errorDescription = "Out of boundary";
					break;
				case BrickError.IllegalFileName:
					errorDescription = "Illegal filename";
					break;
				case BrickError.IllegalHandle:
					errorDescription = "Illegal file handle";
					break;
				case BrickError.PendingCommunication:
					errorDescription = "Pending communication transaction in progress";
					break;
				case BrickError.MailboxQueueEmpty:
					errorDescription = "Specified mailbox queue is empty";
					break;
				case BrickError.RequestFailed:
					errorDescription = "Request failed (specified file not found)";
					break;
				case BrickError.UnknownCommand:
					errorDescription = "Unknown command opcode";
					break;
				case BrickError.InsanePacket:
					errorDescription = "Insane packet";
					break;
				case BrickError.DataOutOfRange:
					errorDescription = "Data contains out-of-range values";
					break;
				case BrickError.CommunicationBusError:
					errorDescription = "Communication bus error";
					break;
				case BrickError.BufferFull:
					errorDescription = "No free memory in communication buffer";
					break;
				case BrickError.InvalidChannel:
					errorDescription = "Pecified channel/connection is not valid";
					break;
				case BrickError.NoActiveProgram:
					errorDescription = "No active program running";
					break;
				case BrickError.IllegalSize:
					errorDescription = "Illegal size specified";
					break;
				case BrickError.InvalidMailboxQueue:
					errorDescription = "Illegal mailbox queue ID specified";
					break;
				case BrickError.InvalidField:
					errorDescription = "Attemped to access invalid field of a structure";
					break;
				case BrickError.BadIO:
					errorDescription = "Bad input or output specified";
					break;
				case BrickError.OutOfMemory:
					errorDescription = "Insufficient memory available";
					break;
				case BrickError.BadArguments:
					errorDescription = "Bad arguments";
					break;
				default:
	            	errorDescription = "Unknown brick error";
				    break;
			}
			return errorDescription;
		}
예제 #7
0
        private static string errorToString(BrickError error)
        {
            string errorDescription = "";

            switch (error)
            {
            case BrickError.WrongNumberOfBytes:
                errorDescription = "Wrong number of bytes received";
                break;

            case BrickError.UnknownErrorCode:
                errorDescription = "ErrorCode is unknown";
                break;

            case BrickError.I2CTimeOut:
                errorDescription = "I2C sensor timeout";
                break;

            case BrickError.NoMoreHandles:
                errorDescription = "No more file handles";
                break;

            case BrickError.NoSpace:
                errorDescription = "No more space for file";
                break;

            case BrickError.NoMoreFiles:
                errorDescription = "No more files";
                break;

            case BrickError.EndOfFileExpected:
                errorDescription = "End of file expected";
                break;

            case BrickError.EndOfFile:
                errorDescription = "End of file";
                break;

            case BrickError.NotALinearFile:
                errorDescription = "Not a none-fragmented file";
                break;

            case BrickError.FileNotFound:
                errorDescription = "File not found";
                break;

            case BrickError.HandleAlreadyClosed:
                errorDescription = "Handle already closed";
                break;

            case BrickError.NolinearSpace:
                errorDescription = "No space for none-fragmented file";
                break;

            case BrickError.UndefinedFileError:
                errorDescription = "Undefined file error";
                break;

            case BrickError.FileBussy:
                errorDescription = "File is busy";
                break;

            case BrickError.NoWriteBuffers:
                errorDescription = "No write buffers";
                break;

            case BrickError.AppendNotPossible:
                errorDescription = "Append to file is not possible";
                break;

            case BrickError.FileIsFull:
                errorDescription = "File is full";
                break;

            case BrickError.FileAlreadyExists:
                errorDescription = "File already exists";
                break;

            case BrickError.ModuleNotFound:
                errorDescription = "Module not found";
                break;

            case BrickError.OutOfBoundary:
                errorDescription = "Out of boundary";
                break;

            case BrickError.IllegalFileName:
                errorDescription = "Illegal filename";
                break;

            case BrickError.IllegalHandle:
                errorDescription = "Illegal file handle";
                break;

            case BrickError.PendingCommunication:
                errorDescription = "Pending communication transaction in progress";
                break;

            case BrickError.MailboxQueueEmpty:
                errorDescription = "Specified mailbox queue is empty";
                break;

            case BrickError.RequestFailed:
                errorDescription = "Request failed (specified file not found)";
                break;

            case BrickError.UnknownCommand:
                errorDescription = "Unknown command opcode";
                break;

            case BrickError.InsanePacket:
                errorDescription = "Insane packet";
                break;

            case BrickError.DataOutOfRange:
                errorDescription = "Data contains out-of-range values";
                break;

            case BrickError.CommunicationBusError:
                errorDescription = "Communication bus error";
                break;

            case BrickError.BufferFull:
                errorDescription = "No free memory in communication buffer";
                break;

            case BrickError.InvalidChannel:
                errorDescription = "Pecified channel/connection is not valid";
                break;

            case BrickError.NoActiveProgram:
                errorDescription = "No active program running";
                break;

            case BrickError.IllegalSize:
                errorDescription = "Illegal size specified";
                break;

            case BrickError.InvalidMailboxQueue:
                errorDescription = "Illegal mailbox queue ID specified";
                break;

            case BrickError.InvalidField:
                errorDescription = "Attemped to access invalid field of a structure";
                break;

            case BrickError.BadIO:
                errorDescription = "Bad input or output specified";
                break;

            case BrickError.OutOfMemory:
                errorDescription = "Insufficient memory available";
                break;

            case BrickError.BadArguments:
                errorDescription = "Bad arguments";
                break;

            default:
                errorDescription = "Unknown brick error";
                break;
            }
            return(errorDescription);
        }