Package org.rumbledb.items
Class LazyObjectItem
java.lang.Object
org.rumbledb.items.LazyObjectItem
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable,Serializable,Item
- See Also:
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanTests for logical equality.Returns the dynamic type of the item (only for error message purposes).booleanReturns the effective boolean value of the item, if atomic.getItemByKey(String key) Returns the value item associated with a specific key, if it is a map.getItemByKey(Item key) Returns the value item associated with a specific key, if it is an object.Returns the (possibly non-string) atomic keys of the item, if it is a map-like object.Returns the values of the item, if it is a map.getKeys()Returns the string keys of the item, if it is a map.getSequenceByKey(String key) Returns the value sequence associated with a string key, if it is a map.getSequenceByKey(Item key) Returns the value sequence associated with a key, if it is a map-like object.Returns the value sequences of the item, if it is a map.Returns the string keys of the item, if it is a map.Returns the string value of the item, if it is an atomic item.Returns the values of the item, if it is a map.inthashCode()Computes a hash code.booleanisMap()Tests whether the item is a map.booleanisObject()Tests whether the item is an object.voidputItemByKey(String key, Item value) Adds a key-value pair, if it is a map.voidputItemByKey(Item key, Item value) Adds a key-value pair, if it is a map.voidputLazyItemByKey(String key, RuntimeIterator iterator, DynamicContext context, boolean isArray) Adds a key-value pair, if it is a lazy object item.voidputSequenceByKey(String key, List<Item> valueSequence) Adds a key-sequence pair, if it is a map.voidputSequenceByKey(Item key, List<Item> valueSequence) Adds a key-sequence pair, if it is a map.voidread(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) voidremoveItemByKey(String key) Removes a key-value pair, if it is a map.voidremoveItemByKey(Item key) Removes a key-value pair, if it is a map.voidwrite(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.rumbledb.api.Item
addParentToDescendants, append, appendItem, appendSequence, atomizedValue, attributes, baseUri, castToDecimalValue, castToDoubleValue, castToFloatValue, castToIntegerValue, castToIntValue, children, declaredNamespaceNodes, documentUri, generateNativeQuery, getBinaryValue, getBodyIterator, getBooleanValue, getCollection, getContent, getDateTimeValue, getDay, getDecimalValue, getDFVariablesInClosure, getDoubleValue, getDurationValue, getEpochMillis, getEstimator, getFloatValue, getHour, getIdentifier, getIntegerValue, getIntValue, getItemAt, getItemMembers, getItems, getLocalVariablesInClosure, getMinute, getModuleDynamicContext, getMonth, getMutabilityLevel, getNanosecond, getOffset, getParameterNames, getPathIn, getPeriodValue, getQNameValue, getRDDVariablesInClosure, getSecond, getSequenceAt, getSequenceMembers, getSignature, getSize, getSparkSQLType, getSparkSQLValue, getSparkSQLValue, getTableLocation, getTextValue, getTimeValue, getTopLevelID, getTopLevelOrder, getTransformer, getVariantValue, getXmlDocumentPosition, getYear, hasDateTime, hasTimeZone, isAnyURI, isArray, isArrayOfItems, isAtomic, isAttributeNode, isBase64Binary, isBinary, isBoolean, isBuiltinFunction, isCommentNode, isDate, isDateTime, isDayTimeDuration, isDecimal, isDocumentNode, isDouble, isDuration, isElementNode, isEstimator, isFloat, isFunction, isGDay, isGMonth, isGMonthDay, isGYear, isGYearMonth, isHexBinary, isId, isIdrefs, isInt, isInteger, isNamespaceNode, isNaN, isNode, isNull, isNumeric, isPeriod, isProcessingInstructionNode, isQName, isString, isTextNode, isTime, isTransformer, isUntypedAtomic, isYearMonthDuration, namespaceNodes, nilled, nodeKind, nodeName, parent, physicalEquals, putItemAt, putItemsAt, putSequenceAt, putSequencesAt, removeItemAt, removeSequenceAt, serialize, serializeAsJSON, setCollection, setMutabilityLevel, setParent, setPathIn, setTableLocation, setTopLevelID, setTopLevelOrder, setXmlDocumentPosition, typedValue, typeName, unparsedEntityPublicId, unparsedEntitySystemId
-
Constructor Details
-
LazyObjectItem
public LazyObjectItem()
-
-
Method Details
-
equals
Description copied from interface:ItemTests for logical equality. The semantics are that of the eq operator. -
isMap
public boolean isMap()Description copied from interface:ItemTests whether the item is a map. -
isObject
public boolean isObject()Description copied from interface:ItemTests whether the item is an object. Object items are legacy JSONiq objects, that allow only for - string keys - singleton values -
getKeys
Description copied from interface:ItemReturns the string keys of the item, if it is a map. -
getStringKeys
Description copied from interface:ItemReturns the string keys of the item, if it is a map.- Specified by:
getStringKeysin interfaceItem- Returns:
- a list of strings, corresponding to the keys of the map.
-
getItemKeys
Description copied from interface:ItemReturns the (possibly non-string) atomic keys of the item, if it is a map-like object.- Specified by:
getItemKeysin interfaceItem- Returns:
- the list of atomic keys as items.
-
getValues
Description copied from interface:ItemReturns the values of the item, if it is a map. -
getItemValues
Description copied from interface:ItemReturns the values of the item, if it is a map.- Specified by:
getItemValuesin interfaceItem- Returns:
- a list containing, for each key in the map, the item associated with that key.
-
getSequenceValues
Description copied from interface:ItemReturns the value sequences of the item, if it is a map.- Specified by:
getSequenceValuesin interfaceItem- Returns:
- a list containing, for each key in the map, the sequence of items associated with that key.
-
getItemByKey
Description copied from interface:ItemReturns the value item associated with a specific key, if it is a map.- Specified by:
getItemByKeyin interfaceItem- Parameters:
key- a string key.- Returns:
- the item associated with the key, or null if absent.
-
getItemByKey
Description copied from interface:ItemReturns the value item associated with a specific key, if it is an object.- Specified by:
getItemByKeyin interfaceItem- Parameters:
key- a key item.- Returns:
- the item associated with the key, or null if absent.
-
getSequenceByKey
Description copied from interface:ItemReturns the value sequence associated with a string key, if it is a map.- Specified by:
getSequenceByKeyin interfaceItem- Parameters:
key- a string key.- Returns:
- the value sequence for the key, or null if absent.
-
getSequenceByKey
Description copied from interface:ItemReturns the value sequence associated with a key, if it is a map-like object.- Specified by:
getSequenceByKeyin interfaceItem- Parameters:
key- an atomic key item.- Returns:
- the value sequence for the key, or null if absent.
-
putItemByKey
Description copied from interface:ItemAdds a key-value pair, if it is a map.- Specified by:
putItemByKeyin interfaceItem- Parameters:
key- a key.value- a value.
-
putItemByKey
Description copied from interface:ItemAdds a key-value pair, if it is a map.- Specified by:
putItemByKeyin interfaceItem- Parameters:
key- an atomic key.value- a value.
-
putSequenceByKey
Description copied from interface:ItemAdds a key-sequence pair, if it is a map.- Specified by:
putSequenceByKeyin interfaceItem- Parameters:
key- an atomic key.valueSequence- a value sequence.
-
putSequenceByKey
Description copied from interface:ItemAdds a key-sequence pair, if it is a map.- Specified by:
putSequenceByKeyin interfaceItem- Parameters:
key- an atomic key.valueSequence- a value sequence.
-
removeItemByKey
Description copied from interface:ItemRemoves a key-value pair, if it is a map.- Specified by:
removeItemByKeyin interfaceItem- Parameters:
key- a key.
-
removeItemByKey
Description copied from interface:ItemRemoves a key-value pair, if it is a map.- Specified by:
removeItemByKeyin interfaceItem- Parameters:
key- an atomic key.
-
putLazyItemByKey
public void putLazyItemByKey(String key, RuntimeIterator iterator, DynamicContext context, boolean isArray) Description copied from interface:ItemAdds a key-value pair, if it is a lazy object item. The value is lazily computed.- Specified by:
putLazyItemByKeyin interfaceItem- Parameters:
key- a key.iterator- a runtime iterator.context- a dynamic context.isArray- whether to always wrap the result in an array.
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
writein interfacecom.esotericsoftware.kryo.KryoSerializable
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
readin interfacecom.esotericsoftware.kryo.KryoSerializable
-
hashCode
public int hashCode()Description copied from interface:ItemComputes a hash code. -
getDynamicType
Description copied from interface:ItemReturns the dynamic type of the item (only for error message purposes).- Specified by:
getDynamicTypein interfaceItem- Returns:
- the dynamic type as an item type.
-
getStringValue
Description copied from interface:ItemReturns the string value of the item, if it is an atomic item.- Specified by:
getStringValuein interfaceItem- Returns:
- the string value.
-
getEffectiveBooleanValue
public boolean getEffectiveBooleanValue()Description copied from interface:ItemReturns the effective boolean value of the item, if atomic.- Specified by:
getEffectiveBooleanValuein interfaceItem- Returns:
- the effective boolean value.
-