Skip to content

Commit

Permalink
Remove Apache Commons Lang3 dependency
Browse files Browse the repository at this point in the history
Apache Commons Lang3 and Google Guava share pretty much the same functionality.

This change set replaces uses of commons-lang3 (mainly `HashCodeBuilder` and `EqualsBuilder`)
with the respective functionality of the Java standard library (`Objects#hash(...)` and
`Objects#equals(...)`) or Google Guava (`Strings#isNullOrEmpty(...)`) and thus removes the
dependency on commons-lang3.
  • Loading branch information
Jochen Schalanda committed May 4, 2017
1 parent 1920c98 commit 0cdd40a
Show file tree
Hide file tree
Showing 76 changed files with 335 additions and 1,104 deletions.
5 changes: 0 additions & 5 deletions jest-common/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -81,11 +81,6 @@
<artifactId>commons-io</artifactId>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>

<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
Expand Down
44 changes: 20 additions & 24 deletions jest-common/src/main/java/io/searchbox/action/AbstractAction.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
package io.searchbox.action;

import com.google.common.base.Joiner;
import com.google.common.base.MoreObjects;
import com.google.common.collect.LinkedHashMultimap;
import com.google.common.collect.Multimap;
import com.google.gson.Gson;
Expand All @@ -10,17 +12,19 @@
import io.searchbox.annotations.JestId;
import io.searchbox.client.JestResult;
import io.searchbox.params.Parameters;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
import io.searchbox.strings.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.UnsupportedEncodingException;
import java.lang.reflect.Field;
import java.net.URLEncoder;
import java.util.*;
import java.util.Collection;
import java.util.LinkedHashMap;
import java.util.LinkedHashSet;
import java.util.Map;
import java.util.Objects;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;

