A class that extends NSArray to intercept any accessor calls
in order to defer loading until the last possible moment.
Because ArrayFault inherits from NSArray which implements
List which implements Collection, data objects may declare
their relationships to be of type NSArray, List, or Collection.
This class should be returned by implementations of
EOObjectStore.arrayFaultForSourceGlobalID().
Returns a read-only List of objects associated with the object
with the specified id for the specified property
relationship, or may return a placeholder array that
will defer the fetch until needed (aka an array fault).
Returns a List of objects associated with the object
with the specified id for the specified property
relationship, or may return a placeholder array that
will defer the fetch until accessed (an array fault).
Returns the qualifier that is applied to the results fetched by the fetch
specification before objects are returned by fetch objects, or null if no
such qualifier has been specified.
Returns the class decription for the object referenced
by the specified relationship key, or null if the
class description cannot be determined for that key.
Creates a deep clone of the specified object,
registered in the specified source editing context,
transposing it into the specified destination
editing context.
Copies values from one object registered in the
specified origin context to the specified destination
object
The values themselves are cloned, so this is a deep copy.
Copies values from one object registered in the
specified origin context to the specified destination
object
The values themselves are cloned, so this is a deep copy.
Returns a data source that is capable of
manipulating objects of the type returned by
applying the specified key to objects
vended by this data source.
Returns a detail data source that is capable of
manipulating objects of the type returned by
applying the specified key to objects
vended by this data source.
Returns a data source that is capable of
manipulating objects of the type returned by
applying the specified key to objects
vended by this data source.
Returns the editing context for this data source,
which was created in the constructor and whose
parent is the editing context specified in the
constructor.
Called by the specified object store to determine whether
fetching should continue, where count is the current count
and limit is the limit as specified by the fetch specification.
Called to determine whether the editing context should attempt
to merge changes in the specified object that the parent store
says has changed via an ObjectChangedInStore notification.
EOClassDescription provides meta-information about a class
and is used to customize certain behaviors within wotonomy
and specifically within editing contexts and object stores.
EODatabaseSource is a general-purpose implementation
of EODataSource that is EOClassDescription-aware and
that can vend appropriate EODetailDataSources.
EOEditingContext provides transactional support for
fetching, editing, and committing changes made on a
collection of objects to a parent object store.
Constructs a fetch specification for the specified entity type using
the specified qualifier and sort ordering, distinct flag, deep flag,
and hints dictionary.
EOGenericRecord extends EOCustomObject to provide a
general-purpose implementation, relying entirely on the
class description for entity-specific behavior, and
storing data in a dictionary.
The model object which represents the mapping between database
fields and object properties, lists available entities, lists
connection dictionaries, and has fetch specifications.
EOKeyValueCodingAdditions defines an interface for classes
that need to have more control over the wotonomy's bulk
property copying and cloning facilities.
Static utilities methods that
call the appropriate method if the object implements
NSKeyValueCodingAdditions, otherwise calls the method
on DefaultImplementation.
EONullValue is used to represent null in Collections classes
because List and Map do not specify whether null values
are allowed and because NSArray and NSDictionary explicitly
do not allow null values.
EOObserverCenter is a static singleton-like class
that manages EOObservings that want to be notified
of changes to those objects that call
notifyObserversObjectWillChange() before their
properties change.
Constructs an EODelayedObserver that will invoke the specified selector
on the specified object, and will run at ObserverPriorityThird priority,
which is the default.
EOQualifiers are used to perform property-based
qualifications on objects: for a set of criteria,
a qualifier either qualifies or disqualifies an
given object.
EORelationshipManipulation provides methods for generically
adding and removing relationships between objects, handling
both one-way and reciprocal relationships.
Returns a List of objects associated with the object
with the specified id for the specified property
relationship, or may return a placeholder array that
will defer the fetch until needed (aka an array fault).
This method returns a map containing just the keys that are modified
for a given object, converting any to-one or to-many relationships
to id references.
Turn all objects in this editing context into faults,
so that they will be fetched the next time they are
accessed, and calls invalidateObjectsWithGlobalIDs
on the parent object store.
Turns the objects with the specified ids into faults,
so that they will be fetched the next time they are
accessed, and forwards the call to the parent object store.
Creates a new PropertyDataSource that uses the specified
editing context, but will try to guess the appropriate
class description when trying to create objects.
Returns a qualifier that is like this qualifier,
except all variables will be replaced with values
from the specified Map whose keys match the variable
names.
Calls editingContextWillSaveChanges on all editors,
and commits all changes in this editing context to
the parent editing context by calling
saveChangesInEditingContext to the parent.
Sets the fetch specification used by this data source,
requesting it from the class description for this data source's
entity class description, if any.
Returns a Map of the specified keys to their values,
each of which is obtained by calling storedValueForKey
on the specified object if it implements EOKeyValueCoding,
and otherwise falling back on EOKeyValueCodingSupport.
Takes the keys from the specified Map as properties
and applies the corresponding values, each of which
might be set by calling takeStoredValueForKey on the
specified object if it implements EOKeyValueCoding,
and otherwise falling back on EOKeyValueCodingSupport.
Takes the keys from the specified Map as properties
and applies the corresponding values, each of which
might be set by calling takeValueForKey on the
specified object if it implements EOKeyValueCoding,
and otherwise falling back on EOKeyValueCodingSupport.
De-serializes an object from the specified byte
array, replacing GlobalIDMarkers with reference
to objects registered in the specified editing
context.
De-serializes an object from the specified byte
array, replacing GlobalIDMarkers with reference
to objects registered in the specified editing
context.
Called by takeValueForKey when the type of the
specified key is not allowed to be null, as is
the case with primitive types, if the specified
object does not implement EOKeyValueCoding.
Returns a Map of the specified keys to their values,
each of which is obtained by calling valueForKey
on the specified object if it implements EOKeyValueCoding,
and otherwise falling back on EOKeyValueCodingSupport.
This method should be implemented to call
EOObserverCenter.objectWillChange( this ),
and it should be called by each setter method
on this object before changes are made to the
object's internal state.