2011-01-19 51 views
0

我想知道什麼是正確的:我有一個eclipse rcp應用程序,它使用了一些JPA實體。現在我很樂意使用通過IAdapterFactoryIAdaptable界面提供的適配器模式。根據這article我的實體必須實現IAdaptable接口,但我想有乾淨的實體,我也不想寫愚蠢的ContentProvider。我的問題:我有沒有其他選擇,然後使用ContentProvider?實體和適配器模式

回答

3

Look at this

他們說,這不是嚴格必要實施IAdaptable

也可以做到這一點

IAdapterManager manager = Platform.getAdapterManager(); 
... = manager.getAdapter(object, IResource.class); 

例如WorkbenchLabelProvider使用org.eclipse.ui.internal.util.Util.getAdapter()它檢查對象是否爲IAdaptable以後使用IAdapterManager

IAdapterManager管理IAdapterFactories。可以使用registerAdapters方法以編程方式註冊適配器工廠。或者,他們可以使用org.eclipse.core.runtime.adapters擴展點以聲明方式註冊。