question: public void formListDownloadingComplete ( HashMap < String , FormDetails > result ) { dismissDialog ( PROGRESS_DIALOG ) ; mDownloadFormListTask . setDownloaderListener ( null ) ; mDownloadFormListTask = null ; if ( result == null ) { Log . e ( t , "Formlist Downloading returned null.  That shouldn't happen" ) ; createAlertDialog ( getString ( R . string . load_remote_form_error ) , getString ( R . string . error_occured ) , EXIT ) ; return ; } if ( result . containsKey ( DownloadFormListTask . DL_AUTH_REQUIRED ) ) { showDialog ( AUTH_DIALOG ) ; } else if ( result . containsKey ( DownloadFormListTask . DL_ERROR_MSG ) ) { String dialogMessage = getString ( R . string . list_failed_with_error , result . get ( DownloadFormListTask . DL_ERROR_MSG ) . errorStr ) ; String dialogTitle = getString ( R . string . load_remote_form_error ) ; createAlertDialog ( dialogTitle , dialogMessage , DO_NOT_EXIT ) ; } else { mFormNamesAndURLs = result ; mFormList . clear ( ) ; ArrayList < String > ids = new ArrayList < String > ( mFormNamesAndURLs . keySet ( ) ) ; for ( int i = 0 ; i < result . size ( ) ; i ++ ) { String formDetailsKey = ids . get ( i ) ; FormDetails details = mFormNamesAndURLs . get ( formDetailsKey ) ; HashMap < String , String > item = new HashMap < String , String > ( ) ; item . put ( FORMNAME , details . formName ) ; item . put ( FORMID_DISPLAY , ( ( details . formVersion == null ) ? "" : ( getString ( R . string . version ) + " " + details . formVersion + " " ) ) + "ID: " + details . formID ) ; item . put ( FORMDETAIL_KEY , formDetailsKey ) ; if ( mFormList . size ( ) == 0 ) { mFormList . add ( item ) ; } else { int j ; for ( j = 0 ; j < mFormList . size ( ) ; j ++ ) { HashMap < String , String > compareMe = mFormList . get ( j ) ; String name = compareMe . get ( FORMNAME ) ; if ( name . compareTo ( mFormNamesAndURLs . get ( ids . get ( i ) ) . formName ) > 0 ) { break ; } } mFormList . add ( j , item ) ; } } mFormListAdapter . notifyDataSetChanged ( ) ; } }
target:  Called when the form list has finished downloading. results will either contain a set of <formname, formdetails> tuples, or one tuple of DL.ERROR.MSG and the associated message.