void readMeta ( ) { final int check = buffer . getInt ( ) ; if ( check != MAGIC ) { throw new AbortException ( "File does not start with expected magic." ) ; } final int nummeta = buffer . getInt ( ) ; assert ( nummeta > 0 ) : "Empty bundle?" ; meta = new BundleMeta ( nummeta ) ; sers = new ByteBufferSerializer < ? > [ nummeta ] ; data = new Object [ nummeta ] ; for ( int i = 0 ; i < nummeta ; i ++ ) { try { @ SuppressWarnings ( "unchecked" ) SimpleTypeInformation < ? extends Object > type = ( SimpleTypeInformation < ? extends Object > ) TypeInformationSerializer . STATIC . fromByteBuffer ( buffer ) ; sers [ i ] = type . getSerializer ( ) ; if ( i == 0 && DBID . class . isAssignableFrom ( type . getRestrictionClass ( ) ) ) { hasids = true ; } else { meta . add ( type ) ; } } catch ( UnsupportedOperationException e ) { throw new AbortException ( "Deserialization failed: " + e . getMessage ( ) , e ) ; } catch ( IOException e ) { throw new AbortException ( "IO error" , e ) ; } } }
Read the metadata .