14
14
class IgnoreClassHelper {
15
15
16
16
private static final Set <String > ignoreOneLevel = new HashSet <>();
17
-
18
17
private static final Set <String > ignoreTwoLevel = new HashSet <>();
18
+ private static final Set <String > ignoreThreeLevel = new HashSet <>();
19
19
20
20
static {
21
21
ignoreOneLevel .add ("jdk" );
22
22
ignoreOneLevel .add ("java" );
23
23
ignoreOneLevel .add ("javax" );
24
+ ignoreOneLevel .add ("jakarta" );
24
25
ignoreOneLevel .add ("play" );
25
26
ignoreOneLevel .add ("sbt" );
26
27
ignoreOneLevel .add ("scala" );
@@ -68,10 +69,15 @@ class IgnoreClassHelper {
68
69
ignoreTwoLevel .add ("com/squareup" );
69
70
ignoreTwoLevel .add ("com/microsoft" );
70
71
ignoreTwoLevel .add ("com/oracle" );
71
- ignoreTwoLevel .add ("org/avaje" );
72
72
ignoreTwoLevel .add ("io/ebean" );
73
73
ignoreTwoLevel .add ("io/ebeaninternal" );
74
74
ignoreTwoLevel .add ("io/ebeanservice" );
75
+
76
+ ignoreThreeLevel .add ("io/avaje/config" );
77
+ ignoreThreeLevel .add ("io/avaje/classpath" );
78
+ ignoreThreeLevel .add ("io/avaje/http" );
79
+ ignoreThreeLevel .add ("io/avaje/inject" );
80
+ ignoreThreeLevel .add ("io/avaje/jex" );
75
81
}
76
82
77
83
IgnoreClassHelper () {
@@ -89,21 +95,17 @@ class IgnoreClassHelper {
89
95
* @return true if this class should not be processed.
90
96
*/
91
97
boolean isIgnoreClass (String className ) {
92
-
93
98
if (className == null || "bsh/Interpreter" .equals (className )) {
94
99
return true ;
95
100
}
96
-
97
101
className = className .replace ('.' , '/' );
98
102
99
103
// we will ignore packages that we know we don't want to
100
104
// process (they won't contain entity beans etc).
101
-
102
- // ignore $Proxy classes
103
105
if (className .startsWith ("$" )) {
106
+ // ignore $Proxy classes
104
107
return true ;
105
108
}
106
-
107
109
int firstSlash = className .indexOf ('/' );
108
110
if (firstSlash == -1 ) {
109
111
return true ;
@@ -118,6 +120,13 @@ boolean isIgnoreClass(String className) {
118
120
if (ignoreTwoLevel .contains (secondPackage )) {
119
121
return true ;
120
122
}
123
+ int thirdSlash = className .indexOf ('/' , secondSlash + 1 );
124
+ if (thirdSlash > -1 ) {
125
+ String thirdPackage = className .substring (0 , thirdSlash );
126
+ if (ignoreThreeLevel .contains (thirdPackage )) {
127
+ return true ;
128
+ }
129
+ }
121
130
}
122
131
return className .contains ("$ByteBuddy$" );
123
132
}
0 commit comments