rem: saveJunkMsgForAction(aMsgHdr.folder.server, aMsgURI, aClassification); aNextFunction(); 
add:  if (aClassification == nsIJunkMailPlugin.JUNK) aJunkMsgIndices.push(aMsgIndex);  if (aLastMessage) { gJunkmailComponent.endBatch(); performActionsOnJunkMsgs(aJunkMsgIndices); } 
context:         onMessageClassified: function(aMsgURI, aClassification)        {            // XXX todo            // update status bar, or a progress dialog            // running junk mail controls manually, on a large folder            // can take a while, and the user doesn't know when we are done.            dump(aMsgURI + ' is '                  + (aClassification == nsIJunkMailPlugin.JUNK                    ? 'JUNK' : 'GOOD') + '\n');            // XXX TODO, make the cut off 50, like in nsMsgSearchTerm.cpp            var score =                 aClassification == nsIJunkMailPlugin.JUNK ? "100" : "0";            // set these props via the db (instead of the message header            // directly) so that the nsMsgDBView knows to update the UI            //            var db = aMsgHdr.folder.getMsgDatabase(msgWindow);            db.setStringProperty(aMsgHdr.messageKey, "junkscore", score);            db.setStringProperty(aMsgHdr.messageKey, "junkscoreorigin",                                  "plugin");            saveJunkMsgForAction(aMsgHdr.folder.server, aMsgURI, aClassification);            aNextFunction();        }
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/ffbd23982cbb7e55730f670015cbf27f1fc8c55c/mailCommands.js/clean/mailnews/base/resources/content/mailCommands.js