File tree Expand file tree Collapse file tree
src/main/java/com/comphenix/protocol/utility Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -88,20 +88,23 @@ private Optional<Class<?>> resolveClass(String className) {
8888 * @throws RuntimeException If we are unable to find the given class.
8989 */
9090 public Optional <Class <?>> getPackageClass (String className , String ... aliases ) {
91- return cache .computeIfAbsent (className , x -> {
92- Optional <Class <?>> clazz = resolveClass (className );
93- if (clazz .isPresent ()) {
94- return clazz ;
95- }
91+ Optional <Class <?>> cached = cache .get (className );
92+ if (cached != null ) {
93+ return cached ;
94+ }
9695
96+ Optional <Class <?>> clazz = resolveClass (className );
97+ if (!clazz .isPresent ()) {
9798 for (String alias : aliases ) {
98- clazz = resolveClass (alias );
99- if (clazz .isPresent ()) {
100- return clazz ;
99+ Optional <Class <?>> aliasClazz = resolveClass (alias );
100+ if (aliasClazz .isPresent ()) {
101+ clazz = aliasClazz ;
102+ break ;
101103 }
102104 }
105+ }
103106
104- return Optional . empty ( );
105- }) ;
107+ cache . put ( className , clazz );
108+ return clazz ;
106109 }
107110}
You can’t perform that action at this time.
0 commit comments