IOUtil.writeStr( dos, column.getDriverProvidedDataType( ) .getName( ) );
if ( column.getDriverProvidedDataType( ) == null ) IOUtil.writeStr( dos, null ); else IOUtil.writeStr( dos, column.getDriverProvidedDataType( ) .getName( ) );
	public void doSave( OutputStream outputStream ) throws DataException	{		assert outputStream != null;				DataOutputStream dos = new DataOutputStream( outputStream );				int size = m_projectedColumns.size( );		try		{			IOUtil.writeInt( outputStream, size );			for ( int i = 0; i < size; i++ )			{				ResultFieldMetadata column = (ResultFieldMetadata) m_projectedColumns.get( i );				IOUtil.writeInt( dos, column.getDriverPosition( ) );				IOUtil.writeStr( dos, column.getName( ) );				IOUtil.writeStr( dos, column.getLabel( ) );				IOUtil.writeStr( dos, column.getAlias( ) );				IOUtil.writeStr( dos, column.getDataType( ).getName( ) );				IOUtil.writeStr( dos, column.getNativeTypeName( ) );				IOUtil.writeBool( dos, column.isCustom( ) );				IOUtil.writeStr( dos, column.getDriverProvidedDataType( )						.getName( ) );			}						dos.close( );		}		catch ( IOException e )		{			throw new DataException( ResourceConstants.RD_SAVE_ERROR,					e,					"Result Class" );		}	}