Author: trustin
Date: Thu Aug 2 22:34:40 2007
New Revision: 562338
URL: http://svn.apache.org/viewvc?view=rev&rev=562338
Log:
Replaced clone() with a copy constructor that's less problematic
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFilterChainBuilder.java
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFilterChainBuilder.java
URL:
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFilterChainBuilder.java?view=diff&rev=562338&r1=562337&r2=562338
==============================================================================
---
mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFilterChainBuilder.java
(original)
+++
mina/trunk/core/src/main/java/org/apache/mina/common/DefaultIoFilterChainBuilder.java
Thu Aug 2 22:34:40 2007
@@ -52,8 +52,7 @@
* @author The Apache MINA Project ([EMAIL PROTECTED])
* @version $Rev$, $Date$
*/
-public class DefaultIoFilterChainBuilder implements IoFilterChainBuilder,
- Cloneable {
+public class DefaultIoFilterChainBuilder implements IoFilterChainBuilder {
private final List<Entry> entries;
/**
@@ -62,6 +61,16 @@
public DefaultIoFilterChainBuilder() {
entries = new CopyOnWriteArrayList<Entry>();
}
+
+ /**
+ * Creates a new copy of the specified [EMAIL PROTECTED]
DefaultFilterChainBuilder}.
+ */
+ public DefaultIoFilterChainBuilder(DefaultIoFilterChainBuilder
filterChain) {
+ if (filterChain == null) {
+ throw new NullPointerException("filterChain");
+ }
+ entries = new CopyOnWriteArrayList<Entry>(filterChain.entries);
+ }
/**
* @see IoFilterChain#getEntry(String)
@@ -312,15 +321,6 @@
buf.append(" }");
return buf.toString();
- }
-
- @Override
- public Object clone() {
- DefaultIoFilterChainBuilder ret = new DefaultIoFilterChainBuilder();
- for (Entry e : entries) {
- ret.addLast(e.getName(), e.getFilter());
- }
- return ret;
}
private void checkBaseName(String baseName) {