public class SubjectDomainCombiner extends Object implements DomainCombiner
SubjectDomainCombiner从与
Subject联的
SubjectDomainCombiner更新ProtectionDomains与
SubjectDomainCombiner 。
| Constructor and Description |
|---|
SubjectDomainCombiner(Subject subject)
将所提供的
Subject与此
SubjectDomainCombiner 。
|
| Modifier and Type | Method and Description |
|---|---|
ProtectionDomain[] |
combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)
从与
Subject相关联的Subject更新与Principal的相关
SubjectDomainCombiner 。
|
Subject |
getSubject()
获取
Subject与此相关
SubjectDomainCombiner 。
|
public SubjectDomainCombiner(Subject subject)
Subject与此
SubjectDomainCombiner 。
subject -在
Subject到与此相关
SubjectDomainCombiner 。
public Subject getSubject()
Subject与此相关
SubjectDomainCombiner 。
Subject与此相关
SubjectDomainCombiner ,或
null如果没有
Subject与此相关联的
SubjectDomainCombiner 。
SecurityException -如果调用方无权获得
Subject与此相关
SubjectDomainCombiner 。
public ProtectionDomain[] combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)
Subject相关联的Subject更新与Principals的相关SubjectDomainCombiner 。
将为currentDomains数组中的每个ProtectionDomain创建一个新的ProtectionDomain实例。 每个新ProtectionDomain实例使用所创建的CodeSource , Permission S和ClassLoader从相应ProtectionDomain在currentDomains,以及与从校长Subject与此相关的SubjectDomainCombiner 。
所有新实例化的ProtectionDomains都组合成一个新的数组。 protectedDomains数组中的ProtectionDomains会追加到新的数组中,并返回结果。
请注意,可能会发生优化,例如删除重复的ProtectionDomain。 另外,可以允许缓存ProtectionDomains。
combine在界面
DomainCombiner
currentDomains - 与当前执行Thread相关联的ProtectionDomains,最高权限为ProtectionDomain 。
ProtectionDomains按执行顺序列出,最近执行的ProtectionDomain位于阵列的开头。
此参数可以为null如果当前的执行线程没有相关的ProtectionDomains。
assignedDomains - 如果发生了AccessController.doPrivileged(...,
context )的调用,则从父线程继承的ProtectionDomains或者来自特权
上下文的
null如果没有从父线程继承ProtectionDomains,则此参数可能为
null ,或从特权
上下文中 。
null 。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.