diff options
Diffstat (limited to 'java/src/com/zerotier/one/JavaFileProvider.java')
-rw-r--r-- | java/src/com/zerotier/one/JavaFileProvider.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/java/src/com/zerotier/one/JavaFileProvider.java b/java/src/com/zerotier/one/JavaFileProvider.java new file mode 100644 index 00000000..41889e2f --- /dev/null +++ b/java/src/com/zerotier/one/JavaFileProvider.java @@ -0,0 +1,46 @@ +package com.zerotier.one; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; + +public class JavaFileProvider implements DataStoreFileProvider { + private String _path; + + public JavaFileProvider(String path) { + this._path = path; + } + + @Override + public FileInputStream getInputFileStream(String name) + throws FileNotFoundException { + File f = new File(_path + File.separator + name); + return new FileInputStream(f); + } + + @Override + public FileOutputStream getOutputFileStream(String name) + throws FileNotFoundException { + File f = new File(_path + File.separator + name); + if(!f.exists()) + { + try { + f.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + return new FileOutputStream(f); + } + + @Override + public void deleteFile(String name) throws IOException { + File f = new File(_path + File.separator + name); + boolean success = f.delete(); + if(!success) { + throw new IOException("Unable to delete file: " + _path + File.pathSeparator + name); + } + } +} |