List of usage examples for org.apache.commons.vfs2.impl DefaultFileSystemManager freeUnusedResources
public void freeUnusedResources()
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 ww w . ja va 2 s .c om*/ 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.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();/*ww w. j a va2 s . co m*/ 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; }