public class SubjectDomainCombiner extends Object implements DomainCombiner
SubjectDomainCombinerは、このSubjectDomainCombinerに関連付けられたSubjectのPrincipalを使用して、ProtectionDomainを更新します。| コンストラクタ | 説明 |
|---|---|
SubjectDomainCombiner(Subject subject) |
この
SubjectDomainCombinerを、指定したSubjectと関連付けます。 |
| 修飾子と型 | メソッド | 説明 |
|---|---|---|
ProtectionDomain[] |
combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains) |
この
SubjectDomainCombinerに関連付けられたSubjectのPrincipalを使用して、関連するProtectionDomainsを更新します。 |
Subject |
getSubject() |
この
SubjectDomainCombinerに関連付けられたSubjectを取得します。 |
public SubjectDomainCombiner(Subject subject)
SubjectDomainCombinerを、指定したSubjectと関連付けます。
subject - このSubjectDomainCombinerに関連付けられるSubject。public Subject getSubject()
SubjectDomainCombinerに関連付けられたSubjectを取得します。
SubjectDomainCombinerに関連付けられているSubject。このSubjectDomainCombinerに関連付けられているSubjectが存在しない場合はnull。SecurityException - 呼出し側に、このSubjectDomainCombinerに関連付けられたSubjectを取得するための権限がない場合。public ProtectionDomain[] combine(ProtectionDomain[] currentDomains, ProtectionDomain[] assignedDomains)
SubjectDomainCombinerに関連付けられたSubjectのPrincipalを使用して、関連するProtectionDomainsを更新します。
新しいProtectionDomainインスタンスが、currentDomains配列の各ProtectionDomainに対して作成されます。 新しいProtectionDomainインスタンスは、currentDomains内の対応するProtectionDomainのCodeSource、Permission、ClassLoaderを使用して、および、このSubjectDomainCombinerに関連付けられたSubjectのPrincipalを使用して作成されます。
新しくインスタンス化されたProtectionDomainは、すべて新しい配列に結合されます。 assignedDomains配列のProtectionDomainがこの新しい配列に追加されて、結果が返されます。
重複するProtectionDomainの削除などの最適化が行われる場合があります。 また、ProtectionDomainのキャッシュを許可できます。
combine、インタフェースDomainCombinercurrentDomains - 現在の実行Threadに関連付けられたProtectionDomain (最新の特権付きProtectionDomainまで)。 ProtectionDomainsは、最後に実行したProtectionDomainを配列の先頭にして、実行された順で列挙される。 実行中のThreadにProtectionDomainが関連付けられていない場合、このパラメータはnullになる可能性がある。 assignedDomains - 親Threadから継承したProtectionDomain。AccessController.doPrivileged(..., context)が呼び出された場合は、特権コンテキストから継承したProtectionDomain。親Threadまたは特権コンテキストから継承したProtectionDomainがない場合はnull。null。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。 そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2025, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Documentation Redistribution Policyも参照してください。