public StandardLeaderElector()

in iep-leader-api/src/main/java/com/netflix/iep/leader/StandardLeaderElector.java [80:108]


  public StandardLeaderElector(
      LeaderId leaderId,
      LeaderDatabase leaderDatabase,
      Config config,
      Registry registry,
      Map<ResourceId, LeaderId> resourceLeaders,
      Id leaderRemovalsCounterId,
      Id resourceLeaderGaugeId,
      Id resourceWithNoLeaderGaugeId
  ) {
    Objects.requireNonNull(leaderId, "leaderId");
    Objects.requireNonNull(leaderDatabase, "dbTable");
    Objects.requireNonNull(config, "config");
    Objects.requireNonNull(registry, "registry");
    Objects.requireNonNull(resourceLeaders, "resourceLeaders");
    Objects.requireNonNull(leaderRemovalsCounterId, "leaderRemovalsCounterId");
    Objects.requireNonNull(resourceLeaderGaugeId, "resourceLeaderGaugeId");
    Objects.requireNonNull(resourceWithNoLeaderGaugeId, "resourceWithNoLeaderGaugeId");

    this.leaderId = leaderId;
    this.leaderDatabase = leaderDatabase;
    this.config = config;
    this.registry = registry;
    this.resourceLeaders = new ConcurrentHashMap<>(resourceLeaders); // defensive copy

    this.leaderRemovalsCounterId = leaderRemovalsCounterId;
    this.resourceLeaderGaugeId = resourceLeaderGaugeId;
    this.resourceWithNoLeaderGaugeId = resourceWithNoLeaderGaugeId;
  }