package co.codewizards.cloudstore.ls.client.util; import static co.codewizards.cloudstore.core.util.AssertUtil.*; import co.codewizards.cloudstore.core.io.IInputStream; import co.codewizards.cloudstore.core.io.IOutputStream; import co.codewizards.cloudstore.core.oio.File; import co.codewizards.cloudstore.ls.client.LocalServerClient; /** * Utility class for operating on a {@link File} instance inside the LocalServer's VM. * <p> * Most importantly, this is used to create instances of {@link IInputStream} or * {@link IOutputStream} inside the LocalServer's VM. * * @author Marco หงุ่ยตระกูล-Schulze - marco at codewizards dot co */ public class FileLs { private FileLs() { } public static IInputStream createInputStream(final File file) { assertNotNull(file, "file"); IInputStream in = LocalServerClient.getInstance().invoke(file, "createInputStream"); return in; } public static IOutputStream createOutputStream(final File file) { assertNotNull(file, "file"); IOutputStream out = LocalServerClient.getInstance().invoke(file, "createOutputStream"); return out; } public static IOutputStream createOutputStream(final File file, boolean append) { assertNotNull(file, "file"); IOutputStream out = LocalServerClient.getInstance().invoke(file, "createOutputStream", append); return out; } }