Example usage for org.apache.commons.vfs2 FileSystemManager resolveFile

List of usage examples for org.apache.commons.vfs2 FileSystemManager resolveFile

Introduction

In this page you can find the example usage for org.apache.commons.vfs2 FileSystemManager resolveFile.

Prototype

FileObject resolveFile(URL url) throws FileSystemException;

Source Link

Document

Resolves a URL into a FileObject .

Usage

From source file:org.pentaho.vfs.util.VfsHelper.java

public VfsHelper(FileSystemManager fsManager, String root) throws FileSystemException {
    this.fsManager = fsManager;
    rootFile = fsManager.resolveFile(root);
}

From source file:org.pieShare.pieShareApp.service.fileService.fileListenerService.ApacheFileWatcherService.java

@Override
public void watchDir(File file) throws IOException {

    FileSystemManager fileSystemManager = VFS.getManager();
    FileObject dirToWatchFO = null;
    dirToWatchFO = fileSystemManager.resolveFile(file.getAbsolutePath());

    IFileListenerService fileListener = this.beanService.getBean(ApacheDefaultFileListener.class);
    DefaultFileMonitor fileMonitor = new DefaultFileMonitor(fileListener);

    fileMonitor.setRecursive(true);/*from ww  w  . j a va2  s .c o  m*/
    fileMonitor.addFile(dirToWatchFO);
    fileMonitor.start();

    this.fileMonitors.add(fileMonitor);
}

From source file:org.pieshare.piespring.service.fileListenerService.ApacheFileWatcherService.java

@Override
public void watchDir(File file) throws IOException {

    FileSystemManager fileSystemManager = VFS.getManager();
    FileObject dirToWatchFO = null;
    dirToWatchFO = fileSystemManager.resolveFile(file.getAbsolutePath());

    //IFileListenerService fileListener = this.beanService.getBean(ApacheDefaultFileListener.class);
    DefaultFileMonitor fileMonitor = this.beanService.getBean(DefaultFileMonitor.class);

    fileMonitor.setRecursive(true);//from  ww w  .  j a va 2 s  .  co  m
    fileMonitor.addFile(dirToWatchFO);
    fileMonitor.start();

    this.fileMonitors.add(fileMonitor);
}

From source file:org.renjin.appengine.AppEngineContextFactory.java

public static Session createSession(ServletContext servletContext) {
    FileSystemManager fileSystemManager;
    try {/*from ww  w . j  a  v  a 2s  .  c  o m*/
        fileSystemManager = createFileSystemManager(servletContext);
    } catch (FileSystemException e) {
        LOG.log(Level.SEVERE, "Failed to initialize VFS file system manager", e);
        throw new RuntimeException(e);
    }
    try {

        // initialize our master context here; a fresh but shallow copy will
        // be forked on each incoming request
        Session session = new SessionBuilder().withFileSystemManager(fileSystemManager).withDefaultPackages()
                .build();

        session.setWorkingDirectory(fileSystemManager.resolveFile("file:///"));

        return session;
    } catch (IOException e) {
        LOG.log(Level.SEVERE, "Failed to initialize master context", e);
        throw new RuntimeException(e);
    }
}

From source file:org.renjin.appengine.AppEngineLocalFilesSystemProviderTest.java

@Test
public void test() throws FileSystemException {

    File basePath = new File(getClass().getResource("/jarfiletest.jar").getFile()).getParentFile();

    FileSystemManager dfsm = AppEngineContextFactory
            .createFileSystemManager(new AppEngineLocalFilesSystemProvider(basePath));

    FileObject jarFile = dfsm.resolveFile("/jarfiletest.jar");
    assertThat(jarFile.getName().getURI(), equalTo("file:///jarfiletest.jar"));
    assertThat(jarFile.exists(), equalTo(true));

    FileObject jarRoot = dfsm.resolveFile("jar:file:///jarfiletest.jar!/r/library");
    assertThat(jarRoot.exists(), equalTo(true));
    assertThat(jarRoot.getType(), equalTo(FileType.FOLDER));
    assertThat(jarRoot.getChildren().length, equalTo(1));
}

From source file:org.renjin.primitives.packaging.ClasspathPackage.java

@Override
public FileObject resolvePackageRoot(FileSystemManager fileSystemManager) throws FileSystemException {
    // Find the URL where the package is located
    String qualifiedName = qualifyResourceName("environment");
    URL url = classLoader.getResource(qualifiedName);

    return fileSystemManager.resolveFile(url.toString()).getParent();
}

From source file:org.renjin.util.FileSystemUtils.java

public static FileObject workingDirectory(FileSystemManager fileSystemManager) {
    try {//from   w  w  w .ja v a2s. c  o  m
        return fileSystemManager.resolveFile(new File("").getAbsolutePath());
    } catch (FileSystemException e) {
        throw new RuntimeException("Could not resolve current working directory", e);
    }
}

From source file:org.sonar.plugins.ndepend.ndproj.NdprojCreator.java

