This reverts commit 3b90b536bb26b6b7e1123e3237807b8c3ff49b6e.
This commit is contained in:
parent
3b90b536bb
commit
c6e2934357
@ -342,14 +342,22 @@ public class DefaultChannelPipeline implements ChannelPipeline {
|
||||
@Override
|
||||
public final ChannelPipeline addFirst(EventExecutorGroup executor, ChannelHandler... handlers) {
|
||||
ObjectUtil.checkNotNull(handlers, "handlers");
|
||||
if (handlers.length == 0 || handlers[0] == null) {
|
||||
return this;
|
||||
}
|
||||
|
||||
for (int i = handlers.length - 1; i >= 0; i--) {
|
||||
ChannelHandler h = handlers[i];
|
||||
if (h != null) {
|
||||
addFirst(executor, null, h);
|
||||
int size;
|
||||
for (size = 1; size < handlers.length; size ++) {
|
||||
if (handlers[size] == null) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = size - 1; i >= 0; i --) {
|
||||
ChannelHandler h = handlers[i];
|
||||
addFirst(executor, null, h);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@ -366,10 +374,11 @@ public class DefaultChannelPipeline implements ChannelPipeline {
|
||||
public final ChannelPipeline addLast(EventExecutorGroup executor, ChannelHandler... handlers) {
|
||||
ObjectUtil.checkNotNull(handlers, "handlers");
|
||||
|
||||
for (ChannelHandler h : handlers) {
|
||||
if (h != null) {
|
||||
addLast(executor, null, h);
|
||||
for (ChannelHandler h: handlers) {
|
||||
if (h == null) {
|
||||
break;
|
||||
}
|
||||
addLast(executor, null, h);
|
||||
}
|
||||
|
||||
return this;
|
||||
|
@ -171,44 +171,6 @@ public class DefaultChannelPipelineTest {
|
||||
}
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAddLastVarArgsSkipsNull() {
|
||||
ChannelPipeline pipeline = new LocalChannel().pipeline();
|
||||
assertEquals(1, pipeline.names().size());
|
||||
|
||||
pipeline.addLast((ChannelHandler) null, newHandler(), null);
|
||||
assertEquals(2, pipeline.names().size());
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#0", pipeline.names().get(0));
|
||||
|
||||
pipeline.addLast(newHandler(), null, newHandler());
|
||||
assertEquals(4, pipeline.names().size());
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#0", pipeline.names().get(0));
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#1", pipeline.names().get(1));
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#2", pipeline.names().get(2));
|
||||
|
||||
pipeline.addLast((ChannelHandler) null);
|
||||
assertEquals(4, pipeline.names().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAddFirstVarArgsSkipsNull() {
|
||||
ChannelPipeline pipeline = new LocalChannel().pipeline();
|
||||
assertEquals(1, pipeline.names().size());
|
||||
|
||||
pipeline.addFirst((ChannelHandler) null, newHandler(), null);
|
||||
assertEquals(2, pipeline.names().size());
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#0", pipeline.names().get(0));
|
||||
|
||||
pipeline.addFirst(newHandler(), null, newHandler());
|
||||
assertEquals(4, pipeline.names().size());
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#2", pipeline.names().get(0));
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#1", pipeline.names().get(1));
|
||||
assertEquals("DefaultChannelPipelineTest$TestHandler#0", pipeline.names().get(2));
|
||||
|
||||
pipeline.addFirst((ChannelHandler) null);
|
||||
assertEquals(4, pipeline.names().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRemoveChannelHandler() {
|
||||
ChannelPipeline pipeline = new LocalChannel().pipeline();
|
||||
|
Loading…
x
Reference in New Issue
Block a user