Expand Down Expand Up @@ -173,10 +177,10 @@ protected String buildURI() {
StringBuilder sb = new StringBuilder();

try {
if (StringUtils.isNotBlank(indexName)) {
if (!StringUtils.isBlank(indexName)) {
sb.append(URLEncoder.encode(indexName, CHARSET));

if (StringUtils.isNotBlank(typeName)) {
if (!StringUtils.isBlank(typeName)) {
sb.append("/").append(URLEncoder.encode(typeName, CHARSET));
}
}
Expand All @@ -193,7 +197,7 @@ protected String buildQueryString() throws UnsupportedEncodingException {
StringBuilder queryString = new StringBuilder();

if (!cleanApiParameters.isEmpty()) {
queryString.append("/").append(StringUtils.join(cleanApiParameters, ","));
queryString.append("/").append(Joiner.on(',').join(cleanApiParameters));
}

queryString.append("?");
Expand All @@ -212,21 +216,15 @@ protected String buildQueryString() throws UnsupportedEncodingException {

@Override
public String toString() {
return new ToStringBuilder(this)
.appendSuper(super.toString())
.append("uri", getURI())
.append("method", getRestMethodName())
return MoreObjects.toStringHelper(this)
.add("uri", getURI())
.add("method", getRestMethodName())
.toString();
}

@Override
public int hashCode() {
return new HashCodeBuilder()
.append(getURI())
.append(getRestMethodName())
.append(getHeaders())
.append(payload)
.toHashCode();
return Objects.hash(getURI(), getRestMethodName(), getHeaders(), payload);
}

@Override
Expand All @@ -242,12 +240,10 @@ public boolean equals(Object obj) {
}

AbstractAction rhs = (AbstractAction) obj;
return new EqualsBuilder()
.append(getURI(), rhs.getURI())
.append(getRestMethodName(), rhs.getRestMethodName())
.append(getHeaders(), rhs.getHeaders())
.append(payload, rhs.payload)
.isEquals();
return Objects.equals(getURI(), rhs.getURI())
&& Objects.equals(getRestMethodName(), rhs.getRestMethodName())
&& Objects.equals(getHeaders(), rhs.getHeaders())
&& Objects.equals(payload, rhs.payload);
}

public abstract String getRestMethodName();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.searchbox.action;

import io.searchbox.client.JestResult;
import org.apache.commons.lang3.StringUtils;
import io.searchbox.strings.StringUtils;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
Expand Down Expand Up @@ -39,7 +39,7 @@ public String getId() {
protected String buildURI() {
StringBuilder sb = new StringBuilder(super.buildURI());

if (StringUtils.isNotBlank(id)) {
if (!StringUtils.isBlank(id)) {
try {
sb.append("/").append(URLEncoder.encode(id, CHARSET));
} catch (UnsupportedEncodingException e) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package io.searchbox.action;

import org.apache.commons.lang3.StringUtils;
import com.google.common.base.Joiner;
import com.google.common.base.Strings;

import java.util.Collection;
import java.util.LinkedList;
Expand Down Expand Up @@ -33,7 +34,7 @@ public abstract class AbstractMultiINodeActionBuilder<T extends Action, K> exten
* </pre>
*/
public K addNode(String node) {
if (StringUtils.isNotEmpty(node)) {
if (!Strings.isNullOrEmpty(node)) {
nodes.add(node);
}
return (K) this;
Expand Down Expand Up @@ -66,7 +67,7 @@ public K addNode(Collection<? extends String> nodes) {

public String getJoinedNodes() {
if (!nodes.isEmpty()) {
return StringUtils.join(nodes, ",");
return Joiner.on(',').join(nodes);
} else {
return "_all";
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
package io.searchbox.action;

import com.google.common.base.Joiner;
import io.searchbox.params.Parameters;

import java.util.Collection;
import java.util.LinkedHashSet;
import java.util.Set;

import org.apache.commons.lang3.StringUtils;

/**
* @author cihat keser
*/
Expand Down Expand Up @@ -44,7 +44,7 @@ public K allowNoIndices(boolean allow) {

public String getJoinedIndices() {
if (indexNames.size() > 0) {
return StringUtils.join(indexNames, ",");
return Joiner.on(',').join(indexNames);
} else {
return "_all";
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package io.searchbox.action;

import org.apache.commons.lang3.StringUtils;
import com.google.common.base.Joiner;

import java.util.Collection;
import java.util.LinkedHashSet;
Expand All @@ -24,6 +24,6 @@ public K addType(String indexType) {
}

public String getJoinedTypes() {
return StringUtils.join(indexTypes, ",");
return Joiner.on(',').join(indexTypes);
}
}
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package io.searchbox.client;


import com.google.common.base.Joiner;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableSet;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import io.searchbox.client.config.discovery.NodeChecker;
import io.searchbox.client.config.exception.NoServerConfiguredException;
import io.searchbox.client.config.idle.IdleConnectionReaper;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand Down Expand Up @@ -48,13 +48,13 @@ public void setServers(Set<String> servers) {
if (servers.equals(serverPoolReference.get().getServers())) {
if (log.isDebugEnabled()) {
log.debug("Server pool already contains same list of servers: {}",
StringUtils.join(servers, ","));
Joiner.on(',').join(servers));
}
return;
}
if (log.isInfoEnabled()) {
log.info("Setting server pool to a list of {} servers: [{}]",
servers.size(), StringUtils.join(servers, ","));
servers.size(), Joiner.on(',').join(servers));
}
serverPoolReference.set(new ServerPool(servers));

Expand Down
4 changes: 2 additions & 2 deletions jest-common/src/main/java/io/searchbox/client/JestResult.java
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package io.searchbox.client;

import com.google.common.base.Joiner;
import com.google.common.collect.ImmutableList;
import com.google.gson.Gson;
import com.google.gson.JsonElement;
Expand All @@ -8,7 +9,6 @@
import io.searchbox.annotations.JestId;
import io.searchbox.annotations.JestVersion;
import io.searchbox.cloning.CloneUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand Down Expand Up @@ -148,7 +148,7 @@ public void setJsonMap(Map<String, Object> resultMap) {
*/
public String getSourceAsString() {
List<String> sources = getSourceAsStringList();
return sources == null ? null : StringUtils.join(sources, ",");
return sources == null ? null : Joiner.on(',').join(sources);
}

/**
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
package io.searchbox.client.config;

import com.google.gson.Gson;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;

import java.util.Collection;
import java.util.LinkedHashSet;
import java.util.Objects;
import java.util.Set;
import java.util.concurrent.TimeUnit;

Expand Down Expand Up @@ -122,21 +121,20 @@ public ClientConfig build() {

@Override
public int hashCode() {
return new HashCodeBuilder()
.append(serverList)
.append(isMultiThreaded)
.append(isDiscoveryEnabled)
.append(isRequestCompressionEnabled)
.append(discoveryFrequency)
.append(discoveryFilter)
.append(connTimeout)
.append(readTimeout)
.append(discoveryFrequencyTimeUnit)
.append(maxConnectionIdleTime)
.append(maxConnectionIdleTimeDurationTimeUnit)
.append(gson)
.append(defaultSchemeForDiscoveredNodes)
.toHashCode();
return Objects.hash(
serverList,
isMultiThreaded,
isDiscoveryEnabled,
isRequestCompressionEnabled,
discoveryFrequency,
discoveryFilter,
connTimeout,
readTimeout,
discoveryFrequencyTimeUnit,
maxConnectionIdleTime,
maxConnectionIdleTimeDurationTimeUnit,
gson,
defaultSchemeForDiscoveredNodes);
}

@Override
Expand All @@ -152,21 +150,19 @@ public boolean equals(Object obj) {
}

ClientConfig rhs = (ClientConfig) obj;
return new EqualsBuilder()
.append(serverList, rhs.serverList)
.append(isMultiThreaded, rhs.isMultiThreaded)
.append(isDiscoveryEnabled, rhs.isDiscoveryEnabled)
.append(isRequestCompressionEnabled, rhs.isRequestCompressionEnabled)
.append(discoveryFrequency, rhs.discoveryFrequency)
.append(discoveryFilter, rhs.discoveryFilter)
.append(connTimeout, rhs.connTimeout)
.append(readTimeout, rhs.readTimeout)
.append(discoveryFrequencyTimeUnit, rhs.discoveryFrequencyTimeUnit)
.append(maxConnectionIdleTime, rhs.maxConnectionIdleTime)
.append(maxConnectionIdleTimeDurationTimeUnit, rhs.maxConnectionIdleTimeDurationTimeUnit)
.append(gson, rhs.gson)
.append(defaultSchemeForDiscoveredNodes, rhs.defaultSchemeForDiscoveredNodes)
.isEquals();
return Objects.equals(serverList, rhs.serverList)
&& Objects.equals(isMultiThreaded, rhs.isMultiThreaded)
&& Objects.equals(isDiscoveryEnabled, rhs.isDiscoveryEnabled)
&& Objects.equals(isRequestCompressionEnabled, rhs.isRequestCompressionEnabled)
&& Objects.equals(discoveryFrequency, rhs.discoveryFrequency)
&& Objects.equals(discoveryFilter, rhs.discoveryFilter)
&& Objects.equals(connTimeout, rhs.connTimeout)
&& Objects.equals(readTimeout, rhs.readTimeout)
&& Objects.equals(discoveryFrequencyTimeUnit, rhs.discoveryFrequencyTimeUnit)
&& Objects.equals(maxConnectionIdleTime, rhs.maxConnectionIdleTime)
&& Objects.equals(maxConnectionIdleTimeDurationTimeUnit, rhs.maxConnectionIdleTimeDurationTimeUnit)
&& Objects.equals(gson, rhs.gson)
&& Objects.equals(defaultSchemeForDiscoveredNodes, rhs.defaultSchemeForDiscoveredNodes);
}

protected static abstract class AbstractBuilder<T extends ClientConfig, K extends AbstractBuilder<T, K>> {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package io.searchbox.client.config.discovery;

import com.google.common.base.Joiner;
import com.google.common.base.Splitter;
import com.google.common.collect.ImmutableSet;
import com.google.common.util.concurrent.AbstractScheduledService;
Expand All @@ -14,7 +15,6 @@
import io.searchbox.client.config.exception.CouldNotConnectException;
import io.searchbox.cluster.NodesInfo;

import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

Expand Down Expand Up @@ -113,7 +113,7 @@ protected void runOneIteration() throws Exception {
}
}
if (log.isDebugEnabled()) {
log.debug("Discovered {} HTTP hosts: {}", httpHosts.size(), StringUtils.join(httpHosts, ","));
log.debug("Discovered {} HTTP hosts: {}", httpHosts.size(), Joiner.on(',').join(httpHosts));
}
discoveredServerList = httpHosts;
client.setServers(discoveredServerList);
Expand All @@ -127,7 +127,7 @@ protected void removeNodeAndUpdateServers(final String hostToRemove) {
log.warn("Removing host {}", hostToRemove);
discoveredServerList.remove(hostToRemove);
if (log.isInfoEnabled()) {
log.info("Discovered server pool is now: {}", StringUtils.join(discoveredServerList, ","));
log.info("Discovered server pool is now: {}", Joiner.on(',').join(discoveredServerList));
}
if (!discoveredServerList.isEmpty()) {
client.setServers(discoveredServerList);
Expand Down
4 changes: 2 additions & 2 deletions jest-common/src/main/java/io/searchbox/cluster/Health.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
import com.google.common.base.Preconditions;
import io.searchbox.action.AbstractMultiIndexActionBuilder;
import io.searchbox.action.GenericResultAbstractAction;
import org.apache.commons.lang3.StringUtils;
import io.searchbox.strings.StringUtils;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
Expand Down Expand Up @@ -51,7 +51,7 @@ protected String buildURI() {
StringBuilder sb = new StringBuilder("/_cluster/health/");

try {
if (StringUtils.isNotBlank(indexName)) {
if (!StringUtils.isBlank(indexName)) {
sb.append(URLEncoder.encode(indexName, CHARSET));
}
} catch (UnsupportedEncodingException e) {
Expand Down
Loading

0 comments on commit 0cdd40a

Please sign in to comment.