Source:
<code>static LifecycleComponentStack buildAutoRecoveryServer(BookieConfiguration conf) throws Exception { LifecycleComponentStack.Builder serverBuilder = LifecycleComponentStack.newBuilder() .withName("autorecovery-server"); StatsProviderService statsProviderService = new StatsProviderService(conf); StatsLogger rootStatsLogger = statsProviderService.getStatsProvider().getStatsLogger(""); serverBuilder.addComponent(statsProviderService); LOG.info("Load lifecycle component : {}", StatsProviderService.class.getName()); AutoRecoveryService autoRecoveryService = new AutoRecoveryService(conf, rootStatsLogger); serverBuilder.addComponent(autoRecoveryService); LOG.info("Load lifecycle component : {}", AutoRecoveryService.class.getName()); if (conf.getServerConf().isHttpServerEnabled()) { BKHttpServiceProvider provider = new BKHttpServiceProvider.Builder() .setAutoRecovery(autoRecoveryService.getAutoRecoveryServer()) .setServerConfiguration(conf.getServerConf()) .setStatsProvider(statsProviderService.getStatsProvider()).build(); HttpService httpService = new HttpService(provider, conf, rootStatsLogger); serverBuilder.addComponent(httpService); LOG.info("Load lifecycle component : {}", HttpService.class.getName()); } <START> String[] extraComponents = conf.getServerConf().getExtraServerComponents(); <END> if (null != extraComponents) { try { List<ServerLifecycleComponent> components = loadServerComponents(extraComponents, conf, rootStatsLogger); for (ServerLifecycleComponent component : components) { serverBuilder.addComponent(component); LOG.info("Load lifecycle component : {}", component.getClass().getName()); } } catch (Exception e) { if (conf.getServerConf().getIgnoreExtraServerComponentsStartupFailures()) { LOG.info("Failed to load extra components '{}' - {}. Continuing without those components.", StringUtils.join(extraComponents), e.getMessage()); } else { throw e; } } } return serverBuilder.build(); }</code><technical_language>Is this list of extra components for bookie</technical_language>

Target:
public static LifecycleComponentStack buildAutoRecoveryServer(BookieConfiguration conf) throws Exception { LifecycleComponentStack.Builder serverBuilder = LifecycleComponentStack.newBuilder() .withName("autorecovery-server"); StatsProviderService statsProviderService = new StatsProviderService(conf); StatsLogger rootStatsLogger = statsProviderService.getStatsProvider().getStatsLogger(""); serverBuilder.addComponent(statsProviderService); LOG.info("Load lifecycle component : {}", StatsProviderService.class.getName()); AutoRecoveryService autoRecoveryService = new AutoRecoveryService(conf, rootStatsLogger); serverBuilder.addComponent(autoRecoveryService); LOG.info("Load lifecycle component : {}", AutoRecoveryService.class.getName()); if (conf.getServerConf().isHttpServerEnabled()) { BKHttpServiceProvider provider = new BKHttpServiceProvider.Builder() .setAutoRecovery(autoRecoveryService.getAutoRecoveryServer()) .setServerConfiguration(conf.getServerConf()) .setStatsProvider(statsProviderService.getStatsProvider()).build(); HttpService httpService = new HttpService(provider, conf, rootStatsLogger); serverBuilder.addComponent(httpService); LOG.info("Load lifecycle component : {}", HttpService.class.getName()); } return serverBuilder.build(); }