From f5ab05acdc36c2d7fc1275334cea0285a0c5cf49 Mon Sep 17 00:00:00 2001 From: mykola2312 <49044616+mykola2312@users.noreply.github.com> Date: Tue, 15 Oct 2024 08:37:39 +0300 Subject: [PATCH] make base class for bencode related errors --- .../retracker/bencode/error/BDecodeError.java | 2 +- .../retracker/bencode/error/BError.java | 16 ++++++++++++++++ .../retracker/bencode/error/BErrorNoRoot.java | 9 +++++++++ .../retracker/bencode/error/BValueError.java | 2 +- 4 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/mykola2312/retracker/bencode/error/BError.java create mode 100644 src/main/java/com/mykola2312/retracker/bencode/error/BErrorNoRoot.java diff --git a/src/main/java/com/mykola2312/retracker/bencode/error/BDecodeError.java b/src/main/java/com/mykola2312/retracker/bencode/error/BDecodeError.java index d22d393..d5b3b98 100644 --- a/src/main/java/com/mykola2312/retracker/bencode/error/BDecodeError.java +++ b/src/main/java/com/mykola2312/retracker/bencode/error/BDecodeError.java @@ -1,6 +1,6 @@ package com.mykola2312.retracker.bencode.error; -public class BDecodeError extends Exception { +public class BDecodeError extends BError { private static final long serialVersionUID = 4282658520481186036L; public byte[] data; diff --git a/src/main/java/com/mykola2312/retracker/bencode/error/BError.java b/src/main/java/com/mykola2312/retracker/bencode/error/BError.java new file mode 100644 index 0000000..edae7f8 --- /dev/null +++ b/src/main/java/com/mykola2312/retracker/bencode/error/BError.java @@ -0,0 +1,16 @@ +package com.mykola2312.retracker.bencode.error; + +/* A base type, all bencode related errors are + * derived from this class for easy try-catching + */ +public class BError extends Exception { + private static final long serialVersionUID = 1626675512183720021L; + + public BError(String message) { + super(message); + } + + public BError(String message, Throwable cause) { + super(message, cause); + } +} diff --git a/src/main/java/com/mykola2312/retracker/bencode/error/BErrorNoRoot.java b/src/main/java/com/mykola2312/retracker/bencode/error/BErrorNoRoot.java new file mode 100644 index 0000000..8ea6d1d --- /dev/null +++ b/src/main/java/com/mykola2312/retracker/bencode/error/BErrorNoRoot.java @@ -0,0 +1,9 @@ +package com.mykola2312.retracker.bencode.error; + +public class BErrorNoRoot extends BError { + private static final long serialVersionUID = -7691652539624483490L; + + public BErrorNoRoot() { + super("BTree has no root"); + } +} diff --git a/src/main/java/com/mykola2312/retracker/bencode/error/BValueError.java b/src/main/java/com/mykola2312/retracker/bencode/error/BValueError.java index 6b577fd..ea16ddc 100644 --- a/src/main/java/com/mykola2312/retracker/bencode/error/BValueError.java +++ b/src/main/java/com/mykola2312/retracker/bencode/error/BValueError.java @@ -2,7 +2,7 @@ package com.mykola2312.retracker.bencode.error; import com.mykola2312.retracker.bencode.BValue; -public class BValueError extends Exception { +public class BValueError extends BError { private static final long serialVersionUID = 6950892783320917930L; public BValue node;