Throw illegalargumentexception instead of nullpointerexception for builder errors

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
This commit is contained in:
Jason A. Donenfeld
2018-12-11 02:28:34 +01:00
parent c1ba1f409c
commit 266ee7626c
3 changed files with 10 additions and 3 deletions
@@ -35,12 +35,14 @@ public final class Peer {
private final Key publicKey;
private Peer(final Builder builder) {
if (builder.publicKey == null)
throw new IllegalArgumentException("Peers must have a public key");
// Defensively copy to ensure immutability even if the Builder is reused.
allowedIps = Collections.unmodifiableSet(new LinkedHashSet<>(builder.allowedIps));
endpoint = builder.endpoint;
persistentKeepalive = builder.persistentKeepalive;
preSharedKey = builder.preSharedKey;
publicKey = Objects.requireNonNull(builder.publicKey, "Peers must have a public key");
publicKey = builder.publicKey;
}
/**