svn commit: r740653 - in /commons/proper/vfs/trunk: core/src/main/java/org/apache/commons/vfs/impl/ core/src/main/java/org/apache/commons/vfs/provider/webdav/ core/src/test/java/org/apache/commons/vfs

2009-02-04 Thread rgoers
Author: rgoers
Date: Wed Feb  4 08:06:28 2009
New Revision: 740653

URL: http://svn.apache.org/viewvc?rev=740653view=rev
Log:
Add webdav to providers automatically configured

Modified:

commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/impl/providers.xml

commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java

commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs/util/DelegatingFileSystemOptionsBuilderTest.java

commons/proper/vfs/trunk/sandbox/src/main/resources/META-INF/vfs-providers.xml

Modified: 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/impl/providers.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/impl/providers.xml?rev=740653r1=740652r2=740653view=diff
==
--- 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/impl/providers.xml
 (original)
+++ 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/impl/providers.xml
 Wed Feb  4 08:06:28 2009
@@ -67,6 +67,11 @@
 provider 
class-name=org.apache.commons.vfs.provider.res.ResourceFileProvider
 scheme name=res/
 /provider
+provider 
class-name=org.apache.commons.vfs.provider.webdav.WebdavFileProvider
+scheme name=webdav/
+if-available class-name=org.apache.commons.httpclient.HttpClient/
+if-available 
class-name=org.apache.jackrabbit.webdav.client.methods.DavMethod/
+/provider
 !--
 provider class-name=org.apache.commons.vfs.provider.svn.SvnFileProvider
 scheme name=svnhttps/

Modified: 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java?rev=740653r1=740652r2=740653view=diff
==
--- 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java
 (original)
+++ 
commons/proper/vfs/trunk/core/src/main/java/org/apache/commons/vfs/provider/webdav/WebdavFileProvider.java
 Wed Feb  4 08:06:28 2009
@@ -25,12 +25,9 @@
 import org.apache.commons.vfs.UserAuthenticationData;
 import org.apache.commons.vfs.FileSystemConfigBuilder;
 import org.apache.commons.vfs.util.UserAuthenticatorUtils;
-import org.apache.commons.vfs.provider.AbstractOriginatingFileProvider;
 import org.apache.commons.vfs.provider.GenericFileName;
-import org.apache.commons.vfs.provider.http.HttpFileNameParser;
 import org.apache.commons.vfs.provider.http.HttpFileProvider;
 import org.apache.commons.vfs.provider.http.HttpClientFactory;
-import org.apache.commons.vfs.provider.http.HttpFileSystemConfigBuilder;
 
 import java.util.Arrays;
 import java.util.Collection;

Modified: 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs/util/DelegatingFileSystemOptionsBuilderTest.java
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs/util/DelegatingFileSystemOptionsBuilderTest.java?rev=740653r1=740652r2=740653view=diff
==
--- 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs/util/DelegatingFileSystemOptionsBuilderTest.java
 (original)
+++ 
commons/proper/vfs/trunk/core/src/test/java/org/apache/commons/vfs/util/DelegatingFileSystemOptionsBuilderTest.java
 Wed Feb  4 08:06:28 2009
@@ -39,7 +39,7 @@
 
 protected void setUp() throws Exception
 {
-super.tearDown();
+super.setUp();
 
 // get a full blown, fully functional manager
 fsm = new StandardFileSystemManager();
@@ -114,4 +114,17 @@
 assertEquals(e.getCode(), 
vfs.provider/config-value-invalid.error);
 }
 }
+
+private static String[] schemes = new String[]
+{
+webdav, http, ftp, file, zip, tar, tgz, bz2, gz, 
jar, tmp, ram
+};
+
+public void testConfiguration() throws Exception
+{
+for (int i=0; i  schemes.length; ++i)
+{
+assertTrue(Missing + schemes[i] +  provider, 
fsm.hasProvider(schemes[i]));
+}
+}
 }

Modified: 
commons/proper/vfs/trunk/sandbox/src/main/resources/META-INF/vfs-providers.xml
URL: 
http://svn.apache.org/viewvc/commons/proper/vfs/trunk/sandbox/src/main/resources/META-INF/vfs-providers.xml?rev=740653r1=740652r2=740653view=diff
==
--- 
commons/proper/vfs/trunk/sandbox/src/main/resources/META-INF/vfs-providers.xml 
(original)
+++ 
commons/proper/vfs/trunk/sandbox/src/main/resources/META-INF/vfs-providers.xml 
Wed Feb  4 08:06:28 2009
@@ -4,12 +4,6 @@
scheme name=smb/
if-available 

svn commit: r740657 - in /commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip: ./ ExtraFieldUtils.java ZipEntry.java ZipFile.java ZipOutputStream.java

2009-02-04 Thread bodewig
Author: bodewig
Date: Wed Feb  4 08:45:31 2009
New Revision: 740657

URL: http://svn.apache.org/viewvc?rev=740657view=rev
Log:
[SANDBOX-256] - merge revision 738844 from Ant - use JDK 1.4+ collections

Modified:

commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/
   (props changed)

commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java

commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipEntry.java

commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipFile.java
   (contents, props changed)

commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipOutputStream.java

Propchange: 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Feb  4 08:45:31 2009
@@ -1 +1 @@
-/ant/core/trunk/src/main/org/apache/tools/zip:739300
+/ant/core/trunk/src/main/org/apache/tools/zip:738844,739300

Modified: 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java?rev=740657r1=740656r2=740657view=diff
==
--- 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
 (original)
+++ 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ExtraFieldUtils.java
 Wed Feb  4 08:45:31 2009
@@ -17,8 +17,10 @@
  */
 package org.apache.commons.compress.archivers.zip;
 
-import java.util.Hashtable;
-import java.util.Vector;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.zip.ZipException;
 
 /**
@@ -35,10 +37,10 @@
  *
  * @since 1.1
  */
-private static Hashtable implementations;
+private static final Map implementations;
 
 static {
-implementations = new Hashtable();
+implementations = new HashMap();
 register(AsiExtraField.class);
 register(JarMarker.class);
 }
@@ -94,7 +96,7 @@
  * @throws ZipException on error
  */
 public static ZipExtraField[] parse(byte[] data) throws ZipException {
-Vector v = new Vector();
+List v = new ArrayList();
 int start = 0;
 while (start = data.length - WORD) {
 ZipShort headerId = new ZipShort(data, start);
@@ -106,7 +108,7 @@
 try {
 ZipExtraField ze = createExtraField(headerId);
 ze.parseFromLocalFileData(data, start + WORD, length);
-v.addElement(ze);
+v.add(ze);
 } catch (InstantiationException ie) {
 throw new ZipException(ie.getMessage());
 } catch (IllegalAccessException iae) {
@@ -116,8 +118,7 @@
 }
 
 ZipExtraField[] result = new ZipExtraField[v.size()];
-v.copyInto(result);
-return result;
+return (ZipExtraField[]) v.toArray(result);
 }
 
 /**

Modified: 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipEntry.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipEntry.java?rev=740657r1=740656r2=740657view=diff
==
--- 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipEntry.java
 (original)
+++ 
commons/sandbox/compress/trunk/src/main/java/org/apache/commons/compress/archivers/zip/ZipEntry.java
 Wed Feb  4 08:45:31 2009
@@ -17,7 +17,7 @@
  */
 package org.apache.commons.compress.archivers.zip;
 
-import java.util.Vector;
+import java.util.LinkedHashMap;
 import java.util.zip.ZipException;
 
 /**
@@ -35,7 +35,7 @@
 private int internalAttributes = 0;
 private int platform = PLATFORM_FAT;
 private long externalAttributes = 0;
-private Vector/*ZipExtraField*/ extraFields = null;
+private LinkedHashMap/*ZipShort, ZipExtraField*/ extraFields = null;
 private String name = null;
 
 /**
@@ -92,7 +92,7 @@
 public Object clone() {
 ZipEntry e = (ZipEntry) super.clone();
 
-e.extraFields = extraFields != null ? (Vector) extraFields.clone() : 
null;
+e.extraFields = extraFields != null ? (LinkedHashMap) 
extraFields.clone() : null;
 e.setInternalAttributes(getInternalAttributes());
 e.setExternalAttributes(getExternalAttributes());
 e.setExtraFields(getExtraFields());
@@ -191,9 +191,9 @@
  * @since 1.1
  */
 public 

svn commit: r740661 - /commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java

2009-02-04 Thread nicolas
Author: nicolas
Date: Wed Feb  4 09:13:29 2009
New Revision: 740661

URL: http://svn.apache.org/viewvc?rev=740661view=rev
Log:
NullMonitor as a stub implemenation accepts any unit

Modified:

commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java

Modified: 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java?rev=740661r1=740660r2=740661view=diff
==
--- 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java
 (original)
+++ 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/monitors/NullMonitor.java
 Wed Feb  4 09:13:29 2009
@@ -22,13 +22,22 @@
 public class NullMonitor
 implements Monitor
 {
-private static Role NOP_COUNTER = new Role( Nop, Unit.UNARY, 
Metric.Type.COUNTER );
+private static final Unit NULL = new Unit( null )
+{
+@Override
+public boolean isCompatible( Unit unit )
+{
+return true;
+}
+};
+
+private static final Role NOP_COUNTER = new Role( Nop, NULL, 
Metric.Type.COUNTER );
 
-private static Role NOP_GAUGE = new Role( Nop, Unit.UNARY, 
Metric.Type.GAUGE );
+private static final Role NOP_GAUGE = new Role( Nop, NULL, 
Metric.Type.GAUGE );
 
-private static NoOpCounter counter = new NoOpCounter( NOP_COUNTER );
+private static final NoOpCounter counter = new NoOpCounter( NOP_COUNTER );
 
-private static NoOpGauge gauge = new NoOpGauge( NOP_GAUGE );
+private static final NoOpGauge gauge = new NoOpGauge( NOP_GAUGE );
 
 private CollectionMetric metrics = Arrays.asList( new Metric[] { 
counter, gauge } );
 
@@ -82,4 +91,17 @@
 // NoOp
 }
 
+private static class NullUnit extends Unit
+{
+public NullUnit()
+{
+super( null );
+}
+
+@Override
+public boolean isCompatible( Unit unit )
+{
+return true;
+}
+}
 }




svn commit: r740662 - /commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt

2009-02-04 Thread nicolas
Author: nicolas
Date: Wed Feb  4 09:15:10 2009
New Revision: 740662

URL: http://svn.apache.org/viewvc?rev=740662view=rev
Log:
todo note

Added:

commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt

Added: 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt
URL: 
http://svn.apache.org/viewvc/commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt?rev=740662view=auto
==
--- 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt
 (added)
+++ 
commons/sandbox/monitoring/branches/modules/core/src/main/java/org/apache/commons/monitoring/metrics/TODO.txt
 Wed Feb  4 09:15:10 2009
@@ -0,0 +1 @@
+experiment with AtomicReference for better concurrency/perfs
\ No newline at end of file




svn commit: r740744 - in /commons/proper/math/trunk/src: java/org/apache/commons/math/linear/ test/org/apache/commons/math/linear/

2009-02-04 Thread luc
Author: luc
Date: Wed Feb  4 13:59:50 2009
New Revision: 740744

URL: http://svn.apache.org/viewvc?rev=740744view=rev
Log:
improved consistency between RealVector and RealMatrix API
JIRA: MATH-245

Modified:

commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVector.java

commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVectorImpl.java

commons/proper/math/trunk/src/java/org/apache/commons/math/linear/SingularValueDecompositionImpl.java

commons/proper/math/trunk/src/java/org/apache/commons/math/linear/SparseRealVector.java

commons/proper/math/trunk/src/test/org/apache/commons/math/linear/RealVectorImplTest.java

commons/proper/math/trunk/src/test/org/apache/commons/math/linear/SparseRealVectorTest.java

Modified: 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVector.java
URL: 
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVector.java?rev=740744r1=740743r2=740744view=diff
==
--- 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVector.java
 (original)
+++ 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVector.java
 Wed Feb  4 13:59:50 2009
@@ -696,11 +696,23 @@
  * @param index  index location of entry to be fetched
  * @return vector entry at index
  * @throws MatrixIndexException if the index is not valid
+ * @see #setEntry(int, double)
  */
 double getEntry(int index)
 throws MatrixIndexException;
 
 /**
+ * Set a single element.
+ * @param index element index.
+ * @param value new value for the element.
+ * @exception MatrixIndexException if the index is
+ * inconsistent with vector size
+ * @see #getEntry(int)
+ */
+void setEntry(int index, double value)
+throws MatrixIndexException;
+
+/**
  * Returns the size of the vector.
  * @return size
  */
@@ -735,17 +747,7 @@
  * @exception MatrixIndexException if the index is
  * inconsistent with vector size
  */
-RealVector get(int index, int n)
-throws MatrixIndexException;
-
-/**
- * Set a single element.
- * @param index element index.
- * @param value new value for the element.
- * @exception MatrixIndexException if the index is
- * inconsistent with vector size
- */
-void set(int index, double value)
+RealVector getSubVector(int index, int n)
 throws MatrixIndexException;
 
 /**
@@ -754,8 +756,9 @@
  * @param v vector containing the values to set.
  * @exception MatrixIndexException if the index is
  * inconsistent with vector size
+ * @see #setSubVector(int, double[])
  */
-void set(int index, RealVector v)
+void setSubVector(int index, RealVector v)
 throws MatrixIndexException;
 
 /**
@@ -764,8 +767,9 @@
  * @param v vector containing the values to set.
  * @exception MatrixIndexException if the index is
  * inconsistent with vector size
+ * @see #setSubVector(int, RealVector)
  */
-void set(int index, double[] v)
+void setSubVector(int index, double[] v)
 throws MatrixIndexException;
 
 /**

Modified: 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVectorImpl.java
URL: 
http://svn.apache.org/viewvc/commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVectorImpl.java?rev=740744r1=740743r2=740744view=diff
==
--- 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVectorImpl.java
 (original)
+++ 
commons/proper/math/trunk/src/java/org/apache/commons/math/linear/RealVectorImpl.java
 Wed Feb  4 13:59:50 2009
@@ -1190,7 +1190,7 @@
 }
 
 /** {...@inheritdoc} */
-public RealVector get(int index, int n) {
+public RealVector getSubVector(int index, int n) {
 RealVectorImpl out = new RealVectorImpl(n);
 try {
 System.arraycopy(data, index, out.data, 0, n);
@@ -1202,7 +1202,7 @@
 }
 
 /** {...@inheritdoc} */
-public void set(int index, double value) {
+public void setEntry(int index, double value) {
 try {
 data[index] = value;
 } catch (IndexOutOfBoundsException e) {
@@ -1211,7 +1211,7 @@
 }
 
 /** {...@inheritdoc} */
-public void set(int index, RealVector v) {
+public void setSubVector(int index, RealVector v) {
 try {
 try {
 set(index, (RealVectorImpl) v);
@@ -1227,7 +1227,7 @@
 }
 
 /** {...@inheritdoc} */
-public void set(int index, double[] v) {
+public void setSubVector(int index, double[] v) {
 try {
 System.arraycopy(v, 0, data, index, v.length);
 } catch (IndexOutOfBoundsException e) {
@@ -1246,7 +1246,7 @@
  */
 public void 

svn commit: r740953 - /commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java

2009-02-04 Thread rwinston
Author: rwinston
Date: Thu Feb  5 00:25:57 2009
New Revision: 740953

URL: http://svn.apache.org/viewvc?rev=740953view=rev
Log:
NET-250: Make L8 check the last check

Modified:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java?rev=740953r1=740952r2=740953view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/parser/DefaultFTPFileEntryParserFactory.java
 Thu Feb  5 00:25:57 2009
@@ -97,8 +97,7 @@
{
ukey = key.toUpperCase(java.util.Locale.ENGLISH);
}
-   if ((ukey.indexOf(FTPClientConfig.SYST_UNIX) = 0) 
-   || (ukey.indexOf(FTPClientConfig.SYST_L8) = 0))
+   if (ukey.indexOf(FTPClientConfig.SYST_UNIX) = 0) 
{
parser = createUnixFTPEntryParser();
}
@@ -127,6 +126,12 @@
{
parser = createNetwareFTPEntryParser();
}
+   else if (ukey.indexOf(FTPClientConfig.SYST_L8) = 0) 
+   {
+   // L8 normally means Unix, but move it to the end for 
some L8 systems that aren't.
+   // This check should be last!
+   parser = createUnixFTPEntryParser();
+   }
else
{
throw new ParserInitializationException(Unknown parser 
type:  + key);




svn commit: r740956 - /commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java

2009-02-04 Thread rwinston
Author: rwinston
Date: Thu Feb  5 00:39:30 2009
New Revision: 740956

URL: http://svn.apache.org/viewvc?rev=740956view=rev
Log:
NET-248 Add MDTM to command list

Modified:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java?rev=740956r1=740955r2=740956view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPCommand.java
 Thu Feb  5 00:39:30 2009
@@ -113,7 +113,7 @@
   USER, PASS, ACCT, CWD, 
CDUP, SMNT, REIN, QUIT, PORT,
   PASV, TYPE, STRU, MODE, 
RETR, STOR, STOU, APPE, ALLO,
   REST, RNFR, RNTO, ABOR, 
DELE, RMD, MKD, PWD, LIST,
-  NLST, SITE, SYST, STAT, 
HELP, NOOP
+  NLST, SITE, SYST, STAT, 
HELP, NOOP, MDTM
   };
 
 /**




svn commit: r740957 - in /commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp: ThreadContainer.java Threader.java

2009-02-04 Thread rwinston
Author: rwinston
Date: Thu Feb  5 00:41:31 2009
New Revision: 740957

URL: http://svn.apache.org/viewvc?rev=740957view=rev
Log:
NET-251 Make Threader top-level

Added:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/ThreadContainer.java
Modified:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/Threader.java

Added: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/ThreadContainer.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/ThreadContainer.java?rev=740957view=auto
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/ThreadContainer.java
 (added)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/ThreadContainer.java
 Thu Feb  5 00:41:31 2009
@@ -0,0 +1,80 @@
+package org.apache.commons.net.nntp;
+
+/**
+ * A placeholder utility class, used for constructing a tree of Threadables
+ * Original implementation by Jamie Zawinski. 
+ * See the Grendel source for more details a 
href=http://lxr.mozilla.org/mozilla/source/grendel/sources/grendel/view/Threader.java#511;here/a
+ * Threadable objects
+ * @author Rory Winston rwins...@apache.org
+ */
+class ThreadContainer {
+Threadable threadable;
+ThreadContainer parent;
+ThreadContainer prev;
+ThreadContainer next;
+ThreadContainer child;
+
+/**
+ * 
+ * @param container
+ * @return true if child is under self's tree. Detects circular references
+ */
+boolean findChild(ThreadContainer target) {
+if (child == null)
+return false;
+
+else if (child == target)
+return true;
+else
+return child.findChild(target);
+}
+
+// Copy the ThreadContainer tree structure down into the underlying 
Threadable objects
+// (Make the Threadable tree look like the ThreadContainer tree)
+void flush() {
+if (parent != null  threadable == null)
+throw new RuntimeException(no threadable in  + this.toString());
+
+parent = null;
+
+if (threadable != null)
+threadable.setChild(child == null ? null : child.threadable);
+
+if (child != null) {
+child.flush();
+child = null;
+}
+
+if (threadable != null)
+threadable.setNext(next == null ? null : next.threadable);
+
+if (next != null) {
+next.flush();
+next = null;
+}
+
+threadable = null;
+}
+
+/**
+ * Reverse the entire set of children
+ *
+ */
+void reverseChildren() {
+if (child != null) {
+ThreadContainer kid, prev, rest;
+for (prev = null, kid = child, rest = kid.next;
+kid != null;
+prev = kid,
+kid = rest,
+rest = (rest == null ? null : rest.next))
+kid.next = prev;
+
+child = prev;
+
+// Do it for the kids 
+for (kid = child; kid != null; kid = kid.next)
+kid.reverseChildren();
+}
+}
+}

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/Threader.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/Threader.java?rev=740957r1=740956r2=740957view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/Threader.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/nntp/Threader.java
 Thu Feb  5 00:41:31 2009
@@ -400,82 +400,3 @@
 
 }
 }
-
-/**
- * A placeholder utility class, used for constructing a tree of Threadables
- * Originall implementation by Jamie Zawinski. 
- * See the Grendel source for more details a 
href=http://lxr.mozilla.org/mozilla/source/grendel/sources/grendel/view/Threader.java#511;here/a
- * Threadable objects
- * @author Rory Winston rwins...@checkfree.com
- */
-class ThreadContainer {
-Threadable threadable;
-ThreadContainer parent;
-ThreadContainer prev;
-ThreadContainer next;
-ThreadContainer child;
-
-/**
- * 
- * @param container
- * @return true if child is under self's tree. Detects circular references
- */
-boolean findChild(ThreadContainer target) {
-if (child == null)
-return false;
-
-else if (child == target)
-return true;
-else
-return child.findChild(target);
-}
-
-// Copy the ThreadContainer tree structure down into the underlying 
Threadable objects
-// (Make the Threadable tree look like the ThreadContainer tree)
-void flush() {
-if 

svn commit: r740961 - in /commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp: FTPSClient.java FTPSServerSocketFactory.java FTPSSocketFactory.java

2009-02-04 Thread rwinston
Author: rwinston
Date: Thu Feb  5 00:55:56 2009
New Revision: 740961

URL: http://svn.apache.org/viewvc?rev=740961view=rev
Log:
NET-240 Add FTPSServerSocketFactory

Added:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSServerSocketFactory.java
Modified:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSClient.java

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSSocketFactory.java

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSClient.java?rev=740961r1=740960r2=740961view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSClient.java
 Thu Feb  5 00:55:56 2009
@@ -429,12 +429,9 @@
 setServerSocketFactory(null);
 } else {
 setSocketFactory(new FTPSSocketFactory(context));
-
+setServerSocketFactory(new FTPSServerSocketFactory(context));
 initSslContext();
 
-SSLServerSocketFactory ssf = context.getServerSocketFactory();
-
-setServerSocketFactory(ssf);
 }
 }
 

Added: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSServerSocketFactory.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSServerSocketFactory.java?rev=740961view=auto
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSServerSocketFactory.java
 (added)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSServerSocketFactory.java
 Thu Feb  5 00:55:56 2009
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the License); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *  http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an AS IS BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.commons.net.ftp;
+
+import java.io.BufferedReader;
+package org.apache.commons.net.ftp;
+
+import java.io.IOException;
+import java.net.InetAddress;
+import java.net.ServerSocket;
+import javax.net.ServerSocketFactory;
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.SSLServerSocket;
+
+/**
+ * Server socket factory for FTPS connections.
+ */
+public class FTPSServerSocketFactory extends ServerSocketFactory {
+
+private SSLContext context;
+
+public FTPSServerSocketFactory(SSLContext context) {
+this.context = context;
+}
+
+public ServerSocket createServerSocket(int port) throws IOException {
+return 
this.init(this.context.getServerSocketFactory().createServerSocket(port));
+}
+
+public ServerSocket createServerSocket(int port, int backlog) throws 
IOException {
+return 
this.init(this.context.getServerSocketFactory().createServerSocket(port, 
backlog));
+}
+
+public ServerSocket createServerSocket(int port, int backlog, InetAddress 
ifAddress) throws IOException {
+return 
this.init(this.context.getServerSocketFactory().createServerSocket(port, 
backlog, ifAddress));
+}
+
+public ServerSocket init(ServerSocket socket) throws IOException {
+((SSLServerSocket) socket).setUseClientMode(true);
+return socket;
+}
+}
+

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSSocketFactory.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSSocketFactory.java?rev=740961r1=740960r2=740961view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSSocketFactory.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/ftp/FTPSSocketFactory.java
 Thu Feb  5 00:55:56 2009
@@ -15,19 +15,15 @@
  * limitations under the License.
  */
 
-
 package 

svn commit: r740965 - /commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java

2009-02-04 Thread rwinston
Author: rwinston
Date: Thu Feb  5 01:11:02 2009
New Revision: 740965

URL: http://svn.apache.org/viewvc?rev=740965view=rev
Log:
NET-236 Catch lower address ranges in isInRange()

Modified:

commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java

Modified: 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java
URL: 
http://svn.apache.org/viewvc/commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java?rev=740965r1=740964r2=740965view=diff
==
--- 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java
 (original)
+++ 
commons/proper/net/branches/NET_2_0/src/main/java/org/apache/commons/net/util/SubnetUtils.java
 Thu Feb  5 01:11:02 2009
@@ -70,7 +70,11 @@
 private int high()  { return broadcast() - 1; }
 
 public boolean isInRange(String address){ return 
isInRange(toInteger(address)); }
-private boolean isInRange(int address)  { return ((address-low()) 
= (high()-low())); }
+
+private boolean isInRange(int address)  { 
+int diff = address-low();
+return (diff = 0  (diff = (high()-low(;
+}
 
 public String getBroadcastAddress() { return 
format(toArray(broadcast())); }
 public String getNetworkAddress()   { return 
format(toArray(network())); }