blob: 82a1838f1b35da9f3ac651c061c40dadb63bfee3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
package xyz.driver.core.rest.errors
abstract class ServiceException extends Exception {
def message: String
}
final case class InvalidInputException(override val message: String = "Invalid input") extends ServiceException
final case class InvalidActionException(override val message: String = "This action is not allowed")
extends ServiceException
final case class ResourceNotFoundException(override val message: String = "Resource not found")
extends ServiceException
final case class ExternalServiceException(serviceName: String, serviceMessage: String) extends ServiceException {
override def message = s"Error while calling another service: $serviceMessage"
}
final case class ExternalServiceTimeoutException(
override val message: String = "Another service took too long to respond")
extends ServiceException
final case class DatabaseException(override val message: String = "Database access error") extends ServiceException
|