private void updateMeta ( ) { meta = new BundleMeta ( ) ; BundleMeta origmeta = source . getMeta ( ) ; for ( int i = 0 ; i < origmeta . size ( ) ; i ++ ) { SimpleTypeInformation < ? > type = origmeta . get ( i ) ; if ( column < 0 ) { // Test whether this type matches if ( TypeUtil . NUMBER_VECTOR_VARIABLE_LENGTH . isAssignableFromType ( type ) ) { if ( type instanceof VectorFieldTypeInformation ) { @ SuppressWarnings ( "unchecked" ) final VectorFieldTypeInformation < V > castType = ( VectorFieldTypeInformation < V > ) type ; if ( dim != - 1 && castType . mindim ( ) > dim ) { throw new AbortException ( "Would filter all vectors: minimum dimensionality " + castType . mindim ( ) + " > desired dimensionality " + dim ) ; } if ( dim != - 1 && castType . maxdim ( ) < dim ) { throw new AbortException ( "Would filter all vectors: maximum dimensionality " + castType . maxdim ( ) + " < desired dimensionality " + dim ) ; } if ( dim == - 1 ) { dim = castType . mindim ( ) ; } if ( castType . mindim ( ) == castType . maxdim ( ) ) { meta . add ( castType ) ; column = i ; continue ; } } @ SuppressWarnings ( "unchecked" ) final VectorTypeInformation < V > castType = ( VectorTypeInformation < V > ) type ; if ( dim != - 1 ) { meta . add ( new VectorFieldTypeInformation <> ( FilterUtil . guessFactory ( castType ) , dim , dim , castType . getSerializer ( ) ) ) ; } else { LOG . warning ( "No dimensionality yet for column " + i ) ; meta . add ( castType ) ; } column = i ; continue ; } } meta . add ( type ) ; } }
Update metadata .