JwksUrlDataManager
class JwksUrlDataManager : IJwksUrlDataManager
Manages obtaining data from the jwks url and creation [JwksUrlData] object
-
Object manages obtaining data from url
Declaration
Swift
let urlSessionManager: IUrlSessionManager
-
Initialises with the object which handles obtaining data from the jwks url.
Declaration
Swift
init(_ urlSessionManager: IUrlSessionManager = UrlSessionManager())
Parameters
urlSessionmanager
specifies object which manages data obtaining.
-
Obtains raw data from the jwks url and creates [JwksUrlData] object from it.
Declaration
Swift
func obtainJwksUrlData(jwksUrl: URL, idTokenHeader: IdTokenHeader, error: inout NSError?) -> JwksUrlData?
Parameters
jwksUrl
The url which contains needed data.
idTokenHeader
[IdTokenHeader] object it’s members are used to find the data for current id token among data obtained from jwks url.
error
An error which can occur (it is passed as inout parameter so, its value can be set inside the function).
Return Value
Valid [JwksUrlData] object is returned on success or nil on failure.
-
Creates [JwksUrlData] object
Declaration
Swift
private func createJwksUrlDataObject(from json: Dictionary<String, AnyObject>, with idTokenHeader: IdTokenHeader, error: inout NSError?) -> JwksUrlData?
Parameters
json
Dictionary object created with data obtained from jwks url, it has specific structure, it has an Array object which can be obtained by Constants.jwksUrlObjectKey key from it, then inside the array it can have dictionaries, we need to find appropriate dictionary using [IdTokenHeader] object
idTokenHeader
[IdTokenHeader] object which is used to find appropriate data inside dictionary.
error
An error which can occur during the dictionary parsing (it is passed as inout parameter so, its value can be set inside the function).
Return Value
Valid [JwksUrlData] object on success or nil on failure.