1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package io.netty.channel.group;
17
18 import io.netty.channel.Channel;
19 import io.netty.channel.ChannelException;
20 import io.netty.channel.ChannelFuture;
21
22 import java.util.Collection;
23 import java.util.Collections;
24 import java.util.Iterator;
25 import java.util.Map;
26
27
28
29
30 public class ChannelGroupException extends ChannelException implements Iterable<Map.Entry<Channel, Throwable>> {
31 private static final long serialVersionUID = -4093064295562629453L;
32 private final Collection<Map.Entry<Channel, Throwable>> failed;
33
34 public ChannelGroupException(Collection<Map.Entry<Channel, Throwable>> causes) {
35 if (causes == null) {
36 throw new NullPointerException("causes");
37 }
38 if (causes.isEmpty()) {
39 throw new IllegalArgumentException("causes must be non empty");
40 }
41 failed = Collections.unmodifiableCollection(causes);
42 }
43
44
45
46
47
48 @Override
49 public Iterator<Map.Entry<Channel, Throwable>> iterator() {
50 return failed.iterator();
51 }
52 }