MoEngageRequestFailureReason
@objc(MoEngageRequestFailureReason)
open class MoEngageRequestFailureReason : NSObject
Reason describing why a public API call failed.
The base class carries the shared SDK-wide failure code (network, parse, auth, etc.)
that any module can emit. Module-specific failures are represented by subclasses
(MoEngageCoreRequestFailureReason, MoEngageInAppRequestFailureReason,
MoEngageMessagingRequestFailureReason) which carry their own ModuleCode enum plus
module-specific metadata (e.g. campaignId).
Customers downcast error.reason as? MoEngageInAppRequestFailureReason to access
module-specific information, or switch reason.code for cross-cutting handling.
open so first-party SDK pods can declare module-specific reason subclasses
(MoEngageCoreRequestFailureReason in MoEngageCore, MoEngageInAppRequestFailureReason
in MoEngageInApps, MoEngageMessagingRequestFailureReason in MoEngageMessaging,
etc.). The shared Code enum on this base class covers cross-cutting failure
modes; each subclass adds a nested ModuleCode enum for module-specific codes.
-
Shared SDK-wide failure codes that any module can emit.
Module-specific codes live on the relevant subclass’s nested
See moreModuleCodeenum.Declaration
Swift
@objc(MoEngageRequestFailureReasonCode) public enum Code : Int -
Shared SDK-wide code describing this failure.
Declaration
Swift
@objc public let code: Code -
Declaration
Swift
open override var description: String { get }