Package de.esoco.data.element
Klasse QueryResultElement<T>
java.lang.Object
de.esoco.lib.property.AbstractStringProperties
de.esoco.lib.property.StringProperties
de.esoco.data.element.DataElement<List<T>>
de.esoco.data.element.ListDataElement<T>
de.esoco.data.element.QueryResultElement<T>
- Alle implementierten Schnittstellen:
de.esoco.lib.model.DataModel<T>
,de.esoco.lib.property.HasProperties
,de.esoco.lib.property.MutableProperties
,Serializable
,Iterable<T>
A data element that contains the result of the execution of a storage query.
The resulting query rows are encoded in a list of strings which are in turn
contained in a list of all rows for a certain query result. The easiest way
to process the result rows is by iterating over the result because it
implements the
Iterable
interface. Besides the query rows this class
also allows to query the full size of the executed query by invoking the
method getQuerySize()
.
Query results are always readonly.
- Siehe auch:
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen de.esoco.data.element.DataElement
DataElement.CopyMode, DataElement.Flag
-
Feldübersicht
Von Klasse geerbte Felder de.esoco.data.element.DataElement
ALLOWED_VALUES_CHANGED, ANONYMOUS_ELEMENT_PREFIX, DISPLAY_FLAGS, HIDDEN_URL, INPUT_FLAGS, INTERACTION_URL, ITEM_ALL_RESOURCE, ITEM_NEW_RESOURCE, ITEM_RESOURCE_PREFIX, PATH_SEPARATOR_CHAR, SERVER_PROPERTIES
-
Konstruktorübersicht
KonstruktorBeschreibungQueryResultElement
(String name, List<T> rows, int querySize) Creates a new instance for a certain query result. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungcopy
(DataElement.CopyMode mode, de.esoco.lib.property.PropertyName<?>... copyProperties) Returns a copy of this data element that contains all or a subset of it's current state.getList()
Returns the list.final int
Returns the full query size for the query represented by this result.protected QueryResultElement
<T> Returns a new instance of the respective data element sub-type on which it is invoked.protected void
updateValue
(List<T> newRows) Updates the element value.Von Klasse geerbte Methoden de.esoco.data.element.ListDataElement
addAll, addAllowedValues, addElement, addElement, clear, containsElement, copyValue, getAllowedValues, getElement, getElementCount, getElementIndex, getElements, getElementValidator, getValue, getValueHashCode, hasEqualValueAs, iterator, removeElement, toString
Von Klasse geerbte Methoden de.esoco.data.element.DataElement
checkImmutable, checkValidValue, copyAttributes, createItemName, createItemResource, createResourceId, equals, getName, getParent, getPath, getResourceId, getRoot, getSimpleName, getValidator, hashCode, init, isImmutable, isModified, isOptional, isSelected, isValidValue, markAsChanged, readFrom, removeProperty, setModified, setProperty, setSelected, setStringValue, setValidator, setValue, toDebugString, valuesEqual, writeTo
Von Klasse geerbte Methoden de.esoco.lib.property.StringProperties
clearFlag, clearProperties, setFlag, setProperties, setProperty, setProperty
Von Klasse geerbte Methoden de.esoco.lib.property.AbstractStringProperties
convertCollection, convertMap, convertValue, ensurePropertyMapExists, findValue, getIntProperty, getProperty, getPropertyCount, getPropertyMap, getPropertyNames, hasEqualProperties, hasFlag, hasProperty, parseCollection, parseMap, parseValue, setPropertyMap
Von Klasse geerbte Methoden java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Von Schnittstelle geerbte Methoden de.esoco.lib.property.HasProperties
getIntProperty, getProperty, getPropertyCount, getPropertyNames, hasFlag, hasProperty
Von Schnittstelle geerbte Methoden java.lang.Iterable
forEach, spliterator
-
Konstruktordetails
-
QueryResultElement
Creates a new instance for a certain query result.- Parameter:
name
- The element namerows
- A list containing lists of strings that contains the the query rowsquerySize
- The full size of the query represented by this result
-
-
Methodendetails
-
copy
public QueryResultElement<T> copy(DataElement.CopyMode mode, de.esoco.lib.property.PropertyName<?>... copyProperties) Returns a copy of this data element that contains all or a subset of it's current state. Always copied are the name andflags
. Never copied is the parent reference because upon copying typically a reference to a copied parent needs to be set. The further data the copy contains depends on the copy mode:DataElement.CopyMode.FULL
: The copy contains all data (except the parent reference).DataElement.CopyMode.FLAT
: likeDataElement.CopyMode.FULL
but without sub-ordinate data elements.DataElement.CopyMode.PROPERTIES
: The copy contains only the properties but not the element value and attributes.DataElement.CopyMode.PLACEHOLDER
: The copy contains only the element name to serve as a placeholder.
The copy instance is created by invoking
DataElement.newInstance()
which has the recommendation to overwrite the return type to the concrete subtype to prevent the need for casting by the invoking code. For the same reason it is recommended that subclasses also override this method with the concrete return type and cast the result ofsuper.copy()
to that type.- Setzt außer Kraft:
copy
in KlasseDataElement<List<T>>
- Parameter:
mode
- The copy modecopyProperties
- An optional list of properties to copy. If not provided all properties will be copied (unless the mode isDataElement.CopyMode.PLACEHOLDER
)- Gibt zurück:
- The copied instance
-
getQuerySize
public final int getQuerySize()Returns the full query size for the query represented by this result.- Gibt zurück:
- The full query size
-
getList
Returns the list.- Angegeben von:
getList
in KlasseListDataElement<T>
- Gibt zurück:
- The list
-
newInstance
Returns a new instance of the respective data element sub-type on which it is invoked. This is needed for GWT which doesn't support reflection. Used byDataElement.copy(CopyMode, PropertyName...)
for cloning an instance. Implementations should overwrite the return type with their concrete type to prevent the need for casting by the invoking code.- Angegeben von:
newInstance
in KlasseDataElement<List<T>>
- Gibt zurück:
- The new instance
-
updateValue
Updates the element value. Will be invoked byDataElement.setValue(Object)
to store a new value after validation. If a subclass wants to reject certain values it should do so in theDataElement.isValidValue(Validator, Object)
method. Subclasses that are always immutable should implement an assertion because if the element has been initialized correctly (validator = NULL) this method should then be reached.- Angegeben von:
updateValue
in KlasseDataElement<List<T>>
- Parameter:
newRows
- The new value for this element
-