summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src
diff options
context:
space:
mode:
authorralph isenmann2020-12-09 13:37:26 +0100
committerralph isenmann2020-12-09 13:37:26 +0100
commit0f04751aead49de852c99540df5518a882c8270b (patch)
tree0670f049736a54f1b4a35e5af20d2699a5ac8dd6 /dozentenmodul/src
parent[client] Fix reading from downloaded tar.gz file (diff)
downloadtutor-module-0f04751aead49de852c99540df5518a882c8270b.tar.gz
tutor-module-0f04751aead49de852c99540df5518a882c8270b.tar.xz
tutor-module-0f04751aead49de852c99540df5518a882c8270b.zip
[client] Refactoring
- update DockerfileFilter to allow [Dd]ockerfile filenames - update readContainerRecipe-File
Diffstat (limited to 'dozentenmodul/src')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java12
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java10
2 files changed, 16 insertions, 6 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java
index be96f283..874a2435 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/wizard/page/ContainerUploadPage.java
@@ -23,6 +23,8 @@ import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.IOException;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
public class ContainerUploadPage extends ContainerUploadPageLayout {
@@ -241,9 +243,13 @@ public class ContainerUploadPage extends ContainerUploadPageLayout {
@Override public boolean accept(File f) {
- boolean accept = true;
- if (f.isFile() && !f.getName().equals("dockerfile"))
- accept = false;
+
+ Pattern p = Pattern.compile("[Dd]ockerfile");
+ Matcher m = p.matcher(f.getName());
+
+ boolean accept = false;
+ if (f.isFile() && m.matches())
+ accept = true;
return accept;
}
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java b/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java
index 1f28ce06..f41b4b47 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/model/ContainerDefinition.java
@@ -154,10 +154,14 @@ public class ContainerDefinition {
try {
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
- byte[] rawFile = new byte[(int) file.length()];
- bis.read(rawFile);
+ ByteArrayOutputStream rawFile = new ByteArrayOutputStream();
+ int count;
+ byte[] data = new byte[1024];
+ while ((count = bis.read(data)) != -1) {
+ rawFile.write(data,0,count);
+ }
- String rawRecipe = new String(rawFile, StandardCharsets.UTF_8);
+ String rawRecipe = new String(rawFile.toByteArray(), StandardCharsets.UTF_8);
// replace windows by unix EOL
recipe = rawRecipe.replaceAll("\\r\\n", "\n");