Class ListTable

    • Constructor Detail

      • ListTable

        public ListTable​(String id,
                         String description,
                         Collection<Column<?>> columns)
        Constructor.
        Parameters:
        id - String; id
        description - String; description
        columns - Collection<Column<?>>; columns
    • Method Detail

      • iterator

        public Iterator<Record> iterator()


        It is imperative that the user manually synchronize on the returned list when traversing it via Iterator, Spliterator or Stream when there is a risk of adding records while traversing the iterator:
          List list = Collections.synchronizedList(new ArrayList());
              ...
          synchronized (list) 
          {
              Iterator i = list.iterator(); // Must be in synchronized block
              while (i.hasNext())
                  foo(i.next());
          }
         
        Failure to follow this advice may result in non-deterministic behavior.

      • isEmpty

        public boolean isEmpty()
        Returns whether the table is empty.
        Returns:
        whether the table is empty
      • addRecord

        public void addRecord​(Map<Column<?>,​Object> data)
        Adds a record to the table.
        Parameters:
        data - Map<String, Object>; data with values given per column
        Throws:
        IllegalArgumentException - when the size or data types in the data map do not comply to the columns
      • addRecordByColumnIds

        public void addRecordByColumnIds​(Map<String,​Object> data)
        Adds a record to the table.
        Parameters:
        data - Map<String, Object>; data with values given per column id
        Throws:
        IllegalArgumentException - when the size or data types in the data map do not comply to the columns
      • addRecord

        public void addRecord​(Object[] data)
        Adds a record to the table. The order in which the elements in the array are offered should be the same as the order of the columns.
        Parameters:
        data - Object[]; record data
        Throws:
        IllegalArgumentException - when the size, order or data types in the Object[] do not comply to the columns