Interface ResourceCapabilityReference<T>

Type Parameters:
T - the requirement type
All Superinterfaces:
CapabilityReference<T>, org.jboss.as.controller.CapabilityReferenceRecorder, CapabilityReferenceResolver<T>, org.jboss.as.controller.Feature, ResourceModelResolver<ServiceDependency<T>>, ResourceResolver<ServiceDependency<T>>
All Known Subinterfaces:
ResourceCapabilityReferenceRecorder<T>
All Known Implementing Classes:
ResourceCapabilityReference.AbstractResourceCapabilityServiceDescriptorReference, ResourceCapabilityReference.ResourceCapabilityServiceDescriptorReference, ResourceCapabilityReferenceRecorder.ResourceCapabilityServiceDescriptorReference

public interface ResourceCapabilityReference<T> extends CapabilityReference<T>, ResourceModelResolver<ServiceDependency<T>>
A CapabilityReference specialization that records requirements of a resource, rather than an attribute.
Author:
Paul Ferraro
  • Method Details

    • getRequirementNameResolver

      Function<org.jboss.as.controller.PathAddress,String[]> getRequirementNameResolver()
      Returns the resolver of the requirement name from a path address.
      Returns:
      a requirement name resolver
    • addCapabilityRequirements

      void addCapabilityRequirements(org.jboss.as.controller.OperationContext context, org.jboss.as.controller.registry.Resource resource)
      Registers capability requirements for the specified resource.
      Parameters:
      context - the context
      resource - the resource on which requirements are gathered
    • removeCapabilityRequirements

      void removeCapabilityRequirements(org.jboss.as.controller.OperationContext context, org.jboss.as.controller.registry.Resource resource)
      Unregisters capability requirements for the specified resource.
      Parameters:
      context - the context
      resource - the resource on which requirements were gathered
    • addCapabilityRequirements

      default void addCapabilityRequirements(org.jboss.as.controller.OperationContext context, org.jboss.as.controller.registry.Resource resource, String attributeName, String... attributeValues)
      Specified by:
      addCapabilityRequirements in interface org.jboss.as.controller.CapabilityReferenceRecorder
    • removeCapabilityRequirements

      default void removeCapabilityRequirements(org.jboss.as.controller.OperationContext context, org.jboss.as.controller.registry.Resource resource, String attributeName, String... attributeValues)
      Specified by:
      removeCapabilityRequirements in interface org.jboss.as.controller.CapabilityReferenceRecorder
    • builder

      static <T> ResourceCapabilityReference.Builder<T> builder(org.jboss.as.controller.capability.RuntimeCapability<Void> capability, org.wildfly.service.descriptor.NullaryServiceDescriptor<T> requirement)
      Creates a builder for a new reference between the specified capability and the specified requirement.
      Parameters:
      capability - the capability referencing the specified requirement
      requirement - the requirement of the specified capability
    • builder

      static <T> ResourceCapabilityReference.NaryBuilder<T> builder(org.jboss.as.controller.capability.RuntimeCapability<Void> capability, org.wildfly.service.descriptor.UnaryServiceDescriptor<T> requirement)
      Creates a builder for a new reference between the specified capability and the specified requirement. By default, the requirement name will resolve against the path of the current resource.
      Parameters:
      capability - the capability referencing the specified requirement
      requirement - the requirement of the specified capability
    • builder

      static <T> ResourceCapabilityReference.NaryBuilder<T> builder(org.jboss.as.controller.capability.RuntimeCapability<Void> capability, org.wildfly.service.descriptor.BinaryServiceDescriptor<T> requirement)
      Creates a builder for a new reference between the specified capability and the specified requirement. By default, the requirement name will resolve against the paths of the parent and current resources, respectively.
      Parameters:
      capability - the capability referencing the specified requirement
      requirement - the requirement of the specified capability
      requirementNameResolver - function for resolving the dynamic components of the requirement name
    • builder

      static <T> ResourceCapabilityReference.NaryBuilder<T> builder(org.jboss.as.controller.capability.RuntimeCapability<Void> capability, org.wildfly.service.descriptor.TernaryServiceDescriptor<T> requirement)
      Creates a builder for a new reference between the specified capability and the specified requirement. By default, the requirement name will resolve against the paths of the grandparent, parent, and current resources, respectively.
      Parameters:
      capability - the capability referencing the specified requirement
      requirement - the requirement of the specified capability
      requirementNameResolver - function for resolving the dynamic components of the requirement name
    • builder

      static <T> ResourceCapabilityReference.NaryBuilder<T> builder(org.jboss.as.controller.capability.RuntimeCapability<Void> capability, org.wildfly.service.descriptor.QuaternaryServiceDescriptor<T> requirement)
      Creates a builder for a new reference between the specified capability and the specified requirement. By default, the requirement name will resolve against the paths of the great-grandparent, grandparent, parent, and current resources, respectively.
      Parameters:
      capability - the capability referencing the specified requirement
      requirement - the requirement of the specified capability
      requirementNameResolver - function for resolving the dynamic components of the requirement name