Skip to content

Commit 4791d3b

Browse files
committed
Pull-up common Builder attribute to BaseNCodec
1 parent 02235df commit 4791d3b

2 files changed

Lines changed: 18 additions & 16 deletions

File tree

src/main/java/org/apache/commons/codec/binary/Base32.java

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,6 @@ public class Base32 extends BaseNCodec {
4949
*/
5050
public static class Builder extends AbstractBuilder<Base32, Builder> {
5151

52-
/** Padding byte. */
53-
private byte padding = PAD_DEFAULT;
54-
5552
/**
5653
* Constructs a new instance.
5754
*/
@@ -61,18 +58,7 @@ public Builder() {
6158

6259
@Override
6360
public Base32 get() {
64-
return new Base32(getLineLength(), getLineSeparator(), getEncodeTable(), padding, getDecodingPolicy());
65-
}
66-
67-
/**
68-
* Sets the padding byte.
69-
*
70-
* @param padding the padding byte.
71-
* @return this.
72-
*/
73-
public Builder setPadding(final byte padding) {
74-
this.padding = padding;
75-
return this;
61+
return new Base32(getLineLength(), getLineSeparator(), getEncodeTable(), getPadding(), getDecodingPolicy());
7662
}
7763

7864
}

src/main/java/org/apache/commons/codec/binary/BaseNCodec.java

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,8 @@ public abstract static class AbstractBuilder<T, B extends AbstractBuilder<T, B>>
6666
private byte[] lineSeparator = CHUNK_SEPARATOR;
6767
private final byte[] defaultEncodeTable;
6868
private byte[] encodeTable;
69-
69+
/** Padding byte. */
70+
private byte padding = PAD_DEFAULT;
7071

7172
AbstractBuilder(final byte[] defaultEncodeTable) {
7273
this.defaultEncodeTable = defaultEncodeTable;
@@ -94,6 +95,10 @@ byte[] getLineSeparator() {
9495
return lineSeparator;
9596
}
9697

98+
byte getPadding() {
99+
return padding;
100+
}
101+
97102
/**
98103
* Sets the decoding policy.
99104
*
@@ -138,6 +143,17 @@ public B setLineSeparator(final byte... lineSeparator) {
138143
return asThis();
139144
}
140145

146+
/**
147+
* Sets the padding byte.
148+
*
149+
* @param padding the padding byte.
150+
* @return this.
151+
*/
152+
public B setPadding(final byte padding) {
153+
this.padding = padding;
154+
return asThis();
155+
}
156+
141157
}
142158

143159
/**

0 commit comments

Comments
 (0)