com.h3c.util.dao.query

## Class DaoGetFullNestedDependentQuery<I extends Serializable,P extends Storable<I> & Dependable<E>,T extends Transportable<? super T,I> & Dependent<R>,E extends Serializable,W extends Storable<E> & Dependable<H>,R extends Transportable<? super R,E> & Dependent<N>,H extends Serializable,M extends Storable<H>,N extends Transportable<? super N,H>>

- java.lang.Object
- - com.h3c.util.dao.ReadQuery<T>
  - - com.h3c.util.dao.query.DaoGetFullNestedDependentQuery<I,P,T,E,W,R,H,M,N>

- Type Parameters:
    `I` - type of the persistent object and transport object id. This type should be immutable. It is critical this type implements equals() and hashCode() correctly.
    `P` - type of the persistent object.
    `T` - type of the transport object with a reference to the owner.
    `E` - type of the owner persistent object and owner transport object id. This type should be immutable. It is critical this type implements equals() and hashCode() correctly.
    `W` - type of the owner persistent object.
    `R` - type of the owner transport object.
    `H` - type of the owner's owner (or root owner) persistent object and transport object id. This type should be immutable. It is critical this type implements equals() and hashCode() correctly.
    `M` - type of the root owner persistent object.
    `N` - type of the root owner transport object.

      public class DaoGetFullNestedDependentQuery<I extends Serializable,P extends Storable<I> & Dependable<E>,T extends Transportable<? super T,I> & Dependent<R>,E extends Serializable,W extends Storable<E> & Dependable<H>,R extends Transportable<? super R,E> & Dependent<N>,H extends Serializable,M extends Storable<H>,N extends Transportable<? super N,H>>
      extends ReadQuery<T>

  Query to get a dependent transport object from the database. This query assumes the owner is also a dependent and its owner is accessed by using a `Dao`.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static <I extends Serializable,P extends Storable<I> & Dependable<E>,T extends Transportable<? super T,I> & Dependent<R>,E extends Serializable,W extends Storable<E> & Dependable<H>,R extends Transportable<? super R,E> & Dependent<N>,H extends Serializable,M extends Storable<H>,N extends Transportable<? super N,H>> ReadQuery<T>` | `createQuery(Id<T,I> id, BidirectionalDependentDao<I,P,T,?,?,?,E,W,R> dao, BidirectionalDependentDao<E,W,R,?,?,?,H,M,N> ownerDao, Dao<H,M,N,?,?> rootOwnerDao)` Creates a query.
    `protected T` | `execute(DataStoreContext context)` Executes the query.

    - ### Methods inherited from class com.h3c.util.dao.ReadQuery

      `execute`

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

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

- - ### Method Detail

    - #### createQuery

          public static <I extends Serializable,P extends Storable<I> & Dependable<E>,T extends Transportable<? super T,I> & Dependent<R>,E extends Serializable,W extends Storable<E> & Dependable<H>,R extends Transportable<? super R,E> & Dependent<N>,H extends Serializable,M extends Storable<H>,N extends Transportable<? super N,H>> ReadQuery<T> createQuery(Id<T,I> id,
                                                                                                                                                                                                                                                                                                                                                   BidirectionalDependentDao<I,P,T,?,?,?,E,W,R> dao,
                                                                                                                                                                                                                                                                                                                                                   BidirectionalDependentDao<E,W,R,?,?,?,H,M,N> ownerDao,
                                                                                                                                                                                                                                                                                                                                                   Dao<H,M,N,?,?> rootOwnerDao)

      Creates a query.

      This method is a convenience to infer the generic types.

      Parameters:
        `id` - transport object's id.
        `dao` - DAO used to perform the database operations for the query.
        `ownerDao` - owner DAO.
        `rootOwnerDao` - root owner DAO (the owner's owner).
      Returns:
        a query to add a transport object.

    - #### execute

          protected T execute(DataStoreContext context)

      Description copied from class: `ReadQuery`
      Executes the query.
      Specified by:
        `execute` in class `ReadQuery<T extends Transportable<? super T,I> & Dependent<R>>`
      Parameters:
        `context` - data store context.
      Returns:
        the result of the query.

Copyright © 2014. All Rights Reserved.