84 lines
3.2 KiB
Swift
84 lines
3.2 KiB
Swift
|
enum RCTVideoError : Int {
|
||
|
case fromJSPart
|
||
|
case licenseRequestNotOk
|
||
|
case noDataFromLicenseRequest
|
||
|
case noSPC
|
||
|
case noDataRequest
|
||
|
case noCertificateData
|
||
|
case noCertificateURL
|
||
|
case noFairplayDRM
|
||
|
case noDRMData
|
||
|
}
|
||
|
|
||
|
enum RCTVideoErrorHandler {
|
||
|
|
||
|
static let noDRMData: NSError = NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.noDRMData.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining DRM license.",
|
||
|
NSLocalizedFailureReasonErrorKey: "No drm object found.",
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Have you specified the 'drm' prop?"
|
||
|
])
|
||
|
|
||
|
static let noCertificateURL: NSError = NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.noCertificateURL.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining DRM License.",
|
||
|
NSLocalizedFailureReasonErrorKey: "No certificate URL has been found.",
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Did you specified the prop certificateUrl?"
|
||
|
])
|
||
|
|
||
|
static let noCertificateData: NSError = NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.noCertificateData.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining DRM license.",
|
||
|
NSLocalizedFailureReasonErrorKey: "No certificate data obtained from the specificied url.",
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Have you specified a valid 'certificateUrl'?"
|
||
|
])
|
||
|
|
||
|
static let noSPC:NSError! = NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.noSPC.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining license.",
|
||
|
NSLocalizedFailureReasonErrorKey: "No spc received.",
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Check your DRM config."
|
||
|
])
|
||
|
|
||
|
static let noDataFromLicenseRequest:NSError! = NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.noDataFromLicenseRequest.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining DRM license.",
|
||
|
NSLocalizedFailureReasonErrorKey: "No data received from the license server.",
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Is the licenseServer ok?."
|
||
|
])
|
||
|
|
||
|
static func licenseRequestNotOk(_ statusCode: Int) -> NSError {
|
||
|
return NSError(
|
||
|
domain: "RCTVideo",
|
||
|
code: RCTVideoError.licenseRequestNotOk.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: "Error obtaining license.",
|
||
|
NSLocalizedFailureReasonErrorKey: String(
|
||
|
format:"License server responded with status code %li",
|
||
|
(statusCode)
|
||
|
),
|
||
|
NSLocalizedRecoverySuggestionErrorKey: "Did you send the correct data to the license Server? Is the server ok?"
|
||
|
])
|
||
|
}
|
||
|
|
||
|
static func fromJSPart(_ error: String) -> NSError {
|
||
|
return NSError(domain: "RCTVideo",
|
||
|
code: RCTVideoError.fromJSPart.rawValue,
|
||
|
userInfo: [
|
||
|
NSLocalizedDescriptionKey: error,
|
||
|
NSLocalizedFailureReasonErrorKey: error,
|
||
|
NSLocalizedRecoverySuggestionErrorKey: error
|
||
|
])
|
||
|
}
|
||
|
}
|