Package com.orchestranetworks.schema

# Class InvalidSchemaException

java.lang.Object
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
com.orchestranetworks.schema.InvalidSchemaException

All Implemented Interfaces:
  `Serializable`

public class InvalidSchemaException extends RuntimeException
Thrown to indicate that a data model is not valid.

Usually, a data model is fully verified at validation time and any resulting error is added to the validation context without any need to throw an exception. However, there are three main use cases where an exception is required:

- Error during data model loading: It is recommended to throw this exception when the data model validation context is not available. For example, this is the case when a JavaBean setter is invoked.
- Error in a function: If the value returned by a `ValueFunction` is invalid, the caller can throw this exception.
- Invalidity based on dynamic or external conditions: In certain cases, data model validity dynamically depend upon the execution context. In such cases, the appropriate method of signaling a problem is to throw this exception. For example:
  - if a data model uses a reference to a dataset or record, but the dataset or record is deleted, or
  - if a data model uses an external resource but this resource becomes unavailable or has an error.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `InvalidSchemaException(UserMessage aMessage)`
  `InvalidSchemaException(String aMessage)`
  `InvalidSchemaException(String aMessage, Throwable aCause)`
  `InvalidSchemaException(Throwable aCause)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `UserMessage`
  `getUserMessage()`

  ### Methods inherited from class java.lang.Throwable

  `addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString`

  ### Methods inherited from class java.lang.Object

  `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Constructor Details

  - ### InvalidSchemaException

    public InvalidSchemaException(UserMessage aMessage)

  - ### InvalidSchemaException

    public InvalidSchemaException(String aMessage)

  - ### InvalidSchemaException

    public InvalidSchemaException(String aMessage, Throwable aCause)

  - ### InvalidSchemaException

    public InvalidSchemaException(Throwable aCause)

- ## Method Details

  - ### getUserMessage

    public UserMessage getUserMessage()