@Test void autoDetection() throws Exception { final ZooKeeperReplicationConfig cfg = Jackson.readValue( '{' + " \"method\": \"ZOOKEEPER\"," + " \"servers\": {" + " \"1\": {" + " \"host\": \"127.0.0.1\"," + " \"quorumPort\": 100," + " \"electionPort\": 101" + " }," + " \"2\": {" + " \"host\": \"255.255.255.255\"," + " \"quorumPort\": 200," + " \"electionPort\": 201" + " }" + " }" + '}', ZooKeeperReplicationConfig.class); assertThat(cfg.serverId()).isEqualTo(1); }
@JsonProperty public int serverId() { return serverId; }
ZooKeeperReplicationConfig implements ReplicationConfig { @JsonProperty public int serverId() { return serverId; } }
ZooKeeperReplicationConfig implements ReplicationConfig { @JsonProperty public int serverId() { return serverId; } ZooKeeperReplicationConfig(int serverId, Map<Integer, ZooKeeperAddress> servers); @VisibleForTesting  ZooKeeperReplicationConfig(
            int serverId, Map<Integer, ZooKeeperAddress> servers, String secret,
            Map<String, String> additionalProperties,
            int timeoutMillis, int numWorkers, int maxLogCount, long minLogAgeMillis); @JsonCreator  ZooKeeperReplicationConfig(@JsonProperty("serverId") @Nullable Integer serverId,
                               @JsonProperty(value = "servers", required = true)
                               @JsonDeserialize(keyAs = Integer.class, contentAs = ZooKeeperAddress.class)
                               Map<Integer, ZooKeeperAddress> servers,
                               @JsonProperty("secret") @Nullable String secret,
                               @JsonProperty("additionalProperties")
                               @JsonDeserialize(keyAs = String.class, contentAs = String.class)
                               @Nullable Map<String, String> additionalProperties,
                               @JsonProperty("timeoutMillis") @Nullable Integer timeoutMillis,
                               @JsonProperty("numWorkers") @Nullable Integer numWorkers,
                               @JsonProperty("maxLogCount") @Nullable Integer maxLogCount,
                               @JsonProperty("minLogAgeMillis") @Nullable Long minLogAgeMillis); }
ZooKeeperReplicationConfig implements ReplicationConfig { @JsonProperty public int serverId() { return serverId; } ZooKeeperReplicationConfig(int serverId, Map<Integer, ZooKeeperAddress> servers); @VisibleForTesting  ZooKeeperReplicationConfig(
            int serverId, Map<Integer, ZooKeeperAddress> servers, String secret,
            Map<String, String> additionalProperties,
            int timeoutMillis, int numWorkers, int maxLogCount, long minLogAgeMillis); @JsonCreator  ZooKeeperReplicationConfig(@JsonProperty("serverId") @Nullable Integer serverId,
                               @JsonProperty(value = "servers", required = true)
                               @JsonDeserialize(keyAs = Integer.class, contentAs = ZooKeeperAddress.class)
                               Map<Integer, ZooKeeperAddress> servers,
                               @JsonProperty("secret") @Nullable String secret,
                               @JsonProperty("additionalProperties")
                               @JsonDeserialize(keyAs = String.class, contentAs = String.class)
                               @Nullable Map<String, String> additionalProperties,
                               @JsonProperty("timeoutMillis") @Nullable Integer timeoutMillis,
                               @JsonProperty("numWorkers") @Nullable Integer numWorkers,
                               @JsonProperty("maxLogCount") @Nullable Integer maxLogCount,
                               @JsonProperty("minLogAgeMillis") @Nullable Long minLogAgeMillis); @Override ReplicationMethod method(); @JsonProperty int serverId(); ZooKeeperAddress serverAddress(); @JsonProperty Map<Integer, ZooKeeperAddress> servers(); String secret(); @JsonProperty Map<String, String> additionalProperties(); @JsonProperty int timeoutMillis(); @JsonProperty int numWorkers(); @JsonProperty int maxLogCount(); @JsonProperty long minLogAgeMillis(); @Override int hashCode(); @Override boolean equals(Object obj); @Override String toString(); }
ZooKeeperReplicationConfig implements ReplicationConfig { @JsonProperty public int serverId() { return serverId; } ZooKeeperReplicationConfig(int serverId, Map<Integer, ZooKeeperAddress> servers); @VisibleForTesting  ZooKeeperReplicationConfig(
            int serverId, Map<Integer, ZooKeeperAddress> servers, String secret,
            Map<String, String> additionalProperties,
            int timeoutMillis, int numWorkers, int maxLogCount, long minLogAgeMillis); @JsonCreator  ZooKeeperReplicationConfig(@JsonProperty("serverId") @Nullable Integer serverId,
                               @JsonProperty(value = "servers", required = true)
                               @JsonDeserialize(keyAs = Integer.class, contentAs = ZooKeeperAddress.class)
                               Map<Integer, ZooKeeperAddress> servers,
                               @JsonProperty("secret") @Nullable String secret,
                               @JsonProperty("additionalProperties")
                               @JsonDeserialize(keyAs = String.class, contentAs = String.class)
                               @Nullable Map<String, String> additionalProperties,
                               @JsonProperty("timeoutMillis") @Nullable Integer timeoutMillis,
                               @JsonProperty("numWorkers") @Nullable Integer numWorkers,
                               @JsonProperty("maxLogCount") @Nullable Integer maxLogCount,
                               @JsonProperty("minLogAgeMillis") @Nullable Long minLogAgeMillis); @Override ReplicationMethod method(); @JsonProperty int serverId(); ZooKeeperAddress serverAddress(); @JsonProperty Map<Integer, ZooKeeperAddress> servers(); String secret(); @JsonProperty Map<String, String> additionalProperties(); @JsonProperty int timeoutMillis(); @JsonProperty int numWorkers(); @JsonProperty int maxLogCount(); @JsonProperty long minLogAgeMillis(); @Override int hashCode(); @Override boolean equals(Object obj); @Override String toString();  }