EODatabaseOperation
Inherits from: NSObject
Package: com.apple.yellow.eoaccess
Class Description
An EODatabaseOperation object represents an operation-insert, update, or delete-to perform on an enterprise object and all the necessary information required to perform the operation. You don't ordinarily create instances of EODatabaseOperation; rather, the Framework automatically creates an EODatabaseOperation object for each new, updated, or deleted object in an EOEditingContext. An EODatabaseContext object analyzes a set of database operations and maps each operation to one or more adaptor operations. The adaptor operations are then performed by an EOAdaptorChannel object. You generally interact with EODatabaseOperation objects only if you need to specify the order in which a set of operations are carried out (see the description for the EODatabaseContext delegate method databaseContextWillOrderAdaptorOperations).
An EODatabaseOperation specifies an enterprise object (called "object") on which the operation is performed, the EOGlobalID for the object, and the object's entity. In addition, the database operation has a snapshot containing the last known database values for the object and a newRow dictionary of new or updated values to save in the database.
Constants
EODatabaseOperation defines the following int
constants
to identify the primitive database operation represented by an EOAdaptorOperation
object or an EODatabaseOperation object:
EOAdaptorOperation Operators | EODatabaseOperation Operators |
AdaptorLockOperator | DatabaseNothingOperator |
AdaptorInsertOperator | DatabaseInsertOperator |
AdaptorUpdateOperator | DatabaseUpdateOperator |
AdaptorDeleteOperator | DatabaseDeleteOperator |
AdaptorStoredProcedureOperator |
Method Types
- Constructors
- EODatabaseOperation
- Accessing the global ID object
- globalID
- Accessing the object
- object
- Accessing the entity
- entity
- Accessing the operator
- setDatabaseOperator
- databaseOperator
- Accessing the database snapshot
- setDBSnapshot
- dbSnapshot
- Accessing the row
- setNewRow
- newRow
- Accessing the adaptor operations
- addAdaptorOperation
- removeAdaptorOperation
- adaptorOperations
- Comparing new row and snapshot values
- rowDiffs
- rowDiffsForAttributes
- Working with to-many snapshots
- recordToManySnapshot
- toManySnapshots
Constructors
EODatabaseOperation
public EODatabaseOperation(
com.apple.yellow.eocontrol.EOGlobalID aGlobalID,
Object anObject,
EOEntity anEntity)
Instance Methods
adaptorOperations
public NSArray adaptorOperations()
See Also: addAdaptorOperation, removeAdaptorOperation
addAdaptorOperation
public void addAdaptorOperation(EOAdaptorOperation adaptorOperation)
See Also: adaptorOperations, removeAdaptorOperation
databaseOperator
public int databaseOperator()
dbSnapshot
public NSDictionary dbSnapshot()
See Also: setDatabaseOperator
entity
public EOEntity entity()
See Also: EODatabaseOperation
globalID
public com.apple.yellow.eocontrol.EOGlobalID globalID()
See Also: EODatabaseOperation
newRow
public NSMutableDictionary newRow()
The newRow dictionary is initialized with the values in the receiver's snapshot. New or updated values are added to the newRow dictionary (replacing out-of-date values) as the Framework maps changes in the object to an operation.
object
public Object object()
See Also: EODatabaseOperation
primaryKeyDiffs
public NSDictionary primaryKeyDiffs()
See Also: setDatabaseOperator, newRow
recordToManySnapshot
public void recordToManySnapshot(
NSArray globalIDs,
String name)
See Also: toManySnapshots
removeAdaptorOperation
public void removeAdaptorOperation(EOAdaptorOperation adaptorOperation)
See Also: adaptorOperations, addAdaptorOperation
rowDiffs
public NSDictionary rowDiffs()
See Also: primaryKeyDiffs
rowDiffsForAttributes
public NSDictionary rowDiffsForAttributes(NSArray attributes)
setDatabaseOperator
public void setDatabaseOperator(int databaseOperator)
- DatabaseNothingOperator
- DatabaseInsertOperator
- DatabaseUpdateOperator
- DatabaseDeleteOperator
setDBSnapshot
public void setDBSnapshot(NSDictionary dbSnapshot)
setNewRow
public void setNewRow(NSMutableDictionary newRow)
See Also: databaseOperator
toManySnapshots
public NSDictionary toManySnapshots()
See Also: recordToManySnapshot