/* * Copyright 2013 Guidewire Software, Inc. */ package gw.internal.gosu.module.fs; import gw.fs.IFile; import gw.fs.IFileUtil; import java.io.InputStream; import java.io.IOException; import java.io.OutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.File; public class JavaFileImpl extends JavaResourceImpl implements IFile { public JavaFileImpl(File file) { super(file); } @Override public InputStream openInputStream() throws IOException { return new FileInputStream(_file); } @Override public OutputStream openOutputStream() throws IOException { return new FileOutputStream(_file); } @Override public OutputStream openOutputStreamForAppend() throws IOException { return new FileOutputStream(_file, true); } @Override public String getExtension() { return IFileUtil.getExtension(this); } @Override public String getBaseName() { return IFileUtil.getBaseName(this); } @Override public boolean create() { try { return _file.createNewFile(); } catch (IOException e) { throw new RuntimeException(e); } } @Override public boolean exists() { return _file.isFile(); } }