Класс SubjectDomainCombiner
- Все реализованные интерфейсы:
DomainCombiner
@Deprecated(since="17", forRemoval=true) public class SubjectDomainCombiner extends Object implements DomainCombiner
Subject , связанного с этим SubjectDomainCombiner.- Since:
- 1.4
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SubjectDomainCombiner |
Устаревший, для удаления: Этот элемент API может быть удален в будущей версии. Связывает предоставленный Subject с этим SubjectDomainCombiner. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
ProtectionDomain[] |
combine |
Устаревший, для удаления: Этот элемент API может быть удален в будущей версии. Обновляет соответствующие ProtectionDomains принципами из Subject , связанного с этим SubjectDomainCombiner. |
Subject |
getSubject() |
Устаревший, для удаления: Этот элемент API может быть удален в будущей версии. Получить 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)
Subject , связанного с этим SubjectDomainCombiner. Для каждого нестатического ProtectionDomain ( (staticPermissionsOnly() == false) в массиве currentDomains создается новый экземпляр ProtectionDomain . Каждый новый экземпляр ProtectionDomain создается с помощью CodeSource, Permission и ClassLoader из соответствующего ProtectionDomain в currentDomains, а также с принципами из Subject , связанного с этим SubjectDomainCombiner . Статические ProtectionDomains объединяются как есть, и новый экземпляр не создается.
Все ProtectionDomains (статические и вновь созданные) объединяются в новый массив. ProtectionDomains из массива assignedDomains добавляются в этот новый массив, и результат возвращается.
Обратите внимание, что могут быть проведены оптимизации, такие как удаление дубликатов ProtectionDomains. Кроме того, может быть разрешено кэширование ProtectionDomains.
- Спецификация:
-
combineв интерфейсеDomainCombiner - Параметры:
-
currentDomains- ProtectionDomains, связанные с текущей нитью выполнения, до последней привилегированнойProtectionDomain. ProtectionDomains перечислены в порядке выполнения, при этом последняя выполняемаяProtectionDomainнаходится в начале массива. Этот параметр может бытьnull, если у текущей нити выполнения нет связанных ProtectionDomains. -
assignedDomains- ProtectionDomains, унаследованные от родительской нити, или ProtectionDomains от привилегированнойcontext, если произошел вызовAccessController.doPrivileged(..., context). Этот параметр может бытьnull, если ProtectionDomains не были унаследованы от родительской нити или от привилегированнойcontext. - Возвращает:
- новый массив, содержащий обновленные ProtectionDomains, или
null.
© 1993, 2023, 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.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/javax/security/auth/SubjectDomainCombiner.html