Example usage for org.apache.commons.vfs2.impl DefaultFileSystemManager addProvider

List of usage examples for org.apache.commons.vfs2.impl DefaultFileSystemManager addProvider

Introduction

In this page you can find the example usage for org.apache.commons.vfs2.impl DefaultFileSystemManager addProvider.

Prototype

public void addProvider(final String[] urlSchemes, final FileProvider provider) throws FileSystemException 

Source Link

Document

Registers a file system provider.

Usage

From source file:com.seer.datacruncher.spring.ConnectionsFileDownloadController.java

private String getFileContent(long connId, ConnectionsEntity connectionEntity) {
    String content = "";
    DefaultFileSystemManager fsManager = null;
    FileObject fileObject = null;
    try {/*from   w ww .j  a v a2  s . co m*/

        fsManager = (DefaultFileSystemManager) VFS.getManager();
        int serviceId = connectionEntity.getService();

        String hostName = connectionEntity.getHost();
        String port = connectionEntity.getPort();
        String userName = connectionEntity.getUserName();
        String password = connectionEntity.getPassword();
        String inputDirectory = connectionEntity.getDirectory();
        String fileName = connectionEntity.getFileName();

        log.info("Trying to Server polling at server [" + hostName + ":" + port + "] with user[" + userName
                + "].");

        String url = "";
        if (serviceId == Servers.SAMBA.getDbCode()) {
            if (!fsManager.hasProvider("smb")) {
                fsManager.addProvider("smb", new SmbFileProvider());
            }
            url = "smb://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory
                    + "/" + fileName;
        } else if (serviceId == Servers.HTTP.getDbCode()) {
            if (!fsManager.hasProvider("http")) {
                fsManager.addProvider("http", new HttpFileProvider());
            }
            url = "http://" + hostName + ":" + port + "/" + inputDirectory + "/" + fileName;
        } else if (serviceId == Servers.FTP.getDbCode()) {
            if (!fsManager.hasProvider("ftp")) {
                fsManager.addProvider("ftp", new SmbFileProvider());
            }
            url = "ftp://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory
                    + "/" + fileName;
        }

        fileObject = fsManager.resolveFile(url);

        if (fileObject == null || !fileObject.exists() || fileObject.getType().equals(FileType.IMAGINARY)) {
            return null;
        }

        BufferedReader fileReader = new BufferedReader(
                new InputStreamReader(fileObject.getContent().getInputStream()));
        StringBuilder sb = new StringBuilder();

        String line;
        while ((line = fileReader.readLine()) != null) {
            sb.append(line);
        }

        content = sb.toString();

    } catch (Exception ex) {

    } finally {
        try {
            if (fileObject != null) {
                fileObject.close();
            }
            if (fsManager != null) {
                fsManager.freeUnusedResources();
                fsManager.close();
                fsManager = null;
            }
        } catch (Exception ex) {

        } finally {
            fileObject = null;
            fsManager = null;
        }
    }
    return content;

}

From source file:com.seer.datacruncher.services.scheduler.PlannerSetStatusJob.java

