diff --git a/pom.xml b/pom.xml
index cbf8962..b146092 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
4.0.0
org.atria-soft
archidata
- 0.27.1-SNAPSHOT
+ 0.27.2
Wrapper to manage a simple interface for REST project to bind MySQL, SQLite or mongoDB.
https://github.com/kangaroo-and-rabbit/archidata
diff --git a/src/org/kar/archidata/externalRestApi/typescript/TsClassElement.java b/src/org/kar/archidata/externalRestApi/typescript/TsClassElement.java
index 1cf1d25..a89c0cd 100644
--- a/src/org/kar/archidata/externalRestApi/typescript/TsClassElement.java
+++ b/src/org/kar/archidata/externalRestApi/typescript/TsClassElement.java
@@ -8,8 +8,10 @@ import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.HashSet;
import java.util.List;
+import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
+import java.util.TreeMap;
import org.kar.archidata.externalRestApi.model.ClassEnumModel;
import org.kar.archidata.externalRestApi.model.ClassListModel;
@@ -181,9 +183,10 @@ public class TsClassElement {
public String generateImports(final Set depModels, final TsClassElementGroup tsGroup)
throws IOException {
final Set typeScriptModelAlreadyImported = new HashSet<>();
+ final Map mapOutput = new TreeMap<>();
- final StringBuilder out = new StringBuilder();
for (final ClassModel depModel : depModels) {
+ final StringBuilder inputStream = new StringBuilder();
final TsClassElement tsModel = tsGroup.find(depModel);
if (typeScriptModelAlreadyImported.contains(tsModel)) {
LOGGER.trace("Model alredy imported for typescript");
@@ -191,30 +194,35 @@ public class TsClassElement {
}
typeScriptModelAlreadyImported.add(tsModel);
if (tsModel.nativeType != DefinedPosition.NATIVE) {
- out.append("import {");
+ inputStream.append("import {");
if (tsModel.nativeType != DefinedPosition.NORMAL
|| tsModel.models.get(0).getApiGenerationMode().read()) {
- out.append(tsModel.zodName);
+ inputStream.append(tsModel.zodName);
}
if (tsModel.nativeType == DefinedPosition.NORMAL
&& tsModel.models.get(0).getApiGenerationMode().update()) {
- out.append(", ");
- out.append(tsModel.zodName);
- out.append(MODEL_TYPE_UPDATE);
- out.append(" ");
+ inputStream.append(", ");
+ inputStream.append(tsModel.zodName);
+ inputStream.append(MODEL_TYPE_UPDATE);
+ inputStream.append(" ");
}
if (tsModel.nativeType == DefinedPosition.NORMAL
&& tsModel.models.get(0).getApiGenerationMode().create()) {
- out.append(", ");
- out.append(tsModel.zodName);
- out.append(MODEL_TYPE_CREATE);
- out.append(" ");
+ inputStream.append(", ");
+ inputStream.append(tsModel.zodName);
+ inputStream.append(MODEL_TYPE_CREATE);
+ inputStream.append(" ");
}
- out.append("} from \"./");
- out.append(tsModel.fileName);
- out.append("\";\n");
+ inputStream.append("} from \"./");
+ inputStream.append(tsModel.fileName);
+ inputStream.append("\";\n");
+ mapOutput.put(tsModel.fileName.toString().toLowerCase(), inputStream.toString());
}
}
+ final StringBuilder out = new StringBuilder();
+ for (final Entry elem : mapOutput.entrySet()) {
+ out.append(elem.getValue());
+ }
return out.toString();
}
diff --git a/version.txt b/version.txt
index 6584678..3edc695 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-0.27.1-dev
+0.27.2