Quasi tutte le eccezioni che ho scritto sono state molto leggere, contenenti un messaggio String e facoltativamente un throwable. In alcune situazioni ho incluso qualche enum specifico dell'applicazione o qualche altro campo.
public class MySpecialException()
{
private MyErrorCode errorCode;
public MySpecialException(String message, Throwable cause, MyErrorCode errorCode)
{
super(message, cause);
this.errorCode = errorCode;
}
....
}
Ora devo affrontare una situazione in cui devo inserire 5 o 6 campi nell'eccezione perché il gestore degli errori che li intercetta ha bisogno di loro per generare l'output.
Lo consideri un codice errato? Può un'eccezione essere troppo grande?
public class MySpecialException()
{
private String name;
private int age;
private int id;
private int height;
private String duck;
private String whatever;
....
}