Classes

The following classes are available globally.

RetryableGraphQLOperation

RetryableGraphQLSubscriptionOperation

  • Declaration

    Swift

    public final class RetryableGraphQLSubscriptionOperation<Payload: Decodable>: Operation,
                                                                                  RetryableGraphQLOperationBehavior
  • REST Request

    See more

    Declaration

    Swift

    public class RESTRequest
  • The Analytics category enables you to collect analytics data for your app.

    See more

    Declaration

    Swift

    final public class AnalyticsCategory : Category
    extension AnalyticsCategory: AnalyticsCategoryBehavior
    extension AnalyticsCategory: Resettable
  • Declaration

    Swift

    final public class AuthCategory : Category
    extension AuthCategory: AuthCategoryBehavior
    extension AuthCategory: AuthCategoryDeviceBehavior
    extension AuthCategory: AuthCategoryUserBehavior
    extension AuthCategory: Resettable
  • Declaration

    Swift

    final public class DataStoreCategory : Category
    extension DataStoreCategory: DataStoreBaseBehavior
    extension DataStoreCategory: Resettable
    extension DataStoreCategory: DataStoreSubscribeBehavior
  • List<ModelType> is a custom Collection that is capable of loading records from a data source. This is especially useful when dealing with Model associations that need to be lazy loaded. Lazy loading is performed when you access the Collection methods by retrieving the data from the underlying data source and then stored into this object, before returning the data to you. Consumers must be aware that multiple calls to the data source and then stored into this object will happen simultaneously if the object is used from different threads, thus not thread safe. Lazy loading is idempotent and will return the stored results on subsequent access.

    See more

    Declaration

    Swift

    public class List<ModelType> : Collection, Codable, ExpressibleByArrayLiteral, ModelListMarker where ModelType : Model
  • Declaration

    Swift

    public class QueryPredicateOperation : QueryPredicate
    extension QueryPredicateOperation: Equatable
  • Declaration

    Swift

    public class QueryPredicateGroup : QueryPredicate
    extension QueryPredicateGroup: Equatable
  • The Geo category enables you to interact with geospacial services.

    See more

    Declaration

    Swift

    final public class GeoCategory : Category
    extension GeoCategory: GeoCategoryBehavior
    extension GeoCategory: Resettable
  • Amplify has a local eventing system called Hub. It is a lightweight implementation of Publisher-Subscriber pattern, and is used to share data between modules and components in your app. Hub enables different categories to communicate with one another when specific events occur, such as authentication events like a user sign-in or notification of a file download.

    See more

    Declaration

    Swift

    final public class HubCategory : Category
    extension HubCategory: HubCategoryBehavior
    extension HubCategory: Resettable
  • AWS Amplify writes console logs through Logger. You can use Logger in your apps for the same purpose.

    See more

    Declaration

    Swift

    final public class LoggingCategory : Category
    extension LoggingCategory: Resettable
    extension LoggingCategory: LoggingCategoryClientBehavior
    extension LoggingCategory: Logger
  • Declaration

    Swift

    final public class PredictionsCategory : Category
    extension PredictionsCategory: Resettable
    extension PredictionsCategory: PredictionsCategoryBehavior
  • AWS Amplify Storage module provides a simple mechanism for managing user content for your app in public, protected or private storage buckets.

    See more

    Declaration

    Swift

    final public class StorageCategory : Category
    extension StorageCategory: Resettable
    extension StorageCategory: StorageCategoryBehavior
  • An AmplifyOperation that emits InProcess values intermittently during the operation.

    Unlike a regular AmplifyOperation, which emits a single Result at the completion of the operation’s work, an AmplifyInProcessReportingOperation may emit intermediate values while its work is ongoing. These values could be incidental to the operation (such as a Storage.downloadFile operation reporting Progress values periodically as the download proceeds), or they could be the primary delivery mechanism for an operation (such as a GraphQLSubscriptionOperation‘s emitting new subscription values).

    See more

    Declaration

    Swift

    open class AmplifyInProcessReportingOperation<
        Request: AmplifyOperationRequest,
        InProcess,
        Success,
        Failure: AmplifyError
    >: AmplifyOperation<Request, Success, Failure>
  • This class is to facilitate executing asychronous requests. The caller can transition the operation to its finished state by calling finish() in the callback of an asychronous request to ensure that the operation is only removed from the OperationQueue after it has completed all its work. This class is not inherently thread safe. Although it is a subclass of Foundation’s Operation, it contains private state to support pausing, resuming, and finishing, that must be managed by callers.

    See more

    Declaration

    Swift

    open class AsynchronousOperation : Operation
  • A class that wraps access to its underlying value with an NSLocking instance.

    See more

    Declaration

    Swift

    public final class AtomicValue<Value>
  • A Tree data type with a value of some type E and children subtrees.

    See more

    Declaration

    Swift

    public class Tree<E>
  • The default Hub plugin provided with the Amplify Framework

    No guaranteed delivery order

    AWSHubPlugin distributes messages in order to listeners, but makes no guarantees about the order in which a listener is called. This plugin does not guarantee synchronization between message delivery and listener management. In other words, the following sequence is not guaranteed to succeed:

    plugin.listen(to: .custom("MyChannel") { event in print("event received: \(event)") }
    plugin.dispatch(to: .custom("MyChannel"), payload: HubPayload("MY_EVENT"))
    

    Instead, messages and listener states are guaranteed to be independently self-consistent. Callers can use hasListener(withToken:) to check that a listener has been registered.

    See more

    Declaration

    Swift

    final public class AWSHubPlugin : HubCategoryPlugin
    extension AWSHubPlugin: AmplifyVersionable
  • A Logging category plugin that forwards calls to the OS’s Unified Logging system

    See more

    Declaration

    Swift

    final public class AWSUnifiedLoggingPlugin : LoggingCategoryPlugin
    extension AWSUnifiedLoggingPlugin: AmplifyVersionable
  • Presents a developer menu using the provided DevMenuPresentationContextProvider upon notification from a TriggerRecognizer. Default recognizer is a LongPressGestureRecognizer

    See more

    Declaration

    Swift

    @available(iOS 13.0.0, *)
    public final class AmplifyDevMenu : DevMenuBehavior, TriggerDelegate
  • LoggingCategoryPlugin that wraps anotherLoggingCategoryPlugin and saves the logs in memory

    See more

    Declaration

    Swift

    @available(iOS 13.0, *)
    public class PersistentLoggingPlugin : LoggingCategoryPlugin
    extension PersistentLoggingPlugin: AmplifyVersionable