aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-plugin-api/src/main/java/org/sonar/api/config
diff options
context:
space:
mode:
authorDuarte Meneses <duarte.meneses@sonarsource.com>2019-06-04 08:24:54 -0500
committerSonarTech <sonartech@sonarsource.com>2019-07-12 20:21:13 +0200
commit0f63c1e2bdf0c9fad3ca66ea64ef197bb16e6258 (patch)
treed173e5f6c3eb6d058e6bce023d74f28c6f7fe0fe /sonar-plugin-api/src/main/java/org/sonar/api/config
parent6eb6107eaaf06d756bf517f0f06cf75021591fa0 (diff)
downloadsonarqube-0f63c1e2bdf0c9fad3ca66ea64ef197bb16e6258.tar.gz
sonarqube-0f63c1e2bdf0c9fad3ca66ea64ef197bb16e6258.zip
Remove use of Guava in main sources of sonar-plugin-api
Diffstat (limited to 'sonar-plugin-api/src/main/java/org/sonar/api/config')
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyDefinition.java6
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyFieldDefinition.java6
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java24
-rw-r--r--sonar-plugin-api/src/main/java/org/sonar/api/config/internal/MultivalueProperty.java2
4 files changed, 19 insertions, 19 deletions
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyDefinition.java b/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyDefinition.java
index 611c28431ab..ce894f30de9 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyDefinition.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyDefinition.java
@@ -34,13 +34,12 @@ import org.apache.commons.lang.math.NumberUtils;
import org.sonar.api.ExtensionPoint;
import org.sonar.api.Property;
import org.sonar.api.PropertyType;
-import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.ce.ComputeEngineSide;
import org.sonar.api.resources.Qualifiers;
+import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.server.ServerSide;
import org.sonarsource.api.sonarlint.SonarLintSide;
-import static com.google.common.base.Preconditions.checkArgument;
import static java.util.Arrays.asList;
import static java.util.Arrays.stream;
import static java.util.Collections.unmodifiableSet;
@@ -54,6 +53,7 @@ import static org.sonar.api.PropertyType.LONG;
import static org.sonar.api.PropertyType.PROPERTY_SET;
import static org.sonar.api.PropertyType.REGULAR_EXPRESSION;
import static org.sonar.api.PropertyType.SINGLE_SELECT_LIST;
+import static org.sonar.api.utils.Preconditions.checkArgument;
/**
* Declare a plugin property. Values are available at runtime through the component {@link Configuration}.
@@ -461,7 +461,7 @@ public final class PropertyDefinition {
* only in General Settings.
*
* @throws IllegalArgumentException only qualifiers {@link Qualifiers#PROJECT PROJECT}, {@link Qualifiers#MODULE MODULE}, {@link Qualifiers#APP APP},
- * {@link Qualifiers#VIEW VIEW} and {@link Qualifiers#SUBVIEW SVW} are allowed.
+ * {@link Qualifiers#VIEW VIEW} and {@link Qualifiers#SUBVIEW SVW} are allowed.
* @throws IllegalArgumentException only qualifiers {@link Qualifiers#PROJECT PROJECT}, {@link Qualifiers#MODULE MODULE},
* {@link Qualifiers#VIEW VIEW} and {@link Qualifiers#SUBVIEW SVW} are allowed.
*/
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyFieldDefinition.java b/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyFieldDefinition.java
index 61c0e5bb1df..db1ad3822a3 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyFieldDefinition.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/config/PropertyFieldDefinition.java
@@ -19,7 +19,6 @@
*/
package org.sonar.api.config;
-import com.google.common.base.Preconditions;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Nullable;
@@ -28,6 +27,7 @@ import org.sonar.api.PropertyField;
import org.sonar.api.PropertyType;
import static java.util.Arrays.asList;
+import static org.sonar.api.utils.Preconditions.checkArgument;
/**
* @since 3.3
@@ -151,8 +151,8 @@ public final class PropertyFieldDefinition {
}
public PropertyFieldDefinition build() {
- Preconditions.checkArgument(!StringUtils.isEmpty(key), "Key must be set");
- Preconditions.checkArgument(!StringUtils.isEmpty(name), "Name must be set");
+ checkArgument(!StringUtils.isEmpty(key), "Key must be set");
+ checkArgument(!StringUtils.isEmpty(name), "Name must be set");
return new PropertyFieldDefinition(this);
}
}
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java b/sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java
index 10f6cc90af6..b641d5ddca0 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/config/Settings.java
@@ -19,8 +19,8 @@
*/
package org.sonar.api.config;
-import com.google.common.base.Splitter;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -31,8 +31,8 @@ import javax.annotation.CheckForNull;
import javax.annotation.Nullable;
import org.apache.commons.lang.ArrayUtils;
import org.apache.commons.lang.StringUtils;
-import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.ce.ComputeEngineSide;
+import org.sonar.api.scanner.ScannerSide;
import org.sonar.api.server.ServerSide;
import org.sonar.api.utils.DateUtils;
import org.sonarsource.api.sonarlint.SonarLintSide;
@@ -160,6 +160,7 @@ public abstract class Settings {
/**
* Effective value as boolean. It is {@code false} if {@link #getString(String)}
* does not return {@code "true"}, even if it's not a boolean representation.
+ *
* @return {@code true} if the effective value is {@code "true"}, else {@code false}.
*/
public boolean getBoolean(String key) {
@@ -169,6 +170,7 @@ public abstract class Settings {
/**
* Effective value as {@code int}.
+ *
* @return the value as {@code int}. If the property does not have value nor default value, then {@code 0} is returned.
* @throws NumberFormatException if value is not empty and is not a parsable integer
*/
@@ -182,6 +184,7 @@ public abstract class Settings {
/**
* Effective value as {@code long}.
+ *
* @return the value as {@code long}. If the property does not have value nor default value, then {@code 0L} is returned.
* @throws NumberFormatException if value is not empty and is not a parsable {@code long}
*/
@@ -225,6 +228,7 @@ public abstract class Settings {
/**
* Effective value as {@code Float}.
+ *
* @return the value as {@code Float}. If the property does not have value nor default value, then {@code null} is returned.
* @throws NumberFormatException if value is not empty and is not a parsable number
*/
@@ -243,6 +247,7 @@ public abstract class Settings {
/**
* Effective value as {@code Double}.
+ *
* @return the value as {@code Double}. If the property does not have value nor default value, then {@code null} is returned.
* @throws NumberFormatException if value is not empty and is not a parsable number
*/
@@ -278,11 +283,9 @@ public abstract class Settings {
return ArrayUtils.EMPTY_STRING_ARRAY;
}
- List<String> values = new ArrayList<>();
- for (String v : Splitter.on(",").trimResults().split(value)) {
- values.add(v.replace("%2C", ","));
- }
- return values.toArray(new String[values.size()]);
+ return Arrays.stream(value.split(",", -1)).map(String::trim)
+ .map(s -> s.replace("%2C", ","))
+ .toArray(String[]::new);
}
return getStringArrayBySeparator(key, ",");
@@ -358,11 +361,10 @@ public abstract class Settings {
* Change a property value in a restricted scope only, depending on execution context. New value
* is <b>never</b> persisted. New value is ephemeral and kept in memory only:
* <ul>
- * <li>during current analysis in the case of scanner stack</li>
- * <li>during processing of current HTTP request in the case of web server stack</li>
- * <li>during execution of current task in the case of Compute Engine stack</li>
+ * <li>during current analysis in the case of scanner stack</li>
+ * <li>during processing of current HTTP request in the case of web server stack</li>
+ * <li>during execution of current task in the case of Compute Engine stack</li>
* </ul>
- *
* Property is temporarily removed if the parameter {@code value} is {@code null}
*/
public Settings setProperty(String key, @Nullable String value) {
diff --git a/sonar-plugin-api/src/main/java/org/sonar/api/config/internal/MultivalueProperty.java b/sonar-plugin-api/src/main/java/org/sonar/api/config/internal/MultivalueProperty.java
index bf0bb1b9e20..dab98c55781 100644
--- a/sonar-plugin-api/src/main/java/org/sonar/api/config/internal/MultivalueProperty.java
+++ b/sonar-plugin-api/src/main/java/org/sonar/api/config/internal/MultivalueProperty.java
@@ -19,7 +19,6 @@
*/
package org.sonar.api.config.internal;
-import com.google.common.annotations.VisibleForTesting;
import java.io.IOException;
import java.io.StringReader;
import java.util.ArrayList;
@@ -127,7 +126,6 @@ public class MultivalueProperty {
* <li>{@code "a,\" \",b" => "ab"]}</li>
* </ul>
*/
- @VisibleForTesting
static String trimFieldsAndRemoveEmptyFields(String str) {
char[] chars = str.toCharArray();
char[] res = new char[chars.length];