Package one.microstream.exceptions
Class TypeCastException
java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
java.lang.ClassCastException
one.microstream.exceptions.TypeCastException
- All Implemented Interfaces:
 Serializable
public class TypeCastException extends ClassCastException
- See Also:
 - Serialized Form
 
- 
Constructor Summary
Constructors Constructor Description TypeCastException(Class<?> type, Object subject)Instantiates a new instance with the target type and the subject instance that caused the exception and no explicit message.TypeCastException(Class<?> type, Object subject, String message)Instantiates a new instance with the target type and the subject instance that caused the exception and an explicit message. - 
Method Summary
Modifier and Type Method Description StringassembleDetailString()protected StringassembleExplicitMessageAddon()StringassembleOutputString()StringgetMessage()Returns an assembled output String due to bad method design inThrowable.Stringmessage()Sadly, the Throwable implementation uses #getMessage() directly to print the exception.Objectsubject()The subject that could not be casted.Class<?>type()The target type the subject could not be casted to.Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString 
- 
Constructor Details
- 
TypeCastException
Instantiates a new instance with the target type and the subject instance that caused the exception and no explicit message.- Parameters:
 type- the target type the subject could not be casted to.subject- the subject that could not be casted.
 - 
TypeCastException
Instantiates a new instance with the target type and the subject instance that caused the exception and an explicit message.- Parameters:
 type- the target type the subject could not be casted to.subject- the subject that could not be casted.message- an arbitrary string used as a custom message.
 
 - 
 - 
Method Details
- 
type
The target type the subject could not be casted to.- Returns:
 - the target type.
 
 - 
subject
The subject that could not be casted.- Returns:
 - the subject.
 
 - 
message
Sadly, the Throwable implementation uses #getMessage() directly to print the exception. This is a concern conflict: getMessage should actually be the getter for the explicit message. But it is used as the String representating method as well. So a output message generically assembling the output string must override the getter. As this hides the actual getting functionality, a workaround accessor method has to be provided for potential subclasses.- Returns:
 - the explicit message string passed to the constructor when creating this instance.
 
 - 
assembleDetailString
 - 
assembleExplicitMessageAddon
 - 
assembleOutputString
 - 
getMessage
Returns an assembled output String due to bad method design inThrowable. For the actual message getter, seemessage().- Overrides:
 getMessagein classThrowable- Returns:
 - this exception type's generic string plus an explicit message if present.
 
 
 -