You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2025/08/02 21:32:45 UTC
(commons-compress) 02/02: org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Object...)
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-compress.git
commit bfae09525aebb8698dec8f88362877738e585b1a
Author: Gary D. Gregory <ga...@gmail.com>
AuthorDate: Sat Aug 2 17:32:37 2025 -0400
org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String,
Object...)
---
src/changes/changes.xml | 1 +
.../commons/compress/harmony/pack200/BHSDCodec.java | 4 +---
.../apache/commons/compress/harmony/pack200/Codec.java | 2 +-
.../commons/compress/harmony/pack200/CodecEncoding.java | 2 +-
.../compress/harmony/pack200/Pack200Exception.java | 15 +++++++++++++++
.../commons/compress/harmony/pack200/PopulationCodec.java | 2 +-
.../apache/commons/compress/harmony/pack200/Segment.java | 2 +-
.../compress/harmony/unpack200/AttributeLayout.java | 4 ++--
.../compress/harmony/unpack200/AttributeLayoutMap.java | 4 ++--
.../commons/compress/harmony/unpack200/BandSet.java | 6 +++---
.../compress/harmony/unpack200/SegmentConstantPool.java | 8 ++++----
.../commons/compress/harmony/unpack200/SegmentHeader.java | 2 +-
12 files changed, 33 insertions(+), 19 deletions(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 8ae770046..30feebbac 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -64,6 +64,7 @@ The <action> type attribute can be add,update,fix,remove.
<action type="add" dev="ggregory" due-to="Gary Gregory">Add org.apache.commons.compress.CompressException.CompressException(String, Object...).</action>
<action type="add" dev="ggregory" due-to="Gary Gregory">Add org.apache.commons.compress.archivers.ArchiveException.ArchiveException(String, Object...).</action>
<action type="add" dev="ggregory" due-to="Gary Gregory">Add org.apache.commons.compress.compressors.CompressorException.CompressorException(String, Object...).</action>
+ <action type="add" dev="ggregory" due-to="Gary Gregory">Add org.apache.commons.compress.harmony.pack200.Pack200Exception.Pack200Exception(String, Object...).</action>
<!-- UPDATE -->
</release>
<release version="1.28.0" date="2025-07-26" description="This is a feature and maintenance release. Java 8 or later is required.">
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/BHSDCodec.java b/src/main/java/org/apache/commons/compress/harmony/pack200/BHSDCodec.java
index e3ea428c7..6c1f3ccba 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/BHSDCodec.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/BHSDCodec.java
@@ -312,9 +312,8 @@ public byte[] encode(final int value) throws Pack200Exception {
@Override
public byte[] encode(final int value, final int last) throws Pack200Exception {
if (!encodes(value)) {
- throw new Pack200Exception("The codec " + this + " does not encode the value " + value);
+ throw new Pack200Exception("The codec %s does not encode the value %s", this, value);
}
-
long z = value;
if (isDelta()) {
z -= last;
@@ -340,7 +339,6 @@ public byte[] encode(final int value, final int last) throws Pack200Exception {
if (z < 0) {
throw new Pack200Exception("Unable to encode");
}
-
final List<Byte> byteList = new ArrayList<>();
for (int n = 0; n < b; n++) {
long byteN;
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/Codec.java b/src/main/java/org/apache/commons/compress/harmony/pack200/Codec.java
index e43000842..089c599c0 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/Codec.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/Codec.java
@@ -92,7 +92,7 @@ int check(final int n, final InputStream in) throws Pack200Exception {
final long remaining = maxLength - count;
final String format = "Can't read beyond end of stream (n = %,d, count = %,d, maxLength = %,d, remaining = %,d)";
if (count < -1 || n > remaining) {
- throw new Pack200Exception(String.format(format, n, count, maxLength, remaining));
+ throw new Pack200Exception(format, n, count, maxLength, remaining);
}
}
}
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/CodecEncoding.java b/src/main/java/org/apache/commons/compress/harmony/pack200/CodecEncoding.java
index 48499f894..b4543cd27 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/CodecEncoding.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/CodecEncoding.java
@@ -148,7 +148,7 @@ public static Codec getCodec(final int value, final InputStream in, final Codec
return new RunCodec(k, aCodec, bCodec);
}
if (value < 141 || value > 188) {
- throw new Pack200Exception("Invalid codec encoding byte (" + value + ") found");
+ throw new Pack200Exception("Invalid codec encoding byte (%s) found", value);
}
final int offset = value - 141;
final boolean fdef = (offset & 1) == 1;
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/Pack200Exception.java b/src/main/java/org/apache/commons/compress/harmony/pack200/Pack200Exception.java
index b27093a76..e5d60675c 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/Pack200Exception.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/Pack200Exception.java
@@ -37,6 +37,21 @@ public Pack200Exception(final String message) {
super(message);
}
+ /**
+ * Constructs a new exception with the specified detail message format and arguments. The cause is not initialized.
+ * <p>
+ * The arguments are used with {@link String#format(String, Object...)}.
+ * </p>
+ *
+ * @param message The message format (which is saved for later retrieval by the {@link #getMessage()} method).
+ * @param args the format arguments to use.
+ * @since 1.29.0
+ * @see String#format(String, Object...)
+ */
+ public Pack200Exception(final String message, final Object... args) {
+ super(message, args);
+ }
+
/**
* Constructs an {@code Pack200Exception} with the specified detail message and cause.
* <p>
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/PopulationCodec.java b/src/main/java/org/apache/commons/compress/harmony/pack200/PopulationCodec.java
index 92c7a8485..6aaeb7616 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/PopulationCodec.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/PopulationCodec.java
@@ -105,7 +105,7 @@ public int[] decodeInts(final int n, final InputStream in) throws IOException, P
}
}
if (tokenCodec == null) {
- throw new Pack200Exception("Cannot calculate token codec from " + k + " and " + l);
+ throw new Pack200Exception("Cannot calculate token codec from %s and %s", k, l);
}
}
}
diff --git a/src/main/java/org/apache/commons/compress/harmony/pack200/Segment.java b/src/main/java/org/apache/commons/compress/harmony/pack200/Segment.java
index 095745beb..30c1113e2 100644
--- a/src/main/java/org/apache/commons/compress/harmony/pack200/Segment.java
+++ b/src/main/java/org/apache/commons/compress/harmony/pack200/Segment.java
@@ -672,7 +672,7 @@ private void processClasses(final SegmentUnit segmentUnit, final Attribute[] att
}
}
if (!found) {
- throw new Pack200Exception("Error passing file " + name);
+ throw new Pack200Exception("Error passing file '%s'", name);
}
}
}
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayout.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayout.java
index eeac65470..43e248cf3 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayout.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayout.java
@@ -242,7 +242,7 @@ private static ClassFileEntry getValue(final String layout, long longIndex, fina
return pool.getValue(SegmentConstantPool.CP_DOUBLE, longIndex);
}
}
- throw new Pack200Exception("Unknown layout encoding: " + layout);
+ throw new Pack200Exception("Unknown layout encoding: '%s'", layout);
}
private final int context;
@@ -293,7 +293,7 @@ public AttributeLayout(final String name, final int context, final String layout
this.mask = 0;
}
if (context != CONTEXT_CLASS && context != CONTEXT_CODE && context != CONTEXT_FIELD && context != CONTEXT_METHOD) {
- throw new Pack200Exception("Attribute context out of range: " + context);
+ throw new Pack200Exception("Attribute context out of range: %d", context);
}
if (layout == null) {
throw new Pack200Exception("Cannot have a null layout");
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayoutMap.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayoutMap.java
index 486dd32e7..686f0e4d9 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayoutMap.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/AttributeLayoutMap.java
@@ -158,8 +158,8 @@ public void checkMap() throws Pack200Exception {
for (int j2 = j + 1; j2 < layouts.size(); j2++) {
final AttributeLayout layout2 = layouts.get(j2);
if (layout1.getName().equals(layout2.getName()) && layout1.getLayout().equals(layout2.getLayout())) {
- throw new Pack200Exception("Same layout/name combination: " + layout1.getLayout() + "/" + layout1.getName()
- + " exists twice for context: " + AttributeLayout.contextNames[layout1.getContext()]);
+ throw new Pack200Exception("Same layout/name combination: %s/%s exists twice for context: %s", layout1.getLayout(), layout1.getName(),
+ AttributeLayout.contextNames[layout1.getContext()]);
}
}
}
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/BandSet.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/BandSet.java
index 6ac490e06..c919cc168 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/BandSet.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/BandSet.java
@@ -324,7 +324,7 @@ public CPInteger[] parseCPIntReferences(final String name, final InputStream in,
for (int i = 0; i < count; i++) {
final int index = indices[i];
if (index < 0 || index >= reference.length) {
- throw new Pack200Exception("Something has gone wrong during parsing references, index = " + index + ", array size = " + reference.length);
+ throw new Pack200Exception("Something has gone wrong parsing references, index = %,d, array size = %,d", index, reference.length);
}
result[i] = cpBands.cpIntegerValue(index);
}
@@ -351,7 +351,7 @@ public CPLong[] parseCPLongReferences(final String name, final InputStream in, f
for (int i = 0; i < count; i++) {
final int index = indices[i];
if (index < 0 || index >= reference.length) {
- throw new Pack200Exception("Something has gone wrong during parsing references, index = " + index + ", array size = " + reference.length);
+ throw new Pack200Exception("Something has gone wrong parsing references, index = %,d, array size = %,d", index, reference.length);
}
result[i] = cpBands.cpLongValue(index);
}
@@ -637,7 +637,7 @@ public String[][] parseReferences(final String name, final InputStream in, final
for (int i1 = 0; i1 < sum; i1++) {
final int index = indices[i1];
if (index < 0 || index >= reference.length) {
- throw new Pack200Exception("Something has gone wrong during parsing references, index = " + index + ", array size = " + reference.length);
+ throw new Pack200Exception("Something has gone wrong parsing references, index = %,d, array size = %,d", index, reference.length);
}
result1[i1] = reference[index];
}
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
index f72902cfa..b02435c66 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentConstantPool.java
@@ -196,7 +196,7 @@ public ConstantPoolEntry getClassSpecificPoolEntry(final int cp, final long desi
array = bands.getCpIMethodClass();
break;
default:
- throw new Pack200Exception("Type is not supported yet: " + cp);
+ throw new Pack200Exception("Type is not supported yet: %s", cp);
}
return getConstantPoolEntry(cp, matchSpecificPoolEntryIndex(array, desiredClassName, toIndex(desiredIndex)));
}
@@ -230,10 +230,10 @@ public ConstantPoolEntry getConstantPoolEntry(final int type, final long index)
case CP_CLASS:
return bands.cpClassValue(actualIndex);
case SIGNATURE:
- throw new Pack200Exception("Type SIGNATURE is not supported yet: " + SIGNATURE);
+ throw new Pack200Exception("Type SIGNATURE is not supported yet: %s", SIGNATURE);
// return null /* new CPSignature(bands.getCpSignature()[index]) */;
case CP_DESCR:
- throw new Pack200Exception("Type CP_DESCR is not supported yet: " + CP_DESCR);
+ throw new Pack200Exception("Type CP_DESCR is not supported yet: %s", CP_DESCR);
// return null /* new CPDescriptor(bands.getCpDescriptor()[index])
// */;
case CP_FIELD:
@@ -246,7 +246,7 @@ public ConstantPoolEntry getConstantPoolEntry(final int type, final long index)
break;
}
// etc
- throw new Pack200Exception("Type is not supported yet: " + type);
+ throw new Pack200Exception("Type is not supported yet: %s", type);
}
/**
diff --git a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentHeader.java b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentHeader.java
index 49ab73f16..aaa4c078e 100644
--- a/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentHeader.java
+++ b/src/main/java/org/apache/commons/compress/harmony/unpack200/SegmentHeader.java
@@ -315,7 +315,7 @@ public void read(final InputStream in) throws IOException, Error, Pack200Excepti
*/
private void setArchiveMajorVersion(final int version) throws Pack200Exception {
if (version != 150) {
- throw new Pack200Exception("Invalid segment major version: " + version);
+ throw new Pack200Exception("Invalid segment major version: %s", version);
}
archiveMajor = version;
}