/**
 * @return an InputStream for the loaded rules file
 * @throws FileSystemException/*from   w ww.  ja  va 2  s  . co  m*/
 */
private InputStream getRulesInputStream() throws FileSystemException {
    String rulesUrl = settings.getString(NdependConfig.NDEPEND_RULES_URL_KEY);
    InputStream in;
    if (rulesUrl.trim().isEmpty()) {
        LOG.info("No rules configured. Using default rules");
        in = getClass().getResourceAsStream("rules.xml");
    } else {
        LOG.info("Loading rules from {}", rulesUrl);
        FileSystemManager vfs = VFS.getManager();
        FileObject rules = vfs.resolveFile(rulesUrl);
        in = rules.getContent().getInputStream();
    }
    return in;
}

From source file:org.wso2.carbon.inbound.endpoint.protocol.file.FilePollingConsumer.java

/**
 * //from  w w  w  .  ja  va 2  s. c  om
 * Acquire distributed lock if required first, then do the file level locking
 * 
 * @param fsManager
 * @param fileObject
 * @return
 */
private boolean acquireLock(FileSystemManager fsManager, FileObject fileObject) {
    String strContext = fileObject.getName().getURI();
    boolean rtnValue = false;
    try {
        if (distributedLock) {
            if (distributedLockTimeout != null) {
                if (!ClusteringServiceUtil.setLock(strContext, distributedLockTimeout)) {
                    return false;
                }
            } else if (!ClusteringServiceUtil.setLock(strContext)) {
                return false;
            }
        }
        // When processing a directory list is fetched initially. Therefore
        // there is still a chance of file processed by another process.
        // Need to check the source file before processing.
        try {
            String parentURI = fileObject.getParent().getName().getURI();
            if (parentURI.contains("?")) {
                String suffix = parentURI.substring(parentURI.indexOf("?"));
                strContext += suffix;
            }
            FileObject sourceFile = fsManager.resolveFile(strContext);
            if (!sourceFile.exists()) {
                return false;
            }
        } catch (FileSystemException e) {
            return false;
        }
        VFSParamDTO vfsParamDTO = new VFSParamDTO();
        vfsParamDTO.setAutoLockRelease(autoLockRelease);
        vfsParamDTO.setAutoLockReleaseSameNode(autoLockReleaseSameNode);
        vfsParamDTO.setAutoLockReleaseInterval(autoLockReleaseInterval);
        rtnValue = VFSUtils.acquireLock(fsManager, fileObject, vfsParamDTO, fso, true);
    } finally {
        if (distributedLock) {
            ClusteringServiceUtil.releaseLock(strContext);
        }
    }
    return rtnValue;
}

From source file:org.wso2.carbon.mediation.connector.pmode.PModeRepository.java

/**
 * Constructor for PMode repository implementation.
 *
 * @param pmodeRepositoryPath Path to the directory containing PMode files
 *//*ww w.j  av  a 2 s  . c om*/
private PModeRepository(String pmodeRepositoryPath) throws AxisFault {

    if (log.isDebugEnabled()) {
        log.debug("Initializing PMode repository for the location : " + pmodeRepositoryPath);
    }

    this.pModeMap = new HashMap<String, PMode>();
    this.fileNameRefMap = new HashMap<String, String>();
    this.possibleNameChangeMap = new HashMap<String, String>();
    File pmodeFolder;

    try {
        this.pModeUnmarshaller = JAXBContext.newInstance(PMode.class).createUnmarshaller();
    } catch (JAXBException e) {
        log.error("Unable to create JAXB unmarshaller for : " + PMode.class, e);
        throw new AxisFault("Unable to create JAXB unmarshaller for : " + PMode.class, e);
    }

    if (pmodeRepositoryPath != null) {
        pmodeFolder = new File(pmodeRepositoryPath);
        if (!pmodeFolder.exists() || !pmodeFolder.isDirectory()) {
            log.warn("Provided PMode directory is invalid, falling back to default PMode Directory : "
                    + AS4Constants.AS4_PMODE_LOCATION);
            pmodeFolder = new File(AS4Constants.AS4_PMODE_LOCATION);
        }
    } else {
        if (log.isDebugEnabled()) {
            log.debug("PMode directory not provided, falling back to default PMode Directory : "
                    + AS4Constants.AS4_PMODE_LOCATION);
        }
        pmodeFolder = new File(AS4Constants.AS4_PMODE_LOCATION);
    }

    traversePmodeDirectory(pmodeFolder);
    try {
        FileSystemManager fileSystemManager = VFS.getManager();
        FileObject listenDirectory = fileSystemManager.resolveFile(pmodeFolder.getAbsolutePath());
        this.basePathLength = listenDirectory.getName().getPathDecoded().length() + 1;
        DefaultFileMonitor fileMonitor = new DefaultFileMonitor(this);
        fileMonitor.addFile(listenDirectory);
        fileMonitor.start();
    } catch (FileSystemException e) {
        log.warn("Error registering PMode watcher, hence needs to restart the server when PModes "
                + "change or added, " + e.getMessage(), e);
    }
}