private boolean checkServiceRunning(ConnectionsEntity conn) {

    boolean success = true;
    String url = "";
    DefaultFileSystemManager fsManager = null;
    String userName = "";
    String password = "";
    String hostName = "";
    String port = "";
    String inputDirectory = "";
    String fileName = "";

    if (conn != null) {
        userName = conn.getUserName();/*from   w  w  w . ja v a2 s.c  o m*/
        password = conn.getPassword();
        hostName = conn.getHost();
        port = conn.getPort();
        inputDirectory = conn.getDirectory();
        fileName = conn.getFileName();
    }

    if (conn.getIdConnType() == GenericType.DownloadTypeConn) {
        if (fileName == null || fileName.trim().length() == 0) {
            return false;
        }
        inputDirectory = inputDirectory + "/" + fileName;
    }
    try {
        fsManager = (DefaultFileSystemManager) VFS.getManager();
        if (conn.getService() == Servers.SAMBA.getDbCode()) {
            if (!fsManager.hasProvider("smb")) {
                fsManager.addProvider("smb", new SmbFileProvider());
            }
            url = "smb://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory;
        } else if (conn.getService() == Servers.HTTP.getDbCode()) {
            if (!fsManager.hasProvider("http")) {
                fsManager.addProvider("http", new HttpFileProvider());
            }
            url = "http://" + hostName + ":" + port + "/" + inputDirectory;
        } else if (conn.getService() == Servers.FTP.getDbCode()) {
            if (!fsManager.hasProvider("ftp")) {
                fsManager.addProvider("ftp", new FtpFileProvider());
            }
            url = "ftp://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory;
        }

        final FileObject fileObject = fsManager.resolveFile(url);

        if (fileObject == null || !fileObject.exists()) {
            success = false;
        }

    } catch (Exception ex) {
        success = false;
    } finally {
        if (fsManager != null)
            fsManager.close();
    }
    return success;
}

From source file:com.seer.datacruncher.spring.IsSuccessfulConnectionController.java

private String checkServiceRunning(int service, String connID) {

    String success = "true";
    String url = "";
    ConnectionsEntity conn = connectionsDao.find(Long.parseLong(connID));
    DefaultFileSystemManager fsManager = null;
    FileObject fileObject = null;
    String userName = "";
    String password = "";
    String hostName = "";
    String port = "";
    String inputDirectory = "";
    String fileName = "";
    int connType = 1;

    if (conn != null) {
        userName = conn.getUserName();//from  www. j  av  a 2 s .  c  om
        password = conn.getPassword();
        hostName = conn.getHost();
        port = conn.getPort();
        inputDirectory = conn.getDirectory();
        fileName = conn.getFileName();
        connType = conn.getIdConnType();

    }

    if (connType == GenericType.DownloadTypeConn) {
        if (fileName == null || fileName.trim().length() == 0) {
            return "false";
        } else {
            fileName = "/" + fileName;
        }
    } else {
        fileName = "";
    }

    try {
        fsManager = (DefaultFileSystemManager) VFS.getManager();
        if (service == Servers.SAMBA.getDbCode()) {
            if (!fsManager.hasProvider("smb")) {
                fsManager.addProvider("smb", new SmbFileProvider());
            }
            url = "smb://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory
                    + fileName;
        } else if (service == Servers.HTTP.getDbCode()) {
            if (!fsManager.hasProvider("http")) {
                fsManager.addProvider("http", new HttpFileProvider());
            }
            url = "http://" + hostName + ":" + port + "/" + inputDirectory + fileName;
        } else if (service == Servers.FTP.getDbCode()) {
            if (!fsManager.hasProvider("ftp")) {
                fsManager.addProvider("ftp", new FtpFileProvider());
            }
            url = "ftp://" + userName + ":" + password + "@" + hostName + ":" + port + "/" + inputDirectory
                    + fileName;
        }

        fileObject = fsManager.resolveFile(url);

        if (fileObject == null || !fileObject.exists()) {
            success = "false";
        }

        if (connType == GenericType.DownloadTypeConn) {
            if (fileObject.getType().equals(FileType.IMAGINARY)) {
                success = "false";
            }
            byte data[] = new byte[(int) fileObject.getContent().getSize()];
            fileObject.getContent().getInputStream().read(data);
        }

    } catch (Exception ex) {
        success = "false";
    } finally {
        try {
            if (fileObject != null) {
                fileObject.close();
            }
            if (fsManager != null) {
                fsManager.freeUnusedResources();
                fsManager.close();
                fsManager = null;
            }
        } catch (Exception ex) {

        } finally {
            fileObject = null;
            fsManager = null;
        }
    }

    return success;
}

From source file:org.apache.accumulo.start.classloader.vfs.AccumuloVFSClassLoader.java

