001/*----------------------------------------------------------------------------*/ 002/* Copyright (c) FIRST 2008-2012. All Rights Reserved. */ 003/* Open Source Software - may be modified and shared by FRC teams. The code */ 004/* must be accompanied by the FIRST BSD license file in the root directory of */ 005/* the project. */ 006/*----------------------------------------------------------------------------*/ 007 008package edu.wpi.first.wpilibj.util; 009 010/** 011 * Exception for bad status codes from the chip object 012 * @author Brian 013 */ 014public final class UncleanStatusException extends IllegalStateException { 015 016 private final int statusCode; 017 018 /** 019 * Create a new UncleanStatusException 020 * @param status the status code that caused the exception 021 * @param message A message describing the exception 022 */ 023 public UncleanStatusException(int status, String message) { 024 super(message); 025 statusCode = status; 026 } 027 028 /** 029 * Create a new UncleanStatusException 030 * @param status the status code that caused the exception 031 */ 032 public UncleanStatusException(int status) { 033 this(status, "Status code was non-zero"); 034 } 035 036 /** 037 * Create a new UncleanStatusException 038 * @param message a message describing the exception 039 */ 040 public UncleanStatusException(String message) { 041 this(-1, message); 042 } 043 044 /** 045 * Create a new UncleanStatusException 046 */ 047 public UncleanStatusException() { 048 this(-1, "Status code was non-zero"); 049 } 050 051 /** 052 * Create a new UncleanStatusException 053 * @return the status code that caused the exception 054 */ 055 public int getStatus() { 056 return statusCode; 057 } 058}