Protocols
The following protocols are available globally.
-
Primary interface for the PredixMobileSDK to communicate with the UI.
Used to display the main UI, and the Authentication UI
Informs the UI when to display a native UI waiting component (spinner or progress bar)
Provides communication channel for notifications (script execution)
See moreDeclaration
Swift
@objc public protocol PredixAppWindowProtocol : class
-
Supports using hybrid webapps for offline password management where TouchId is not available.
See moreDeclaration
Swift
public protocol HybridOfflineAuthenticationHandlerDelegate: class
-
Protocol for AuthorizationHandlers.
Authorization handlers provide specific authorization (post-authentication) capabilities for the
AuthenticationManager
Classes that implement this protocol handle authorization, by exchanging authentication tokens for authorized user information.
See moreDeclaration
Swift
public protocol AuthorizationHandler : class
-
Defines a basic interface that allows for control of where logs get transmitted to
See moreDeclaration
Swift
public protocol LogTransmitter
-
Minimum properties making up a Command
See moreDeclaration
Swift
public protocol CommandContents
-
Additional properties of a Command, after the Command has been committed
See moreDeclaration
Swift
public protocol CommandRecord: CommandContents
-
Protocol all services must implement to be considered a
service
Important
You will notice all these methods are staticly defined. Services are expected to be completely static classes. This is done to emphasize and promote the stateless nature of service calls. Services should be stateless, reentrant, and thread-safe.There are no guarentees for how, when, on what thread, or how often any service is called.
See moreDeclaration
Swift
@objc public protocol ServiceProtocol
-
Protocol used by Logger class for logging operations.
See moreDeclaration
Swift
@objc public protocol LoggerProtocol
-
Allow a container application (iOS native) to make decision and extensions to notifications that will be sent to a web client (Hybrid).
An example of this would be to allow an application to process and filter notifications in a background thread before allowing notification to be sent to the web client running in the webview.
See moreDeclaration
Swift
public protocol NotificationManagerDelegate: NSObjectProtocol
-
Delegate protocol for UI interactions with Authentication handlers.
Some authentication handlers may interact with the UI. These delegate methods will be called when those handlers are about to interact with the UI, or have finished with the UI.
See moreDeclaration
Swift
public protocol AuthenticationHandlerUIDelegate : class
-
Authentication handlers that rely on external components that may fail, such as network requests, will support this delegate to pass information about those failures to the user.
See moreDeclaration
Swift
public protocol FailableAuthenticationHandlerDelegate : class
-
Authentication handlers that rely on external user interaction to provide authentication credentials will support this delegate to gather the user’s credentials, and alert the user if those credentials are not valid.
See moreDeclaration
Swift
public protocol ProvideCredentialsAuthenticationHandlerDelegate : class
-
Authentication handlers that rely on calling an a web-based oAuth2 authentication flow to gather and validate authentication credentials will support this delegate to support display of the authentication web page, detecting the oAuth2 redirectURI and handling errors.
See moreDeclaration
Swift
public protocol BrowserBasedAuthenticationHandlerDelegate : FailableAuthenticationHandlerDelegate
-
Public protocol implemented by the Service Router for service registration and processing requests.
See also
ServiceRouter
Declaration
Swift
@objc public protocol ServiceRouterProtocol
-
Protocol for common Query parameters
See moreDeclaration
Swift
public protocol QueryParameters