public MirroringCollectionsHandler()

in crossdc-producer/src/main/java/org/apache/solr/handler/admin/MirroringCollectionsHandler.java [57:80]


  public MirroringCollectionsHandler(CoreContainer coreContainer, KafkaMirroringSink sink) {
    super(coreContainer);
    log.info("Using MirroringCollectionsHandler.");
    Map<String, Object> properties = new HashMap<>();
    try {
      SolrZkClient solrClient = coreContainer.getZkController() != null ? coreContainer.getZkController().getZkClient() : null;
      ConfUtil.fillProperties(solrClient, properties);
      ConfUtil.verifyProperties(properties);
      KafkaCrossDcConf conf = new KafkaCrossDcConf(properties);
      String mirrorCollections = conf.get(KafkaCrossDcConf.MIRROR_COLLECTIONS);
      if (mirrorCollections != null && !mirrorCollections.isBlank()) {
        List<String> list = StrUtils.splitSmart(mirrorCollections, ',');
        collections.addAll(list);
      }
      if (sink == null) {
        this.sink = new KafkaMirroringSink(conf);
      } else {
        this.sink = sink;
      }
    } catch (Exception e) {
      log.error("Exception configuring Kafka sink - mirroring disabled!", e);
      this.sink = null;
    }
  }