@Override public void pluginAdded( Object serviceObject ) { KettleLifecycleListener listener = null; try { listener = (KettleLifecycleListener) registry.loadClass( (PluginInterface) serviceObject ); } catch ( KettlePluginException e ) { e.printStackTrace(); return; } kettleLifecycleListeners.put( listener, false ); if ( initialized.get() ) { try { onEnvironmentInit( listener ); } catch ( Throwable e ) { // Exception is unexpected and couldn't recover Throwables.propagate( e ); } } }
public List<SpoonUiExtenderPluginInterface> getRelevantExtenders( Class<?> clazz, String uiEvent ) { PluginRegistry instance = PluginRegistry.getInstance(); List<PluginInterface> pluginInterfaces = instance.getPlugins( SpoonUiExtenderPluginType.class ); List<SpoonUiExtenderPluginInterface> relevantPluginInterfaces = new ArrayList<SpoonUiExtenderPluginInterface>( ); if ( pluginInterfaces != null ) { for ( PluginInterface pluginInterface : pluginInterfaces ) { try { Object loadClass = instance.loadClass( pluginInterface ); SpoonUiExtenderPluginInterface spoonUiExtenderPluginInterface = (SpoonUiExtenderPluginInterface) loadClass; Set<String> events = spoonUiExtenderPluginInterface.respondsTo().get( clazz ); if ( events != null && events.contains( uiEvent ) ) { relevantPluginInterfaces.add( spoonUiExtenderPluginInterface ); } } catch ( KettlePluginException e ) { e.printStackTrace(); } } } return relevantPluginInterfaces; }
@Override public void pluginAdded( final Object serviceObject ) { try { SpoonPluginInterface spoonPluginInterface = (SpoonPluginInterface) getPluginRegistry().loadClass( (PluginInterface) serviceObject ); if ( plugins.get( serviceObject ) != null ) { return; } SpoonPluginCategories categories = spoonPluginInterface.getClass().getAnnotation( SpoonPluginCategories.class ); if ( categories != null ) { for ( String cat : categories.value() ) { List<SpoonPluginInterface> categoryList = pluginCategoryMap.get( cat ); if ( categoryList == null ) { categoryList = new ArrayList<>(); pluginCategoryMap.put( cat, categoryList ); } categoryList.add( spoonPluginInterface ); } } if ( spoonPluginInterface.getPerspective() != null ) { getSpoonPerspectiveManager().addPerspective( spoonPluginInterface.getPerspective() ); } plugins.put( serviceObject, spoonPluginInterface ); } catch ( KettlePluginException e ) { e.printStackTrace(); } }
public void pluginAdded( Object serviceObject ) { LifecycleListener listener = null; try { listener = (LifecycleListener) PluginRegistry.getInstance().loadClass( (PluginInterface) serviceObject ); } catch ( KettlePluginException e ) { e.printStackTrace(); return; } lifeListeners.add( listener ); if ( started ) { try { listener.onStart( handler ); } catch ( LifecycleException e ) { e.printStackTrace(); } } }