diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..ebd65fc
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 0000000..712ab9d
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__junit_junit_4_13_1.xml b/.idea/libraries/Maven__junit_junit_4_13_1.xml
new file mode 100644
index 0000000..9fa24fc
--- /dev/null
+++ b/.idea/libraries/Maven__junit_junit_4_13_1.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
new file mode 100644
index 0000000..f58bbc1
--- /dev/null
+++ b/.idea/libraries/Maven__org_hamcrest_hamcrest_core_1_3.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
index e69afb6..378cb91 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -1,5 +1,12 @@
+
+
+
diff --git a/UMLClassParser.iml b/UMLClassParser.iml
index c90834f..5f13780 100644
--- a/UMLClassParser.iml
+++ b/UMLClassParser.iml
@@ -1,11 +1,17 @@
-
-
-
+
+
+
+
-
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..fea03bb
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,24 @@
+
+
+ 4.0.0
+
+ com.github.nilstrieb
+ UMLClassParser
+ 0.9-SNAPSHOT
+
+
+ junit
+ junit
+ RELEASE
+ test
+
+
+
+
+ 14
+ 14
+
+
+
\ No newline at end of file
diff --git a/src/META-INF/MANIFEST.MF b/src/main/java/META-INF/MANIFEST.MF
similarity index 100%
rename from src/META-INF/MANIFEST.MF
rename to src/main/java/META-INF/MANIFEST.MF
diff --git a/src/Regex.java b/src/main/java/Regex.java
similarity index 100%
rename from src/Regex.java
rename to src/main/java/Regex.java
diff --git a/src/UMLClass.java b/src/main/java/UMLClass.java
similarity index 85%
rename from src/UMLClass.java
rename to src/main/java/UMLClass.java
index c151d66..6fd388e 100644
--- a/src/UMLClass.java
+++ b/src/main/java/UMLClass.java
@@ -1,6 +1,4 @@
-import javax.print.DocFlavor;
import java.util.ArrayList;
-import java.util.regex.Pattern;
public class UMLClass {
@@ -8,6 +6,8 @@ public class UMLClass {
private final String fullName;
private final String packageString;
+ private final boolean isAbstract;
+
private final ArrayList fields = new ArrayList<>();
private final ArrayList methods = new ArrayList<>();
@@ -28,7 +28,16 @@ public class UMLClass {
String[] lines = classDiagram.split("\n");
String[] linesBeheaded = new String[lines.length - 1];
- this.fullName = lines[0];
+
+ String name = lines[0];
+ if(name.matches("/.+/")){
+ isAbstract = true;
+ this.fullName = name.replaceAll("/(.+)/", "$1");
+ } else {
+ isAbstract = false;
+ this.fullName = name;
+ }
+
this.name = lines[0].split(" ")[0];
System.arraycopy(lines, 1, linesBeheaded, 0, linesBeheaded.length);
@@ -59,7 +68,7 @@ public class UMLClass {
if (!packageString.equals("")) {
s.append("package ").append(packageString).append(";\n\n");
}
- s.append("public class ").append(fullName).append(" {\n\n");
+ s.append("public ").append(isAbstract ? "abstract " : "").append("class ").append(fullName).append(" {\n\n");
if (fields.size() > 0) {
for (UMLField field : fields) {
diff --git a/src/UMLClassView.form b/src/main/java/UMLClassView.form
similarity index 100%
rename from src/UMLClassView.form
rename to src/main/java/UMLClassView.form
diff --git a/src/UMLClassView.java b/src/main/java/UMLClassView.java
similarity index 100%
rename from src/UMLClassView.java
rename to src/main/java/UMLClassView.java
diff --git a/src/UMLConverterMain.java b/src/main/java/UMLConverterMain.java
similarity index 100%
rename from src/UMLConverterMain.java
rename to src/main/java/UMLConverterMain.java
diff --git a/src/UMLField.java b/src/main/java/UMLField.java
similarity index 100%
rename from src/UMLField.java
rename to src/main/java/UMLField.java
diff --git a/src/UMLManager.java b/src/main/java/UMLManager.java
similarity index 100%
rename from src/UMLManager.java
rename to src/main/java/UMLManager.java
diff --git a/src/UMLMethod.java b/src/main/java/UMLMethod.java
similarity index 100%
rename from src/UMLMethod.java
rename to src/main/java/UMLMethod.java
diff --git a/src/XMLParser.java b/src/main/java/XMLParser.java
similarity index 100%
rename from src/XMLParser.java
rename to src/main/java/XMLParser.java