001    package de.deepamehta.core.osgi;
002    
003    import de.deepamehta.core.service.DeepaMehtaService;
004    import de.deepamehta.core.service.PluginService;
005    
006    import org.osgi.framework.BundleContext;
007    
008    
009    
010    public interface PluginContext {
011    
012        // --- Hooks to be overridden by the plugin developer ---
013    
014        void init();
015    
016        void shutdown();
017    
018        void postInstall();
019    
020        void serviceArrived(PluginService service);
021    
022        void serviceGone(PluginService service);
023    
024        // --- Internal ---
025    
026        String getPluginName();
027    
028        BundleContext getBundleContext();
029    
030        void setCoreService(DeepaMehtaService dms);
031    }