package de.uhilger.filecms.api; import de.uhilger.filesystem.FileRef; import de.uhilger.transit.web.RequestKontext; import de.uhilger.transit.web.WebKontext; import java.io.File; import java.util.logging.Logger; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; /** * * @author ulrich */ public class FileMgr implements WebKontext, RequestKontext { private static final Logger logger = Logger.getLogger(FileMgr.class.getName()); public static final String FILE_BASE = "fileBase"; private ServletContext ctx; private HttpServletRequest req; public FileRef getBase() { FileRef ref = null; //String fileBase = getServletContext().getInitParameter(FILE_BASE); // -Dfilecms.base=/pfad/zu/daten String fileBase = System.getProperty("filecms.base"); File file = new File(fileBase); logger.info(file.getAbsolutePath()); logger.info(getWebappsDir().getAbsolutePath()); ref = new FileRef(file.getAbsolutePath(), file.isDirectory()); return ref; } private File getWebappsDir() { File cfile = new File(this.getClass().getResource(this.getClass().getSimpleName() + ".class").getFile()); String path = cfile.getAbsolutePath(); return new File(path.substring(0, path.indexOf(req.getContextPath()))); } @Override public ServletContext getServletContext() { return ctx; } @Override public void setServletContext(ServletContext servletContext) { this.ctx = servletContext; } @Override public HttpServletRequest getRequest() { return req; } @Override public void setRequest(HttpServletRequest r) { this.req = r; } }