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