Spec-Zone.ru › OpenJDK 21

Класс Разрешения

java.lang.Object
java.security.PermissionCollection
java.security.Permissions
Все реализованные интерфейсы:
Serializable
public final class Permissions extends PermissionCollection implements Serializable
Этот класс представляет собой гетерогенную коллекцию разрешений. То есть, он содержит различные типы Permission объектов, организованных в PermissionCollection объекты. Например, если какие-либо java.io.FilePermission объекты добавлены в экземпляр этого класса, все они хранятся в одном PermissionCollection. Это PermissionCollection возвращается при вызове метода newPermissionCollection в классе FilePermission. Аналогично, все java.lang.RuntimePermission объекты хранятся в PermissionCollection возвращаемом вызовом метода newPermissionCollection в классе RuntimePermission. Таким образом, этот класс представляет собой коллекцию PermissionCollection объектов.

Когда вызывается метод add для добавления Permission, Permission хранится в соответствующем PermissionCollection. Если такой коллекции еще нет, определяется класс объекта Permission и вызывается метод newPermissionCollection этого класса для создания PermissionCollection и добавления его в объект Permissions. Если newPermissionCollection возвращает null, создаётся и используется по умолчанию PermissionCollection, использующая хеш-таблицу. Каждый элемент хеш-таблицы хранит объект Permission как ключ, так и значение.

Перечисления, возвращаемые методом elements, не являются fail-fast. Изменения в коллекции не должны выполняться во время перечисления по этой коллекции.

С:
1.2
См. также:
  • Permission
  • PermissionCollection
  • AllPermission

Краткое описание конструкторов

Конструктор Описание
Permissions()
Создаёт новый объект Permissions содержащий ни одного объекта PermissionCollection.

Краткое описание методов

Модификатор и тип Метод Описание
void add(Permission permission)
Добавляет объект Permission в PermissionCollection для класса, к которому относится разрешение.
Enumeration<Permission> elements()
Возвращает перечисление всех объектов Permission во всех объектах PermissionCollection в этом объекте Permissions.
boolean implies(Permission permission)
Проверяет, подразумевает ли PermissionCollection для разрешений указанного класса разрешение, выраженное в объекте permission.

Методы, объявленные в классе java.security.PermissionCollection

elementsAsStream, isReadOnly, setReadOnly, toString

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

Permissions

public Permissions()
Создаёт новый объект Permissions содержащий ни одного объекта PermissionCollection.

Подробное описание методов

add

public void add(Permission permission)
Добавляет объект Permission в PermissionCollection для класса, к которому относится разрешение. Например, если permission является FilePermission, он добавляется в FilePermissionCollection хранящийся в этом объекте Permissions. Этот метод создаёт новый объект PermissionCollection (и добавляет разрешение в него), если соответствующая коллекция ещё не существует.
Указано в:
add в классе PermissionCollection
Параметры:
permission - объект Permission для добавления.
Исключения:
SecurityException - если этот объект Permissions помечен как только для чтения.
См. также:
  • PermissionCollection.isReadOnly()

implies

public boolean implies(Permission permission)
Проверяет, подразумевает ли PermissionCollection для разрешений указанного класса разрешение, выраженное в объекте permission. Возвращает true если совокупность разрешений в соответствующем PermissionCollection (например, FilePermissionCollection для FilePermission) вместе подразумевают указанное разрешение.

Например, предположим, что в этом объекте FilePermissionCollection есть Permissions, содержащий одно FilePermission, которое указывает доступ для чтения для всех файлов во всех подкаталогах каталога "/tmp", и другое FilePermission, которое указывает доступ для записи для всех файлов в каталоге "/tmp/scratch/foo". Тогда, если метод implies вызывается с разрешением, указывающим доступ для чтения и записи к файлам в каталоге "/tmp/scratch/foo", возвращается true.

Кроме того, если этот объект PermissionCollection содержит AllPermission, этот метод всегда вернёт true.

Указано в:
implies в классе PermissionCollection
Параметры:
permission - объект Permission для проверки.
Возвращает:
true если "permission" подразумевается разрешениями в PermissionCollection к которому оно относится, false если нет.

elements

public Enumeration<Permission> elements()
Возвращает перечисление всех объектов Permission во всех объектах PermissionCollection в этом объекте Permissions.
Указано в:
elements в классе PermissionCollection
Возвращает:
перечисление всех объектов Permission.
См. также:
  • PermissionCollection.elementsAsStream()

© 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/java/security/Permissions.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API