Класс 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)

Обновляет соответствующие ProtectionDomains принципами из Subject, связанными с этим SubjectDomainCombiner.

Subject getSubject()

Получить Subject связанный с этим SubjectDomainCombiner.

Методы, унаследованные от класса 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 создается для каждого нестатического ProtectionDomain ( (staticPermissionsOnly() == false) в массиве currentDomains). Каждый новый экземпляр 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, 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/javax/security/auth/SubjectDomainCombiner.html

Spec-Zone .ru
спецификации, руководства, описания, API