Class ArrayItem

java.lang.Object
org.rumbledb.items.ArrayItem
All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable, Serializable, Item

public class ArrayItem extends Object implements Item
See Also:
  • Constructor Details

    • ArrayItem

      public ArrayItem()
    • ArrayItem

      public ArrayItem(List<Item> arrayItems)
  • Method Details

    • equals

      public boolean equals(Object otherItem)
      Description copied from interface: Item
      Tests for logical equality. The semantics are that of the eq operator.
      Specified by:
      equals in interface Item
      Overrides:
      equals in class Object
      Parameters:
      otherItem - another item.
      Returns:
      true it is equal to other, false otherwise.
    • isArray

      public boolean isArray()
      Description copied from interface: Item
      Tests whether the item is an array.
      Specified by:
      isArray in interface Item
      Returns:
      true if it is an array, false otherwise.
    • isArrayOfItems

      public boolean isArrayOfItems()
      Description copied from interface: Item
      Tests whether the item is an array of items. Arrays of items are arrays whose members are singletons.
      Specified by:
      isArrayOfItems in interface Item
      Returns:
      true if it is an array of items, false otherwise.
    • getSize

      public int getSize()
      Description copied from interface: Item
      Returns the size of the item, if it is an array.
      Specified by:
      getSize in interface Item
      Returns:
      the size as an int.
    • getItems

      @Deprecated public List<Item> getItems()
      Deprecated.
      Description copied from interface: Item
      Returns the members of the item if it is an array.
      Specified by:
      getItems in interface Item
      Returns:
      the list of the array members.
    • getItemMembers

      public List<Item> getItemMembers()
      Description copied from interface: Item
      Returns the members of the item, if it is an array.
      Specified by:
      getItemMembers in interface Item
      Returns:
      the list of the members.
    • getSequenceMembers

      public List<List<Item>> getSequenceMembers()
      Description copied from interface: Item
      Returns the member sequences of the item, if it is an array.
      Specified by:
      getSequenceMembers in interface Item
      Returns:
      the list of the members.
    • getItemAt

      public Item getItemAt(int position) throws ArrayIndexOutOfBoundsException
      Description copied from interface: Item
      Returns the member of the item at the specified position if it is an array.
      Specified by:
      getItemAt in interface Item
      Parameters:
      position - the position of the member.
      Returns:
      the member.
      Throws:
      ArrayIndexOutOfBoundsException - if the position is out of bounds.
      ArrayIndexOutOfBoundsException
    • getSequenceAt

      public List<Item> getSequenceAt(int position) throws ArrayIndexOutOfBoundsException
      Description copied from interface: Item
      Returns the member of the item at the specified position if it is an array.
      Specified by:
      getSequenceAt in interface Item
      Parameters:
      position - the position of the member.
      Returns:
      the member.
      Throws:
      ArrayIndexOutOfBoundsException - if the position is out of bounds.
      ArrayIndexOutOfBoundsException
    • append

      public void append(Item item)
      Description copied from interface: Item
      Appends an item to the item, if it is an array.
      Specified by:
      append in interface Item
      Parameters:
      item - the item to append.
    • appendItem

      public void appendItem(Item item)
      Description copied from interface: Item
      Appends an item to the item, if it is an array.
      Specified by:
      appendItem in interface Item
      Parameters:
      item - the item to append.
    • appendSequence

      public void appendSequence(List<Item> sequence) throws OurBadException
      Description copied from interface: Item
      Appends a sequence to the item, if it is an array.
      Specified by:
      appendSequence in interface Item
      Parameters:
      sequence - the sequence to append.
      Throws:
      OurBadException - if the member is a non-singleton sequence and the array does not support non-singleton members.
    • putItemAt

      public void putItemAt(Item item, int index)
      Description copied from interface: Item
      Puts an item at the given index, if it is an array.
      Specified by:
      putItemAt in interface Item
      Parameters:
      item - the item to put.
      index - the index to put the item at.
    • putSequenceAt

      public void putSequenceAt(List<Item> sequence, int index) throws OurBadException
      Description copied from interface: Item
      Puts a sequence at the given index, if it is an array.
      Specified by:
      putSequenceAt in interface Item
      Parameters:
      sequence - the sequence to put.
      index - the index to put the sequence at.
      Throws:
      OurBadException - if the member is a non-singleton sequence and the array does not support non-singleton members.
    • putItemsAt

      public void putItemsAt(List<Item> items, int i)
      Description copied from interface: Item
      Add all items in items at index i, if it is an array.
      Specified by:
      putItemsAt in interface Item
      Parameters:
      items - a list of items.
      i - an integer.
    • putSequencesAt

      public void putSequencesAt(List<List<Item>> sequences, int index) throws OurBadException
      Description copied from interface: Item
      Puts sequences at the given index, if it is an array.
      Specified by:
      putSequencesAt in interface Item
      Parameters:
      sequences - the sequences to put.
      index - the index to put the sequence at.
      Throws:
      OurBadException - if any member is a non-singleton sequence and the array does not support non-singleton members.
    • removeItemAt

      public void removeItemAt(int index)
      Description copied from interface: Item
      Removes the item at the given index, if it is an array.
      Specified by:
      removeItemAt in interface Item
      Parameters:
      index - the index to remove the item at.
    • removeSequenceAt

      public void removeSequenceAt(int index)
      Description copied from interface: Item
      Removes the sequence at the given index, if it is an array.
      Specified by:
      removeSequenceAt in interface Item
      Parameters:
      index - the index to remove the sequence at.
    • write

      public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output)
      Specified by:
      write in interface com.esotericsoftware.kryo.KryoSerializable
    • read

      public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input)
      Specified by:
      read in interface com.esotericsoftware.kryo.KryoSerializable
    • hashCode

      public int hashCode()
      Description copied from interface: Item
      Computes a hash code.
      Specified by:
      hashCode in interface Item
      Overrides:
      hashCode in class Object
      Returns:
      a hash code as an int.
    • getDynamicType

      public ItemType getDynamicType()
      Description copied from interface: Item
      Returns the dynamic type of the item (only for error message purposes).
      Specified by:
      getDynamicType in interface Item
      Returns:
      the dynamic type as an item type.
    • getEffectiveBooleanValue

      public boolean getEffectiveBooleanValue()
      Description copied from interface: Item
      Returns the effective boolean value of the item, if atomic.
      Specified by:
      getEffectiveBooleanValue in interface Item
      Returns:
      the effective boolean value.
    • getMutabilityLevel

      public int getMutabilityLevel()
      Description copied from interface: Item
      Returns the mutability level of the item.
      Specified by:
      getMutabilityLevel in interface Item
      Returns:
      an int representing nestedness of the item inside transform expressions.
    • setMutabilityLevel

      public void setMutabilityLevel(int mutabilityLevel)
      Description copied from interface: Item
      Sets the mutability level of the item to a supplied value.
      Specified by:
      setMutabilityLevel in interface Item
      Parameters:
      mutabilityLevel - new mutability level.
    • getTopLevelID

      public long getTopLevelID()
      Description copied from interface: Item
      Returns the top level ID of the item.
      Specified by:
      getTopLevelID in interface Item
      Returns:
      int representing the rowID of the item within a DeltaFile.
    • setTopLevelID

      public void setTopLevelID(long topLevelID)
      Description copied from interface: Item
      Sets the top level ID of the item to a supplied value.
      Specified by:
      setTopLevelID in interface Item
      Parameters:
      topLevelID - new top level ID.
    • getPathIn

      public String getPathIn()
      Description copied from interface: Item
      Returns the path from the top level object of a DeltaFile for the item.
      Specified by:
      getPathIn in interface Item
      Returns:
      String representing the path of the item from the top level within a DeltaFile.
    • setPathIn

      public void setPathIn(String pathIn)
      Description copied from interface: Item
      Sets the path from the top level object of a DeltaFile for the item to a supplied value.
      Specified by:
      setPathIn in interface Item
      Parameters:
      pathIn - new path from top level.
    • getTableLocation

      public String getTableLocation()
      Description copied from interface: Item
      Returns the location of the DeltaFile for the item.
      Specified by:
      getTableLocation in interface Item
      Returns:
      String representing the location of the DeltaFile for the item.
    • setTableLocation

      public void setTableLocation(String location)
      Description copied from interface: Item
      Sets the location of the DeltaFile for the item to a supplied value.
      Specified by:
      setTableLocation in interface Item
      Parameters:
      location - new location of the DeltaFile for the item.
    • getSparkSQLValue

      public String getSparkSQLValue()
      Description copied from interface: Item
      Returns the SparkSQL value of the item for use in a query.
      Specified by:
      getSparkSQLValue in interface Item
      Returns:
      String representing the SparkSQL value of the item.
    • getSparkSQLValue

      public String getSparkSQLValue(ItemType itemType)
      Description copied from interface: Item
      Returns the SparkSQL value of the item for use in a query.
      Specified by:
      getSparkSQLValue in interface Item
      Returns:
      String representing the SparkSQL value of the item.
    • getSparkSQLType

      public String getSparkSQLType()
      Description copied from interface: Item
      Returns the SparkSQL type of the item for use in a query.
      Specified by:
      getSparkSQLType in interface Item
      Returns:
      String representing the SparkSQL type of the item.
    • atomizedValue

      public List<Item> atomizedValue()
      Description copied from interface: Item
      XDM 3.1 Section 5.12 string-value Accessor. dm:string-value($n as node()) as xs:string "The dm:string-value accessor returns the string-value of the node as defined for each node kind." In this API, node string values are exposed via getStringValue() and the default implementation of dm:typed-value delegates to atomizedValue().
      Specified by:
      atomizedValue in interface Item
    • getStringValue

      public String getStringValue()
      Description copied from interface: Item
      Returns the string value of the item, if it is an atomic item.
      Specified by:
      getStringValue in interface Item
      Returns:
      the string value.
    • getVariantValue

      public Object getVariantValue()
      Description copied from interface: Item
      Returns the Object containing the converted value of the item for a DataFrame. For use to build Variant columns.
      Specified by:
      getVariantValue in interface Item
      Returns:
      Object representing the converted value of the item.
    • setCollection

      public void setCollection(Collection collection)
      Description copied from interface: Item
      Sets the collection to which the item belongs. Only defined for top-level items.
      Specified by:
      setCollection in interface Item
      Parameters:
      collection - the collection.
    • getCollection

      public Collection getCollection()
      Description copied from interface: Item
      Returns the collection to which the item belongs, if any. Only defined for top-level items.
      Specified by:
      getCollection in interface Item
      Returns:
      the collection.