AsynchronousDataTransaction
public final class AsynchronousDataTransaction : BaseDataTransaction
extension AsynchronousDataTransaction: CustomDebugStringConvertible, CoreStoreDebugStringConvertible
The AsynchronousDataTransaction
provides an interface for DynamicObject
creates, updates, and deletes. A transaction object should typically be only used from within a transaction block initiated from DataStack.perform(asynchronous:...)
.
-
Cancels a transaction by throwing
CoreStoreError.userCancelled
.try transaction.cancel()
Important
Never usetry?
ortry!
on acancel()
call. Always usetry
. Usingtry?
will swallow the cancellation and the transaction will proceed to commit as normal. Usingtry!
will crash the app ascancel()
will always throw an error.Declaration
Swift
public func cancel() throws -> Never
-
The
Result
contains the success or failure information for a completed transaction.Result<T>.success
indicates that the transaction succeeded, either because the save succeeded or because there were no changes to save. The associateduserInfo
is the value returned from the transaction closure.Result<T>.failure
indicates that the transaction either failed or was cancelled. The associated object for this value is aCoreStoreError
enum value.Declaration
Swift
public typealias Result<UserInfoType> = Swift.Result<UserInfoType, CoreStoreError>
-
Creates a new
NSManagedObject
orCoreStoreObject
with the specified entity type.Declaration
Swift
public override func create<O>(_ into: Into<O>) -> O where O : DynamicObject
Parameters
into
the
Into
clause indicating the destinationNSManagedObject
orCoreStoreObject
entity type and the destination configurationReturn Value
a new
NSManagedObject
orCoreStoreObject
instance of the specified entity type. -
Returns an editable proxy of a specified
NSManagedObject
orCoreStoreObject
.Declaration
Swift
public override func edit<O>(_ object: O?) -> O? where O : DynamicObject
Parameters
object
the
NSManagedObject
orCoreStoreObject
to be editedReturn Value
an editable proxy for the specified
NSManagedObject
orCoreStoreObject
. -
Returns an editable proxy of the object with the specified
NSManagedObjectID
.Declaration
Swift
public override func edit<O>(_ into: Into<O>, _ objectID: NSManagedObjectID) -> O? where O : DynamicObject
Parameters
into
an
Into
clause specifying the entity typeobjectID
the
NSManagedObjectID
for the object to be editedReturn Value
an editable proxy for the specified
NSManagedObject
orCoreStoreObject
. -
Deletes the objects with the specified
NSManagedObjectID
s.Declaration
Swift
public override func delete<S>(objectIDs: S) where S : Sequence, S.Element : NSManagedObjectID
Parameters
objectIDs
the
NSManagedObjectID
s of the objects to delete -
Deletes the specified
NSManagedObject
s orCoreStoreObject
s represented by series ofObjectRepresentation
s.Declaration
Swift
public override func delete<O>(_ object: O?, _ objects: O?...) where O : ObjectRepresentation
Parameters
object
the
ObjectRepresentation
representing anNSManagedObject
orCoreStoreObject
to be deletedobjects
other
ObjectRepresentation
s representingNSManagedObject
s orCoreStoreObject
s to be deleted -
Deletes the specified
NSManagedObject
s orCoreStoreObject
s represented by anObjectRepresenation
.Declaration
Swift
public override func delete<S>(_ objects: S) where S : Sequence, S.Element : ObjectRepresentation
Parameters
objects
the
ObjectRepresenation
s representingNSManagedObject
s orCoreStoreObject
s to be deleted
-
Declaration
Swift
public var debugDescription: String { get }