[jboss-svn-commits] JBL Code SVN: r8172 - labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Dec 10 08:39:19 EST 2006


Author: estebanschifman
Date: 2006-12-10 08:39:15 -0500 (Sun, 10 Dec 2006)
New Revision: 8172

Modified:
   labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FileHandlerFactory.java
   labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java
Log:
Fix FIleHandlerFactory - Set remote dir in FtpFileHandler at connection time

Modified: labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FileHandlerFactory.java
===================================================================
--- labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FileHandlerFactory.java	2006-12-10 12:29:50 UTC (rev 8171)
+++ labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FileHandlerFactory.java	2006-12-10 13:39:15 UTC (rev 8172)
@@ -34,10 +34,13 @@
 
 	public FileHandlerInterface getFileHandler(FileEpr epr) throws CourierException
 	{
-		if (epr instanceof FileEpr)	return new LocalFileHandler	((FileEpr)epr);
 		if (epr instanceof FTPEpr) 	return new FtpFileHandler	((FTPEpr)epr);
+
 		//TODO  Maybe ftps and sftp ?  Wait for Bruno's input
 
+		//  if flow falls through, last option should be local file handler
+		if (epr instanceof FileEpr)	return new LocalFileHandler	((FileEpr)epr);
+
 		throw new CourierException("Unable to obtain a file handler for supplied EPR");
 	}
 	

Modified: labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java
===================================================================
--- labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java	2006-12-10 12:29:50 UTC (rev 8171)
+++ labs/jbossesb/trunk/product/core/rosetta/src/org/jboss/internal/soa/esb/couriers/helpers/FtpFileHandler.java	2006-12-10 13:39:15 UTC (rev 8172)
@@ -5,6 +5,7 @@
 import java.net.URISyntaxException;
 import java.net.URL;
 
+import org.apache.log4j.Logger;
 import org.jboss.soa.esb.addressing.eprs.FTPEpr;
 import org.jboss.soa.esb.couriers.CourierException;
 import org.jboss.soa.esb.couriers.CourierUtil;
@@ -39,13 +40,17 @@
 		if (_port < 0)
 			_port = url.getDefaultPort();
 		//TODO  resolve this - Best bet would be 'local dir' accessors in FTPEpr
-		_localDir = "/tmp";
+		_localDir = System.getProperty("os.name").toLowerCase().contains("windows")?"/temp":"/tmp";
 //		_localDir = _epr.getLocalDir();
 		
 		//TODO  setAscii(boolean)  getAscii() in FTPEpr() ??
 		_isAscii	= true;
 //		_isAscii 	= _epr.getAscii();
-
+		
+		_isPassive 	= false;
+		try { _isPassive =  _epr.getPassive();}
+		catch (URISyntaxException e) { _logger.warn(e); }
+		
 		//TODO Once the RemoteFileSystem has a constructor that takes FTPEpr, we can get rid of this kludge
 		configTreeFromEpr();
 	}
@@ -116,7 +121,17 @@
 	//TODO  check with Bruno - why is the getInstance() not needed ?  is it OK ?
 	protected RemoteFileSystem getHandler() throws CourierException
 	{
-		try { return RemoteFileSystemFactory.getRemoteFileSystem(_tree,true); }
+		try 
+		{ 
+			RemoteFileSystem rfs = RemoteFileSystemFactory.getRemoteFileSystem(_tree,true);
+			try
+			{
+				rfs.setRemoteDir(_remoteDir);
+			}
+			catch (Exception e) { throw new CourierException(e); }
+			
+			return rfs;
+		}
 		catch (RemoteFileSystemException e) {throw new CourierException(e); }
 	}
 	
@@ -139,6 +154,8 @@
 		catch (Exception e) { throw new CourierException(e); }
 	}
 
+	private static final Logger _logger = Logger.getLogger(FtpFileHandler.class);
+
 	protected FTPEpr 	 _epr;
 	protected ConfigTree _tree;
 	




More information about the jboss-svn-commits mailing list