2012-04-04 37 views
2

我目前正在使用Eclipse 4.2M6開發我的第一個Eclipse e4 RCP應用程序。我正在開發一個主插件,該插件具有用於我的應用程序的核心代碼,並將多個服務定義爲允許其他插件/片段掛接到應用程序以添加新功能的擴展。Eclipse e4 RCP插件之間的訪問服務

我的主要服務有其他插件應該用來註冊新功能的方法,並以編程方式添加到主應用程序的模型中。然而,我不確定如何讓這些插件查找服務並在插件啓動時自行註冊。

一個例子:

我對我的服務主插件接口:

public interface FeedManager { 

    boolean registerFeed(Feed service); 

    boolean unregisterFeed(Feed service); 

    IObservableList getFeeds(); 
} 

我在第二插件想要什麼:

public class TestFeed { 

    ///this method could be in a constructor or @PostConstruct method instead 
    @Inject 
    public void init(FeedManager manager){  

     Feed feed = new Feed(); 
     feed.setName("Test feed"); 

     manager.registerFeed(feed); 

    } 

} 

回答

0

+1 @Frank爲指向正確的教程。在那裏,你需要在第二個插件中創建一個處理器。