public BaseType getVariable ( int row , String name ) throws NoSuchVariableException { int dotIndex = name . indexOf ( ' ' ) ; if ( dotIndex != - 1 ) { // name contains "." String aggregate = name . substring ( 0 , dotIndex ) ; String field = name . substring ( dotIndex + 1 ) ; BaseType aggRef = getVariable ( aggregate ) ; if ( aggRef instanceof DConstructor ) return ( ( DConstructor ) aggRef ) . getVariable ( field ) ; // recurse else ; // fall through to throw statement } else { Vector selectedRow = ( Vector ) allValues . elementAt ( row ) ; for ( Enumeration e = selectedRow . elements ( ) ; e . hasMoreElements ( ) ; ) { BaseType v = ( BaseType ) e . nextElement ( ) ; if ( v . getEncodedName ( ) . equals ( name ) ) return v ; } } throw new NoSuchVariableException ( "DSequence: getVariable()" ) ; }
Returns the named variable in the given row of the sequence .