-
Notifications
You must be signed in to change notification settings - Fork 70
/
exclude-common.xml
141 lines (121 loc) · 4.3 KB
/
exclude-common.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<!--
Copyright (c) 2011, 2017 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<FindBugsFilter>
<!--
Sure, these inner classes might be more efficient if they
were static, but the code would be harder to read too.
-->
<Match>
<Bug pattern="SIC_INNER_SHOULD_BE_STATIC_ANON"/>
</Match>
<!--
We use switch "fall-through" with no defaults on purpose for stateful
parsing.
-->
<Match>
<Or>
<Bug pattern="SF_SWITCH_FALLTHROUGH"/>
<Bug pattern="SF_SWITCH_NO_DEFAULT"/>
</Or>
</Match>
<!--
We ignore Exception all over the place. Mostly it's on purpose.
-->
<Match>
<Bug pattern="DE_MIGHT_IGNORE"/>
</Match>
<!--
And sometimes we catch Exception even though it's not throw,
just to be sure to catch any problems that might occur.
-->
<Match>
<Bug pattern="REC_CATCH_EXCEPTION"/>
</Match>
<!--
Arrays are passed in and out of internal APIs all over the place.
Mostly this is just fine. Finding the few places where this might
be a real issue is a problem for another day.
-->
<Match>
<Or>
<Bug pattern="EI_EXPOSE_REP"/>
<Bug pattern="EI_EXPOSE_REP2"/>
</Or>
</Match>
<!--
Yes, zero length arrays are preferred, but this isn't worth fixing.
-->
<Match>
<Bug pattern="PZLA_PREFER_ZERO_LENGTH_ARRAYS"/>
</Match>
<!--
Lots of classes extend serializable classes but we never depend
on their serialized state, so we don't worry about this.
-->
<Match>
<Bug pattern="SE_NO_SERIALVERSIONID"/>
</Match>
<!-- Synchronization has been reviewed and is okay. -->
<Match>
<Bug pattern="UG_SYNC_SET_UNSYNC_GET"/>
<Or>
<Class name="org.glassfish.grizzly.utils.Holder$LazyHolder"/>
<Class name="org.glassfish.grizzly.utils.Holder$LazyIntHolder"/>
</Or>
</Match>
<!-- Synchronization has been reviewed and is okay. -->
<Match>
<Bug pattern="IS2_INCONSISTENT_SYNC"/>
<Or>
<Class name="org.glassfish.grizzly.utils.Holder$LazyHolder"/>
<Class name="org.glassfish.grizzly.utils.Holder$LazyIntHolder"/>
<Class name="org.glassfish.grizzly.websockets.WebSocketEngine" />
<Class name="org.glassfish.grizzly.http.server.NetworkListener" />
<Class name="org.glassfish.grizzly.http2.Http2State" />
</Or>
</Match>
<!-- These classes are copied from OpenJDK. Ignore the issues. -->
<Match>
<Or>
<Class name="org.glassfish.grizzly.utils.LinkedTransferQueue$QNode"/>
<Class name="org.glassfish.grizzly.utils.ConcurrentHashMapV8"/>
<Class name="org.glassfish.grizzly.utils.ConcurrentHashMapV8$TreeBin"/>
</Or>
</Match>
<!-- We're not worried about this. -->
<Match>
<Or>
<Bug pattern="NM_SAME_SIMPLE_NAME_AS_INTERFACE" />
<Bug pattern="NM_FIELD_NAMING_CONVENTION"/>
</Or>
</Match>
<Match>
<Bug pattern="DM_EXIT" />
<Or>
<Class name="org.glassfish.grizzly.samples.udpmulticast.MulticastChat" />
</Or>
</Match>
<Match>
<Bug pattern="SE_BAD_FIELD" />
<Or>
<Class name="org.glassfish.grizzly.samples.websockets.WebSocketsServlet" />
</Or>
</Match>
<!-- Not worried about atomicity - only visibility -->
<Match>
<Bug pattern="VO_VOLATILE_INCREMENT" />
<Or>
<Class name="org.glassfish.grizzly.nio.SelectorRunner" />
</Or>
</Match>
</FindBugsFilter>