- java.lang.Object
 -  
      
- javax.security.auth.SubjectDomainCombiner
 
 
-  
       
- 实现的所有接口
 -  
         
DomainCombiner 
public class SubjectDomainCombiner extends Object implements DomainCombiner
一个SubjectDomainCombiner与校长更新的ProtectionDomains从Subject与此相关SubjectDomainCombiner。- 从以下版本开始:
 - 1.4
 
 
-  
        
       
-  
             
构造方法摘要
构造方法 构造器 描述 SubjectDomainCombiner(Subject subject)将提供的Subject与此SubjectDomainCombiner。 
-  
             
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 ProtectionDomain[]combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)使用与此SubjectDomainCombiner相关联的Subject中的Principals更新相关ProtectionDomains。SubjectgetSubject()获取Subject与此相关SubjectDomainCombiner。 
 -  
             
 
-  
        
       
-  
             
构造方法详细信息
-  
SubjectDomainCombiner
public SubjectDomainCombiner(Subject subject)
将提供的Subject与此SubjectDomainCombiner。- 参数
 -  
              
subject-将Subject到与此相关SubjectDomainCombiner。 
 
 -  
 
-  
             
方法详细信息
-  
getSubject
public Subject getSubject()
获取Subject与此相关SubjectDomainCombiner。- 结果
 - 
               所述 
              
Subject与此相关的SubjectDomainCombiner,或null如果没有Subject与此相关联的SubjectDomainCombiner。 - 异常
 -  
              
SecurityException-如果调用方无权获得Subject与此相关SubjectDomainCombiner。 
 
-  
combine
public ProtectionDomain[] combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)
使用与此SubjectDomainCombiner相关联的Subject中的Principals更新相关ProtectionDomains。一个新的
ProtectionDomain实例对于每个非静态创建ProtectionDomain((staticPermissionsOnly()== FALSE)中currentDomains阵列。每个新ProtectionDomain实例使用所创建的CodeSource,PermissionS和ClassLoader从相应ProtectionDomain在currentDomains,以及与Subject相关联的主体与此SubjectDomainCombiner静态保护SubjectDomainCombiner组合,不创建新实例。所有ProtectionDomains(静态和新实例化)都组合成一个新阵列。
assignedDomains数组中的ProtectionDomains将附加到此新数组,并返回结果。请注意,可能已发生诸如删除重复的ProtectionDomain之类的优化。 此外,可以允许缓存ProtectionDomains。
- Specified by:
 -  
              
combine在界面DomainCombiner - 参数
 -  
              
currentDomains- 与当前执行线程关联的ProtectionDomain,直到最新的特权ProtectionDomain。 ProtectionDomains按执行顺序列出,最近执行的ProtectionDomain位于阵列的开头。 如果当前执行线程没有关联的ProtectionDomains,则此参数可能为null。 -  
              
assignedDomains-从特权从父线程继承的ProtectionDomain,或的ProtectionDomaincontext,如果一个电话AccessController.doPrivileged(..., context)发生此参数可以为null如果没有从父线程继承的ProtectionDomain,或从特权context。 - 结果
 - 
               由更新的ProtectionDomains组成的新阵列,或 
              
null。 
 
 -  
 
 -