protected void warnAddOnsAndExtensionsNoLongerRunnable ( ) { final AddOnLoader addOnLoader = ExtensionFactory . getAddOnLoader ( ) ; List < String > idsAddOnsNoLongerRunning = addOnLoader . getIdsAddOnsWithRunningIssuesSinceLastRun ( ) ; if ( idsAddOnsNoLongerRunning . isEmpty ( ) ) { return ; } List < AddOn > addOnsNoLongerRunning = new ArrayList <> ( idsAddOnsNoLongerRunning . size ( ) ) ; for ( String id : idsAddOnsNoLongerRunning ) { addOnsNoLongerRunning . add ( addOnLoader . getAddOnCollection ( ) . getAddOn ( id ) ) ; } for ( AddOn addOn : addOnsNoLongerRunning ) { AddOn . AddOnRunRequirements requirements = addOn . calculateRunRequirements ( addOnLoader . getAddOnCollection ( ) . getAddOns ( ) ) ; List < String > issues = AddOnRunIssuesUtils . getRunningIssues ( requirements ) ; if ( issues . isEmpty ( ) ) { issues = AddOnRunIssuesUtils . getExtensionsRunningIssues ( requirements ) ; } getLogger ( ) . warn ( "Add-on \"" + addOn . getId ( ) + "\" or its extensions will no longer be run until its requirements are restored: " + issues ) ; } }
Warns through logging about add - ons and extensions that are no longer runnable because of changes in its dependencies .