question: shuts down the componentrunner and all components . concode_field_sep ExceptionProcessor exproc concode_elem_sep HashMap<String,AbstractComponent> components concode_elem_sep ComponentRunner instance concode_elem_sep boolean end concode_elem_sep Logger logger concode_elem_sep HashMap<String,String> variables concode_elem_sep ConfigurationReaderIF config concode_elem_sep String VERSION concode_elem_sep ClassLoader defaultLoader concode_field_sep void overrideComponentID concode_elem_sep boolean componentExists concode_elem_sep HashMap getGlobalVariables concode_elem_sep String getGlobalVariable concode_elem_sep void main concode_elem_sep void destroyComponent concode_elem_sep String getLogFile concode_elem_sep void registerServlet concode_elem_sep String replaceVariables concode_elem_sep void setGlobalVariable concode_elem_sep ComponentRunner getInstance concode_elem_sep ComponentRunner getInstance concode_elem_sep AbstractComponent getComponent concode_elem_sep AbstractComponent createComponent
target: void function ( ) { ArrayList < String > loc0 = new ArrayList < String > ( components . keySet ( ) ) ; Iterator loc1 = loc0 . iterator ( ) ; while ( loc1 . hasNext ( ) ) { String loc2 = ( String ) loc1 . next ( ) ; logger . info ( "srini_string" + loc2 ) ; destroyComponent ( loc2 ) ; } instance = null ; System . gc ( ) ; }