|
WebObjects 5.4.2 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.webobjects.eocontrol.EOObjectStore com.webobjects.eocontrol.EOEditingContext com.webobjects.eocontrol.EOSharedEditingContext
public class EOSharedEditingContext
The EOSharedEditingContext class defines a mechanism that allows EOEditingContexts to share enterprise objects for reading. This mechanism can reduce redundant data and the number of fetches an application requires.
Shared enterprise objects are read-only and persist for the life of the application; they can't be modified or deleted. They must be unique in the shared context and across all other editing contexts that share objects from the shared context.
Objects can be fetched into a shared context using objectsWithFetchSpecification
and bindObjectsWithFetchSpecification
. The latter method makes it easier to access result sets, using objectsByEntityNameAndFetchSpecificationName
.
In multithreaded applications, shared objects can be used safely by many threads at once. Shared editing contexts use NSMultiReaderLocks to maintain thread safety. The methods objectsWithFetchSpecification
bindObjectsWithFetchSpecification
,
faultForGlobalID
, and objectForGlobalID
are thread safe, but the context must be locked before using any other shared context API.
It is possible to modify shared objects while an application is running, but only indirectly. A regular editing context can be created that doesn't share objects by setting it's sharedEditingContext
to null. Fetch the object that is to be changed into the regular context, modify or
delete it, and save. Since shared editing contexts listen for ObjectsChangedInStoreNotifications, the shared editing context updates when it learns that an object was modified. The shared context removes from its objectsByEntityName
and
objectsByEntityNameAndFetchSpecificationName
dictionaries any objects that have been deleted, and it refaults any objects that have been updated. However, to register newly inserted objects in the shared editing context, it should be refetched.
EOSharedEditingContext.objectsByEntityName()
,
EOSharedEditingContext.objectsByEntityNameAndFetchSpecificationName()
,
EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
,
EOSharedEditingContext.objectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, com.webobjects.eocontrol.EOEditingContext)
,
EOSharedEditingContext.DefaultSharedEditingContextWasInitializedNotification
,
EOSharedEditingContext.SharedEditingContextInitializedObjectsNotification
,
Serialized FormNested Class Summary |
---|
Nested classes/interfaces inherited from class com.webobjects.eocontrol.EOEditingContext |
---|
EOEditingContext.Delegate, EOEditingContext.EditingContextEvent, EOEditingContext.Editor, EOEditingContext.MessageHandler |
Nested classes/interfaces inherited from interface com.webobjects.eocontrol.EOKeyValueArchiving |
---|
EOKeyValueArchiving.Awaking, EOKeyValueArchiving.FinishInitialization, EOKeyValueArchiving.Support |
Field Summary | |
---|---|
static String |
DefaultSharedEditingContextWasInitializedNotification
Posted when an EOSharedEditingContext is created and assigned as the default shared editing context. |
static String |
SharedEditingContextInitializedObjectsNotification
Posted when new objects are added to a shared editing context (by fetching or fault firing). |
Fields inherited from class com.webobjects.eocontrol.EOEditingContext |
---|
EditingContextDidSaveChangesNotification, EditingContextFlushChangesRunLoopOrdering, ObjectsChangedInEditingContextNotification |
Fields inherited from class com.webobjects.eocontrol.EOObjectStore |
---|
DeletedKey, InsertedKey, InvalidatedAllObjectsInStoreNotification, InvalidatedKey, ObjectsChangedInStoreNotification, UpdatedKey |
Fields inherited from interface com.webobjects.foundation.NSLocking |
---|
OneCentury, OneDay, OneHour, OneMinute, OneSecond, OneWeek, OneYear |
Constructor Summary | |
---|---|
EOSharedEditingContext()
Creates a new EOSharedEditingContext object with the default parent object store as its parent object store. |
|
EOSharedEditingContext(EOObjectStore parent)
Creates a new EOSharedEditingContext with a specified EOObjectStoreCoordinator as the parent EOObjectStore. |
Method Summary | |
---|---|
void |
bindObjectsWithFetchSpecification(EOFetchSpecification fetchSpecification,
String fetchSpecificationName)
Fetches objects with fetchSpecification and binds the results to fetchSpecification 's entity and fetchSpecification 's name, which is provided with the fetchSpecificationName argument. |
static EOSharedEditingContext |
defaultSharedEditingContext()
If a shared context hasn't yet been created, this method creates one and posts a DefaultSharedEditingContextWasInitializedNotification. |
NSArray |
deletedObjects()
The shared objects in a shared editing context can't be deleted. |
void |
deleteObject(EOEnterpriseObject object)
Raises an exception. |
void |
dispose()
Invoked when the receiver should prepare itself for destruction. |
EOEnterpriseObject |
faultForGlobalID(EOGlobalID gid,
EOEditingContext editingContext)
Overrides the implementation inherited from EOObjectStore. |
void |
forgetObject(EOEnterpriseObject object)
Removes object from the uniquing tables and causes this EOEditingContext to remove itself from the object's list of observers. |
EOGlobalID |
globalIDForObject(EOEnterpriseObject object)
Returns the EOGlobalID associated with object in this EOEditingContext or its shared context. |
boolean |
hasChanges()
Shared objects in a shared editing context cannot be modified or be deleted. |
void |
initializeObject(EOEnterpriseObject object,
EOGlobalID gid,
EOEditingContext editingContext)
Overrides the implementation inherited from EOObjectStore to build the properties for the object identified by gid . |
NSArray |
insertedObjects()
You can't insert objects into a shared editing context. |
void |
insertObject(EOEnterpriseObject object)
Throws an exception. |
void |
insertObjectWithGlobalID(EOEnterpriseObject object,
EOGlobalID gid)
Throws an exception. |
void |
invalidateAllObjects()
Overrides the implementation inherited from EOObjectStore to discard the values of objects cached in memory and refault them, which causes them to be refetched from the external store the next time they're accessed. |
void |
invalidateObjectsWithGlobalIDs(NSArray gids)
Overrides the implementation inherited from EOObjectStore to signal to the parent object store that the cached values for the objects identified by globalIDs should no longer be considered valid and that they should be refaulted. |
void |
lock()
Acquires a writer lock to this EOSharedEditingContext to prevent other threads from accessing it. |
void |
lockForReading()
Locks the receiver for reading. |
void |
lockObjectStore()
|
EOEnterpriseObject |
objectForGlobalID(EOGlobalID gid)
Returns the EOEnterpriseObject associated with gid in this EOEditingContext or its shared context, or null if no such object exists. |
NSDictionary |
objectsByEntityName()
The dictionary keys are entity names and the corresponding values are NSArrays of enterprise objects for that entity. |
NSDictionary |
objectsByEntityNameAndFetchSpecificationName()
Returns the objects fetched into the receiver with bindObjectsWithFetchSpecification . |
NSArray |
objectsWithFetchSpecification(EOFetchSpecification fetchSpecification,
EOEditingContext editingContext)
A thread-safe version of the superclass implementation that binds the results to fetchSpecification 's entity. |
void |
objectWillChange(Object object)
Raises an exception. |
void |
refaultAllObjects()
Refaults all objects cached in this EOEditingContext that have not been inserted, deleted, or updated. |
void |
refaultObject(EOEnterpriseObject object,
EOGlobalID gid,
EOEditingContext editingContext)
Overrides the implementation inherited from EOObjectStore to refault the enterprise object object identified by gid in ctx . |
NSArray |
registeredObjects()
|
void |
reset()
Overrides the superclass implementation to do nothing. |
void |
retrieveReaderLocks()
Reinstates the current thread's reader locks that have been suspended using suspendReaderLocks . |
void |
saveChanges()
Raises an exception. |
static void |
setDefaultSharedEditingContext(EOSharedEditingContext context)
Sets the default shared editing context. |
void |
setSharedEditingContext(EOSharedEditingContext sharedEditingContext)
Raises an exception unless sharedEditingContext is null. |
void |
setUndoManager(NSUndoManager undoManager)
Raises an exception unless undoManager is null. |
EOSharedEditingContext |
sharedEditingContext()
Always returns null |
void |
suspendReaderLocks()
Temporarily relinquishes all of the current thread's reader locks, releasing the lock if all reader locks are unlocked. |
boolean |
tryLock()
Attempts to take the lock on this EOSharedEditingContext for writing. |
boolean |
tryLockForReading()
Attempts to take the lock on this EOSharedEditingContext for reading. |
void |
unlock()
Releases a previously acquired lock for writing on this EOSharedEditingContext. |
void |
unlockForReading()
Releases a previously acquired lock for reading on this EOSharedEditingContext. |
void |
unlockObjectStore()
|
NSArray |
updatedObjects()
Returns an empty array. |
void |
validateChangesForSave()
Overrides the superclass implementation to do nothing. |
Methods inherited from class com.webobjects.eocontrol.EOObjectStore |
---|
setUserInfo, setUserInfoForKey, userInfo, userInfoForKey |
Methods inherited from class java.lang.Object |
---|
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final String DefaultSharedEditingContextWasInitializedNotification
Notification Object | None |
userInfo Dictionary | None |
EOSharedEditingContext.defaultSharedEditingContext()
,
Constant Field Valuespublic static final String SharedEditingContextInitializedObjectsNotification
Notification Object | The shared editing context |
userInfo Dictionary | NSArray of global IDs of the initialized objects |
Constructor Detail |
---|
public EOSharedEditingContext(EOObjectStore parent)
parent
- must be an EOObjectStoreCoordinator
IllegalArgumentException
- if parent is not an object store coordinatorEOSharedEditingContext.EOSharedEditingContext()
public EOSharedEditingContext()
EOEditingContext.defaultParentObjectStore()
Method Detail |
---|
public static EOSharedEditingContext defaultSharedEditingContext()
EOSharedEditingContext.DefaultSharedEditingContextWasInitializedNotification
public static void setDefaultSharedEditingContext(EOSharedEditingContext context)
context
is null, object sharing is disabled in subsequently created EOEditingContexts.
This has no effect on previously created EOEditingContexts.
context
- specifies container in which source object belong topublic NSDictionary objectsByEntityName()
EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
public NSDictionary objectsByEntityNameAndFetchSpecificationName()
bindObjectsWithFetchSpecification
. The return value is a dictionary whose keys are entity names and whose values are subdictionaries. The keys of the subdictionaries are fetch specification names, and the values are NSArrays
of the enterprise objects fetched with the corresponding fetch specification. The fetch specification names are the names specified in bindObjectsWithFetchSpecification
. Generally these names are the same names used to identify stored fetch specifications in EOModeler.Note: The dictionary returned from this method might not contain all the receiver's shared objects. It only contains objects fetched with a named fetch specification using bindObjectsWithFetchSpecification . Shared objects fetched into the receiver with other
methods are not returned from this method. |
bindObjectsWithFetchSpecification
.EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
public void reset()
reset
in class EOEditingContext
EOEditingContext.revert()
,
EOEditingContext.fetchTimestamp()
public void dispose()
NSDisposable
dispose
in interface NSDisposable
dispose
in class EOEditingContext
public EOSharedEditingContext sharedEditingContext()
null
sharedEditingContext
in class EOEditingContext
null
public void setSharedEditingContext(EOSharedEditingContext sharedEditingContext)
sharedEditingContext
is null.
setSharedEditingContext
in class EOEditingContext
sharedEditingContext
- input sharedEditingContextEOSharedEditingContext
,
EOSharedEditingContext.DefaultSharedEditingContextWasInitializedNotification
public void setUndoManager(NSUndoManager undoManager)
undoManager
is null.
setUndoManager
in class EOEditingContext
undoManager
- input sharedEditingContextEOEditingContext.undoManager()
public EOGlobalID globalIDForObject(EOEnterpriseObject object)
EOEditingContext
object
in this EOEditingContext or its shared context. All objects fetched from an external store are registered in an EOEditingContext along with a global identifier (EOGlobalID) that's used to uniquely identify each object to the
external store. If object
has not been registered in the EOEditingContext or in its shared editing context (that is, if no match is found), this method returns null
. Objects are registered in an EOEditingContext using the insertObject
method, or
when fetching, with recordObject
.
globalIDForObject
in class EOEditingContext
object
- the target of the search
object
EOGlobalID
,
EOEditingContext.objectForGlobalID(com.webobjects.eocontrol.EOGlobalID)
,
EOEditingContext.insertObject(com.webobjects.eocontrol.EOEnterpriseObject)
,
EOEditingContext.recordObject(com.webobjects.eocontrol.EOEnterpriseObject, com.webobjects.eocontrol.EOGlobalID)
,
EOEditingContext.sharedEditingContext()
public EOEnterpriseObject objectForGlobalID(EOGlobalID gid)
EOEditingContext
gid
in this EOEditingContext or its shared context, or null if no such object exists.
objectForGlobalID
in class EOEditingContext
gid
- the identifier to search for
null
EOGlobalID
,
EOEditingContext.globalIDForObject(com.webobjects.eocontrol.EOEnterpriseObject)
,
EOEditingContext.sharedEditingContext()
public EOEnterpriseObject faultForGlobalID(EOGlobalID gid, EOEditingContext editingContext)
EOEditingContext
globalID
is already registered in this EOEditingContext (or its shared context), this method returns that object. Otherwise, the method propagates the message up the object store hierarchy,
through the parent object store, ultimately to the associated EODatabaseContext. The EODatabaseContext creates and returns a to-one fault. For example, suppose you want the department object whose deptID
has a particular value. The most efficient way to get it is to look it up
by its globalID using faultForGlobalID
. If the department object is already registered in the EOEditingContext, faultForGlobalID
returns that object (without going to the database). If not, a fault for this object is created, and the object is fetched from the
database only when you trigger the fault. In a nested editing context configuration, where a parent EOEditingContext is sent faultForGlobalID
on behalf of a child EOEditingContext and globalID
identifies a newly inserted object in the parent, the parent registers
a copy of the object in the child.
For more information refer to: "Working with Objects Across Multiple EOEditingContexts"
faultForGlobalID
in class EOEditingContext
gid
- the identifier for the desired objecteditingContext
- the EOEditingContext to search and register the fault
EOObjectStore.faultForGlobalID(com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
,
EOUtilities.localInstanceOfObject(com.webobjects.eocontrol.EOEditingContext, com.webobjects.eocontrol.EOEnterpriseObject)
,
EODatabaseContext
,
EOEditingContext.arrayFaultWithSourceGlobalID(com.webobjects.eocontrol.EOGlobalID, java.lang.String, com.webobjects.eocontrol.EOEditingContext)
,
EOFaultHandler
public NSArray objectsWithFetchSpecification(EOFetchSpecification fetchSpecification, EOEditingContext editingContext)
fetchSpecification
's entity. The resulting shared objects can be retrieved later using the method objectsByEntityName
.
objectsWithFetchSpecification
in class EOEditingContext
fetchSpecification
- specifies fetchSpecificationeditingContext
- specifies container in which source object belong to
EOSharedEditingContext.objectsByEntityName()
,
EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
,
EOEditingContext.objectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, com.webobjects.eocontrol.EOEditingContext)
public void bindObjectsWithFetchSpecification(EOFetchSpecification fetchSpecification, String fetchSpecificationName)
fetchSpecification
and binds the results to fetchSpecification
's entity and fetchSpecification
's name, which is provided with the fetchSpecificationName
argument. The resulting shared objects can later be
retrieved using the methods objectsByEntityName
and objectsByEntityNameAndFetchSpecificationName
.
fetchSpecification
- specifies fetchSpecificationfetchSpecificationName
- specifies fetchSpecification's nameEOSharedEditingContext.objectsByEntityName()
,
EOSharedEditingContext.objectsByEntityNameAndFetchSpecificationName()
public void initializeObject(EOEnterpriseObject object, EOGlobalID gid, EOEditingContext editingContext)
EOEditingContext
gid
. When a parent EOEditingContext receives this on behalf of a child EOEditingContext (as represented by context
), and the gid
identifies an object instantiated in the parent, the parent returns properties extracted from its object and translated into the child's context. This ensures that a nested context "inherits" modified values from its parent EOEditingContext. If this EOEditingContext does not have
object
, the request is forwarded its parent EOObjectStore.
initializeObject
in class EOEditingContext
object
- the object identified by globalIDgid
- the EOGlobalID corresponding to object
editingContext
- the EOEditingContext in which to initialize the objectEOObjectStore.initializeObject(com.webobjects.eocontrol.EOEnterpriseObject, com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
public void forgetObject(EOEnterpriseObject object)
EOEditingContext
object
from the uniquing tables and causes this EOEditingContext to remove itself from the object's list of observers. You should never invoke this method directly. The correct way to remove an object from its editing context is to remove every reference to the object
by refaulting any object that references it (using refaultAllObjects
or invalidateAllObjects
). Also note that this method does not have the effect of deleting an object. In order to delete an object, you should either use the deleteObject
method
or remove the object from an owning relationship.
forgetObject
in class EOEditingContext
object
- the object to be forgottenEOEditingContext.refaultAllObjects()
,
EOEditingContext.invalidateAllObjects()
,
EOEditingContext.deleteObject(com.webobjects.eocontrol.EOEnterpriseObject)
public void refaultObject(EOEnterpriseObject object, EOGlobalID gid, EOEditingContext editingContext)
EOEditingContext
object
identified by gid
in ctx
. This method should be used with caution since refaulting an object does not remove the object snapshot from the undo stack.
Objects that have been newly inserted or deleted should not be refaulted.
The main purpose of this method is to break reference cycles between enterprise objects. For example, suppose you have an Employee object that has a to-one relationship to its Department, and the Department object in turn has an array of Employee objects. You can use this method to break the reference cycle. Note that reference cycles are automatically broken if the EOEditingContext is finalized.
For more information, see the sections:
refaultObject
in class EOEditingContext
object
- the enterprise object to be refaultedgid
- the EOs corresponding EOGlobalIDeditingContext
- the target EOEditingContextEOObjectStore.refaultObject(com.webobjects.eocontrol.EOEnterpriseObject, com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.invalidateObjectsWithGlobalIDs(com.webobjects.foundation.NSArray)
public void refaultAllObjects()
EOEditingContext
processRecentChanges
, then invokes refaultObject
for all objects that haven't been inserted, deleted, or updated.
refaultAllObjects
in class EOEditingContext
EOEditingContext.refaultObject(com.webobjects.eocontrol.EOEnterpriseObject)
,
EOObjectStore.refaultObject(com.webobjects.eocontrol.EOEnterpriseObject, com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.processRecentChanges()
public void invalidateObjectsWithGlobalIDs(NSArray gids)
EOEditingContext
globalIDs
should no longer be considered valid and that they should be refaulted. Invokes processRecentChanges
before refaulting the objects. This message is propagated to any underlying object store, resulting in a refetch the next time the objects are accessed. Any related (child or peer) object stores are notified that the objects are no longer valid. All uncommitted changed to the objects are
lost.
For more information, see the sections:
invalidateObjectsWithGlobalIDs
in class EOEditingContext
gids
- An array of EOGlobalIDs corresponding to objects which should be invalidatedEOEditingContext.invalidateAllObjects()
,
EOObjectStore.invalidateObjectsWithGlobalIDs(com.webobjects.foundation.NSArray)
,
EOEditingContext.processRecentChanges()
public void invalidateAllObjects()
EOEditingContext
invalidateObjectsWithGlobalIDs
to the parent object store with the globalIDs of all of the objects cached in the receiver. When an EOEditingContext receives this message, it propagates the message down the object store hierarchy. EODatabaseContexts discard their snapshots for invalidated objects and broadcast an
ObjectsChangedInStoreNotification. (EODatabaseContext is defined in EOAccess.)
The final effect of this method is to refault all objects currently in memory. The next time you access one of these objects, it's refetched from the database. To flush the entire application's cache of all values fetched from an external store, you have to use a statement such as the following:
If you just want to discard uncommitted changes but do not want to sacrifice the values cached in memory, the EOEditingContextEOEditingContext.rootObjectStore().invalidateAllObjects();
revert
method is to be used, which reverses all changes and clears the undo stack.
For more information, see the sections:
invalidateAllObjects
in class EOEditingContext
EOEditingContext.revert()
,
EOEditingContext.refaultAllObjects()
,
EOEditingContext.invalidateObjectsWithGlobalIDs(com.webobjects.foundation.NSArray)
,
EOObjectStore.invalidateAllObjects()
public NSArray updatedObjects()
updatedObjects
in class EOEditingContext
EOEditingContext.deletedObjects()
,
EOEditingContext.insertedObjects()
public NSArray insertedObjects()
insertedObjects
in class EOEditingContext
EOEditingContext.deletedObjects()
,
EOEditingContext.updatedObjects()
public NSArray deletedObjects()
deletedObjects
in class EOEditingContext
EOEditingContext.updatedObjects()
,
EOEditingContext.insertedObjects()
public boolean hasChanges()
hasChanges
in class EOEditingContext
public void validateChangesForSave()
public NSArray registeredObjects()
registeredObjects
in class EOEditingContext
public void objectWillChange(Object object)
objectWillChange
in interface EOObserving
objectWillChange
in class EOEditingContext
object
- specifies object to be changedEOEnterpriseObject.willChange()
public void insertObjectWithGlobalID(EOEnterpriseObject object, EOGlobalID gid)
insertObjectWithGlobalID
in class EOEditingContext
object
- ignoredgid
- ignoredEOSharedEditingContext.objectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.faultForGlobalID(com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
,
EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
public void insertObject(EOEnterpriseObject object)
insertObject
in class EOEditingContext
object
- ignoredEOSharedEditingContext.objectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.faultForGlobalID(com.webobjects.eocontrol.EOGlobalID, com.webobjects.eocontrol.EOEditingContext)
,
EOSharedEditingContext.bindObjectsWithFetchSpecification(com.webobjects.eocontrol.EOFetchSpecification, java.lang.String)
public void deleteObject(EOEnterpriseObject object)
deleteObject
in class EOEditingContext
object
- ignoredEOEditingContext.deletedObjects()
public void saveChanges()
saveChanges
in class EOEditingContext
EOEditingContext.saveChangesInEditingContext(com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.Delegate.editingContextWillSaveChanges(com.webobjects.eocontrol.EOEditingContext)
,
EOEditingContext.editors()
public void lockObjectStore()
lockObjectStore
in class EOEditingContext
public void unlockObjectStore()
unlockObjectStore
in class EOEditingContext
public void lock()
lock
in interface NSLocking
lock
in class EOEditingContext
NSLocking.lock()
,
EOSharedEditingContext.unlock()
,
EOSharedEditingContext.tryLock()
,
EOSharedEditingContext.lockForReading()
public boolean tryLock()
false
if it fails.
tryLock
in class EOEditingContext
true
if the lock was successfully acquiredEOSharedEditingContext.lock()
public void unlock()
unlock
in interface NSLocking
unlock
in class EOEditingContext
NSLocking.unlock()
,
EOSharedEditingContext.lock()
,
EOSharedEditingContext.tryLock()
,
EOSharedEditingContext.lockForReading()
public void lockForReading()
EOSharedEditingContext.lock()
,
EOSharedEditingContext.unlockForReading()
,
EOSharedEditingContext.tryLockForReading()
public boolean tryLockForReading()
false
if it fails.
true
if the lock was successfully acquiredEOSharedEditingContext.lockForReading()
public void unlockForReading()
EOSharedEditingContext.lockForReading()
,
EOSharedEditingContext.tryLockForReading()
,
EOSharedEditingContext.unlock()
public void suspendReaderLocks()
retrieveReaderLocks
method.
NSMultiReaderLock#suspendReaderLocks
,
EOSharedEditingContext.retrieveReaderLocks()
public void retrieveReaderLocks()
suspendReaderLocks
.
NSMultiReaderLock#retrieveReaderLocks
,
EOSharedEditingContext.suspendReaderLocks()
|
Last updated June 2008 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |