public synchronized long size ( final DataSource source ) throws DataSourceException { if ( data == null ) { if ( getReference ( ) == null ) { throw new IllegalStateException ( "No data or reference present" ) ; } else { return source . getDataSize ( getReference ( ) ) ; } } else { return data . length ; } }
Determine the size of the data .