public synchronized SpiderMonitor register ( Spider ... spiders ) throws JMException { for ( Spider spider : spiders ) { MonitorSpiderListener monitorSpiderListener = new MonitorSpiderListener ( ) ; if ( spider . getSpiderListeners ( ) == null ) { List < SpiderListener > spiderListeners = new ArrayList < SpiderListener > ( ) ; spiderListeners . add ( monitorSpiderListener ) ; spider . setSpiderListeners ( spiderListeners ) ; } else { spider . getSpiderListeners ( ) . add ( monitorSpiderListener ) ; } SpiderStatusMXBean spiderStatusMBean = getSpiderStatusMBean ( spider , monitorSpiderListener ) ; registerMBean ( spiderStatusMBean ) ; spiderStatuses . add ( spiderStatusMBean ) ; } return this ; }
Register spider for monitor .