8
我有這種情況下,我有三個聲明式服務,提供相同的接口(說讀者界面,我有readerimpl1-數據庫readerimpl2-平文件readerimpl3內存)。我想要一個只綁定到數據庫實現的使用者。在組件定義中,我們給它起一個名字,所以我很確定名稱在註冊表中,所以如果我要添加一個激活方法,我可以使用名稱從組件上下文中查找。Osgi聲明性服務條件綁定
我想嘗試通過綁定/解除綁定,但使用服務名稱作爲參數。我很確定組件引用元素中的「目標」參數可以用來做到這一點,但我還沒有找到如何使用它。
有沒有其他人這樣做?
這將是類似於使用 @Reference(映射名= 「foo」 的)
這是一個真正有趣的問題。它讓我想到了如果你喜歡*數據庫impl但是會接受另一個的相關問題。在這種情況下,您可以通過@Reference(cardinality = ReferenceCardinality.OPTIONAL_MULTIPLE,policy = ReferencePolicy.DYNAMIC)實現,然後在添加/刪除方法中篩選列表。 –