protected void
    buildseqtypes(Variable cdmvar)
            throws DapException
    {
        if (CDMUtil.hasVLEN(cdmvar)) {
            buildseqtype(cdmvar);
        }
        if (cdmvar.getDataType() == DataType.STRUCTURE
                || cdmvar.getDataType() == DataType.SEQUENCE) {
            Structure struct = (Structure) cdmvar;
            List<Variable> fields = struct.getVariables();
            for (int i = 0; i < fields.size(); i++) {
                Variable field = fields.get(i);
                buildseqtypes(field); // recurse for inner vlen dims
            }
        }
    }
protected void
    buildseqtypes(Variable cdmvar)
            throws DapException
    {
        if (CDMUtil.hasVLEN(cdmvar)) {
            buildseqtype(cdmvar);
        }
        if (cdmvar.getDataType() == DataType.STRUCTURE
                || cdmvar.getDataType() == DataType.SEQUENCE) {
            Structure struct = (Structure) cdmvar;
            List<Variable> fields = struct.getVariables();
            for (int i = 0; i < fields.size(); i++) {
                Variable field = fields.get(i);
                buildseqtypes(field); 
            }
        }
    }
protected void buildseqtypes ( Variable cdmvar ) throws DapException { if ( CDMUtil . hasVLEN ( cdmvar ) ) { buildseqtype ( cdmvar ) ; } if ( cdmvar . getDataType ( ) == DataType . STRUCTURE || cdmvar . getDataType ( ) == DataType . SEQUENCE ) { Structure struct = ( Structure ) cdmvar ; List < Variable > fields = struct . getVariables ( ) ; for ( int i = 0 ; i < fields . size ( ) ; i ++ ) { Variable field = fields . get ( i ) ; buildseqtypes ( field ) ; // recurse for inner vlen dims } } }
Walk this variable, including fields, to construct sequence types
for any contained vlen dimensions

@param cdmvar variable to walk
Walk this variable including fields to construct sequence types for any contained vlen dimensions