- java.lang.Object
-
- java.security.PolicySpi
-
public abstract class PolicySpiextends Object
此类定义Policy
类的 ( SPI )。 此类中的所有抽象方法必须由希望提供Policy实现的每个服务提供者实现。此抽象类的子类实现必须提供一个公共构造函数,该构造函数将
Policy.Parameters
对象作为输入参数。 如果它不理解Policy.Parameters
输入,则此构造函数也必须抛出IllegalArgumentException。- 从以下版本开始:
- 1.6
-
-
构造方法摘要
构造方法 构造器 描述 PolicySpi()
-
方法摘要
所有方法 实例方法 抽象方法 具体的方法 变量和类型 方法 描述 protected PermissionCollection
engineGetPermissions(CodeSource codesource)
返回一个PermissionCollection对象,该对象包含授予指定CodeSource的权限集。protected PermissionCollection
engineGetPermissions(ProtectionDomain domain)
返回PermissionCollection对象,该对象包含授予指定ProtectionDomain的权限集。protected abstract boolean
engineImplies(ProtectionDomain domain, Permission permission)
检查策略是否已授予ProtectionDomain权限。protected void
engineRefresh()
刷新/重新加载策略配置。
-
-
-
方法详细信息
-
engineImplies
protected abstract boolean engineImplies(ProtectionDomain domain, Permission permission)
检查策略是否已授予ProtectionDomain权限。- 参数
-
domain
- 要检查的ProtectionDomain。 -
permission
- 检查是否已将此权限授予指定的域。 - 结果
- boolean如果将权限授予域,则为true。
-
engineRefresh
protected void engineRefresh()
刷新/重新加载策略配置。 此方法的行为取决于实现。 例如,在基于文件的策略上调用refresh
将导致重新读取该文件。此方法的默认实现不执行任何操作。 如果策略实现支持刷新操作,则应该重写此方法。
-
engineGetPermissions
protected PermissionCollection engineGetPermissions(CodeSource codesource)
返回一个PermissionCollection对象,该对象包含授予指定CodeSource的权限集。此方法的默认实现返回Policy.UNSUPPORTED_EMPTY_COLLECTION对象。 如果策略实现可以返回授予CodeSource的一组权限,则可以覆盖此方法。
- 参数
-
codesource
- 已授予返回的PermissionCollection的CodeSource。 - 结果
- 授予指定CodeSource的一组权限。 如果支持此操作,则返回的权限集必须是新的可变实例,并且必须支持异构权限类型。 如果不支持此操作,则返回Policy.UNSUPPORTED_EMPTY_COLLECTION。
-
engineGetPermissions
protected PermissionCollection engineGetPermissions(ProtectionDomain domain)
返回PermissionCollection对象,该对象包含授予指定ProtectionDomain的权限集。此方法的默认实现返回Policy.UNSUPPORTED_EMPTY_COLLECTION对象。 如果策略实现可以返回授予ProtectionDomain的一组权限,则可以覆盖此方法。
- 参数
-
domain
- 已向其授予返回的PermissionCollection的ProtectionDomain。 - 结果
- 授予指定ProtectionDomain的一组权限。 如果支持此操作,则返回的权限集必须是新的可变实例,并且必须支持异构权限类型。 如果不支持此操作,则返回Policy.UNSUPPORTED_EMPTY_COLLECTION。
-
-