Класс SubjectDomainCombiner
- java.lang.Object
-
- javax.security.auth.SubjectDomainCombiner
- Все реализуемые интерфейсы:
- DomainCombiner
public class SubjectDomainCombiner extends Object implements DomainCombiner
Объект SubjectDomainCombiner обновляет ProtectionDomains с принципалами из Subject, связанными с этим SubjectDomainCombiner.
Конструкторы
| Конструктор и описание |
|---|
SubjectDomainCombiner(Subject subject) Связывает предоставленный |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
ProtectionDomain[] |
combine(ProtectionDomain[] currentDomains,
ProtectionDomain[] assignedDomains) Обновляет соответствующие ProtectionDomains с принципалами из |
Subject |
getSubject() Получить |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
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) Обновляет соответствующие ProtectionDomains с принципалами из Subject, связанными с этим SubjectDomainCombiner.
Для каждого ProtectionDomain в массиве currentDomains создается новый экземпляр ProtectionDomain. Каждый новый экземпляр ProtectionDomain создается с использованием CodeSource, Permission и ClassLoader из соответствующего ProtectionDomain в currentDomains, а также с принципалами из Subject, связанными с этим SubjectDomainCombiner.
Все недавно созданные ProtectionDomains объединяются в новый массив. ProtectionDomains из массива assignedDomains добавляются в этот новый массив, и результат возвращается.
Обратите внимание, что могут произойти оптимизации, такие как удаление дублирующих ProtectionDomains. Кроме того, может быть разрешено кэширование ProtectionDomains.
- Определено в:
-
combineв интерфейсеDomainCombiner - Параметры:
-
currentDomains- ProtectionDomains, связанные с текущим потоком выполнения, до последнего привилегированногоProtectionDomain. ProtectionDomains перечислены в порядке выполнения, при этом последний выполняемыйProtectionDomainнаходится в начале массива. Этот параметр может бытьnull, если текущий поток выполнения не имеет связанных ProtectionDomains. -
assignedDomains- ProtectionDomains, унаследованные от родительского потока, или ProtectionDomains из привилегированного контекста, если был выполнен вызов AccessController.doPrivileged(..., context). Этот параметр может бытьnull, если не было ProtectionDomains, унаследованных от родительского потока или привилегированного контекста. - Возвращает:
- новый массив, содержащий обновленные ProtectionDomains, или
null.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.