com.tietoenator.trip.jxp.data

## Class TdbComponent

- java.lang.Object
- - com.tietoenator.trip.jxp.data.TdbComponent

-     public class TdbComponent
      extends java.lang.Object

  Container for a particular component of a record, i.e. either the head or a specific part record.

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `TdbField` | `createField(java.lang.String name, TdbFieldType type)` Create a new field instance This factory method creates a TdbField-derived object of the appropriate class and associates the new instance with this component.
    `TdbField` | `createField(TdbFieldDesign design)` Create a new field instance This factory method creates a TdbField-derived object of the appropriate class and associates the new instance with this component.
    `void` | `deleteField(java.lang.String name)` Delete the value of a named field Note that after a successful use of this method, the component still contains the named field, but the value of the field is empty.
    `java.util.Collection<java.lang.String>` | `fieldNames()` Retrieve a collection of field names from within the component.
    `java.util.Collection<TdbField>` | `fields()` Retrieve a collection of fields from within the component.
    `boolean` | `getClearOnCommit()` Check whether the component should be cleared during a commit.
    `TdbField` | `getField(java.lang.String name)` Retrieve the value of a named field
    `int` | `getId()` Retrieve the component's ID; this is zero for the head component.
    `java.lang.String` | `getName()` Retrieve the current value of the part name field (only valid for part components, obviously).
    `TdbRecord` | `getOwnerRecord()` Retrieve a reference to the TdbRecord within which this component exists
    `void` | `setClearOnCommit(boolean clear)` Establish whether the component should be cleared during a commit.
    `void` | `setField(java.lang.String name, TdbField field)` Set the value of a named field
    `void` | `setName(java.lang.String name)` Establish, or modify, the value of the part name field (only valid for part components, obviously).

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

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getId

          public int getId()

      Retrieve the component's ID; this is zero for the head component.
      Returns:
        The component's ID

    - #### fields

          public java.util.Collection<TdbField> fields()

      Retrieve a collection of fields from within the component. Each element of the collection is of a type implementing TdbField. Use the getType() method on each item to retrieve its TRIP field type.
      Returns:
        The collection of fields

    - #### fieldNames

          public java.util.Collection<java.lang.String> fieldNames()

      Retrieve a collection of field names from within the component.
      Returns:
        The collection of field names

    - #### getOwnerRecord

          public TdbRecord getOwnerRecord()

      Retrieve a reference to the TdbRecord within which this component exists
      Returns:
        The containing record

    - #### getName

          public java.lang.String getName()
                                   throws TdbException

      Retrieve the current value of the part name field (only valid for part components, obviously). This method will throw an exception if the database design with which the component is associated does not contain a part name field.
      Returns:
        The value of the part name field
      Throws:
        `TdbException`

    - #### setName

          public void setName(java.lang.String name)
                       throws TdbException

      Establish, or modify, the value of the part name field (only valid for part components, obviously). This method will throw an exception if the database design with which the component is associated does not contain a part name field.
      Parameters:
        `name` - The new value of the part name field
      Throws:
        `TdbException`

    - #### getClearOnCommit

          public boolean getClearOnCommit()

      Check whether the component should be cleared during a commit.
      By default, components are not cleared during an update, i.e. only the fields that are included within the commit operation are modified by that operation, any other fields within that component are left unmodified. If this flag is set true, however, then the component is first cleared before new content is added. Note that this only has effect when updating an existing record.
      Returns:
        The current value of the clear-on-commit flag

    - #### setClearOnCommit

          public void setClearOnCommit(boolean clear)

      Establish whether the component should be cleared during a commit.
      By default, components are not cleared during an update, i.e. only the fields that are included within the commit operation are modified by that operation, any other fields within that component are left unmodified. If this flag is set true, however, then the component is first cleared before new content is added. Note that this only has effect when updating an existing record.
      Parameters:
        `clear` - The new value of the clear-on-commit flag

    - #### getField

          public TdbField getField(java.lang.String name)

      Retrieve the value of a named field
      Parameters:
        `name` - Name of field to retrieve
      Returns:
        The appropriate field instance, or null if not found; this field instance is "live" and can be modified as required.

    - #### setField

          public void setField(java.lang.String name,
                               TdbField field)

      Set the value of a named field
      Parameters:
        `name` - Name of field to store/overwrite
        `field` - Field instance

    - #### deleteField

          public void deleteField(java.lang.String name)

      Delete the value of a named field
      Note that after a successful use of this method, the component still contains the named field, but the value of the field is empty. When the component is written to the server, the field in the database will be deleted at that time.
      Parameters:
        `name` - Name of field to delete

    - #### createField

          public TdbField createField(TdbFieldDesign design)
                               throws TdbException

      Create a new field instance
      This factory method creates a TdbField-derived object of the appropriate class and associates the new instance with this component.
      Parameters:
        `design` - The design of the field to create
      Returns:
        A new object that implements the TdbField interface
      Throws:
        `TdbException`

    - #### createField

          public TdbField createField(java.lang.String name,
                                      TdbFieldType type)
                               throws TdbException

      Create a new field instance
      This factory method creates a TdbField-derived object of the appropriate class and associates the new instance with this component.
      Parameters:
        `name` - Name of field to create
        `type` - Type of field to create
      Returns:
        A new object that implements the TdbField interface
      Throws:
        `TdbException`