File tree Expand file tree Collapse file tree
plugin/src/main/java/net/thenextlvl/service/plugin/listeners Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ public final class ServiceListener implements Listener {
3434 public ServiceListener (final Plugin plugin ) {
3535 this .plugin = plugin ;
3636 getServicesManager ().getKnownServices ().forEach (aClass ->
37- getServicesManager ().getRegistrations (aClass ).forEach (this ::loadWrapper ));
37+ getServicesManager ().getRegistrations (aClass ).forEach (this ::safeLoadWrapper ));
3838 }
3939
4040 @ EventHandler (priority = EventPriority .LOWEST )
@@ -50,7 +50,15 @@ public void onServiceUnregister(final ServiceUnregisterEvent event) {
5050
5151 @ EventHandler (priority = EventPriority .LOWEST )
5252 public void onServiceRegister (final ServiceRegisterEvent event ) {
53- loadWrapper (event .getProvider ());
53+ safeLoadWrapper (event .getProvider ());
54+ }
55+
56+ private void safeLoadWrapper (final RegisteredServiceProvider <?> provider ) {
57+ try {
58+ loadWrapper (provider );
59+ } catch (final Throwable t ) {
60+ plugin .getComponentLogger ().error ("Failed to register wrapper for {}" , provider .getPlugin ().getName (), t );
61+ }
5462 }
5563
5664 @ SuppressWarnings ({"unchecked" , "IfCanBeSwitch" })
You can’t perform that action at this time.
0 commit comments