com.tibbo.aggregate.common.datatable

## Class ProxyDataTable

- java.lang.Object
- - com.tibbo.aggregate.common.datatable.AbstractDataTable
  - - com.tibbo.aggregate.common.datatable.AbstractBigDataTable
    - - com.tibbo.aggregate.common.datatable.AbstractUnmodifiableDataTable
      - - com.tibbo.aggregate.common.datatable.ProxyDataTable

- All Implemented Interfaces:
    DataTable, AttributedObject, PublicCloneable, StringEncodable, java.lang.Cloneable, java.lang.Iterable<DataRecord>

      public class ProxyDataTable
      extends AbstractUnmodifiableDataTable

- - ### Field Summary

    - ### Fields inherited from class com.tibbo.aggregate.common.datatable.AbstractDataTable

      `DEFAULT_FORMAT, ELEMENT_ID`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProxyDataTable(ElementList elements, ClassicEncodingSettings settings, boolean validate, AggreGateDeviceController controller)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `close()`
    `java.lang.String` | `dataAsString(boolean showFieldNames, boolean showHiddenFields, boolean showPasswords)`
    `boolean` | `equals(java.lang.Object obj)`
    `java.lang.Integer` | `findIndex(DataTableQuery query)`
    `Context` | `getFunctionContext()`
    `DataRecord` | `getRecord(int number)` Returns record with specified index.
    `int` | `hashCode()`
    `boolean` | `isOneCellTable()` Returns true if table has exactly one record and one field.
    `java.util.Iterator<DataRecord>` | `iterator()`
    `java.util.Iterator<DataRecord>` | `iterator(int index)`
    `void` | `setFunctionContext(Context functionContext)`
    `void` | `setId(java.lang.Long id)` Sets table ID (even if the table is immutable) if it has not been already set to a non-null Long.
    `void` | `splitFormat()`
    `java.lang.String` | `toDefaultString()`

    - ### Methods inherited from class com.tibbo.aggregate.common.datatable.AbstractUnmodifiableDataTable

      `addRecord, addRecord, addRecord, addRecord, removeRecordImpl, removeRecords, reorderRecord, setRecord, sort, sort`

    - ### Methods inherited from class com.tibbo.aggregate.common.datatable.AbstractBigDataTable

      `clone, compareTo, decrementRecordCount, getRecordCount, incrementRecordCount, isSimple, makeImmutable, setRecordCount, toSimpleDataTable`

    - ### Methods inherited from class com.tibbo.aggregate.common.datatable.AbstractDataTable

      `addRecords, append, applyCachedFormat, cloneIfImmutable, conform, conformMessage, dataAsString, dataAsString, encode, encode, encode, encode, findIndex, findIndex, fixRecords, get, getDescription, getEncodedData, getEncodedData, getFieldCount, getFormat, getFormat, getFormat, getId, getInvalidationMessage, getQuality, getRecordById, getRecords, getTimestamp, getValue, hasField, isImmutable, isInvalid, joinFormats, rec, removeRecord, removeRecordsByIds, select, select, selectAll, setFormat, setInvalidationMessage, setQuality, setTimestamp, sort, stream, swapRecords, toString, validate, validateRecord`

    - ### Methods inherited from class java.lang.Object

      `finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### ProxyDataTable

          public ProxyDataTable(ElementList elements,
                                ClassicEncodingSettings settings,
                                boolean validate,
                                AggreGateDeviceController controller)
                         throws DataTableException

      Throws:
        `DataTableException`

  - ### Method Detail

    - #### setId

          public void setId(java.lang.Long id)

      Description copied from class: `AbstractBigDataTable`
      Sets table ID (even if the table is immutable) if it has not been already set to a non-null Long.
      Specified by:
        `setId` in interface `DataTable`
      Overrides:
        `setId` in class `AbstractBigDataTable`

    - #### splitFormat

          public void splitFormat()

      Specified by:
        `splitFormat` in interface `DataTable`
      Overrides:
        `splitFormat` in class `AbstractDataTable`

    - #### getRecord

          public DataRecord getRecord(int number)

      Returns record with specified index.

    - #### equals

          public boolean equals(java.lang.Object obj)

      Specified by:
        `equals` in interface `DataTable`
      Overrides:
        `equals` in class `java.lang.Object`

    - #### hashCode

          public int hashCode()

      Specified by:
        `hashCode` in interface `DataTable`
      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### toDefaultString

          public java.lang.String toDefaultString()

    - #### dataAsString

          public java.lang.String dataAsString(boolean showFieldNames,
                                               boolean showHiddenFields,
                                               boolean showPasswords)

    - #### isOneCellTable

          public boolean isOneCellTable()

      Returns true if table has exactly one record and one field.

    - #### findIndex

          public java.lang.Integer findIndex(DataTableQuery query)

    - #### iterator

          public java.util.Iterator<DataRecord> iterator()

    - #### iterator

          public java.util.Iterator<DataRecord> iterator(int index)

    - #### getFunctionContext

          public Context getFunctionContext()

    - #### setFunctionContext

          public void setFunctionContext(Context functionContext)

    - #### close

          public void close()

      Specified by:
        `close` in interface `DataTable`
      Overrides:
        `close` in class `AbstractDataTable`