public abstract class DomainRequirementProvider extends Object implements hudson.ExtensionPoint
ExtensionPoint
serves as a means for plugins to augment the
domain-requirement discovery process. The intended usage is:
List<T> list = DomainRequirementProvider.lookupRequirements(
FooRequirement.class);
This will delegate to the various extension implementations to
provide(Class)
a List
of requirements from things it
understands how to discover. The expectation is that it will call:
of(discoveredClass, type /* parameter to provide */);
in order to perform the RequiresDomain
resolution.Constructor and Description |
---|
DomainRequirementProvider() |
Modifier and Type | Method and Description |
---|---|
static <T extends com.cloudbees.plugins.credentials.domains.DomainRequirement> |
lookupRequirements(Class<T> type)
The the entrypoint for requirement gathering, this static method delegates
to any registered providers to provide their set of discoverable
requirements.
|
static <T extends com.cloudbees.plugins.credentials.domains.DomainRequirement> |
of(Class<?> type,
Class<T> requirementType)
This is called by implementations of
provide() to instantiate
the class specified by an actual attribute, if present. |
protected abstract <T extends com.cloudbees.plugins.credentials.domains.DomainRequirement> |
provide(Class<T> type)
This hook is intended for providers to implement such that they can
surface custom class-discovery logic, on which they will call
of()
to instantiate the elements returned. |
protected abstract <T extends com.cloudbees.plugins.credentials.domains.DomainRequirement> List<T> provide(Class<T> type)
of()
to instantiate the elements returned.public static <T extends com.cloudbees.plugins.credentials.domains.DomainRequirement> List<T> lookupRequirements(Class<T> type)
Copyright © 2004-2014. All Rights Reserved.