com.h3c.api

## Interface TransportObject<T,I extends Serializable>

- Type Parameters:
    `T` - Type of the Transport Object
    `I` - This is the type of the transportable's row key (primary key). It should be an immutable type and must implement equals() and hashCode() correctly. *
  All Superinterfaces:
    Serializable
  All Known Implementing Classes:
    AbstractTransportObject

      public interface TransportObject<T,I extends Serializable>
      extends Serializable

  `TransportObject` is a contract between the business logic and the DAO. This provides the ability for the transport object to carry data between application layers and tiers. The transport objects could have well defined fields as in relational database world or the object could just have an abstract Hash map or both. The hash map for transport objects is introduced to leverage the schema-less design of nosql databases. The implementation of this interface supports a hybrid object that contains a few well defined fields. If there are columns that need to be added/deleted in a dynamic fashion, the extension in the form of hash map should be used.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `<E extends T> Id<E,I>` | `getId()` The Identification for this object.

- - ### Method Detail

    - #### getId

          <E extends T> Id<E,I> getId()

      The Identification for this object. For example, assume `Employee` extends from `Person` and `Person` implements `TransportObject<Person, Long>`. The following code would be possible.

           Id<Person, Long> id = employee.getId();
           Id<Employee, Long> id = employee.getId();

      Returns:
        The object identification. This is the row key as mentioned above.

Copyright © 2014. All Rights Reserved.