|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
public interface DomainCombiner
DomainCombiner
提供一個動態更新與當前 AccessControlContext
關聯的 ProtectionDomain 的方法。
將 DomainCombiner
作為參數傳遞給 AccessControlContext
的適當的建構子。然後,將新建構的上下文傳遞給 AccessController.doPrivileged(..., context)
方法來將提供的上下文(以及關聯的 DomainCombiner
)與當前的執行執行緒綁定在一起。對 AccessController.getContext
或 AccessController.checkPermission
的後續調用將導致對 DomainCombiner.combine
的調用。
combine 方法帶有兩個參數。第一個參數表示從最近一次調用 AccessController.doPrivileged
以來當前執行執行緒中 ProtectionDomain 的陣列。如果沒有調用 doPrivileged,則第一個參數將包含當前執行執行緒中的所有 ProtectionDomain。第二個參數表示繼承的 ProtectionDomain 的陣列,可能為 null
。ProtectionDomain 可能是從父執行緒或特權上下文繼承的。如果沒有調用 doPrivileged,則第二個參數將包含從父執行緒繼承的 ProtectionDomain。如果對 doPrivileged 進行了一次或多次調用,並且最近一次調用的是 doPrivileged(action, context),那麼第二個參數將包含特權上下文中的 ProtectionDomain。如果最近一次調用的是 doPrivileged(action),則不存在特權上下文,第二個參數將為 null
。
combine
方法研究兩個 ProtectionDomain 的輸入陣列,返回包含更新的 ProtectionDomain 的單個陣列。在最簡單的情況下,combine
方法將兩個堆疊(stack)空間合併為一個。在較複雜的情況下,combine
方法返回 ProtectionDomain 的修改的堆疊(stack)空間。修改操作可能添加新的 ProtectionDomain、移除某些特定的 ProtectionDomain 或者只是更新現有的 ProtectionDomain。對 ProtectionDomain 重新排序及進行其他優化也是允許的。通常,combine
方法基於 DomainCombiner
中封裝的資訊進行更新。
在 AccessController.getContext
方法從 DomainCombiner
接收 ProtectionDomain 後備的組合堆疊(stack)空間後,它將返回包含組合 ProtectionDomain 和 DomainCombiner
的新 AccessControlContext。
AccessController
,
AccessControlContext
方法摘要 | |
---|---|
ProtectionDomain[] |
combine(ProtectionDomain[] currentDomains,
ProtectionDomain[] assignedDomains)
修改或更新提供的 ProtectionDomain。 |
方法詳細資訊 |
---|
ProtectionDomain[] combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)
currentDomains
- 與當前執行執行緒關聯的 ProtectionDomain,直到最近的特權 ProtectionDomain
.ProtectionDomain 按執行的順序列出,最近執行的 ProtectionDomain
位於陣列的開頭。如果當前執行的執行緒沒有任何關聯的 ProtectionDomain,則此參數為 null
。assignedDomains
- 繼承的 ProtectionDomain 組成的陣列。ProtectionDomain 可能是從父執行緒或特權 AccessControlContext
繼承的。如果不存在任何繼承的 ProtectionDomain,則此參數為 null
。
null
。
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。