Class EndpointConfig

    • Method Detail

      • builder

        public static EndpointConfig.Builder builder()
        Creates a fluent API builder to build new instances of this class.
        Returns:
        a builder instance
      • create

        public static EndpointConfig create()
        Create an instance of endpoint config with default values (e.g. all empty).
        Returns:
        endpoint config instance
      • abacAttributeRaw

        public Object abacAttributeRaw​(String key)
        Description copied from interface: AbacSupport
        Return the actual property value or null if not present. This is the only method that needs to be implemented.
        Specified by:
        abacAttributeRaw in interface AbacSupport
        Parameters:
        key - key (name) of the property
        Returns:
        value of the property or null
      • instance

        public <U> Optional<U> instance​(Class<U> clazz)
        Get an instance of a custom object configuring this endpoint.
        Type Parameters:
        U - type of the configuration
        Parameters:
        clazz - class the instance is bound under (only explicit binding is supported)
        Returns:
        instance of the custom object if present
      • instanceKeys

        public Collection<Class<?>> instanceKeys()
        Get all classes of custom endpoint configuration object registered.
        Returns:
        classes that are keys in the custom object store
      • config

        public Optional<Config> config​(String configKey)
        Get Config instance for a config key.
        Parameters:
        configKey - key of configuration expected
        Returns:
        Config instance if present in this endpoint configuration
      • securityLevels

        public List<SecurityLevel> securityLevels()
        Get all security levels endpoint configuration object registered. The first level represents EndpointConfig.AnnotationScope.APPLICATION level annotations. Other levels are representations of each resource and method used on path to get to the target method.
        Returns:
        all registered security levels
      • combineAnnotations

        @Deprecated
        public <T extends AnnotationList<T> combineAnnotations​(Class<T> annotationClass,
                                                                 EndpointConfig.AnnotationScope... scopes)
        Deprecated.
        use iteration over security levels instead
        Get all annotations of a specific class declared on any level.
        Type Parameters:
        T - type of annotation wanted
        Parameters:
        annotationClass - Class of annotation you want
        scopes - scopes the caller is interested in
        Returns:
        list of annotations in order specified by methodFirst parameter
      • derive

        public EndpointConfig.Builder derive()
        Derive a new endpoint configuration builder based on this instance.
        Returns:
        builder to build a modified copy of this endpoint config