Class RiskscapeException
- All Implemented Interfaces:
Serializable
- Direct Known Subclasses:
AutoClosingException,CoercionException,CreateException,DuplicateKeysException,ExitException,GeometryInvalidException,GeometryReprojectionException,IdentifiedException,InvalidBoundParametersException,InvalidTupleException,LexerException,MissingTypeException,NoBindingAvailableException,ParameterBindingException,ParseException,PipelineCycleException,PipelineDefinitionException,ResourceLoadingException,ResultComputationException,RiskscapeIOException,TypeBuildingException,UnexpectedNullValueException,UnknownFunctionException,UnknownSRIDException
Root exception that all exceptions from Riskscape engine code should extend. Can optionally accept a Problem, indicating that there's something the user should know about this exception and maybe it's something they can fix - when the exception is caught, the details of the Problem are then conveyed to the user.
If the exception has no problem, it's likely to be an unhandled exception that will need a bug fix - consider in this case whether you really should use RiskscapeException, or an existing java library exception.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionRiskscapeException(String message) Deprecated.RiskscapeException(String message, Throwable cause) Deprecated.UseRiskscapeException(Problem, Throwable)instead to produce an internationalizable error message that works with riskscape's problem APIRiskscapeException(Problems problem) RiskscapeException(Problems problem, Throwable cause) -
Method Summary
Methods inherited from class java.lang.Throwable
addSuppressed, fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString
-
Constructor Details
-
RiskscapeException
Deprecated.UseRiskscapeException(Problem)instead to produce an internationalizable error message that works with riskscape's problem APIXXX do we want to split up the hierarchy somewhat in to : a) unexpected errors that are probably not recoverable/fixable and b) exceptions that are "semantic vessels for a problem" such as a NoSuchObjectExistsException - these things help us with flow control / where they serve as sort of case classes where a standard
ResultOrProblemsisn't sufficient, e.g. we need to do something different depending on the type ofProblem. More thinking required... -
RiskscapeException
Deprecated.UseRiskscapeException(Problem, Throwable)instead to produce an internationalizable error message that works with riskscape's problem API -
RiskscapeException
-
RiskscapeException
-
-
Method Details
-
hasProblem
public boolean hasProblem()- Returns:
- True if there is a problem associated with this exception
-
getProblem
- Returns:
- the problem associated with this exception, or null if there is none TODO pull this thread and convert to iproblem and see what happens
-
getCause
-
getProblems
Returns the
Problemsobject associated with this exception - might be NONE
-
RiskscapeException(Problem)instead to produce an internationalizable error message that works with riskscape's problem API