Skip to content

Instantly share code, notes, and snippets.

@agiguere
Last active November 14, 2019 22:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save agiguere/9838219f6b948fee67f185e21a78b037 to your computer and use it in GitHub Desktop.
Save agiguere/9838219f6b948fee67f185e21a78b037 to your computer and use it in GitHub Desktop.
SAP Fiori for iOS SDK Code Snippet: ODataOnboardingStep
import Foundation
import SAPCommon
import SAPFioriFlows
import SAPFoundation
class ODataOnboardingStep: OnboardingStep {
var controller: OnlineODataController?
func onboard(context: OnboardingContext, completionHandler: @escaping (OnboardingResult) -> Void) {
configureOData(using: context, completionHandler: completionHandler)
}
func restore(context: OnboardingContext, completionHandler: @escaping (OnboardingResult) -> Void) {
configureOData(using: context, completionHandler: completionHandler)
}
func reset(context: OnboardingContext, completionHandler: @escaping () -> Void) {
completionHandler()
}
}
// MARK: - Private API
private extension ODataOnboardingStep {
func configureOData(using context: OnboardingContext, completionHandler: @escaping (OnboardingResult) -> Void) {
let configurationURL = context.info[.authenticationURL] as! URL
do {
let onlineOdataController = OnlineODataController()
try onlineOdataController.configureOData(sapURLSession: context.sapURLSession, serviceRoot: configurationURL)
controller = onlineOdataController
completionHandler(.success(context))
} catch {
completionHandler(.failed(error))
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment