HDDS-7154. Fixed code issues in org.apache.hadoop.hdds.client reported by sonar (#3700)
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/DefaultReplicationConfig.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/DefaultReplicationConfig.java
index 851cae9..18d0326 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/DefaultReplicationConfig.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/DefaultReplicationConfig.java
@@ -123,7 +123,7 @@
DefaultReplicationConfig that = (DefaultReplicationConfig) o;
return Objects.equals(type, that.type) && Objects
.equals(factor, that.factor) && Objects
- .equals(ecReplicationConfig, ecReplicationConfig);
+ .equals(ecReplicationConfig, that.ecReplicationConfig);
}
@Override
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ECReplicationConfig.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ECReplicationConfig.java
index daf1d53..747c6fd 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ECReplicationConfig.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ECReplicationConfig.java
@@ -58,7 +58,7 @@
// RS-3-2-2048
// XOR-10-4-4096K
private static final Pattern STRING_FORMAT
- = Pattern.compile("([a-zA-Z]+)-(\\d+)-(\\d+)-(\\d+)((?:k|K))?");
+ = Pattern.compile("([a-zA-Z]+)-(\\d+)-(\\d+)-(\\d+)([kK])?");
private int data;
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/OzoneQuota.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/OzoneQuota.java
index 794ebd2..ec337ba 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/OzoneQuota.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/OzoneQuota.java
@@ -133,15 +133,6 @@
}
/**
- * Constructor for Ozone NameSpace Quota.
- *
- * @param quotaInNamespace long value
- */
- private OzoneQuota(long quotaInNamespace) {
- this.quotaInNamespace = quotaInNamespace;
- }
-
- /**
* Constructor for Ozone Quota.
*
* @param quotaInNamespace ozone quota in counts
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/QuotaList.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/QuotaList.java
index 5403469..230b825 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/QuotaList.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/QuotaList.java
@@ -19,19 +19,20 @@
package org.apache.hadoop.hdds.client;
import java.util.ArrayList;
+import java.util.List;
/**
*This class contains arraylist for storage constant used in OzoneQuota.
*/
public class QuotaList {
- private ArrayList<String> ozoneQuota;
- private ArrayList<OzoneQuota.Units> unitQuota;
- private ArrayList<Long> sizeQuota;
+ private final ArrayList<String> ozoneQuota;
+ private final ArrayList<OzoneQuota.Units> unitQuota;
+ private final ArrayList<Long> sizeQuota;
public QuotaList() {
- ozoneQuota = new ArrayList<String>();
- unitQuota = new ArrayList<OzoneQuota.Units>();
- sizeQuota = new ArrayList<Long>();
+ ozoneQuota = new ArrayList<>();
+ unitQuota = new ArrayList<>();
+ sizeQuota = new ArrayList<>();
}
public void addQuotaList(
@@ -41,15 +42,15 @@
sizeQuota.add(sQuota);
}
- public ArrayList<String> getOzoneQuotaArray() {
+ public List<String> getOzoneQuotaArray() {
return this.ozoneQuota;
}
- public ArrayList<Long> getSizeQuotaArray() {
+ public List<Long> getSizeQuotaArray() {
return this.sizeQuota;
}
- public ArrayList<OzoneQuota.Units> getUnitQuotaArray() {
+ public List<OzoneQuota.Units> getUnitQuotaArray() {
return this.unitQuota;
}
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfig.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfig.java
index 5d2fa9b..6104195 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfig.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfig.java
@@ -195,8 +195,8 @@
replicationConfig = new ECReplicationConfig(replication);
break;
default:
- throw new RuntimeException("Replication type " + type + " can not "
- + "be parsed.");
+ throw new IllegalArgumentException("Replication type " + type +
+ " can not be parsed.");
}
ReplicationConfigValidator validator =
diff --git a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfigValidator.java b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfigValidator.java
index 36d9525..93f83d1 100644
--- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfigValidator.java
+++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ReplicationConfigValidator.java
@@ -50,23 +50,24 @@
}
public ReplicationConfig validate(ReplicationConfig replicationConfig) {
- if (validationRegexp != null) {
- if (!validationRegexp.matcher(
- replicationConfig.configFormat()).matches()) {
- String replication = replicationConfig.getReplication();
- if (HddsProtos.ReplicationType.EC ==
+ if (validationRegexp == null) {
+ return replicationConfig;
+ }
+ if (!validationRegexp.matcher(
+ replicationConfig.configFormat()).matches()) {
+ String replication = replicationConfig.getReplication();
+ if (HddsProtos.ReplicationType.EC ==
replicationConfig.getReplicationType()) {
- ECReplicationConfig ecConfig =
+ ECReplicationConfig ecConfig =
(ECReplicationConfig) replicationConfig;
- replication = ecConfig.getCodec() + "-" + ecConfig.getData() +
- "-" + ecConfig.getParity() + "-{CHUNK_SIZE}";
- }
- throw new IllegalArgumentException(
+ replication = ecConfig.getCodec() + "-" + ecConfig.getData() +
+ "-" + ecConfig.getParity() + "-{CHUNK_SIZE}";
+ }
+ throw new IllegalArgumentException(
"Invalid data-parity replication config " +
"for type " + replicationConfig.getReplicationType() +
" and replication " + replication + "." +
" Supported data-parity are 3-2,6-3,10-4");
- }
}
return replicationConfig;
}
diff --git a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestECReplicationConfig.java b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestECReplicationConfig.java
index 333328b..2387b99 100644
--- a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestECReplicationConfig.java
+++ b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestECReplicationConfig.java
@@ -19,6 +19,8 @@
import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.ValueSource;
import java.util.HashMap;
import java.util.Map;
@@ -31,10 +33,10 @@
/**
* Unit test for ECReplicationConfig.
*/
-public class TestECReplicationConfig {
+class TestECReplicationConfig {
@Test
- public void testSuccessfulStringParsing() {
+ void testSuccessfulStringParsing() {
Map<String, ECReplicationConfig> valid = new HashMap();
valid.put("rs-3-2-1024", new ECReplicationConfig(3, 2, RS, 1024));
valid.put("RS-3-2-1024", new ECReplicationConfig(3, 2, RS, 1024));
@@ -52,25 +54,16 @@
}
}
- @Test
- public void testUnsuccessfulStringParsing() {
- String[] invalid = {
- "3-2-1024",
- "rss-3-2-1024",
- "rs-3-0-1024",
- "rs-3-2-0k",
- "rs-3-2",
- "x3-2"
- };
- for (String s : invalid) {
- assertThrows(IllegalArgumentException.class,
- () -> new ECReplicationConfig(s));
- }
+ @ParameterizedTest
+ @ValueSource(strings = {"3-2-1024", "rss-3-2-1024", "rs-3-0-1024",
+ "rs-3-2-0k", "rs-3-2", "x3-2"})
+ void testUnsuccessfulStringParsing(String invalidValue) {
+ assertThrows(IllegalArgumentException.class,
+ () -> new ECReplicationConfig(invalidValue));
}
-
@Test
- public void testSerializeToProtoAndBack() {
+ void testSerializeToProtoAndBack() {
ECReplicationConfig orig = new ECReplicationConfig(6, 3,
ECReplicationConfig.EcCodec.XOR, 1024);
diff --git a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfig.java b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfig.java
index 9f93990..ac0c7ab 100644
--- a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfig.java
+++ b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfig.java
@@ -68,7 +68,7 @@
}
@Test
- public void testGetDefaultShouldReturnRatisThreeIfNotSetClientSide() {
+ void testGetDefaultShouldReturnRatisThreeIfNotSetClientSide() {
OzoneConfiguration conf = new OzoneConfiguration();
ReplicationConfig replicationConfig = ReplicationConfig.getDefault(conf);
@@ -80,7 +80,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void testGetDefaultShouldCreateReplicationConfFromConfValues(
+ void testGetDefaultShouldCreateReplicationConfFromConfValues(
String type, String factor, Class<?> replicationConfigClass) {
OzoneConfiguration conf = new OzoneConfiguration();
conf.set(OZONE_REPLICATION_TYPE, type);
@@ -96,7 +96,7 @@
@ParameterizedTest
@MethodSource("ecType")
- public void testGetDefaultShouldCreateECReplicationConfFromConfValues(
+ void testGetDefaultShouldCreateECReplicationConfFromConfValues(
String codec, int data, int parity, int chunkSize) {
OzoneConfiguration conf = new OzoneConfiguration();
conf.set(OZONE_REPLICATION_TYPE, "EC");
@@ -110,7 +110,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void deserialize(String type, String factor,
+ void deserialize(String type, String factor,
Class<?> replicationConfigClass) {
final ReplicationConfig replicationConfig =
ReplicationConfig.fromProtoTypeAndFactor(
@@ -125,7 +125,7 @@
@ParameterizedTest
@MethodSource("ecType")
- public void deserializeEC(String codec, int data, int parity, int chunkSize) {
+ void deserializeEC(String codec, int data, int parity, int chunkSize) {
HddsProtos.ECReplicationConfig proto =
HddsProtos.ECReplicationConfig.newBuilder()
.setCodec(codec)
@@ -142,7 +142,7 @@
@ParameterizedTest
@MethodSource("ecType")
- public void testECReplicationConfigGetReplication(
+ void testECReplicationConfigGetReplication(
String codec, int data, int parity, int chunkSize) {
HddsProtos.ECReplicationConfig proto =
HddsProtos.ECReplicationConfig.newBuilder().setCodec(codec)
@@ -160,7 +160,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void testReplicationConfigGetReplication(String type, String factor,
+ void testReplicationConfigGetReplication(String type, String factor,
Class<?> replicationConfigClass) {
final ReplicationConfig replicationConfig = ReplicationConfig
.fromTypeAndFactor(
@@ -172,7 +172,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void fromJavaObjects(String type, String factor,
+ void fromJavaObjects(String type, String factor,
Class<?> replicationConfigClass) {
final ReplicationConfig replicationConfig =
ReplicationConfig.fromTypeAndFactor(
@@ -187,7 +187,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void testParseFromTypeAndFactorAsString(String type, String factor,
+ void testParseFromTypeAndFactorAsString(String type, String factor,
Class<?> replicationConfigClass) {
ConfigurationSource conf = new OzoneConfiguration();
ReplicationConfig replicationConfig = ReplicationConfig.parse(
@@ -202,7 +202,7 @@
@ParameterizedTest
@MethodSource("replicaType")
- public void testParseFromTypeAndFactorAsStringifiedInteger(
+ void testParseFromTypeAndFactorAsStringifiedInteger(
String type, String factor, Class<?> replicationConfigClass) {
ConfigurationSource conf = new OzoneConfiguration();
String f =
@@ -222,7 +222,7 @@
@ParameterizedTest
@MethodSource("ecType")
- public void testParseECReplicationConfigFromString(
+ void testParseECReplicationConfigFromString(
String codec, int data, int parity, int chunkSize) {
ConfigurationSource conf = new OzoneConfiguration();
@@ -243,7 +243,7 @@
*/
@ParameterizedTest
@MethodSource("replicaType")
- public void testAdjustReplication(String type, String factor,
+ void testAdjustReplication(String type, String factor,
Class<?> replicationConfigClass) {
ConfigurationSource conf = new OzoneConfiguration();
ReplicationConfig replicationConfig = ReplicationConfig.parse(
@@ -273,7 +273,7 @@
*/
@ParameterizedTest
@MethodSource("ecType")
- public void testAdjustECReplication(String codec, int data, int parity,
+ void testAdjustECReplication(String codec, int data, int parity,
int chunkSize) {
ConfigurationSource conf = new OzoneConfiguration();
ReplicationConfig replicationConfig = ReplicationConfig.parse(
@@ -301,20 +301,21 @@
*/
@ParameterizedTest
@MethodSource("replicaType")
- public void testValidationBasedOnConfig(String type, String factor,
+ void testValidationBasedOnConfig(String type, String factor,
Class<?> replicationConfigClass) {
OzoneConfiguration conf = new OzoneConfiguration();
conf.set(OZONE_REPLICATION + ".allowed-configs",
"^STANDALONE/ONE|RATIS/THREE$");
conf.set(OZONE_REPLICATION, factor);
conf.set(OZONE_REPLICATION_TYPE, type);
+ org.apache.hadoop.hdds.client.ReplicationType replicationType =
+ org.apache.hadoop.hdds.client.ReplicationType.valueOf(type);
// in case of allowed configurations
if ((type.equals("RATIS") && factor.equals("THREE"))
|| (type.equals("STAND_ALONE") && factor.equals("ONE"))) {
ReplicationConfig replicationConfig = ReplicationConfig.parse(
- org.apache.hadoop.hdds.client.ReplicationType.valueOf(type),
- factor, conf);
+ replicationType, factor, conf);
// check if adjust throws exception when adjusting to a config that is
// not allowed
if (type.equals("RATIS")) {
@@ -331,8 +332,7 @@
// parse should fail in case of a configuration that is not allowed.
assertThrows(IllegalArgumentException.class,
() -> ReplicationConfig.parse(
- org.apache.hadoop.hdds.client.ReplicationType.valueOf(type),
- factor, conf));
+ replicationType, factor, conf));
// default can not be a configuration that is not allowed.
assertThrows(IllegalArgumentException.class,
() -> ReplicationConfig.getDefault(conf));
diff --git a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfigValidator.java b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfigValidator.java
index acf657b..8fa3558 100644
--- a/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfigValidator.java
+++ b/hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/client/TestReplicationConfigValidator.java
@@ -29,10 +29,10 @@
/**
* Test ReplicationConfig validator.
*/
-public class TestReplicationConfigValidator {
+class TestReplicationConfigValidator {
@Test
- public void testValidation() {
+ void testValidation() {
MutableConfigurationSource config = new InMemoryConfiguration();
final ReplicationConfigValidator validator =
@@ -60,7 +60,7 @@
}
@Test
- public void testWithoutValidation() {
+ void testWithoutValidation() {
MutableConfigurationSource config = new InMemoryConfiguration();
config.set("ozone.replication.allowed-configs", "");
@@ -73,7 +73,7 @@
}
@Test
- public void testCustomValidation() {
+ void testCustomValidation() {
MutableConfigurationSource config = new InMemoryConfiguration();
config.set("ozone.replication.allowed-configs", "RATIS/THREE");