diff --git a/src/main/java/ley/anvil/addonscript/installer/IInstaller.java b/src/main/java/ley/anvil/addonscript/installer/IInstaller.java new file mode 100644 index 0000000..d5d6aed --- /dev/null +++ b/src/main/java/ley/anvil/addonscript/installer/IInstaller.java @@ -0,0 +1,9 @@ +package ley.anvil.addonscript.installer; + +import java.io.File; + +public interface IInstaller { + + void install(String[] params, File input); + +} diff --git a/src/main/java/ley/anvil/addonscript/installer/InternalDirInstaller.java b/src/main/java/ley/anvil/addonscript/installer/InternalDirInstaller.java new file mode 100644 index 0000000..e8a17c7 --- /dev/null +++ b/src/main/java/ley/anvil/addonscript/installer/InternalDirInstaller.java @@ -0,0 +1,28 @@ +package ley.anvil.addonscript.installer; + +import ley.anvil.addonscript.installer.IInstaller; + +import java.io.*; +import java.nio.file.Files; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; + +public class InternalDirInstaller implements IInstaller { + + public static String ID = "internal.dir"; + + @Override + public void install(String[] params, File input) { + if (params.length >= 1) { + try { + InputStream in = new FileInputStream(input); + Files.copy(in, Paths.get(params[0]), StandardCopyOption.REPLACE_EXISTING); + } catch (IOException e) { + e.printStackTrace(); + } + } else { + throw new RuntimeException("No directory specified for file " + input.toString()); + } + } + +} diff --git a/src/main/java/ley/anvil/addonscript/util/IInstaller.java b/src/main/java/ley/anvil/addonscript/util/IInstaller.java deleted file mode 100644 index 7f589e1..0000000 --- a/src/main/java/ley/anvil/addonscript/util/IInstaller.java +++ /dev/null @@ -1,9 +0,0 @@ -package ley.anvil.addonscript.util; - -import java.io.File; - -public interface IInstaller { - - void install(String[] params, String filelink); - -}