From cb7725482af2ad55631c5a0f770ee047c6cf44a8 Mon Sep 17 00:00:00 2001 From: Shaheen Gandhi Date: Tue, 17 Mar 2026 16:24:14 -0700 Subject: [PATCH] Use instanceof pattern matching for call ID extraction Replace explicit null check and Number cast with instanceof pattern matching in AcceptCallCommand, HangupCallCommand, and RejectCallCommand. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../java/org/asamk/signal/commands/AcceptCallCommand.java | 5 ++--- .../java/org/asamk/signal/commands/HangupCallCommand.java | 5 ++--- .../java/org/asamk/signal/commands/RejectCallCommand.java | 5 ++--- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/asamk/signal/commands/AcceptCallCommand.java b/src/main/java/org/asamk/signal/commands/AcceptCallCommand.java index f39fbea3..66d16140 100644 --- a/src/main/java/org/asamk/signal/commands/AcceptCallCommand.java +++ b/src/main/java/org/asamk/signal/commands/AcceptCallCommand.java @@ -35,11 +35,10 @@ public class AcceptCallCommand implements JsonRpcLocalCommand { final Manager m, final OutputWriter outputWriter ) throws CommandException { - final var callIdNumber = ns.get("call-id"); - if (callIdNumber == null) { + if (!(ns.get("call-id") instanceof Number callIdNumber)) { throw new UserErrorException("No call ID given"); } - final long callId = ((Number) callIdNumber).longValue(); + final long callId = callIdNumber.longValue(); try { var callInfo = m.acceptCall(callId); diff --git a/src/main/java/org/asamk/signal/commands/HangupCallCommand.java b/src/main/java/org/asamk/signal/commands/HangupCallCommand.java index 5278d4d9..35149b4d 100644 --- a/src/main/java/org/asamk/signal/commands/HangupCallCommand.java +++ b/src/main/java/org/asamk/signal/commands/HangupCallCommand.java @@ -33,11 +33,10 @@ public class HangupCallCommand implements JsonRpcLocalCommand { final Manager m, final OutputWriter outputWriter ) throws CommandException { - final var callIdNumber = ns.get("call-id"); - if (callIdNumber == null) { + if (!(ns.get("call-id") instanceof Number callIdNumber)) { throw new UserErrorException("No call ID given"); } - final long callId = ((Number) callIdNumber).longValue(); + final long callId = callIdNumber.longValue(); try { m.hangupCall(callId); diff --git a/src/main/java/org/asamk/signal/commands/RejectCallCommand.java b/src/main/java/org/asamk/signal/commands/RejectCallCommand.java index cc730e57..24cedcd4 100644 --- a/src/main/java/org/asamk/signal/commands/RejectCallCommand.java +++ b/src/main/java/org/asamk/signal/commands/RejectCallCommand.java @@ -33,11 +33,10 @@ public class RejectCallCommand implements JsonRpcLocalCommand { final Manager m, final OutputWriter outputWriter ) throws CommandException { - final var callIdNumber = ns.get("call-id"); - if (callIdNumber == null) { + if (!(ns.get("call-id") instanceof Number callIdNumber)) { throw new UserErrorException("No call ID given"); } - final long callId = ((Number) callIdNumber).longValue(); + final long callId = callIdNumber.longValue(); try { m.rejectCall(callId);