public static FileSystemManager generateVfs() throws FileSystemException {
    DefaultFileSystemManager vfs = new DefaultFileSystemManager();
    vfs.addProvider("res", new org.apache.commons.vfs2.provider.res.ResourceFileProvider());
    vfs.addProvider("zip", new org.apache.commons.vfs2.provider.zip.ZipFileProvider());
    vfs.addProvider("gz", new org.apache.commons.vfs2.provider.gzip.GzipFileProvider());
    vfs.addProvider("ram", new org.apache.commons.vfs2.provider.ram.RamFileProvider());
    vfs.addProvider("file", new org.apache.commons.vfs2.provider.local.DefaultLocalFileProvider());
    vfs.addProvider("jar", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("http", new org.apache.commons.vfs2.provider.http.HttpFileProvider());
    vfs.addProvider("https", new org.apache.commons.vfs2.provider.https.HttpsFileProvider());
    vfs.addProvider("ftp", new org.apache.commons.vfs2.provider.ftp.FtpFileProvider());
    vfs.addProvider("ftps", new org.apache.commons.vfs2.provider.ftps.FtpsFileProvider());
    vfs.addProvider("war", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("par", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("ear", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("sar", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("ejb3", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("tmp", new org.apache.commons.vfs2.provider.temp.TemporaryFileProvider());
    vfs.addProvider("tar", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("tbz2", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("tgz", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("bz2", new org.apache.commons.vfs2.provider.bzip2.Bzip2FileProvider());
    vfs.addProvider("hdfs", new HdfsFileProvider());
    vfs.addExtensionMap("jar", "jar");
    vfs.addExtensionMap("zip", "zip");
    vfs.addExtensionMap("gz", "gz");
    vfs.addExtensionMap("tar", "tar");
    vfs.addExtensionMap("tbz2", "tar");
    vfs.addExtensionMap("tgz", "tar");
    vfs.addExtensionMap("bz2", "bz2");
    vfs.addMimeTypeMap("application/x-tar", "tar");
    vfs.addMimeTypeMap("application/x-gzip", "gz");
    vfs.addMimeTypeMap("application/zip", "zip");
    vfs.setFileContentInfoFactory(new FileContentInfoFilenameFactory());
    vfs.setFilesCache(new SoftRefFilesCache());
    File cacheDir = computeTopCacheDir();
    vfs.setReplicator(new UniqueFileReplicator(cacheDir));
    vfs.setCacheStrategy(CacheStrategy.ON_RESOLVE);
    vfs.init();//from   w  ww.  j  a  v a 2s.c  o m
    vfsInstances.add(new WeakReference<DefaultFileSystemManager>(vfs));
    return vfs;
}

From source file:org.apache.metron.common.utils.VFSClassloaderUtil.java

/**
 * Create a FileSystem manager suitable for our purposes.
 * This manager supports files of the following types:
 * * res - resource files/*  w w w  .ja  va  2 s .c  o m*/
 * * jar
 * * tar
 * * bz2
 * * tgz
 * * zip
 * * HDFS
 * * FTP
 * * HTTP/S
 * * file
 * @return
 * @throws FileSystemException
 */
public static FileSystemManager generateVfs() throws FileSystemException {
    DefaultFileSystemManager vfs = new DefaultFileSystemManager();
    vfs.addProvider("res", new org.apache.commons.vfs2.provider.res.ResourceFileProvider());
    vfs.addProvider("zip", new org.apache.commons.vfs2.provider.zip.ZipFileProvider());
    vfs.addProvider("gz", new org.apache.commons.vfs2.provider.gzip.GzipFileProvider());
    vfs.addProvider("ram", new org.apache.commons.vfs2.provider.ram.RamFileProvider());
    vfs.addProvider("file", new org.apache.commons.vfs2.provider.local.DefaultLocalFileProvider());
    vfs.addProvider("jar", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("http", new org.apache.commons.vfs2.provider.http.HttpFileProvider());
    vfs.addProvider("https", new org.apache.commons.vfs2.provider.https.HttpsFileProvider());
    vfs.addProvider("ftp", new org.apache.commons.vfs2.provider.ftp.FtpFileProvider());
    vfs.addProvider("ftps", new org.apache.commons.vfs2.provider.ftps.FtpsFileProvider());
    vfs.addProvider("war", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("par", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("ear", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("sar", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("ejb3", new org.apache.commons.vfs2.provider.jar.JarFileProvider());
    vfs.addProvider("tmp", new org.apache.commons.vfs2.provider.temp.TemporaryFileProvider());
    vfs.addProvider("tar", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("tbz2", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("tgz", new org.apache.commons.vfs2.provider.tar.TarFileProvider());
    vfs.addProvider("bz2", new org.apache.commons.vfs2.provider.bzip2.Bzip2FileProvider());
    vfs.addProvider("hdfs", new HdfsFileProvider());
    vfs.addExtensionMap("jar", "jar");
    vfs.addExtensionMap("zip", "zip");
    vfs.addExtensionMap("gz", "gz");
    vfs.addExtensionMap("tar", "tar");
    vfs.addExtensionMap("tbz2", "tar");
    vfs.addExtensionMap("tgz", "tar");
    vfs.addExtensionMap("bz2", "bz2");
    vfs.addMimeTypeMap("application/x-tar", "tar");
    vfs.addMimeTypeMap("application/x-gzip", "gz");
    vfs.addMimeTypeMap("application/zip", "zip");
    vfs.setFileContentInfoFactory(new FileContentInfoFilenameFactory());
    vfs.setFilesCache(new SoftRefFilesCache());
    vfs.setReplicator(new UniqueFileReplicator(new File(System.getProperty("java.io.tmpdir"))));
    vfs.setCacheStrategy(CacheStrategy.ON_RESOLVE);
    vfs.init();
    return vfs;
}

From source file:org.efaps.db.store.VFSStoreResource.java

/**
 * @return DefaultFileSystemManager/*from  w  w w .ja  v  a2  s .c o  m*/
 * @throws EFapsException on error
 */
private DefaultFileSystemManager evaluateFileSystemManager() throws EFapsException {
    final DefaultFileSystemManager ret = new DefaultFileSystemManager();

    final String baseName = getProperties().get(VFSStoreResource.PROPERTY_BASENAME);
    final String provider = getProperties().get(VFSStoreResource.PROPERTY_PROVIDER);
    try {
        ret.init();
        final FileProvider fileProvider = (FileProvider) Class.forName(provider).newInstance();
        ret.addProvider(baseName, fileProvider);
        ret.setBaseFile(fileProvider.findFile(null, baseName, null));
    } catch (final FileSystemException e) {
        throw new EFapsException(VFSStoreResource.class, "evaluateFileSystemManager.FileSystemException", e,
                provider, baseName);
    } catch (final InstantiationException e) {
        throw new EFapsException(VFSStoreResource.class, "evaluateFileSystemManager.InstantiationException", e,
                baseName, provider);
    } catch (final IllegalAccessException e) {
        throw new EFapsException(VFSStoreResource.class, "evaluateFileSystemManager.IllegalAccessException", e,
                provider);
    } catch (final ClassNotFoundException e) {
        throw new EFapsException(VFSStoreResource.class, "evaluateFileSystemManager.ClassNotFoundException", e,
                provider);
    }
    return ret;
}

From source file:org.kalypso.commons.io.VFSUtilities.java

/**
 * Configures a DefaultFileSystemManager with support for webdav and registered providers.
 *//*ww w  .  ja va 2  s. co  m*/
private static void configureManager(final DefaultFileSystemManager fsManager) throws FileSystemException {
    final String[] schemes = fsManager.getSchemes();
    final List<String> schemeList = Arrays.asList(schemes);

    // maybe add webdav
    if (!schemeList.contains("webdav")) //$NON-NLS-1$
    {
        KalypsoCommonsDebug.DEBUG.printf("Adding webdav file provider ...%n"); //$NON-NLS-1$
        fsManager.addProvider("webdav", new WebdavFileProvider()); //$NON-NLS-1$
    }

    final Map<String, IConfigurationElement> providerLocations = readExtensions();
    for (final Map.Entry<String, IConfigurationElement> entry : providerLocations.entrySet()) {
        final IConfigurationElement element = entry.getValue();

        final String scheme = element.getAttribute("scheme"); //$NON-NLS-1$
        if (!schemeList.contains(scheme)) {
            try {
                final VFSProviderExtension provider = (VFSProviderExtension) element
                        .createExecutableExtension("class"); //$NON-NLS-1$
                fsManager.addProvider(scheme, provider.getProvider());
                provider.init(fsManager);
            } catch (final CoreException e) {
                throw new FileSystemException(
                        Messages.getString("org.kalypso.commons.io.VFSUtilities.0") + scheme, e); //$NON-NLS-1$
            }
        }
    }
}

From source file:org.kalypso.service.unittests.WebDavRead.java

/**
 * This function tries to copy a file from a webdav.
 *//* w  w w .  ja  va2  s  . c  o m*/
@Test
public void testWebDavRead() throws IOException {
    final DefaultFileSystemManager manager = new DefaultFileSystemManager();
    manager.addProvider("webdav", new WebdavFileProvider());
    manager.addProvider("file", new DefaultLocalFileProvider());
    manager.init();

    final FileObject davFile = manager
            .resolveFile("webdav://albert:gnimfe@ibpm.bjoernsen.de/dav/pub/Test/test.txt");
    Assert.assertNotNull(davFile);

    final File file = new File(FileUtilities.TMP_DIR, "davRead.txt");
    final FileObject tmpFile = manager.toFileObject(file);
    Assert.assertNotNull(tmpFile);

    InputStream is = null;
    OutputStream os = null;

    try {
        is = davFile.getContent().getInputStream();
        os = tmpFile.getContent().getOutputStream();

        /* Copying ... */
        IOUtils.copy(is, os);

        is.close();
        os.close();
    } finally {
        IOUtils.closeQuietly(is);
        IOUtils.closeQuietly(os);
    }

    Assert.assertTrue(tmpFile.exists());
}

From source file:org.kalypso.service.unittests.WebDavWrite.java

/**
 * This function tries to copy a file to a webdav.
 *///from   ww w  . j  a va2s  .c om
@Test
public void testWebDavWrite() throws IOException {
    final DefaultFileSystemManager manager = new DefaultFileSystemManager();
    manager.addProvider("webdav", new WebdavFileProvider());
    manager.addProvider("file", new DefaultLocalFileProvider());
    manager.addProvider("tmp", new TemporaryFileProvider());

    manager.setDefaultProvider(new UrlFileProvider());
    manager.setFilesCache(new DefaultFilesCache());
    manager.setTemporaryFileStore(new DefaultFileReplicator());
    manager.init();

    final File file = new File(FileUtilities.TMP_DIR, "davWrite.txt");
    final FileObject testFile = manager.toFileObject(file);

    final FileObject davFile = manager
            .resolveFile("webdav://albert:gnimfe@ibpm.bjoernsen.de/dav/pub/Test/test.txt");
    Assert.assertNotNull(davFile);

    FileUtil.copyContent(testFile, davFile);

    Assert.assertTrue(davFile.exists());
}

From source file:org.metaborg.intellij.vfs.IntelliJFileSystemManagerProvider.java

/**
 * {@inheritDoc}/*from  w w  w.  j  ava 2 s  .  c o m*/
 */
@Override
protected void addDefaultProvider(final DefaultFileSystemManager manager) throws FileSystemException {
    final IntelliJFileProvider fileProvider = this.fileProviderFactory.create();
    manager.addProvider(IntelliJScheme, fileProvider);
    manager.setDefaultProvider(fileProvider);
}