|
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.appserver.WODisplayGroup
public class WODisplayGroup
A WODisplayGroup is the basic user interface manager for a WebObjects application that accesses a database. It collects objects from an EODataSource, filters and sorts them, and maintains a selection in the filtered subset. WebObjects dynamic elements are bound to WODisplayGroup attributes and methods to display information from the database on the web page.
A WODisplayGroup manipulates its EODataSource by invoking fetchObjects
, insertObject
and other methods, and registers itself as an editor and message handler of the EODataSource's EOEditingContext. The EOEditingContext then monitors the WODisplayGroup for changes to
objects.
WODisplayGroup interacts mostly with its EODataSource and its EOEditingContext.
The WODisplayGroup delegate offers a number of methods, and WODisplayGroup invokes them as appropriate. Besides displayGroupDisplayArrayForObjects
, there are methods that inform the delegate that the WODisplayGroup has fetched, created -- or failed to create -- an object, inserted
or deleted an object, changed the selection, or set a value for a property. There are also methods that request permission from the delegate to perform most of these same actions. The delegate can return true
to permit the action or false
to deny it.
EODataSource
,
EOEditingContext
,
WODisplayGroup.Delegate
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
,
Serialized FormNested Class Summary | |
---|---|
static interface |
WODisplayGroup.Delegate
The WODisplayGroup delegate offers a number of methods, and WODisplayGroup invokes them as appropriate. |
Nested classes/interfaces inherited from interface com.webobjects.foundation.NSKeyValueCoding |
---|
NSKeyValueCoding.DefaultImplementation, NSKeyValueCoding.ErrorHandling, NSKeyValueCoding.MapImplementation, NSKeyValueCoding.Null, NSKeyValueCoding.UnknownKeyException, NSKeyValueCoding.Utility, NSKeyValueCoding.ValueAccessor |
Nested classes/interfaces inherited from interface com.webobjects.eocontrol.EOKeyValueArchiving |
---|
EOKeyValueArchiving.Awaking, EOKeyValueArchiving.FinishInitialization, EOKeyValueArchiving.Support |
Field Summary | |
---|---|
static String |
DisplayGroupWillFetchNotification
The name for the notification posted during any invocation of WODisplayGroup's fetch method. |
Fields inherited from interface com.webobjects.foundation.NSKeyValueCoding |
---|
NullValue |
Constructor Summary | |
---|---|
WODisplayGroup()
Creates and returns a new WODisplayGroup. |
Method Summary | |
---|---|
NSArray |
allObjects()
Provides all of the objects collected by the WODisplayGroup. |
NSArray |
allQualifierOperators()
Provides all of the EOQualifier operators plus those that work exclusively on Strings (such as like and contains ). |
void |
awakeFromKeyValueUnarchiver(EOKeyValueUnarchiver unarchiver)
Notifies the receiver that the EOKeyValueUnarchiver unarchiver has
unarchived all objects from an archive. |
int |
batchCount()
Provides the number of batches to display. |
boolean |
clearSelection()
Clears the selection of any objects from allObjects . |
int |
currentBatchIndex()
Provides the index of the batch currently being displayed. |
EODataSource |
dataSource()
Provides the last EODataSource given to the WODisplayGroup via setDataSource . |
static Object |
decodeWithKeyValueUnarchiver(EOKeyValueUnarchiver unarchiver)
Intentionally Undocumented |
String |
defaultStringMatchFormat()
If a key in the queryMatch dictionary does not have an associated value in the queryOperator dictionary, then its value is matched using operator pattern matching, and the format string returned by this method specifies how it will be matched. |
String |
defaultStringMatchOperator()
Provides a default operator for matching strings against string values in the queryMatch dictionary for the objects in the WODisplayGroup. |
Object |
delegate()
Provides the last delegate object given to the WODisplayGroup via setDelegate . |
Object |
delete()
Invokes deleteSelection and displayBatchContainingSelectedObject . |
boolean |
deleteObjectAtIndex(int anIndex)
Deletes the object at anIndex in allObjects . |
boolean |
deleteSelection()
Deletes the selectedObjects from the WODisplayGroup's dataSource . |
String |
detailKey()
For detail display groups, returns the key to the master object that specifies what this detail display group represents. |
Object |
displayBatchContainingSelectedObject()
Displays the batch containing the selection and sets the currentBatchIndex to that batch's index. |
NSArray |
displayedObjects()
Provides the objects to be displayed or otherwise made available to the client (web browser). |
Object |
displayNextBatch()
Increments the current batch index, displays that batch of objects, and clears the selection. |
Object |
displayPreviousBatch()
Decrements the current batch index, displays that batch of objects, and clears the selection. |
void |
dispose()
Invoked when the receiver should prepare itself for destruction. |
void |
editingContextPresentErrorMessage(EOEditingContext editingContext,
String message)
Deprecated. Use NSLog instead. No user code should implement or depend upon this. |
void |
encodeWithCoder(NSCoder coder)
|
void |
encodeWithKeyValueArchiver(EOKeyValueArchiver archiver)
Asks the receiver to archive its state into the EOKeyValueArchiver archiver . |
boolean |
endEditing()
Deprecated. No longer important for WebObjects applications. No user code should depend upon this, and any references to this method may be eliminated freely. |
Object |
fetch()
Invokes the fetchObjects method of the dataSource and passes the result to setObjectArray . |
boolean |
fetchesOnLoad()
Indicates whether the WODisplayGroup, whenever it is loaded, should fetch from its dataSource . |
protected void |
finishInitialization()
Invoked from the WODisplayGroup constructor to finish initializing a newly created instance. |
static boolean |
globalDefaultForValidatesChangesImmediately()
Indicates the class default behavior controlling whether submitted changes are immediately validated. |
static String |
globalDefaultStringMatchFormat()
Provides the default string match format for the class. |
static String |
globalDefaultStringMatchOperator()
Provides the default string match operator for the class. |
Object |
handleQueryWithUnboundKey(String key)
Invoked from valueForKey when it finds no property binding for key . |
void |
handleTakeValueForUnboundKey(Object value,
String key)
Invoked from takeValueForKey when it finds no property binding for key . |
boolean |
hasDetailDataSource()
If a to-many relationship is dragged from EOModeler to an open component in WebObjects Builder, a display group is created that has an EODetailDataSource. |
boolean |
hasMultipleBatches()
Indicates whether the WODisplayGroup paginates display, using batchCount . |
int |
indexOfFirstDisplayedObject()
Provides the index into displayedObjects of the first object in the current batch. |
int |
indexOfLastDisplayedObject()
Provides the index into displayedObjects of the last object in the current batch. |
Object |
initWithCoder(NSCoder coder)
|
boolean |
inQueryMode()
Deprecated. No longer important for WebObjects applications. No user code should implement or depend upon this, and any implementations or references to this method may be eliminated freely. |
Object |
insert()
Invokes insertNewObjectAtIndex with an index just past the first index in the selection, or at the end if there's no selection. |
NSDictionary |
insertedObjectDefaultValues()
Provides the dictionary of default values added to empty objects that are inserted into the WODisplayGroup's dataSource . |
Object |
insertNewObjectAtIndex(int newIndex)
Invokes the createObject method of the dataSource and inserts the new object into the dataSource (and into allObjects at newIndex ) using insertObjectAtIndex . |
void |
insertObjectAtIndex(Object createObject,
int newIndex)
Inserts createObject into the WODisplayGroup's dataSource and into allObjects and displayedObjects at newIndex , if possible. |
NSArray |
localKeys()
Provides the additional keys to which WOAssociations may be bound for this WODisplayGroup. |
Object |
masterObject()
Provides the master object for a detail display group (a display group that represents a detail in a master-detail relationship). |
int |
numberOfObjectsPerBatch()
You can set the batch size using setNumberOfObjectsPerBatch or using WebObjects Builder's Display Group Options panel. |
void |
objectsChangedInEditingContext(NSNotification notification)
Redisplays the changed objects in the WODisplayGroup. |
void |
objectsInvalidatedInEditingContext(NSNotification notification)
Refetches all objects from the dataSource of the WODisplayGroup after some or all of them have been invalidated. |
EOQualifier |
qualifier()
Provides the last qualifier given to the WODisplayGroup via setQualifier or qualifyDisplayGroup . |
EOQualifier |
qualifierFromQueryValues()
Builds a qualifier constructed from entries in these query dictionaries: queryMatch, queryMax, queryMin , and queryOperator . |
void |
qualifyDataSource()
Takes the result of qualifierFromQueryValues and applies to the WODisplayGroup's data source. |
void |
qualifyDisplayGroup()
Takes the result of the qualifierFromQueryValues and applies it to the WODisplayGroup using setQualifier . |
NSMutableDictionary |
queryBindings()
You use this method to perform a query stored in the EOModel file. |
NSMutableDictionary |
queryMatch()
The qualifierFromQueryValues method uses this dictionary along with the queryMax and queryMin dictionaries to construct qualifiers. |
NSMutableDictionary |
queryMax()
Provides a dictionary of "less than" query values. |
NSMutableDictionary |
queryMin()
Provides a dictionary of "greater than" query values. |
NSMutableDictionary |
queryOperator()
If a key in the queryMatch dictionary also exists in queryOperator , that operator for that key is used. |
void |
redisplay()
Deprecated. Invoke willChange directly. |
NSArray |
relationalQualifierOperators()
Provides all of the EOQualifier operators excepts that work exclusively on strings (such as like and contains ). |
Object |
selectedObject()
Provides the first object from selectedObjects . |
NSArray |
selectedObjects()
Provides the last selection given to the WODisplayGroup via setSelectedObjects . |
NSArray |
selectionIndexes()
Provides the last selection given to the WODisplayGroup via setSelectionIndexes . |
Object |
selectNext()
Attempts to select the object just after the currently selected one. |
boolean |
selectObject(Object object)
Attempts to select the object equal to object in the WODisplayGroup's displayedObjects , returning true if successful and false otherwise. |
boolean |
selectObjectsIdenticalTo(NSArray objectSelection)
Attempts to select the objects in the WODisplayGroup's displayedObjects array whose addresses are equal to those of objects, returning true if successful and false otherwise. |
boolean |
selectObjectsIdenticalToSelectFirstOnNoMatch(NSArray objectSelection,
boolean selectFirstOnNoMatch)
Selects the objects in the WODisplayGroup's displayed objectSelection array whose addresses are equal to those of objectSelection , returning true if successful and false otherwise. |
Object |
selectPrevious()
Attempts to select the object just before the presently selected one. |
boolean |
selectsFirstObjectAfterFetch()
Indicates whether the WODisplayGroup should select the first object from its displayedObjects after a fetch when there were no selections before the fetch . |
void |
setCurrentBatchIndex(int batchIndex)
Displays the batchIndex batch of objects. |
void |
setDataSource(EODataSource ds)
Changes the WODisplayGroup's EODataSource to ds . |
void |
setDefaultStringMatchFormat(String format)
Changes how pattern matching will be performed on String values in the queryMatch dictionary. |
void |
setDefaultStringMatchOperator(String op)
Changes the operator used to perform pattern matching for String values in the queryMatch dictionary. |
void |
setDelegate(Object anObject)
Changes the WODisplayGroup's delegate to anObject . |
void |
setDetailKey(String detailKey)
Changes the detail key to detailKey for a detail display group. |
void |
setFetchesOnLoad(boolean yn)
Changes whether the WODisplayGroup automatically fetches its objects after being loaded. |
static void |
setGlobalDefaultForValidatesChangesImmediately(boolean yn)
Changes the class default behavior controlling whether submitted changes are immediately validated. |
static void |
setGlobalDefaultStringMatchFormat(String format)
Changes the default string match format for the class. |
static void |
setGlobalDefaultStringMatchOperator(String op)
Changes the default string match operator for the class. |
void |
setInQueryMode(boolean yn)
Deprecated. No longer important for WebObjects applications. No user code should implement or depend upon this, and any implementations or references to this method may be eliminated freely. |
void |
setInsertedObjectDefaultValues(NSDictionary defaultValues)
Changes the dictionary of default values added to empty objects that are inserted into the WODisplayGroup. |
void |
setLocalKeys(NSArray newKeySet)
Changes the additional keys to which WOAssociations for the objects in this WODisplayGroup may be bound to the Strings in newKeySet . |
void |
setMasterObject(Object masterObject)
Changes the master object to masterObject for detail display groups and then performs a fetch if the display group is set to fetch on load. |
void |
setNumberOfObjectsPerBatch(int count)
Changes the number of objects the WODisplayGroup displays at a time. |
void |
setObjectArray(NSArray array)
Changes the WODisplayGroup's array of allObjects to array , regardless of what its dataSource provides. |
void |
setQualifier(EOQualifier qualifier)
Changes the EOQualifier used by the WODisplayGroup to filter its displayedObjects . |
void |
setSelectedObject(Object anObject)
Changes the WODisplayGroup's selectedObjects to an array containing only anObject . |
void |
setSelectedObjects(NSArray objects)
Changes the WODisplayGroup's selection from displayedObjects to objects . |
boolean |
setSelectionIndexes(NSArray s)
Changes the selection from allObjects . |
void |
setSelectsFirstObjectAfterFetch(boolean yn)
Changes whether the WODisplayGroup should select the first object from its displayedObjects after a fetch when there were no selections before the fetch . |
void |
setSortOrderings(NSArray keySortOrderArray)
Changes the EOQualifier used by the WODisplayGroup to filter its objects. |
void |
setValidatesChangesImmediately(boolean yn)
Changes whether the WODisplayGroup immediately validates submitted changes. |
NSArray |
sortOrderings()
Provides the last array of EOSortOrdering objects given to the WODisplayGroup via setSortOrderings . |
NSArray |
stringQualifierOperators()
Provides an array containing all of the relational operators supported by EOQualifier that work exclusively on Strings: "starts with", "contains", "ends with", "is", and "like". |
void |
takeValueForKey(Object value,
String key)
Sets the value for the property identified by key to value . |
String |
toString()
|
void |
unableToSetNullForKey(String key)
Invoked from takeValueForKey when it is given a null value for a scalar property (such as an int or a float ). |
NSUndoManager |
undoManager()
Provides the NSUndoManager used by the WODisplayGroup's dataSource 's EOEditingContext. |
void |
updateDisplayedObjects()
Recalculates the WODisplayGroup's displayedObjects from allObjects and redisplays them. |
boolean |
validatesChangesImmediately()
Indicates whether the WODisplayGroup immediately validates submitted changes. |
Object |
valueForKey(String key)
Retrieves the value of the property named by key . |
void |
willChange()
Notifies observers that the WODisplayGroup will change. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final String DisplayGroupWillFetchNotification
fetch
method.
WODisplayGroup.fetch()
,
NSNotification
,
Constant Field ValuesConstructor Detail |
---|
public WODisplayGroup()
setDataSource
.
WODisplayGroup.setDataSource(com.webobjects.eocontrol.EODataSource)
Method Detail |
---|
public static String globalDefaultStringMatchOperator()
WODisplayGroup.defaultStringMatchOperator()
public static void setGlobalDefaultStringMatchOperator(String op)
op
- the proposed default string match operator for the classWODisplayGroup.setDefaultStringMatchOperator(java.lang.String)
public static String globalDefaultStringMatchFormat()
WODisplayGroup.defaultStringMatchFormat()
public static void setGlobalDefaultStringMatchFormat(String format)
format
- the proposed string match formatWODisplayGroup.setDefaultStringMatchFormat(java.lang.String)
public static boolean globalDefaultForValidatesChangesImmediately()
This behavior can be overridden for each WODisplayGroup instance using setValidatesChangesImmediately
.
Unless this behavior is changed using setGlobalDefaultForValidatesChangesImmediately
, this method returns false
.
true
if WODisplayGroups should immediately validate changes; false
if changes should be passed unvalidated to the WODisplayGroup's EOEditingContextWODisplayGroup.setGlobalDefaultForValidatesChangesImmediately(boolean)
,
WODisplayGroup.validatesChangesImmediately()
,
EOEditingContext
public static void setGlobalDefaultForValidatesChangesImmediately(boolean yn)
This behavior can be overridden for each WODisplayGroup instance using setValidatesChangesImmediately
.
yn
- the proposed behavior. true
if WODisplayGroups should immediately validate changes; false
if changes should be passed unvalidated to the WODisplayGroup's EOEditingContextWODisplayGroup.globalDefaultForValidatesChangesImmediately()
,
WODisplayGroup.setValidatesChangesImmediately(boolean)
,
EOEditingContext
protected void finishInitialization()
dataSource
's editing context (if available)EOEditingContext.ObjectsChangedInEditingContextNotification
and EOObjectStore.InvalidatedAllObjectsInStoreNotification
None of your other methods should ever invoke finishInitialization
. If you override finishInitialization
in a subclass, ensure that you invoke super.finishInitialization()
.
EOEditingContext.ObjectsChangedInEditingContextNotification
,
EOObjectStore.InvalidatedAllObjectsInStoreNotification
,
NSNotification
public void dispose()
NSDisposable
dispose
in interface NSDisposable
public Object initWithCoder(NSCoder coder)
public void encodeWithCoder(NSCoder coder)
public boolean selectsFirstObjectAfterFetch()
displayedObjects
after a fetch
when there were no selections before the fetch
.
true
indicates automatically selection of the first displayed object after a fetch
if there was no previous selection; false
indicates leaving an empty selection as-isWODisplayGroup.displayedObjects()
,
WODisplayGroup.fetch()
,
WODisplayGroup.setSelectsFirstObjectAfterFetch(boolean)
public void setSelectsFirstObjectAfterFetch(boolean yn)
displayedObjects
after a fetch
when there were no selections before the fetch
.
By default, a WODisplayGroup will select the first object after a fetch
when there was no previous selection.
yn
- true
indicates automatic selection of the first displayed object after a fetch
if there was no previous selection, false
indicates leaving an empty selection as-isWODisplayGroup.displayedObjects()
,
WODisplayGroup.fetch()
,
WODisplayGroup.selectsFirstObjectAfterFetch()
public void setValidatesChangesImmediately(boolean yn)
This behavior can be overridden class-wide (affecting WODisplayGroup instances created after the class change) using setGlobalDefaultForValidatesChangesImmediately
.
yn
- the proposed behavior. true
if the WODisplayGroup should immediately validate changes; false
if changes should be passed unvalidated to the WODisplayGroup's EOEditingContextWODisplayGroup.setGlobalDefaultForValidatesChangesImmediately(boolean)
,
WODisplayGroup.validatesChangesImmediately()
,
EOEditingContext.saveChanges()
,
EOEditingContext.tryToSaveChanges()
public boolean validatesChangesImmediately()
Unless this behavior is overridden for this WODisplayGroup instance using setValidatesChangesImmediately
, the value returned is the same as that currently returned by globalDefaultForValidatesChangesImmediately
.
true
if the WODisplayGroup should immediately validate changes; false
if changes should be passed unvalidated to the WODisplayGroup's EOEditingContextWODisplayGroup.globalDefaultForValidatesChangesImmediately()
,
WODisplayGroup.setValidatesChangesImmediately(boolean)
public void setFetchesOnLoad(boolean yn)
yn
- the proposed change. true
if the WODisplayGroup, when it is loaded, should automatically fetch from the database; false
if the WODisplayGroup should wait until fetch
is invoked explicitlyWODisplayGroup.fetch()
,
WODisplayGroup.fetchesOnLoad()
public boolean fetchesOnLoad()
dataSource
. A fetch on load typically occurs each time the WOComponent containing the WODisplayGroup is loaded by the client (web browser).
This method is invoked by:
awakeFromKeyValueUnarchiver
setMasterObject
setFetchesOnLoad
, returns false
.
true
if the WODisplayGroup fetches automatically after the component that contains it is loaded, false
if it must be told explicitly to fetchWODisplayGroup.awakeFromKeyValueUnarchiver(com.webobjects.eocontrol.EOKeyValueUnarchiver)
,
WODisplayGroup.dataSource()
,
WODisplayGroup.fetch()
,
WODisplayGroup.setFetchesOnLoad(boolean)
,
WODisplayGroup.setMasterObject(java.lang.Object)
,
WODisplayGroup
,
WOComponent
public NSArray allObjects()
displayedObjects
. Typically this collection will comprise the results of the last fetch from the WODisplayGroup's dataSource
.
However, this collection may be modified via several methods:
deleteObjectAtIndex
insertObjectAtIndex
objectsChangedInEditingContext
setInQueryMode
setObjectArray
updateDisplayedObjects
null
, though it may be empty.WODisplayGroup.deleteObjectAtIndex(int)
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.fetch()
,
WODisplayGroup.insertObjectAtIndex(java.lang.Object, int)
,
WODisplayGroup.objectsChangedInEditingContext(com.webobjects.foundation.NSNotification)
,
WODisplayGroup.setInQueryMode(boolean)
,
WODisplayGroup.setObjectArray(com.webobjects.foundation.NSArray)
,
WODisplayGroup.updateDisplayedObjects()
public NSArray displayedObjects()
allObjects
.
If the WODisplayGroup has a delegate
that responds to displayGroupDisplayArrayForObjects
, the WODisplayGroup uses this method to filter allObjects
. Otherwise, the WODisplayGroup filters via a combination of its qualifier
and its
sortOrderings
.
displayedObjects
changes each time allObjects
changes, as well whenever updateDisplayedObjects
is invoked. If display batching is enabled (numberOfObjectsPerBatch() > 0
), displayedObjects
provides the current batch
of objects. Consequently, displayedObjects
may be also changed whenever any of the following methods are invoked:
setNumberOfObjectsPerBatch
displayNextBatch
displayPreviousBatch
displayBatchContainingSelectedObject
WODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.numberOfObjectsPerBatch()
,
WODisplayGroup.qualifier()
,
WODisplayGroup.setNumberOfObjectsPerBatch(int)
,
WODisplayGroup.setQualifier(com.webobjects.eocontrol.EOQualifier)
,
WODisplayGroup.setSortOrderings(com.webobjects.foundation.NSArray)
,
WODisplayGroup.sortOrderings()
,
WODisplayGroup.updateDisplayedObjects()
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public void setQualifier(EOQualifier qualifier)
displayedObjects
. Typically invoked in conjunction with setSortOrderings
.
Use updateDisplayedObjects
to apply a new qualifier to the WODisplayGroup (filter allObjects
into displayedObjects
).
The WODisplayGroup's qualifier
may also be changed via qualifyDisplayGroup
or from WebObjects Builder using the Display Group Options panel.
qualifier
- the proposed qualifierWODisplayGroup.allObjects()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.qualifier()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.setSortOrderings(com.webobjects.foundation.NSArray)
,
WODisplayGroup.updateDisplayedObjects()
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public EOQualifier qualifier()
setQualifier
or qualifyDisplayGroup
. The WODisplayGroup uses this qualifier, in conjunction with its sortOrderings
, to filter allObjects
into displayedObjects
.
If the WODisplayGroup has a delegate
that responds to displayGroupDisplayArrayForObjects
, the WODisplayGroup uses this method to filter allObjects
instead of using its qualifier
and sortOrderings
.
null
.WODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.setQualifier(com.webobjects.eocontrol.EOQualifier)
,
WODisplayGroup.sortOrderings()
,
WODisplayGroup.updateDisplayedObjects()
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public void setSortOrderings(NSArray keySortOrderArray)
setQualifier
.
Use updateDisplayedObjects
to apply the new sort orderings to the WODisplayGroup (filter allObjects
into displayedObjects
).
The WODisplayGroup's sortOrderings
may also be changed from WebObjects Builder using the Display Group Options panel.
keySortOrderArray
- the proposed EOSortOrdering objectsWODisplayGroup.allObjects()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.setQualifier(com.webobjects.eocontrol.EOQualifier)
,
WODisplayGroup.updateDisplayedObjects()
,
WODisplayGroup.sortOrderings()
,
EOSortOrdering
public NSArray sortOrderings()
setSortOrderings
. The WODisplayGroup uses these sort orderings, in conjunction with its qualifier
, to filter allObjects
into displayedObjects
.
If the WODisplayGroup has a delegate
that responds to displayGroupDisplayArrayForObjects
, the WODisplayGroup uses this method to filter allObjects
instead of using its qualifier
and sortOrderings
.
null
.WODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.qualifier()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.setSortOrderings(com.webobjects.foundation.NSArray)
,
WODisplayGroup.updateDisplayedObjects()
,
EOSortOrdering
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public void updateDisplayedObjects()
displayedObjects
from allObjects
and redisplays them. Invoked by qualifyDisplayGroup
and setObjectArray
.
If the WODisplayGroup has a delegate
that responds to displayGroupDisplayArrayForObjects
, the WODisplayGroup uses this method to filter allObjects
into displayedObjects
. Otherwise, the WODisplayGroup uses its qualifier
and sortOrderings
to do so. In either case, any objects that were previously selected remain selected in the new array of displayedObjects
.
WODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.qualifier()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.redisplay()
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.setObjectArray(com.webobjects.foundation.NSArray)
,
WODisplayGroup.sortOrderings()
,
WODisplayGroup.Delegate.displayGroupDisplayArrayForObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public void setObjectArray(NSArray array)
allObjects
to array
, regardless of what its dataSource
provides. Invoked from fetch
to set the array of fetched objects; should almost never need to be invoked explicitly.
Doesn't affect the dataSource
's objects at all; specifically, this method results neither in inserts nor deletes of objects in the dataSource
. array
should contain objects with the same property names or methods as those used by the
WODisplayGroup.
After changing to array
, this method restores as much of any previous object selection as possible. If unable to restore any previous selection, then the first object is selected if the WODisplayGroup selectsFirstObjectAfterFetch
.
array
- the object array to be setWODisplayGroup.fetch()
,
WODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.selectsFirstObjectAfterFetch()
public void setDataSource(EODataSource ds)
ds
. This also causes the WODisplayGroup to:
ds
's EOEditingContext, unless that EOEditingContext already has a message handlerallObjects
WODisplayGroup.Delegate.displayGroupDidChangeDataSource
ds
- the proposed EODataSourceWODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
EODataSource
,
EOEditingContext
,
WODisplayGroup.Delegate.displayGroupDidChangeDataSource(com.webobjects.appserver.WODisplayGroup)
public EODataSource dataSource()
setDataSource
. The WODisplayGroup will use this EODataSource to fetch and commit objects.
The EODataSource may represent a detail in a master-detail relationship.
WODisplayGroup.fetch()
,
WODisplayGroup.hasDetailDataSource()
,
WODisplayGroup.setDataSource(com.webobjects.eocontrol.EODataSource)
,
EODataSource
public void setDelegate(Object anObject)
anObject
.
The new delegate object may not implement WODisplayGroup.Delegate
, because such implementation would require that all delegate methods be implemented. Those methods that might communicate with the delegate will take the appropriate steps to ensure that the delegate
implements any method in question before attempting to invoke it.
anObject
- the proposed delegate objectWODisplayGroup.delegate()
,
WODisplayGroup.Delegate
public Object delegate()
setDelegate
.
The delegate object may not implement WODisplayGroup.Delegate
, because such implementation would require that all delegate methods be implemented. Those methods that might communicate with the delegate will take the appropriate steps to ensure that the delegate
implements any method in question before attempting to invoke it.
WODisplayGroup.setDelegate(java.lang.Object)
,
WODisplayGroup.Delegate
public NSArray localKeys()
Typically a WODisplayGroup's basic keys are the attributes and relationships of its objects, allObjects
. These keys are defined by the EOClassDescription for the objects (derived from an EOEntity in the EOModel associated with the WODisplayGroup's dataSource
).
Local keys are used by WebObjects Builder to extend manually the interface of a WODisplayGroup's objects or to provide interface conveniences. Such keys may form associations with key paths, with arbitrary methods of objects or with properties of objects not associated with an EOEntity.
null
, though it may be empty.WODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WOAssociation
,
EOEntity
,
EOModel
,
EOClassDescription
public void setLocalKeys(NSArray newKeySet)
newKeySet
.
newKeySet
- the proposed local keysWODisplayGroup.localKeys()
,
WOAssociation
public void objectsChangedInEditingContext(NSNotification notification)
userInfo
of notification
may indicate that some objects have been deleted.
notification
- indicates whether any objects have been deletedWODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
NSNotification.userInfo()
public void objectsInvalidatedInEditingContext(NSNotification notification)
dataSource
of the WODisplayGroup after some or all of them have been invalidated. Refetching may be prevented by the WODisplayGroup's delegate
method, displayGroupShouldRefetchForInvalidatedAllObjects
.
notification
- indicates which objects have been invalidated, for use by displayGroupShouldRefetchForInvalidatedAllObjects
WODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
WODisplayGroup.fetch()
,
NSNotification
,
WODisplayGroup.Delegate.displayGroupShouldRefetchForInvalidatedAllObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSNotification)
public NSUndoManager undoManager()
dataSource
's EOEditingContext.
WODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
EOEditingContext
,
NSUndoManager
public NSArray selectionIndexes()
setSelectionIndexes
. This selection is represented by an array of Integers that indicates the indexes of the selected objects in allObjects
.
null
, though it may be empty.WODisplayGroup.allObjects()
,
WODisplayGroup.selectedObject()
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
public NSArray selectedObjects()
setSelectedObjects
. This selection is represented by an array of objects culled from the WODisplayGroup's displayedObjects
.
displayedObjects
. Will never be null
, though it may be empty.WODisplayGroup.displayedObjects()
,
WODisplayGroup.selectedObject()
,
WODisplayGroup.selectionIndexes()
public void setSelectedObjects(NSArray objects)
displayedObjects
to objects
. Invokes setSelectionIndexes
to do so.
Invoked by setSelectedObject
.
objects
- the proposed selectionWODisplayGroup.allObjects()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.setSelectedObject(java.lang.Object)
,
WODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
public Object selectedObject()
selectedObjects
.
selectedObjects
, or null
if there's no selectionWODisplayGroup.displayedObjects()
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.selectionIndexes()
public void setSelectedObject(Object anObject)
selectedObjects
to an array containing only anObject
. Invokes setSelectedObjects
to do so.
If anObject
is null
, invokes clearSelection
.
anObject
- the object to become the new selectedObject
and sole member of selectedObjects
WODisplayGroup.allObjects()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.selectedObject()
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.selectionIndexes()
@Deprecated public boolean endEditing()
true
public boolean setSelectionIndexes(NSArray s)
allObjects
. s
contains the indexes (Integers) of some or all of the objects from allObjects
.
Invoked by setSelectedObjects
.
The selection change may be prevented by the WODisplayGroup's delegate
method, displayGroupShouldChangeSelectionToIndexes
.
If the selection change is not prevented and succeeds, the WODisplayGroup invokes the delegate
method, displayGroupDidChangeSelectedObjects
.
NOTE: The selection made here does not necessarily result in a display change in the client (web browser).
s
- an array of Integers indicating the indexes of objects to be selected from allObjects
. Should never be null
.
true
if the change occurred successfully, false
otherwiseWODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.setSelectedObjects(com.webobjects.foundation.NSArray)
,
WODisplayGroup.Delegate.displayGroupDidChangeSelectedObjects(com.webobjects.appserver.WODisplayGroup)
,
WODisplayGroup.Delegate.displayGroupShouldChangeSelectionToIndexes(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public boolean selectObject(Object object)
object
in the WODisplayGroup's displayedObjects
, returning true
if successful and false
otherwise. object
is equal to an object in the displayedObjects
array if
its address is the same as the object in the array.
object
- equal to object in the WODisplayGroup's displayedObjects
array
true
if successful and false
otherwiseWODisplayGroup.selectPrevious()
,
WODisplayGroup.selectNext()
public boolean selectObjectsIdenticalTo(NSArray objectSelection)
displayedObjects
array whose addresses are equal to those of objects, returning true
if successful and false
otherwise.
objectSelection
- the objects in the WODisplayGroup's displayedObjects
array whose addresses are equal to those of objects
true
if successful and false
otherwiseWODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
,
WODisplayGroup.selectObjectsIdenticalToSelectFirstOnNoMatch(com.webobjects.foundation.NSArray, boolean)
public boolean selectObjectsIdenticalToSelectFirstOnNoMatch(NSArray objectSelection, boolean selectFirstOnNoMatch)
objectSelection
array whose addresses are equal to those of objectSelection
, returning true
if successful and false
otherwise. If no objects in the displayedObjects
array match objects and selectFirstOnNoMatch
is true
, attempts to select the first object in the displayedObjects
array.
objectSelection
- the objects in the WODisplayGroup's displayed objects array whose addresses are equal to those of objectsselectFirstOnNoMatch
- boolean indicating whether the first object in the displayedObjects
should be selected if no objects in objectSelection
match
true
if successful and false
otherwiseWODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
,
WODisplayGroup.selectObjectsIdenticalTo(com.webobjects.foundation.NSArray)
public Object selectNext()
null
to force the page to reloadWODisplayGroup.selectPrevious()
,
WODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
public Object selectPrevious()
null
to force the page to reloadWODisplayGroup.redisplay()
,
WODisplayGroup.selectNext()
public boolean clearSelection()
allObjects
.
Invokes setSelectionIndexes
(passing NSArray.EmptyArray
) to do so.
true
on success and false
on failure.WODisplayGroup.allObjects()
,
WODisplayGroup.setSelectionIndexes(com.webobjects.foundation.NSArray)
,
NSArray.EmptyArray
@Deprecated public void redisplay()
willChange
directly.
willChange
.
WODisplayGroup.willChange()
public boolean deleteSelection()
selectedObjects
from the WODisplayGroup's dataSource
.
Deletion may be prevented by WODisplayGroup.Delegate.displayGroupShouldDeleteObject
.
If the deletion is not prevented and succeeds, this method also invokes:
selectObjectsIdenticalToSelectFirstOnNoMatch
willChange
WODisplayGroup.Delegate.displayGroupDidDeleteObject
true
if the selection was deleted successfully, false
otherwiseWODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
WODisplayGroup.delete()
,
WODisplayGroup.deleteObjectAtIndex(int)
,
WODisplayGroup.selectedObjects()
,
WODisplayGroup.selectObjectsIdenticalToSelectFirstOnNoMatch(com.webobjects.foundation.NSArray, boolean)
,
WODisplayGroup.willChange()
,
WODisplayGroup.Delegate.displayGroupDidDeleteObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object)
,
WODisplayGroup.Delegate.displayGroupShouldDeleteObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object)
public boolean deleteObjectAtIndex(int anIndex)
anIndex
in allObjects
.
Deletion may be prevented by WODisplayGroup.Delegate.displayGroupShouldDeleteObject
.
If the deletion is not prevented and succeeds, this method also invokes:
selectObjectsIdenticalToSelectFirstOnNoMatch
willChange
WODisplayGroup.Delegate.displayGroupDidDeleteObject
anIndex
- index into allObjects
that indicates which object should be deleted
true
if the object in question was deleted successfully, false
otherwiseWODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
WODisplayGroup.delete()
,
WODisplayGroup.deleteSelection()
,
WODisplayGroup.selectObjectsIdenticalToSelectFirstOnNoMatch(com.webobjects.foundation.NSArray, boolean)
,
WODisplayGroup.willChange()
,
WODisplayGroup.Delegate.displayGroupDidDeleteObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object)
,
WODisplayGroup.Delegate.displayGroupShouldDeleteObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object)
public void setInsertedObjectDefaultValues(NSDictionary defaultValues)
defaultValues
- the proposed default values to be used for newly inserted, empty objects. Should never be null
.WODisplayGroup.insert()
,
WODisplayGroup.insertedObjectDefaultValues()
,
WODisplayGroup.insertNewObjectAtIndex(int)
public NSDictionary insertedObjectDefaultValues()
dataSource
. This dictionary's keys represent the properties of the EOEntity that this WODisplayGroup manages.
If this dictionary is empty, insert
and insertNewObjectAtIndex
add an object that is initially empty. Because the inserted object is empty, the WODisplayGroup has no value to display for that object. This means that the inserted object may not be selected or
modified by the client (web browser). Consequently, the dictionary should contain at least a default value for the property or properties displayed by the WODisplayGroup.
null
, though it may be empty.WODisplayGroup.dataSource()
,
WODisplayGroup.insert()
,
WODisplayGroup.insertNewObjectAtIndex(int)
,
WODisplayGroup.setInsertedObjectDefaultValues(com.webobjects.foundation.NSDictionary)
,
EOEntity
public void insertObjectAtIndex(Object createObject, int newIndex)
createObject
into the WODisplayGroup's dataSource
and into allObjects
and displayedObjects
at newIndex
, if possible.
Insertion may be prevented by WODisplayGroup.Delegate.displayGroupShouldInsertObject
.
If the deletion is not prevented and succeeds, this method also invokes:
selectObjectsIdenticalTo
with createObject
willChange
WODisplayGroup.Delegate.displayGroupDidInsertObject
createObject
- object inserted into the WODisplayGroup's dataSource
newIndex
- the specified index at which object is displayedWODisplayGroup.allObjects()
,
WODisplayGroup.delegate()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.insert()
,
WODisplayGroup.insertNewObjectAtIndex(int)
,
WODisplayGroup.selectObjectsIdenticalTo(com.webobjects.foundation.NSArray)
,
WODisplayGroup.willChange()
,
WODisplayGroup.Delegate.displayGroupDidInsertObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object)
,
WODisplayGroup.Delegate.displayGroupShouldInsertObject(com.webobjects.appserver.WODisplayGroup, java.lang.Object, int)
public Object insertNewObjectAtIndex(int newIndex)
createObject
method of the dataSource
and inserts the new object into the dataSource
(and into allObjects
at newIndex
) using insertObjectAtIndex
. If a new object can't be created, this
method invokes WODisplayGroup.Delegate.displayGroupCreateObjectFailedForDataSource
.
If the object is successfully created, this method then sets the default values specified by insertedObjectDefaultValues
.
newIndex
- where to insert the new object; passed to insertObjectAtIndex
null
if the object couldn't be created or insertedWODisplayGroup.allObjects()
,
WODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
WODisplayGroup.insert()
,
WODisplayGroup.insertObjectAtIndex(java.lang.Object, int)
,
WODisplayGroup.insertedObjectDefaultValues()
,
WODisplayGroup.Delegate.displayGroupCreateObjectFailedForDataSource(com.webobjects.appserver.WODisplayGroup, com.webobjects.eocontrol.EODataSource)
public Object fetch()
fetchObjects
method of the dataSource
and passes the result to setObjectArray
.
Fetching may be prevented by WODisplayGroup.Delegate.displayGroupShouldFetch
. If not prevented, this method also:
WODisplayGroup.DisplayGroupWillFetchNotification
just before invoking fetchObjects
undoManager
(using its removeAllActionsWithTarget
method)WODisplayGroup.Delegate.displayGroupDidFetchObjects
Invoked by:
awakeFromKeyValueUnarchiver
(if fetchesOnLoad
returns true
)objectsInvalidatedInEditingContext
qualifyDataSource
setMasterObject
(if fetchesOnLoad
returns true
)
null
to force the page to reloadWODisplayGroup.dataSource()
,
WODisplayGroup.delegate()
,
WODisplayGroup.DisplayGroupWillFetchNotification
,
WODisplayGroup.fetchesOnLoad()
,
WODisplayGroup.objectsInvalidatedInEditingContext(com.webobjects.foundation.NSNotification)
,
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.setMasterObject(java.lang.Object)
,
WODisplayGroup.setObjectArray(com.webobjects.foundation.NSArray)
,
WODisplayGroup.Delegate.displayGroupShouldFetch(com.webobjects.appserver.WODisplayGroup)
,
WODisplayGroup.Delegate.displayGroupDidFetchObjects(com.webobjects.appserver.WODisplayGroup, com.webobjects.foundation.NSArray)
public String defaultStringMatchOperator()
queryMatch
dictionary for the objects in the WODisplayGroup. If a key in the queryMatch
dictionary does not have an associated operator in the queryOperator
dictionary,
then the operator is used. Unless this behavior is changed using setDefaultStringMatchOperator
, this method returns caseInsensitiveLike
.
queryMatch
dictionaryWODisplayGroup.allObjects()
,
WODisplayGroup.defaultStringMatchFormat()
,
WODisplayGroup.globalDefaultStringMatchOperator()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.setDefaultStringMatchOperator(java.lang.String)
public void setDefaultStringMatchOperator(String op)
queryMatch
dictionary. This operator is used for properties listed in the queryMatch
dictionary that have String values and that do not have an associated entry in the queryOperator
dictionary. In these cases, the operator is used to perform pattern matching.
The default value for the query match operator is caseInsensitiveLike
, which means that the query does not consider case when matching letters (this default can be overridden on a class basis using setGlobalDefaultStringMatchOperator
). The other possible value
for this operator is like
, which matches the case of the letters exactly.
op
- operator used to perform pattern matchingWODisplayGroup.queryMatch()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.allQualifierOperators()
,
WODisplayGroup.defaultStringMatchOperator()
,
WODisplayGroup.relationalQualifierOperators()
,
WODisplayGroup.setDefaultStringMatchFormat(java.lang.String)
,
WODisplayGroup.setGlobalDefaultStringMatchOperator(java.lang.String)
public String defaultStringMatchFormat()
queryMatch
dictionary does not have an associated value in the queryOperator
dictionary, then its value is matched using operator pattern matching, and the format string returned by this method specifies how it will be matched.
queryMatch
dictionaryWODisplayGroup.defaultStringMatchOperator()
,
WODisplayGroup.setDefaultStringMatchFormat(java.lang.String)
,
WODisplayGroup.globalDefaultStringMatchFormat()
,
WODisplayGroup.queryMatch()
public void setDefaultStringMatchFormat(String format)
queryMatch
dictionary. This format is used for properties listed in the queryMatch
dictionary that have String values and that do not have an associated entry in the queryOperator
dictionary. In these cases, the value is matched using pattern matching and format
specifies how it will be matched.
The default format string for pattern matching is "%@" which means that the string value in the queryMatch
dictionary is used as a prefix (this default can be overridden on a class basis using setGlobalDefaultStringMatchFormat
). For example, if the queryMatch
dictionary contains a value "Jo" for the key "Name", the query returns all records whose name values begin with "Jo".
format
- specifies how pattern will be matchedWODisplayGroup.queryMatch()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.setGlobalDefaultStringMatchFormat(java.lang.String)
,
WODisplayGroup.defaultStringMatchFormat()
,
WODisplayGroup.setDefaultStringMatchOperator(java.lang.String)
public EOQualifier qualifierFromQueryValues()
queryMatch, queryMax, queryMin
, and queryOperator
.
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMax()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.qualifyDisplayGroup()
public void qualifyDisplayGroup()
qualifierFromQueryValues
and applies it to the WODisplayGroup using setQualifier
. The method updateDisplayedObjects
is invoked to refresh the display. If the WODisplayGroup is in query mode, query mode is exited.
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMax()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.qualifierFromQueryValues()
,
WODisplayGroup.setQualifier(com.webobjects.eocontrol.EOQualifier)
,
WODisplayGroup.updateDisplayedObjects()
public void qualifyDataSource()
qualifierFromQueryValues
and applies to the WODisplayGroup's data source. The WODisplayGroup then invokes fetch
on itself. If the WODisplayGroup is in query mode, query mode is exited. This method differs from qualifyDisplayGroup
as follows: whereas qualifyDisplayGroup
performs in-memory filtering of already fetched objects, qualifyDataSource
triggers a new qualified fetch against the database.
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMax()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.qualifierFromQueryValues()
,
WODisplayGroup.fetch()
,
WODisplayGroup.qualifyDisplayGroup()
@Deprecated public void setInQueryMode(boolean yn)
@Deprecated public boolean inQueryMode()
public void encodeWithKeyValueArchiver(EOKeyValueArchiver archiver)
EOKeyValueArchiving
archiver
.
encodeWithKeyValueArchiver
in interface EOKeyValueArchiving
archiver
- the EOKeyValueArchiverEOKeyValueArchiver
public static Object decodeWithKeyValueUnarchiver(EOKeyValueUnarchiver unarchiver)
public void awakeFromKeyValueUnarchiver(EOKeyValueUnarchiver unarchiver)
EOKeyValueArchiving.Awaking
unarchiver
has
unarchived all objects from an archive. Objects receive this method at the end
of an unarchiving process of an EOKeyValueUnarchiver, when all objects have been
unarchived, but before they are asked to finish initialization through the
EOKeyValueArchiving.FinishInitialization interface method
finishInitializationWithKeyValueUnarchiver
.
awakeFromKeyValueUnarchiver
in interface EOKeyValueArchiving.Awaking
unarchiver
- the EOKeyValueUnarchiverEOKeyValueUnarchiver
,
EOKeyValueArchiving.FinishInitialization
public NSArray relationalQualifierOperators()
like
and contains
).
WODisplayGroup.allQualifierOperators()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.stringQualifierOperators()
,
EOQualifier.relationalQualifierOperators()
public NSArray allQualifierOperators()
like
and contains
).
WODisplayGroup.queryOperator()
,
WODisplayGroup.relationalQualifierOperators()
,
WODisplayGroup.stringQualifierOperators()
,
EOQualifier
public NSArray stringQualifierOperators()
WODisplayGroup.allQualifierOperators()
,
WODisplayGroup.relationalQualifierOperators()
,
EOQualifier
public void setNumberOfObjectsPerBatch(int count)
count
- the proposed number of objects the WODisplayGroup should display at a timeWODisplayGroup.numberOfObjectsPerBatch()
public int numberOfObjectsPerBatch()
setNumberOfObjectsPerBatch
or using WebObjects Builder's Display Group Options panel.
WODisplayGroup.batchCount()
,
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.hasMultipleBatches()
,
WODisplayGroup.setNumberOfObjectsPerBatch(int)
public Object displayNextBatch()
null
to force the page to reloadWODisplayGroup.batchCount()
,
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.hasMultipleBatches()
,
WODisplayGroup.numberOfObjectsPerBatch()
public Object displayPreviousBatch()
null
to force the page to reloadWODisplayGroup.batchCount()
,
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.hasMultipleBatches()
,
WODisplayGroup.numberOfObjectsPerBatch()
public int batchCount()
displayedObjects().count() == 200
and numberOfObjectsPerBatch() == 10
, batchCount() == 20
(twenty batches of ten objects each).
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.hasMultipleBatches()
,
WODisplayGroup.numberOfObjectsPerBatch()
public boolean hasMultipleBatches()
batchCount
.
true
if batchCount
is greater than 1, false
otherwiseWODisplayGroup.batchCount()
,
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.numberOfObjectsPerBatch()
public int currentBatchIndex()
batchCount
equals the number of displayedObjects
divided by the numberOfObjectsPerBatch
. For example, if the WODisplayGroup has one hundred objects to display and the numberOfObjectsPerBatch
is twenty, there are five batches. The first batch has a batch index of 1.
WODisplayGroup.batchCount()
,
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.hasMultipleBatches()
,
WODisplayGroup.numberOfObjectsPerBatch()
,
WODisplayGroup.setCurrentBatchIndex(int)
public void setCurrentBatchIndex(int batchIndex)
batchIndex
batch of objects. The total batchCount
equals the number of displayedObjects
divided by the numberOfObjectsPerBatch
. For example, if the WODisplayGroup has one hundred objects to display and the numberOfObjectsPerBatch
is twenty, there are five batches. The first batch has a batch index of 1. setCurrentBatchIndex(3)
would display the third batch of objects (objects 41 to 60 in this example).
If batchIndex
is greater than the number of batches, this method displays the first batch.
batchIndex
- the proposed batch index of objectsWODisplayGroup.currentBatchIndex()
public int indexOfFirstDisplayedObject()
displayedObjects
of the first object in the current batch. As an example, if the current batch is displaying items 11 through 20, this method returns 11.
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.indexOfLastDisplayedObject()
public int indexOfLastDisplayedObject()
displayedObjects
of the last object in the current batch. As an example, if the current batch is displaying items 11 through 20, this method returns 20.
WODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayedObjects()
,
WODisplayGroup.indexOfFirstDisplayedObject()
public Object displayBatchContainingSelectedObject()
currentBatchIndex
to that batch's index.
null
to force the page to reloadWODisplayGroup.currentBatchIndex()
,
WODisplayGroup.displayNextBatch()
,
WODisplayGroup.displayPreviousBatch()
,
WODisplayGroup.setCurrentBatchIndex(int)
public NSMutableDictionary queryMatch()
qualifierFromQueryValues
method uses this dictionary along with the queryMax
and queryMin
dictionaries to construct qualifiers.
Use the queryOperator
dictionary to specify the type of matching (=, <, >, like, and so on) for each key in the queryMatch
dictionary.
If the queryOperator
dictionary does not contain a key contained in the queryMatch
dictionary, the default is to match the value exactly (=) if the value is a number or a date and to perform pattern matching if the value is a String. In the case of string values,
the defaultStringMatchFormat
and defaultStringMatchOperator
specify exactly how the pattern matching will be performed.
WODisplayGroup.allQualifierOperators()
,
WODisplayGroup.defaultStringMatchFormat()
,
WODisplayGroup.defaultStringMatchOperator()
,
WODisplayGroup.qualifierFromQueryValues()
,
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMax()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryOperator()
,
WODisplayGroup.relationalQualifierOperators()
public NSMutableDictionary queryOperator()
queryMatch
dictionary also exists in queryOperator
, that operator for that key is used. The allQualifierOperators
method returns the operator strings you can use as values in this dictionary.
queryMatch
dictionaryWODisplayGroup.allQualifierOperators()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryMax()
,
WODisplayGroup.relationalQualifierOperators()
,
WODisplayGroup.qualifierFromQueryValues()
public NSMutableDictionary queryMax()
qualifierFromQueryValues
method uses this dictionary along with the queryMatch
and queryMin
dictionaries to construct qualifiers.
WODisplayGroup.qualifierFromQueryValues()
,
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.queryMin()
,
WODisplayGroup.queryOperator()
public NSMutableDictionary queryMin()
qualifierFromQueryValues
method uses this dictionary along with the queryMatch
and queryMin dictionaries to construct qualifiers.
WODisplayGroup.qualifierFromQueryValues()
,
WODisplayGroup.qualifyDataSource()
,
WODisplayGroup.queryMatch()
,
WODisplayGroup.qualifyDisplayGroup()
,
WODisplayGroup.queryOperator()
public NSMutableDictionary queryBindings()
@Deprecated public void editingContextPresentErrorMessage(EOEditingContext editingContext, String message)
EOEditingContext.MessageHandler
interface, this method uses NSLog to display the supplied String.
editingContext
- the supplied EOEditingContextmessage
- the message to displayEOEditingContext.MessageHandler
,
NSLog
public Object insert()
insertNewObjectAtIndex
with an index just past the first index in the selection, or at the end if there's no selection.
null
to force the page to reloadWODisplayGroup.insertNewObjectAtIndex(int)
public Object delete()
deleteSelection
and displayBatchContainingSelectedObject
. This method is a convenience to be invoked directly from a WOElement's (such as a WOComponent's) action.
null
to force reloading of the page that contains this WODisplayGroup (see WOElement.invokeAction
)WODisplayGroup.deleteObjectAtIndex(int)
,
WODisplayGroup.deleteSelection()
,
WODisplayGroup.displayBatchContainingSelectedObject()
,
WOElement.invokeAction(com.webobjects.appserver.WORequest, com.webobjects.appserver.WOContext)
public String detailKey()
valueForKey
on the object returned by the masterObject
method with this key, the objects controlled by this display
group are obtained.
This method returns null
if the WODisplayGroup is not a detail display group or if the detail key has not yet been set. A detail display group is typically created by dragging a to-many relationship from EOModeler to an open component in WebObjects Builder.
WODisplayGroup.hasDetailDataSource()
,
WODisplayGroup.masterObject()
,
WODisplayGroup.setDetailKey(java.lang.String)
,
WODisplayGroup.valueForKey(java.lang.String)
,
EODetailDataSource
public void setDetailKey(String detailKey)
detailKey
for a detail display group. The detail key is the key that retrieves from the master object the objects that this display group manages. You must set a detail key before you set a master object.
If the WODisplayGroup is not a detail display group, this method has no effect. A display group is a detail display group if its data source is an EODetailDataSource. A detail display group is typically created by dragging a to-many relationship from EOModeler to an open component in WebObjects Builder. Doing so sets the detail key and master object, so you rarely need to use this method.
detailKey
- the detail key is set to this for a detail display groupWODisplayGroup.detailKey()
,
WODisplayGroup.hasDetailDataSource()
,
WODisplayGroup.setMasterObject(java.lang.Object)
,
EODetailDataSource
public Object masterObject()
null
.
WODisplayGroup.detailKey()
,
WODisplayGroup.hasDetailDataSource()
,
WODisplayGroup.setMasterObject(java.lang.Object)
,
EODetailDataSource
public void setMasterObject(Object masterObject)
masterObject
for detail display groups and then performs a fetch if the display group is set to fetch on load. The master object owns the objects controlled by this display group.
Before this method is used, you should use the setDetailKey
to set the key to this relationship. A detail display group is typically created by dragging a to-Many relationship from EOModeler to an open component in WebObjects Builder. Doing so sets the master object and detail
key, so typically you don't have to use this method.
If the WODisplayGroup is not a detail display group, this method has no effect.
masterObject
- the master object is set to thisWODisplayGroup.setDetailKey(java.lang.String)
,
WODisplayGroup.hasDetailDataSource()
,
WODisplayGroup.masterObject()
,
EODetailDataSource
public boolean hasDetailDataSource()
true
if the WODisplayGroup's dataSource
is an EODetailDataSource, false
otherwiseWODisplayGroup.dataSource()
,
WODisplayGroup.detailKey()
,
WODisplayGroup.masterObject()
,
EODetailDataSource
public void willChange()
EOObserverCenter.notifyObserversObjectWillChange(java.lang.Object)
public Object valueForKey(String key)
NSKeyValueCoding
key
.
The default implementation provided by NSKeyValueCoding.DefaultImplementation works as follows:
key
. For example, with a key of "lastName", the method looks for a method named getLastName, lastName, or isLastName.canAccessFieldsDirectly
returns true
, the method searches for a field based on key
and returns its value directly. For the key "lastName", this would be _lastName,
_isLastName, lastName, or isLastName.Note: The default implementations have significant performance optimizations. To benefit from them, implement NSKeyValueCoding on a custom class as shown above by using the methods in NSKeyValueCoding.DefaultImplementation, or if your class inherits from an WebObjects class that implements NSKeyValueCoding, do not override the inherited implementation. Using a custom implementation incurs significant performance penalties.
valueForKey
in interface NSKeyValueCoding
key
- identifies the property to retrieve
key
. Depending on the object you invoke this method upon, null
may be replaced with NullValue
NSKeyValueCoding.NullValue
,
NSKeyValueCoding.takeValueForKey(java.lang.Object, java.lang.String)
,
NSKeyValueCoding.DefaultImplementation
,
NSKeyValueCoding.ErrorHandling
,
NSKeyValueCoding.ErrorHandling.handleQueryWithUnboundKey(java.lang.String)
public void takeValueForKey(Object value, String key)
NSKeyValueCoding
key
to value
.
The default implementation provided by NSKeyValueCoding.DefaultImplementation works as follows:
set
Key, and invokes it if there is one._set
Key, and invokes it if there is one.canAccessFieldsDirectly
returns true
, searches for a field based on key
and sets its value directly. For the key "lastName", this would be _lastName
,
_isLastName
, lastName
, or isLastName
. value
argument is not compatible with the underlying field or method parameter, the default implementation will make an effort to convert between different Java numeric types (Integer, Double, BigDecimal, etc) as well as between Boolean and Number (true =
1, false = 0). If any other conversion would be necessary, an exception is thrown. handleTakeValueForUnboundKey
if the object implements NSKeyValueCoding.ErrorHandling or throws NSKeyValueCoding.UnknownKeyException if the object does not.Note: : The default implementations have significant performance optimizations. To benefit from them, implement NSKeyValueCoding on a custom class as shown above by using the methods in NSKeyValueCoding. DefaultImplementation, or if your class inherits from an WebObjects class that implements NSKeyValueCoding, do not override the inherited implementation. Using a custom implementation incurs significant performance penalties.
takeValueForKey
in interface NSKeyValueCoding
value
- the new value for the property named by key
key
- identifies the property to changeNSKeyValueCoding.NullValue
,
NSKeyValueCoding.valueForKey
,
NSKeyValueCoding.DefaultImplementation
,
NSKeyValueCoding.ErrorHandling
,
NSKeyValueCoding.ErrorHandling.handleTakeValueForUnboundKey(java.lang.Object, java.lang.String)
public Object handleQueryWithUnboundKey(String key)
NSKeyValueCoding.ErrorHandling
valueForKey
when it finds no property binding for key
. The default implementation throws an NSKeyValueCoding.UnknownKeyException, with the target object(TargetObjectUserInfoKey)
and key(UnknownUserInfokey)
in the
user info. An NSKeyValueCoding.ErrorHandling class can override this method to handle the query in some other way. The method can return a value, in which case that value is returned by the corresponding valueForKey
invocation.
handleQueryWithUnboundKey
in interface NSKeyValueCoding.ErrorHandling
key
- the property name which generated this error
null
that the custom implementation desires. The default implementation throws an exception instead.NSKeyValueCoding.valueForKey
,
NSKeyValueCoding.UnknownKeyException
,
NSKeyValueCoding.DefaultImplementation
public void handleTakeValueForUnboundKey(Object value, String key)
NSKeyValueCoding.ErrorHandling
takeValueForKey
when it finds no property binding for key
. The default implementation throws an NSKeyValueCoding.UnknownKeyException, with the target object(TargetObjectUserInfoKey)
and key(UnknownUserInfoKey)
in
the user info dictionary of the exception. An NSKeyValueCoding.ErrorHandling class can override this method to handle the error in some other way.
handleTakeValueForUnboundKey
in interface NSKeyValueCoding.ErrorHandling
value
- the new value which could not be setkey
- the name of the property which generated this errorNSKeyValueCoding.takeValueForKey
,
NSKeyValueCoding.UnknownKeyException
,
NSKeyValueCoding.DefaultImplementation
public void unableToSetNullForKey(String key)
NSKeyValueCoding.ErrorHandling
takeValueForKey
when it is given a null
value for a scalar property (such as an int
or a float
). The default implementation throws an IllegalArgumentException
. You might want to implement the method
(or override the inherited implementation) to handle the request in some other way, such as by substituting new Integer(0)
or a sentinel value and invoking takeValueForKey
again.
unableToSetNullForKey
in interface NSKeyValueCoding.ErrorHandling
key
- the name of the property which generated this errorNSKeyValueCoding.takeValueForKey
,
NSKeyValueCoding.DefaultImplementation
public String toString()
toString
in class Object
|
Last updated June 2008 | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |