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
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
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
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
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/
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
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
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
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
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
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())); }