diff --git a/pom.xml b/pom.xml
index 2637511..14ae66a 100755
--- a/pom.xml
+++ b/pom.xml
@@ -108,6 +108,16 @@
package
+
+ com.google.guava
+ guava
+ 27.0-jre
+
+
+ commons-io
+ commons-io
+ 2.5
+
org.antlr
antlr4
@@ -123,24 +133,12 @@
antlr4-maven-plugin
${antlr.version}
-
org.slf4j
slf4j-api
1.7.25
-
- commons-io
- commons-io
- 2.5
-
-
- org.apache.commons
- commons-lang3
- 3.5
-
-
junit
junit
diff --git a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopedElementImpl.java b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopedElementImpl.java
index e2f8d8c..b99956b 100755
--- a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopedElementImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopedElementImpl.java
@@ -9,7 +9,8 @@
package io.proleap.vb6.asg.metamodel.impl;
import org.antlr.v4.runtime.ParserRuleContext;
-import org.apache.commons.lang3.StringUtils;
+
+import com.google.common.base.Strings;
import io.proleap.vb6.asg.metamodel.Module;
import io.proleap.vb6.asg.metamodel.Program;
@@ -59,6 +60,6 @@ public abstract class ScopedElementImpl extends ASGElementImpl implements Scoped
}
protected String getSymbol(final String name) {
- return StringUtils.isBlank(name) ? name : name.toLowerCase();
+ return Strings.isNullOrEmpty(name) ? name : name.toLowerCase();
}
}
diff --git a/src/main/java/io/proleap/vb6/asg/runner/impl/VbParserRunnerImpl.java b/src/main/java/io/proleap/vb6/asg/runner/impl/VbParserRunnerImpl.java
index 6425426..a976c61 100755
--- a/src/main/java/io/proleap/vb6/asg/runner/impl/VbParserRunnerImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/runner/impl/VbParserRunnerImpl.java
@@ -21,7 +21,6 @@ import org.antlr.v4.runtime.CharStreams;
import org.antlr.v4.runtime.CommonTokenStream;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -162,13 +161,17 @@ public class VbParserRunnerImpl implements VbParserRunner {
}
}
+ protected String capitalize(final String line) {
+ return Character.toUpperCase(line.charAt(0)) + line.substring(1);
+ }
+
protected VbParserParams createDefaultParams() {
final VbParserParams result = new VbParserParamsImpl();
return result;
}
protected String getModuleName(final File inputFile) {
- return StringUtils.capitalize(FilenameUtils.removeExtension(inputFile.getName()));
+ return capitalize(FilenameUtils.removeExtension(inputFile.getName()));
}
protected boolean isClazzModule(final File inputFile) {
diff --git a/src/test/java/io/proleap/vb6/TestGenerator.java b/src/test/java/io/proleap/vb6/TestGenerator.java
index a595ba3..d4f6120 100755
--- a/src/test/java/io/proleap/vb6/TestGenerator.java
+++ b/src/test/java/io/proleap/vb6/TestGenerator.java
@@ -19,10 +19,11 @@ import java.util.Arrays;
import org.antlr.v4.runtime.ANTLRInputStream;
import org.antlr.v4.runtime.CommonTokenStream;
import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.common.base.Strings;
+
import io.proleap.vb6.VisualBasic6Parser.StartRuleContext;
import io.proleap.vb6.util.TreeUtils;
@@ -110,7 +111,7 @@ public class TestGenerator {
subOutputDirectory.mkdirs();
// determine the package name of test classes
- final String subPackageName = StringUtils.isBlank(packageName) ? subInputDirectoryName
+ final String subPackageName = Strings.isNullOrEmpty(packageName) ? subInputDirectoryName
: packageName + "." + subInputDirectoryName;
generateTestClasses(subInputDirectory, subOutputDirectory, subPackageName);
diff --git a/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java b/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java
index ee603b2..b0285ee 100644
--- a/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java
+++ b/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java
@@ -21,10 +21,11 @@ import org.antlr.v4.runtime.CommonTokenStream;
import org.antlr.v4.runtime.tree.Trees;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FilenameUtils;
-import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import com.google.common.base.Strings;
+
import io.proleap.vb6.VisualBasic6Lexer;
import io.proleap.vb6.VisualBasic6Parser;
import io.proleap.vb6.VisualBasic6Parser.StartRuleContext;
@@ -57,7 +58,7 @@ public class VbParseTestRunnerImpl implements VbParseTestRunner {
final String treeFileData = FileUtils.readFileToString(treeFile);
- if (!StringUtils.isBlank(treeFileData)) {
+ if (!Strings.isNullOrEmpty(treeFileData)) {
LOG.info("Comparing parse tree with file {}.", treeFile.getName());
final String inputFileTree = Trees.toStringTree(startRule, parser);
diff --git a/src/test/java/io/proleap/vb6/util/TreeUtils.java b/src/test/java/io/proleap/vb6/util/TreeUtils.java
index ff2aa43..a8cf6cf 100644
--- a/src/test/java/io/proleap/vb6/util/TreeUtils.java
+++ b/src/test/java/io/proleap/vb6/util/TreeUtils.java
@@ -9,6 +9,8 @@ import org.antlr.v4.runtime.tree.Tree;
import org.antlr.v4.runtime.tree.Trees;
import org.sonatype.inject.Nullable;
+import com.google.common.base.Strings;
+
public class TreeUtils {
public static final String NEWLINE = "\n";
@@ -16,7 +18,7 @@ public class TreeUtils {
public static final String TAB = "\t";
public static String indent(final int indent) {
- return org.apache.commons.lang3.StringUtils.repeat(TAB, indent);
+ return Strings.repeat(TAB, indent);
}
/**