Author: sebb
Date: Tue Feb 22 02:23:12 2011
New Revision: 1073207
URL: http://svn.apache.org/viewvc?rev=1073207&view=rev
Log:
NET-359 CopyStreamAdapter unconditionally resets the CopyStreamEvent source and
is inefficient
Modified:
commons/proper/net/trunk/src/changes/changes.xml
commons/proper/net/trunk/src/main/java/org/apache/commons/net/io/CopyStreamAdapter.java
Modified: commons/proper/net/trunk/src/changes/changes.xml
URL:
http://svn.apache.org/viewvc/commons/proper/net/trunk/src/changes/changes.xml?rev=1073207&r1=1073206&r2=1073207&view=diff
==============================================================================
--- commons/proper/net/trunk/src/changes/changes.xml (original)
+++ commons/proper/net/trunk/src/changes/changes.xml Tue Feb 22 02:23:12 2011
@@ -53,6 +53,9 @@ The <action> type attribute can be add,u
<body>
<release version="TBA" date="TBA" description="TBA"
+ <action issue="NET-359" dev="sebb" type="fix">
+ CopyStreamAdapter unconditionally resets the CopyStreamEvent
source and is inefficient
+ </action>
<action issue="NET-355" dev="sebb" type="fix">
examples.nntp.NNTPUtils does not compile
</action>
Modified:
commons/proper/net/trunk/src/main/java/org/apache/commons/net/io/CopyStreamAdapter.java
URL:
http://svn.apache.org/viewvc/commons/proper/net/trunk/src/main/java/org/apache/commons/net/io/CopyStreamAdapter.java?rev=1073207&r1=1073206&r2=1073207&view=diff
==============================================================================
---
commons/proper/net/trunk/src/main/java/org/apache/commons/net/io/CopyStreamAdapter.java
(original)
+++
commons/proper/net/trunk/src/main/java/org/apache/commons/net/io/CopyStreamAdapter.java
Tue Feb 22 02:23:12 2011
@@ -63,9 +63,10 @@ public class CopyStreamAdapter implement
*/
public void bytesTransferred(CopyStreamEvent event)
{
- bytesTransferred(event.getTotalBytesTransferred(),
- event.getBytesTransferred(),
- event.getStreamSize());
+ for (EventListener listener : internalListeners)
+ {
+ ((CopyStreamListener) (listener)).bytesTransferred(event);
+ }
}
/**
@@ -86,16 +87,10 @@ public class CopyStreamAdapter implement
public void bytesTransferred(long totalBytesTransferred,
int bytesTransferred, long streamSize)
{
- CopyStreamEvent event;
-
- event = new CopyStreamEvent(this,
- totalBytesTransferred,
- bytesTransferred,
- streamSize);
-
for (EventListener listener : internalListeners)
{
- ((CopyStreamListener) (listener)).bytesTransferred(event);
+ ((CopyStreamListener) (listener)).bytesTransferred(
+ totalBytesTransferred, bytesTransferred, streamSize);
}
}