AbacValidator<TimeValidator.TimeConfig>public final class TimeValidator extends java.lang.Object implements AbacValidator<TimeValidator.TimeConfig>
| Modifier and Type | Class | Description |
|---|---|---|
static interface |
TimeValidator.DaysOfWeek |
Attribute annotation that can limit the days of week the resource is accessible.
|
static class |
TimeValidator.TimeConfig |
Configuration for time attribute validator.
|
static interface |
TimeValidator.TimeOfDay |
Constraint for a time of day.
|
static interface |
TimeValidator.TimesOfDay |
Constraint for a time of day - container for repeating
TimeValidator.TimeOfDay. |
| Modifier and Type | Method | Description |
|---|---|---|
TimeValidator.TimeConfig |
combine(TimeValidator.TimeConfig parent,
TimeValidator.TimeConfig child) |
Combine two configuration (such as one obtained from annotation and one from config).
|
java.lang.Class<TimeValidator.TimeConfig> |
configClass() |
Class of the configuration type.
|
java.lang.String |
configKey() |
Key of a configuration entry that maps to this validator's configuration.
|
static TimeValidator |
create() |
Return a new instance of this validator with default configuration.
|
TimeValidator.TimeConfig |
fromAnnotations(java.util.List<? extends java.lang.annotation.Annotation> annotations) |
Load configuration class instance from annotations this validator expects.
|
TimeValidator.TimeConfig |
fromConfig(Config config) |
Load configuration class instance from
Config. |
java.util.Collection<java.lang.Class<? extends java.lang.annotation.Annotation>> |
supportedAnnotations() |
Provide extension annotations supported by this validator (e.g.
|
void |
validate(TimeValidator.TimeConfig config,
Errors.Collector collector,
ProviderRequest request) |
Validate that the configuration provided would grant access to the resource.
|
public static TimeValidator create()
public java.lang.Class<TimeValidator.TimeConfig> configClass()
AbacValidatorconfigClass in interface AbacValidator<TimeValidator.TimeConfig>public java.lang.String configKey()
AbacValidatorconfigKey in interface AbacValidator<TimeValidator.TimeConfig>Configpublic TimeValidator.TimeConfig fromConfig(Config config)
AbacValidatorConfig.fromConfig in interface AbacValidator<TimeValidator.TimeConfig>config - configuration located on the key this validator expects in AbacValidator.configKey()public TimeValidator.TimeConfig fromAnnotations(java.util.List<? extends java.lang.annotation.Annotation> annotations)
AbacValidatorfromAnnotations in interface AbacValidator<TimeValidator.TimeConfig>annotations - annotations collected from resource if annotations are supportedpublic TimeValidator.TimeConfig combine(TimeValidator.TimeConfig parent, TimeValidator.TimeConfig child)
AbacValidatorcombine in interface AbacValidator<TimeValidator.TimeConfig>parent - The parent configuration (e.g. obtained from annotation)child - The child configuration (e.g. obtained from explicit object)public void validate(TimeValidator.TimeConfig config, Errors.Collector collector, ProviderRequest request)
AbacValidatorErrors.Collector.fatal(Object, String).validate in interface AbacValidator<TimeValidator.TimeConfig>config - configuration of this validatorcollector - error collector to gather issues with this request (e.g. "service not in role ABC")request - ABAC context containing subject(s), object(s) and environmentpublic java.util.Collection<java.lang.Class<? extends java.lang.annotation.Annotation>> supportedAnnotations()
AbacValidatorRolesAllowed).
Annotations will be collected according to framework in use. For JAX-RS, annotations from application class, resource
class and resource methods will be collected.
The annotations will be transformed to configuration by AbacValidator.fromAnnotations(List).supportedAnnotations in interface AbacValidator<TimeValidator.TimeConfig>Copyright © 2018, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.