t

com.digitalasset.canton.error

ParentCantonError

trait ParentCantonError[+T <: BaseCantonError] extends BaseCantonError

Mixing trait for nested errors

The classic situation when we re-wrap errors:

sealed trait CryptoError extends CantonError

sealed trait ProcessingError extends CantonError

// NOTE, this error is NOT created within an ErrorCode, as we just inherit the parent error case class CryptoNoBueno(someArgs: String, parent: CryptoError) extends ProcessingError with ParentCantonError[CryptoError] { // we can mixin our context variables override def mixinContext: Map[String, String] = Map("someArgs" -> someArgs) }

Now in the following situation, the someCryptoOp method would generate the CryptoError. This CryptoError would be logged already (on creation) and therefore, the ParentCantonError disabled logging on creation.

for { _ <- someCryptoOp(..).leftMap(CryptoNoBueno("oh nooo", _)) } yields ()

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ParentCantonError
  2. BaseCantonError
  3. BaseError
  4. LocationMixin
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def parent: T

    The parent error that we want to nest

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def asGrpcError(implicit loggingContext: ErrorLoggingContext): StatusRuntimeException
    Definition Classes
    BaseCantonError
  5. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  6. def cause: String
    Definition Classes
    ParentCantonError → BaseError
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  8. def code: ErrorCode

    The error code, usually passed in as implicit where the error class is defined

    The error code, usually passed in as implicit where the error class is defined

    Definition Classes
    ParentCantonErrorBaseCantonError → BaseError
  9. def context: Map[String, String]
    Definition Classes
    ParentCantonErrorBaseCantonError → BaseError
  10. def definiteAnswerO: Option[Boolean]
    Definition Classes
    BaseError
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  13. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. val location: Option[String]
    Definition Classes
    LocationMixin
  17. def log()(implicit loggingContext: ErrorLoggingContext): Unit
    Definition Classes
    BaseCantonError
  18. def logWithContext(extra: Map[String, String])(implicit contextualizedErrorLogger: ContextualizedErrorLogger): Unit
    Definition Classes
    BaseError
  19. def mixinContext: Map[String, String]

    The context we want to mix-in

  20. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  22. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  23. def resources: Seq[(ErrorResource, String)]
    Definition Classes
    BaseError
  24. def retryable: Option[ErrorCategoryRetry]
    Definition Classes
    BaseError
  25. def rpcStatus(overrideCode: Option[Code] = None)(implicit loggingContext: ErrorLoggingContext): Status
    Definition Classes
    BaseCantonError
  26. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  27. def throwableO: Option[Throwable]
    Definition Classes
    BaseError
  28. def toString(): String
    Definition Classes
    AnyRef → Any
  29. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  31. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from BaseCantonError

Inherited from BaseError

Inherited from LocationMixin

Inherited from AnyRef

Inherited from Any

Ungrouped