question: public < T > GridClientFutureAdapter < T > chain ( GridClientFutureCallback < R , T > cb ) { GridClientFutureAdapter < T > fut = new GridClientFutureAdapter < > ( ) ; cbs . add ( new DoneCallback < > ( cb , null , fut ) ) ; if ( isDone ( ) ) fireDone ( ) ; return fut ; }
target:  Creates future's chain and completes chained future, when this future finishes.