我有一個Java應用程序,我想使其可擴展。爲了創建擴展,我們公司的開發人員將編寫一個實現特定接口的Java類。他們也可能希望編寫關聯的助手類。我想將這些擴展加載到應用程序中而不會中斷。如何爲不同的Java類授予不同的權限?
我想限制一下這個類可以做到以下幾點:應用程序的API中
- 通話的方法(這將是在構造函數的參數)
- 創建中的其他對象的實例相同的包(所以擴展類的作者可以使用其他類來完成工作)。
當調用該類時,傳入的API對象已經有一個「customer」定義並存儲爲成員變量。它將使用此限制通過API訪問該客戶的數據。
我不希望這些類執行諸如訪問數據庫,寫入磁盤或執行其他操作等事情。這主要是在依賴管理和封裝方面的努力,因爲同一組開發人員將有權寫入擴展和核心繫統。
有沒有這樣的模式?我在正確的軌道上嗎?