[jboss-svn-commits] JBL Code SVN: r18526 - in labs/jbossesb/workspace/chharris: product/lib/ext and 10 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Feb 20 09:21:22 EST 2008
Author: kevin.conner at jboss.com
Date: 2008-02-20 09:21:22 -0500 (Wed, 20 Feb 2008)
New Revision: 18526
Added:
labs/jbossesb/workspace/chharris/product/lib/ext/edtftpj-pro-1.5.6.jar
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpsImpl.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/Handler.java
Removed:
labs/jbossesb/workspace/chharris/product/lib/ext/edtftpj-1.5.4.jar
labs/jbossesb/workspace/chharris/qa/lib/ext/edtftpj-pro.jar
Modified:
labs/jbossesb/workspace/chharris/product/install/Deployment.txt
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java
labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java
Log:
Added FTPS codebase on behalf of Chris
Modified: labs/jbossesb/workspace/chharris/product/install/Deployment.txt
===================================================================
--- labs/jbossesb/workspace/chharris/product/install/Deployment.txt 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/install/Deployment.txt 2008-02-20 14:21:22 UTC (rev 18526)
@@ -23,7 +23,7 @@
| | |
| cglib | 2.0-RC2 (full) | http://cglib.sourceforge.net/
| XStream | 1.1.3 | http://xstream.codehaus.org/
-| edtftpj | 1.5.2 | http://www.enterprisedt.com/products/edtftpj/download.html
+| edtftpj | 1.5.6 | http://www.enterprisedt.com/products/edtftpj/download.html
| | |
| milyn-commons | 0.9 | http://milyn.codehaus.org/downloads
| milyn-smooks-core | 0.9 | http://milyn.codehaus.org/downloads
Deleted: labs/jbossesb/workspace/chharris/product/lib/ext/edtftpj-1.5.4.jar
===================================================================
(Binary files differ)
Added: labs/jbossesb/workspace/chharris/product/lib/ext/edtftpj-pro-1.5.6.jar
===================================================================
(Binary files differ)
Property changes on: labs/jbossesb/workspace/chharris/product/lib/ext/edtftpj-pro-1.5.6.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java (rev 0)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -0,0 +1,44 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ */
+
+package org.jboss.internal.soa.esb.addressing.eprs;
+
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
+
+public class DefaultFtpsReplyToEpr extends FTPSEpr
+{
+
+ public DefaultFtpsReplyToEpr(FTPSEpr epr)
+ throws URISyntaxException, MalformedURLException
+ {
+ super(epr.getURL());
+ String suffix = DefaultFileReplyToEpr.uniqueFileSuffix(epr);
+ setInputSuffix(suffix);
+ setPostSuffix(suffix);
+ setPostDelete(true);
+
+ setPassive(epr.getPassive());
+ setCertificateURL(epr.getCertificateURL());
+ }
+
+}
Property changes on: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/eprs/DefaultFtpsReplyToEpr.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/addressing/helpers/EPRHelper.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -159,6 +159,8 @@
if (epr instanceof EmailEpr)
eprType = EmailEpr.type().toString();
+ else if (epr instanceof FTPSEpr)
+ eprType = FTPSEpr.type().toString();
else if (epr instanceof SFTPEpr)
eprType = SFTPEpr.type().toString();
else if (epr instanceof HTTPEpr)
@@ -197,6 +199,8 @@
if (eprType.equals(EmailEpr.type().toString()))
return new EmailEpr(epr);
+ else if (eprType.equals(FTPSEpr.type().toString()))
+ return new FTPSEpr(epr);
else if (eprType.equals(SFTPEpr.type().toString()))
return new SFTPEpr(epr);
else if (eprType.equals(HTTPEpr.type().toString()))
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpImpl.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -72,11 +72,11 @@
private int m_iPort;
private int _timeout = 0;
- private FTPClient m_oConn = new FTPClient();
+ protected FTPClient m_oConn ;
private FTPEpr m_oEpr;
- private ConfigTree m_oParms;
+ protected ConfigTree m_oParms;
private FTPTransferType m_oXferType;
@@ -112,6 +112,16 @@
public EdtFtpImpl (FTPEpr p_oP, boolean p_bConnect)
throws ConfigurationException, RemoteFileSystemException
{
+ this(p_oP) ;
+ // TODO there is still a bit of space for improvements here.
+ configTreeFromEpr();
+
+ initialize(p_bConnect);
+ }
+
+ protected EdtFtpImpl(FTPEpr p_oP)
+ throws ConfigurationException
+ {
m_oEpr = p_oP;
URL url = null;
@@ -171,7 +181,7 @@
{
_logger.warn(e);
}
-
+
String timeout = ModulePropertyManager.getPropertyManager(ModulePropertyManager.TRANSPORTS_MODULE).getProperty(Environment.FTP_SOCKET_TIMEOUT, null);
if (timeout != null)
@@ -187,11 +197,6 @@
}
else
_timeout = 0;
-
- // TODO there is still a bit of space for improvements here.
- configTreeFromEpr();
-
- initialize(p_bConnect);
}
public EdtFtpImpl (List<KeyValuePair> p_oAttribs, boolean p_bConnect)
@@ -203,7 +208,7 @@
initialize(p_bConnect);
}
- private void checkParms () throws ConfigurationException
+ protected void checkParms () throws ConfigurationException
{
String att = m_oParms.getAttribute(FileEpr.URL_TAG);
URL url = null;
@@ -263,7 +268,7 @@
return;
}
- private void configTreeFromEpr () throws RemoteFileSystemException
+ protected void configTreeFromEpr () throws RemoteFileSystemException
{
m_oParms = new ConfigTree("fromEpr");
try
@@ -393,9 +398,22 @@
return m_sRemoteDir;
}
- private void initialize (boolean bConnect) throws ConfigurationException,
+ protected void initialize (boolean bConnect) throws ConfigurationException,
RemoteFileSystemException
{
+ try
+ {
+ m_oConn = instantiateClient() ;
+ }
+ catch (final FTPException ftpe)
+ {
+ throw new RemoteFileSystemException("Failed to instantiate client", ftpe) ;
+ }
+ catch (final IOException ioe)
+ {
+ throw new RemoteFileSystemException("Failed to instantiate client", ioe) ;
+ }
+
checkParms();
if (bConnect)
{
@@ -426,7 +444,7 @@
{
m_oConn.setRemotePort(m_iPort);
- m_oConn.connect();
+ connect() ;
for (int i1 = 0; i1 < 10 && !m_oConn.connected(); i1++)
{
try
@@ -473,7 +491,19 @@
}
}
- /*
+ protected FTPClient instantiateClient()
+ throws FTPException, IOException
+ {
+ return new FTPClient() ;
+ }
+
+ protected void connect()
+ throws FTPException, IOException
+ {
+ m_oConn.connect() ;
+ }
+
+ /*
* (non-Javadoc)
*
* @see org.jboss.soa.esb.util.RemoteFileSystem#quit()
Added: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpsImpl.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpsImpl.java (rev 0)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpsImpl.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -0,0 +1,183 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and individual contributors as indicated
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.internal.soa.esb.util;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.MalformedURLException;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.net.URLConnection;
+import java.util.List;
+
+import org.apache.log4j.Logger;
+import org.jboss.soa.esb.ConfigurationException;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
+import org.jboss.soa.esb.helpers.ConfigTree;
+import org.jboss.soa.esb.helpers.KeyValuePair;
+import org.jboss.soa.esb.util.RemoteFileSystemException;
+
+import com.enterprisedt.net.ftp.FTPClient;
+import com.enterprisedt.net.ftp.FTPException;
+import com.enterprisedt.net.ftp.ssl.SSLFTPClient;
+
+/**
+ * Simplified FTP transfers
+ * <p>
+ * Description: Implements a simple set of FTP functionality Parameters to
+ * establish the FTP connection are provided at construction time and cannot
+ * change during the lifetime of the object <br/>Hides low level details.
+ * Current implementation is based on the "Entreprise Distributed Technology
+ * edtFTPj" library but this can be changed with no impact to existing code,
+ * just by changing this class without modifying the signature of it's public
+ * methods
+ * </p>
+ */
+
+public class EdtFtpsImpl extends EdtFtpImpl
+{
+ private static final Logger _logger = Logger.getLogger(EdtFtpsImpl.class);
+
+ private URL m_oCertificate ;
+
+ /**
+ * Checks validity and completeness of parameters, and keeps the info
+ * internally for subsequent FTP requests
+ *
+ * @param p_oP
+ * ConfigTree
+ * @throws ConfigurationException :
+ * if parameters are invalid or incomplete
+ * <li>Parameters: (XML attributes at the root level) </li>
+ * <li> ftpServer = name or IP of FTP server </li>
+ * <li> ftpUser = login ID for server </li>
+ * <li> ftpPassword </li>
+ * <li> localDirURI = absolute path in the local filesystem
+ * </li>
+ * <li> remoteDirURI = remote path is relative to ftp user home
+ * in remote computer </li>
+ */
+ public EdtFtpsImpl (ConfigTree p_oP, boolean p_bConnect)
+ throws ConfigurationException, RemoteFileSystemException
+ {
+ super(p_oP, p_bConnect) ;
+ }
+
+ public EdtFtpsImpl (FTPSEpr p_oP, boolean p_bConnect)
+ throws ConfigurationException, RemoteFileSystemException
+ {
+ super(p_oP) ;
+
+ try
+ {
+ m_oCertificate = p_oP.getCertificateURL() ;
+ }
+ catch (final MalformedURLException murle)
+ {
+ _logger.warn(murle);
+ }
+ catch (final URISyntaxException urise)
+ {
+ _logger.warn(urise);
+ }
+
+ // TODO there is still a bit of space for improvements here.
+ configTreeFromEpr();
+
+ initialize(p_bConnect);
+ }
+
+ public EdtFtpsImpl (List<KeyValuePair> p_oAttribs, boolean p_bConnect)
+ throws ConfigurationException, RemoteFileSystemException
+ {
+ super(p_oAttribs, p_bConnect) ;
+ }
+
+ protected void configTreeFromEpr () throws RemoteFileSystemException
+ {
+ super.configTreeFromEpr() ;
+ try
+ {
+ if (m_oCertificate != null)
+ {
+ m_oParms.setAttribute(PARMS_CERTIFICATE, m_oCertificate.toString());
+ }
+ }
+ catch (Exception e)
+ {
+ throw new RemoteFileSystemException(e);
+ }
+ }
+
+ protected void checkParms() throws ConfigurationException
+ {
+ super.checkParms();
+
+ final String certificate = m_oParms.getAttribute(PARMS_CERTIFICATE) ;
+
+ if (certificate != null)
+ {
+ try
+ {
+ m_oCertificate = new URL(certificate) ;
+ }
+ catch (final MalformedURLException ex)
+ {
+ throw new ConfigurationException("Failed to create certificate URL", ex) ;
+ }
+ }
+ }
+
+ protected FTPClient instantiateClient()
+ throws FTPException, IOException
+ {
+ final SSLFTPClient ftpsClient = new SSLFTPClient() ;
+ if (m_oCertificate == null)
+ {
+ ftpsClient.setValidateServer(false) ;
+ }
+ else
+ {
+ final URLConnection connection = m_oCertificate.openConnection() ;
+ final InputStream is = connection.getInputStream() ;
+ try
+ {
+ ftpsClient.getRootCertificateStore().importPEMFile(is) ;
+ }
+ finally
+ {
+ is.close() ;
+ }
+ }
+ return ftpsClient ;
+ }
+
+ protected void connect()
+ throws FTPException, IOException
+ {
+ final SSLFTPClient ftpsClient = (SSLFTPClient)m_oConn ;
+ ftpsClient.connect() ;
+ ftpsClient.auth(SSLFTPClient.AUTH_TLS) ;
+ ftpsClient.pbsz(0) ;
+ ftpsClient.prot('P') ;
+ }
+}
Property changes on: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/internal/soa/esb/util/EdtFtpsImpl.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Added: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java (rev 0)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -0,0 +1,176 @@
+package org.jboss.soa.esb.addressing.eprs;
+
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2006, JBoss Inc., and others contributors as indicated
+ * by the @authors tag. All rights reserved.
+ * See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ * This copyrighted material is made available to anyone wishing to use,
+ * modify, copy, or redistribute it subject to the terms and conditions
+ * of the GNU Lesser General Public License, v. 2.1.
+ * This program is distributed in the hope that it will be useful, but WITHOUT A
+ * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+ * You should have received a copy of the GNU Lesser General Public License,
+ * v.2.1 along with this distribution; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * (C) 2005-2006,
+ * @author mark.little at jboss.com
+ */
+
+/**
+ * This class represents the endpoint reference for services.
+ */
+
+import java.net.MalformedURLException;
+import java.net.URI;
+import java.net.URISyntaxException;
+import java.net.URL;
+
+import org.jboss.soa.esb.addressing.EPR;
+import org.jboss.soa.esb.addressing.XMLUtil;
+import org.w3c.dom.Element;
+import org.w3c.dom.NodeList;
+
+/**
+ * A helper class for using FTP style EPRs. Simply create instances of this
+ * class instead of the base EPR. Since URLs can use FTP, we try to leverage
+ * that as much as possible.
+ *
+ * @author marklittle
+ *
+ */
+public class FTPSEpr extends FTPEpr
+{
+ public static final String CERTIFICATE_TAG = "certificate";
+
+ public FTPSEpr(EPR epr)
+ {
+ super(epr);
+
+ if (epr instanceof FTPSEpr)
+ certificateSet = ((FTPSEpr) epr).certificateSet;
+ }
+
+ public FTPSEpr (EPR epr, Element header)
+ {
+ super(epr, header);
+
+ NodeList nl = header.getChildNodes();
+
+ for (int i = 0; i < nl.getLength(); i++)
+ {
+ String prefix = nl.item(i).getPrefix();
+ String tag = nl.item(i).getLocalName();
+
+ try
+ {
+ if ((prefix != null) && (prefix.equals(XMLUtil.JBOSSESB_PREFIX)))
+ {
+ if ((tag != null) && (tag.equals(CERTIFICATE_TAG)))
+ {
+ getAddr().addExtension(CERTIFICATE_TAG, nl.item(i).getTextContent());
+ certificateSet = true;
+ }
+ }
+ }
+ catch (Exception ex)
+ {
+ ex.printStackTrace();
+ }
+ }
+ }
+
+ public FTPSEpr(URL url) throws URISyntaxException
+ {
+ super(url);
+ }
+
+ public FTPSEpr(URL url, URL cert) throws URISyntaxException
+ {
+ super(url);
+
+ setCertificateURL(cert);
+ }
+
+ public FTPSEpr(String url, String cert) throws URISyntaxException, MalformedURLException
+ {
+ super(url);
+
+ setCertificateURL(new URL(cert));
+ }
+
+ /**
+ * Set the Certificate URL for this endpoint.
+ *
+ * @param cert
+ * the address.
+ * @throws URISyntaxException
+ * thrown if this EPR is malformed.
+ */
+
+ public final void setCertificateURL(URL cert) throws URISyntaxException
+ {
+ if (cert == null)
+ throw new IllegalArgumentException();
+
+ if (certificateSet)
+ throw new IllegalStateException("Certificate URL already set.");
+
+ getAddr().addExtension(CERTIFICATE_TAG, cert.toString());
+ certificateSet = true;
+ }
+
+ /**
+ * @return the certificate URL for this EPR.
+ * @throws URISyntaxException
+ * thrown if this EPR is malformed.
+ */
+
+ public final URL getCertificateURL () throws URISyntaxException,
+ MalformedURLException
+ {
+ String cert = getAddr().getExtensionValue(CERTIFICATE_TAG);
+
+ if (cert != null)
+ return new URL(cert);
+ else
+ return null;
+ }
+
+ public EPR copy ()
+ {
+ return new FTPSEpr(this);
+ }
+
+ public String toString ()
+ {
+ return "SFTPEpr [ "+super.getAddr().extendedToString()+" ]";
+ }
+
+ public static URI type ()
+ {
+ return _type;
+ }
+
+ private boolean certificateSet = false;
+
+ private static URI _type;
+
+ static
+ {
+ try
+ {
+ _type = new URI("urn:jboss/esb/epr/type/ftps");
+ }
+ catch (Exception ex)
+ {
+ ex.printStackTrace();
+
+ throw new ExceptionInInitializerError(ex.toString());
+ }
+ }
+}
\ No newline at end of file
Property changes on: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/eprs/FTPSEpr.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/addressing/util/DefaultReplyTo.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -5,6 +5,7 @@
import org.jboss.internal.soa.esb.addressing.eprs.DefaultFileReplyToEpr;
import org.jboss.internal.soa.esb.addressing.eprs.DefaultFtpReplyToEpr;
+import org.jboss.internal.soa.esb.addressing.eprs.DefaultFtpsReplyToEpr;
import org.jboss.internal.soa.esb.addressing.eprs.DefaultHibernateReplyToEpr;
import org.jboss.internal.soa.esb.addressing.eprs.DefaultJdbcReplyToEpr;
import org.jboss.internal.soa.esb.addressing.eprs.DefaultJmsReplyToEpr;
@@ -13,6 +14,7 @@
import org.jboss.soa.esb.addressing.EPR;
import org.jboss.soa.esb.addressing.MalformedEPRException;
import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
import org.jboss.soa.esb.addressing.eprs.FileEpr;
import org.jboss.soa.esb.addressing.eprs.HibernateEpr;
import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
@@ -70,6 +72,8 @@
if (toEpr instanceof JMSEpr)
return new DefaultJmsReplyToEpr((JMSEpr) toEpr);
// Check for SFTPEpr first, as it extends FTPEpr
+ if (toEpr instanceof FTPSEpr)
+ return new DefaultFtpsReplyToEpr((FTPSEpr) toEpr);
if (toEpr instanceof SFTPEpr)
return new DefaultSftpReplyToEpr((SFTPEpr) toEpr);
// Check for FTPEpr first, as it extends FileEpr
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/ListenerUtil.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -38,6 +38,7 @@
import org.jboss.soa.esb.client.ServiceInvoker;
import org.jboss.soa.esb.addressing.EPR;
import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
import org.jboss.soa.esb.addressing.eprs.FileEpr;
import org.jboss.soa.esb.addressing.eprs.JDBCEpr;
import org.jboss.soa.esb.addressing.eprs.JMSEpr;
@@ -92,6 +93,8 @@
return fileEprFromElement(tree);
if ("ftp".equals(protocol))
return fileEprFromElement(tree);
+ if ("ftps".equals(protocol))
+ return fileEprFromElement(tree);
if ("sftp".equals(protocol))
return fileEprFromElement(tree);
@@ -188,6 +191,14 @@
else if("ftp".equals(protocol)){
epr = new FTPEpr(url);
}
+ else if("ftps".equals(protocol)){
+ String cert = tree.getAttribute(FTPSEpr.CERTIFICATE_TAG);
+ if(cert == null){
+ epr = new FTPSEpr(url);
+ }else {
+ epr = new FTPSEpr(url,new URL(cert));
+ }
+ }
else if("sftp".equals(protocol)){
String cert = tree.getAttribute(SFTPEpr.CERTIFICATE_TAG);
if(cert == null){
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/listeners/config/mappers/FtpListenerMapper.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -22,6 +22,7 @@
import org.jboss.soa.esb.ConfigurationException;
import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
import org.jboss.soa.esb.dom.YADOMUtil;
import org.jboss.soa.esb.listeners.ListenerTagNames;
@@ -129,8 +130,11 @@
toElement.setAttribute(FTPEpr.ERROR_SUFFIX_TAG, messageFilter.getErrorSuffix());
}
toElement.setAttribute(FTPEpr.PASSIVE_TAG, String.valueOf(messageFilter.getPassive()));
- if ("sftp".equals(messageFilter.getProtocol()) || "ftps".equals(messageFilter.getProtocol())) {
+ if ("sftp".equals(messageFilter.getProtocol())) {
toElement.setAttribute(SFTPEpr.CERTIFICATE_TAG, messageFilter.getCertificateUrl());
}
+ if ("ftps".equals(messageFilter.getProtocol())) {
+ toElement.setAttribute(FTPSEpr.CERTIFICATE_TAG, messageFilter.getCertificateUrl());
+ }
}
}
Modified: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java 2008-02-20 14:06:14 UTC (rev 18525)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/RemoteFileSystemFactory.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -27,8 +27,10 @@
import java.net.URL;
import org.jboss.internal.soa.esb.util.EdtFtpImpl;
+import org.jboss.internal.soa.esb.util.EdtFtpsImpl;
import org.jboss.internal.soa.esb.util.SecureFtpImpl;
import org.jboss.soa.esb.addressing.eprs.FTPEpr;
+import org.jboss.soa.esb.addressing.eprs.FTPSEpr;
import org.jboss.soa.esb.addressing.eprs.SFTPEpr;
public class RemoteFileSystemFactory
@@ -59,6 +61,8 @@
url = p_oEpr.getURL();
if (url.getProtocol().equals(RemoteFileSystem.FTP_PROTOCOL))
return new EdtFtpImpl((FTPEpr) p_oEpr, p_bConnect);
+ else if (url.getProtocol().equals(RemoteFileSystem.FTPS_PROTOCOL))
+ return new EdtFtpsImpl((FTPSEpr) p_oEpr, p_bConnect);
else if (url.getProtocol().equals(RemoteFileSystem.SFTP_PROTOCOL))
return new SecureFtpImpl((SFTPEpr) p_oEpr, p_bConnect);
Added: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/Handler.java
===================================================================
--- labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/Handler.java (rev 0)
+++ labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/Handler.java 2008-02-20 14:21:22 UTC (rev 18526)
@@ -0,0 +1,19 @@
+package org.jboss.soa.esb.util.ftps;
+
+import java.io.IOException;
+import java.net.URL;
+import java.net.URLConnection;
+
+
+public class Handler extends java.net.URLStreamHandler{
+
+ @Override
+ protected URLConnection openConnection(URL url) throws IOException {
+ throw new UnsupportedOperationException("Connections not supported through this handler") ;
+ }
+
+ @Override
+ protected int getDefaultPort() {
+ return 22;
+ }
+}
Property changes on: labs/jbossesb/workspace/chharris/product/rosetta/src/org/jboss/soa/esb/util/ftps/Handler.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Deleted: labs/jbossesb/workspace/chharris/qa/lib/ext/edtftpj-pro.jar
===================================================================
(Binary files differ)
More information about the jboss-svn-commits
mailing list