AsynchronousDataTransaction
public final class AsynchronousDataTransaction : BaseDataTransaction
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:...)
, or from CoreStore.perform(synchronous:...)
.
-
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<D>(_ into: Into<D>) -> D where D : 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<D>(_ object: D?) -> D? where D : 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<D>(_ into: Into<D>, _ objectID: NSManagedObjectID) -> D? where D : 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 a specified
NSManagedObject
orCoreStoreObject
.Declaration
Swift
public override func delete<D>(_ object: D?) where D : DynamicObject
Parameters
object
the
NSManagedObject
orCoreStoreObject
to be deleted -
Deletes the specified
DynamicObject
s.Declaration
Swift
public override func delete<D>(_ object1: D?, _ object2: D?, _ objects: D?...) where D : DynamicObject
Parameters
object1
the
DynamicObject
to be deletedobject2
another
DynamicObject
to be deletedobjects
other
DynamicObject
s to be deleted -
Deletes the specified
DynamicObject
s.Declaration
Swift
public override func delete<S>(_ objects: S) where S : Sequence, S.Element : DynamicObject
Parameters
objects
the
DynamicObject
s to be deleted
-
Declaration
Swift
public var bridgeToObjectiveC: CSAsynchronousDataTransaction { get }
-
Declaration
Swift
public var debugDescription: String { get }