diff --git a/pom.xml b/pom.xml
index da4bc2f..a1790c3 100755
--- a/pom.xml
+++ b/pom.xml
@@ -18,7 +18,6 @@
UTF-8
4.7
- 2.8.2
@@ -141,6 +140,13 @@
antlr4-maven-plugin
${antlr.version}
+
+
+ org.slf4j
+ slf4j-api
+ 1.7.25
+
+
commons-io
commons-io
@@ -151,16 +157,6 @@
commons-lang3
3.5
-
- org.apache.logging.log4j
- log4j-api
- ${log4j.version}
-
-
- org.apache.logging.log4j
- log4j-core
- ${log4j.version}
-
junit
diff --git a/src/main/java/io/proleap/vb6/asg/inference/impl/TypeInferenceImpl.java b/src/main/java/io/proleap/vb6/asg/inference/impl/TypeInferenceImpl.java
index 3c42ef5..a7fa3a3 100755
--- a/src/main/java/io/proleap/vb6/asg/inference/impl/TypeInferenceImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/inference/impl/TypeInferenceImpl.java
@@ -17,7 +17,7 @@ import io.proleap.vb6.asg.metamodel.Module;
import io.proleap.vb6.asg.metamodel.DefType.LetterRange;
import io.proleap.vb6.asg.metamodel.type.Type;
import io.proleap.vb6.asg.metamodel.type.VbBaseType;
-import io.proleap.vb6.asg.util.StringUtils;
+import io.proleap.vb6.asg.util.AsgStringUtils;
public class TypeInferenceImpl implements TypeInference {
@@ -110,8 +110,8 @@ public class TypeInferenceImpl implements TypeInference {
upper = null;
}
- final boolean geq = StringUtils.geq(firstLetter, lower);
- final boolean leq = StringUtils.leq(firstLetter, upper);
+ final boolean geq = AsgStringUtils.geq(firstLetter, lower);
+ final boolean leq = AsgStringUtils.leq(firstLetter, upper);
if (geq && leq) {
typeFromDefType = defType.getBaseType();
diff --git a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ModuleImpl.java b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ModuleImpl.java
index 5b5d248..0499c6b 100755
--- a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ModuleImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ModuleImpl.java
@@ -63,7 +63,7 @@ import io.proleap.vb6.asg.metamodel.statement.sub.Sub;
import io.proleap.vb6.asg.metamodel.statement.sub.impl.SubImpl;
import io.proleap.vb6.asg.metamodel.type.Type;
import io.proleap.vb6.asg.metamodel.type.VbBaseType;
-import io.proleap.vb6.asg.util.StringUtils;
+import io.proleap.vb6.asg.util.AsgStringUtils;
public abstract class ModuleImpl extends ScopeImpl implements Module {
@@ -299,13 +299,13 @@ public abstract class ModuleImpl extends ScopeImpl implements Module {
@Override
public void addModuleHeader(final ModuleHeaderContext ctx) {
final String versionString = ctx.DOUBLELITERAL().getText();
- version = StringUtils.parseDouble(versionString);
+ version = AsgStringUtils.parseDouble(versionString);
}
@Override
public void addOptionBase(final OptionBaseStmtContext ctx) {
final String optionBaseString = ctx.INTEGERLITERAL().getText();
- optionBase = StringUtils.parseInteger(optionBaseString);
+ optionBase = AsgStringUtils.parseInteger(optionBaseString);
}
@Override
diff --git a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopeImpl.java b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopeImpl.java
index 61b3f5d..e7911e0 100755
--- a/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopeImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/metamodel/impl/ScopeImpl.java
@@ -37,8 +37,8 @@ import java.util.List;
import java.util.Map;
import org.antlr.v4.runtime.ParserRuleContext;
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import com.google.common.collect.Lists;
@@ -321,7 +321,7 @@ import io.proleap.vb6.asg.util.ANTLRUtils;
public abstract class ScopeImpl extends ScopedElementImpl implements Scope {
- private final static Logger LOG = LogManager.getLogger(ScopeImpl.class);
+ private final static Logger LOG = LoggerFactory.getLogger(ScopeImpl.class);
public final static String ME = "ME";
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 bab09b4..e2f8d8c 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,7 @@
package io.proleap.vb6.asg.metamodel.impl;
import org.antlr.v4.runtime.ParserRuleContext;
-import org.apache.logging.log4j.util.Strings;
+import org.apache.commons.lang3.StringUtils;
import io.proleap.vb6.asg.metamodel.Module;
import io.proleap.vb6.asg.metamodel.Program;
@@ -59,6 +59,6 @@ public abstract class ScopedElementImpl extends ASGElementImpl implements Scoped
}
protected String getSymbol(final String name) {
- return Strings.isBlank(name) ? name : name.toLowerCase();
+ return StringUtils.isBlank(name) ? name : name.toLowerCase();
}
}
diff --git a/src/main/java/io/proleap/vb6/asg/resolver/impl/TypeResolverImpl.java b/src/main/java/io/proleap/vb6/asg/resolver/impl/TypeResolverImpl.java
index e2b9759..a2e059b 100755
--- a/src/main/java/io/proleap/vb6/asg/resolver/impl/TypeResolverImpl.java
+++ b/src/main/java/io/proleap/vb6/asg/resolver/impl/TypeResolverImpl.java
@@ -41,7 +41,7 @@ import io.proleap.vb6.asg.metamodel.Program;
import io.proleap.vb6.asg.metamodel.type.Type;
import io.proleap.vb6.asg.metamodel.type.VbBaseType;
import io.proleap.vb6.asg.resolver.TypeResolver;
-import io.proleap.vb6.asg.util.StringUtils;
+import io.proleap.vb6.asg.util.AsgStringUtils;
/**
* Resolves and returns types of AST elements on a syntactic declarative level
@@ -374,9 +374,9 @@ public class TypeResolverImpl implements TypeResolver {
if (value.toLowerCase().equals("true") || value.toLowerCase().equals("false")) {
result = VbBaseType.BOOLEAN;
- } else if (StringUtils.isInteger(value)) {
+ } else if (AsgStringUtils.isInteger(value)) {
result = VbBaseType.LONG;
- } else if (StringUtils.isDouble(value)) {
+ } else if (AsgStringUtils.isDouble(value)) {
result = VbBaseType.DOUBLE;
} else if (value.length() > 1 && value.startsWith("\"") && value.endsWith("\"")) {
result = VbBaseType.STRING;
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 2199a3c..6425426 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
@@ -22,8 +22,8 @@ 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.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import io.proleap.vb6.VisualBasic6Lexer;
import io.proleap.vb6.VisualBasic6Parser;
@@ -57,7 +57,7 @@ import io.proleap.vb6.asg.visitor.impl.VbTypeVisitorImpl;
public class VbParserRunnerImpl implements VbParserRunner {
- protected final static Logger LOG = LogManager.getLogger(VbParserRunnerImpl.class);
+ private final static Logger LOG = LoggerFactory.getLogger(VbParserRunnerImpl.class);
/**
* determines, how deep expressions and their type assignments should be
diff --git a/src/main/java/io/proleap/vb6/asg/util/StringUtils.java b/src/main/java/io/proleap/vb6/asg/util/AsgStringUtils.java
similarity index 93%
rename from src/main/java/io/proleap/vb6/asg/util/StringUtils.java
rename to src/main/java/io/proleap/vb6/asg/util/AsgStringUtils.java
index f1986dc..26abd2c 100755
--- a/src/main/java/io/proleap/vb6/asg/util/StringUtils.java
+++ b/src/main/java/io/proleap/vb6/asg/util/AsgStringUtils.java
@@ -8,7 +8,7 @@
package io.proleap.vb6.asg.util;
-public class StringUtils {
+public class AsgStringUtils {
public static boolean geq(final Character ch1, final Character ch2) {
return Character.toLowerCase(ch1) >= Character.toLowerCase(ch2);
diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml
deleted file mode 100644
index 65a3d76..0000000
--- a/src/main/resources/log4j2.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/test/java/io/proleap/vb6/TestGenerator.java b/src/test/java/io/proleap/vb6/TestGenerator.java
index 06ec201..a595ba3 100755
--- a/src/test/java/io/proleap/vb6/TestGenerator.java
+++ b/src/test/java/io/proleap/vb6/TestGenerator.java
@@ -19,9 +19,9 @@ 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.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.util.Strings;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import io.proleap.vb6.VisualBasic6Parser.StartRuleContext;
import io.proleap.vb6.util.TreeUtils;
@@ -34,7 +34,7 @@ public class TestGenerator {
private static final String JAVA_EXTENSION = ".java";
- private final static Logger LOG = LogManager.getLogger(TestGenerator.class);
+ private final static Logger LOG = LoggerFactory.getLogger(TestGenerator.class);
private final static File OUTPUT_DIRECTORY = new File("src/test/java");
@@ -110,7 +110,7 @@ public class TestGenerator {
subOutputDirectory.mkdirs();
// determine the package name of test classes
- final String subPackageName = Strings.isBlank(packageName) ? subInputDirectoryName
+ final String subPackageName = StringUtils.isBlank(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 a6bee28..ee603b2 100644
--- a/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java
+++ b/src/test/java/io/proleap/vb6/runner/impl/VbParseTestRunnerImpl.java
@@ -21,9 +21,9 @@ 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.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.util.Strings;
+import org.apache.commons.lang3.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import io.proleap.vb6.VisualBasic6Lexer;
import io.proleap.vb6.VisualBasic6Parser;
@@ -38,7 +38,7 @@ import io.proleap.vb6.runner.VbParseTestRunner;
*/
public class VbParseTestRunnerImpl implements VbParseTestRunner {
- private final static Logger LOG = LogManager.getLogger(VbParseTestRunnerImpl.class);
+ private final static Logger LOG = LoggerFactory.getLogger(VbParseTestRunnerImpl.class);
public final static String TREE_SUFFIX = ".tree";
@@ -57,12 +57,12 @@ public class VbParseTestRunnerImpl implements VbParseTestRunner {
final String treeFileData = FileUtils.readFileToString(treeFile);
- if (!Strings.isBlank(treeFileData)) {
+ if (!StringUtils.isBlank(treeFileData)) {
LOG.info("Comparing parse tree with file {}.", treeFile.getName());
final String inputFileTree = Trees.toStringTree(startRule, parser);
- final String cleanedInputFileTree = io.proleap.vb6.util.StringUtils.cleanFileTree(inputFileTree);
- final String cleanedTreeFileData = io.proleap.vb6.util.StringUtils.cleanFileTree(treeFileData);
+ final String cleanedInputFileTree = io.proleap.vb6.util.VbTestStringUtils.cleanFileTree(inputFileTree);
+ final String cleanedTreeFileData = io.proleap.vb6.util.VbTestStringUtils.cleanFileTree(treeFileData);
assertEquals(cleanedTreeFileData, cleanedInputFileTree);
} else {
diff --git a/src/test/java/io/proleap/vb6/util/StringUtils.java b/src/test/java/io/proleap/vb6/util/VbTestStringUtils.java
similarity index 94%
rename from src/test/java/io/proleap/vb6/util/StringUtils.java
rename to src/test/java/io/proleap/vb6/util/VbTestStringUtils.java
index 0d79a2a..9ee522e 100644
--- a/src/test/java/io/proleap/vb6/util/StringUtils.java
+++ b/src/test/java/io/proleap/vb6/util/VbTestStringUtils.java
@@ -1,6 +1,6 @@
package io.proleap.vb6.util;
-public class StringUtils {
+public class VbTestStringUtils {
/**
* To be removed, as soon as the grammar does not require NEWLINEs and WS