Uses of Interface
io.helidon.inject.api.ServiceProvider
Packages that use ServiceProvider
Package
Description
The Helidon Injection API provide these annotation types that are typically used at compile time
to assign special meaning to the type.
Config-driven Services API.
Internal tooling for the injection maven-plugin.
Injection runtime services.
Injection SPI.
Injection testing support.
-
Uses of ServiceProvider in io.helidon.inject.api
Subinterfaces of ServiceProvider in io.helidon.inject.apiModifier and TypeInterfaceDescriptioninterface
An extension toServiceProvider
that allows for startup binding from aInjection$$Application
, and thereby works in conjunction with theServiceBinder
during injection service registry initialization.Methods in io.helidon.inject.api that return ServiceProviderModifier and TypeMethodDescriptiondefault ServiceProvider
<?> Services.lookup
(io.helidon.inject.api.ServiceInfoCriteria criteria) Retrieves the first match based upon the passed service info criteria.default <T> ServiceProvider
<T> Retrieve the "first" service that implements a given contract type with the expectation that there is a match available.default <T> ServiceProvider
<T> Retrieve the "first" named service that implements a given contract type with the expectation that there is a match available.default ServiceProvider
<?> Services.lookupFirst
(io.helidon.inject.api.ServiceInfoCriteria criteria) Retrieves the first match based upon the passed service info criteria.default <T> ServiceProvider
<T> Services.lookupFirst
(Class<T> type) Retrieves the first match based upon the passed service info criteria.Methods in io.helidon.inject.api that return types with arguments of type ServiceProviderModifier and TypeMethodDescriptionServiceProviderBindable.interceptor()
Returns the service provider that intercepts this provider.default List
<ServiceProvider<?>> Services.lookupAll
(io.helidon.inject.api.ServiceInfoCriteria criteria) Retrieve all services that match the criteria.List
<ServiceProvider<?>> Services.lookupAll
(io.helidon.inject.api.ServiceInfoCriteria criteria, boolean expected) Retrieve all services that match the criteria.<T> List
<ServiceProvider<T>> Retrieve all services that implement a given contract type.default <T> List
<ServiceProvider<T>> Lookup all services that match the criteria and share a given contract type.Services.lookupFirst
(io.helidon.inject.api.ServiceInfoCriteria criteria, boolean expected) Retrieves the first match based upon the passed service info criteria.<T> Optional
<ServiceProvider<T>> Services.lookupFirst
(Class<T> type, boolean expected) Retrieve the "first" service that implements a given contract type with no expectation that there is a match available unlessexpected = true
.default <T> Optional
<ServiceProvider<T>> Services.lookupFirst
(Class<T> contract, io.helidon.inject.api.ServiceInfoCriteria criteria, boolean expected) Retrieves the first match based upon the passed service info criteria.<T> Optional
<ServiceProvider<T>> Services.lookupFirst
(Class<T> type, String name, boolean expected) Retrieve the "first" service that implements a given contract type with no expectation that there is a match available unlessexpected = true
.Map
<String, ? extends ServiceProvider<?>> ServiceProviderProvider.managedServiceProviders
(io.helidon.inject.api.ServiceInfoCriteria criteria) This method will only apply to the managed/slave instances being provided, not to itself as in the case forServiceProviderProvider.serviceProviders(ServiceInfoCriteria, boolean, boolean)
.default Optional
<ServiceProvider<?>> ServiceProviderBindable.rootProvider()
Gets the root/parent provider for this service.InjectionServiceProviderException.serviceProvider()
The service provider that this exception pertains to, or empty if not related to any particular provider.List
<? extends ServiceProvider<?>> ServiceProviderProvider.serviceProviders
(io.helidon.inject.api.ServiceInfoCriteria criteria, boolean wantThis, boolean thisAlreadyMatches) Returns a list of all matching service providers, potentially including itself in the result.Methods in io.helidon.inject.api with parameters of type ServiceProviderModifier and TypeMethodDescriptionvoid
ServiceBinder.bind
(ServiceProvider<?> serviceProvider) Bind a service provider instance into the backingServices
service registry.ServiceInjectionPlanBinder.Binder.bind
(String id, ServiceProvider<?> serviceProvider) Binds a single service provider to the injection point identified byInjectionPointInfoBlueprint.id()
.ServiceInjectionPlanBinder.Binder.bindMany
(String id, ServiceProvider<?>... serviceProviders) Binds a list of service providers to the injection point identified byInjectionPointInfoBlueprint.id()
.ServiceInjectionPlanBinder.bindTo
(ServiceProvider<?> serviceProvider) Bind an injection plan to a service provider instance.default void
ServiceProviderBindable.interceptor
(ServiceProvider<?> interceptor) Sets the interceptor for this service provider.default void
ServiceProviderBindable.rootProvider
(ServiceProvider<T> rootProvider) Sets the root/parent provider for this instance.Constructors in io.helidon.inject.api with parameters of type ServiceProviderModifierConstructorDescriptionInjectionServiceProviderException
(String msg, ServiceProvider<?> serviceProvider) A general purpose exception from the Injection framework.InjectionServiceProviderException
(String msg, Throwable cause, ServiceProvider<?> serviceProvider) A general purpose exception from the Injection framework.InvocationException
(String msg, Throwable cause, ServiceProvider<?> serviceProvider, boolean targetWasCalled) Constructor.ServiceProviderInjectionException
(String msg, ServiceProvider<?> serviceProvider) Injection, or a required service lookup related exception.ServiceProviderInjectionException
(String msg, Throwable cause, ServiceProvider<?> serviceProvider) Injection, or a required service lookup related exception. -
Uses of ServiceProvider in io.helidon.inject.configdriven.runtime
Subinterfaces of ServiceProvider in io.helidon.inject.configdriven.runtimeModifier and TypeInterfaceDescriptioninterface
An extension toServiceProvider
that represents a config-driven service.Classes in io.helidon.inject.configdriven.runtime that implement ServiceProviderModifier and TypeClassDescriptionclass
Abstract base for any config-driven-service.Methods in io.helidon.inject.configdriven.runtime that return types with arguments of type ServiceProviderModifier and TypeMethodDescriptionConfigDrivenServiceProviderBase.rootProvider()
List
<ServiceProvider<?>> ConfigDrivenServiceProviderBase.serviceProviders
(io.helidon.inject.api.ServiceInfoCriteria criteria, boolean wantThis, boolean thisAlreadyMatches) Here we are only looking for service providers, not service instances.Methods in io.helidon.inject.configdriven.runtime with parameters of type ServiceProviderModifier and TypeMethodDescriptionConfigDrivenServiceProviderBase.resolve
(io.helidon.inject.api.InjectionPointInfo ipInfo, InjectionServices injectionServices, ServiceProvider<?> serviceProvider, boolean resolveIps) void
ConfigDrivenServiceProviderBase.rootProvider
(ServiceProvider<T> root) -
Uses of ServiceProvider in io.helidon.inject.maven.plugin
Method parameters in io.helidon.inject.maven.plugin with type arguments of type ServiceProviderModifier and TypeMethodDescriptionprotected String
AbstractCreatorMojo.determinePackageName
(Optional<ServiceProvider<ModuleComponent>> optModuleSp, Collection<TypeName> typeNames, io.helidon.inject.tools.ModuleInfoDescriptor descriptor, boolean persistIt) Determines the primary package name (which also typically doubles as the application name). -
Uses of ServiceProvider in io.helidon.inject.runtime
Classes in io.helidon.inject.runtime that implement ServiceProviderModifier and TypeClassDescriptionclass
Abstract base implementation forServiceProviderBindable
, which represents the basics for regular Singleton, ApplicationScoped, Provider, and ServiceProvider based managed services.Methods in io.helidon.inject.runtime that return ServiceProviderModifier and TypeMethodDescriptionstatic ServiceProvider
<?> ServiceBinderDefault.toRootProvider
(ServiceProvider<?> sp) Returns the root provider of the service provider passed.Methods in io.helidon.inject.runtime that return types with arguments of type ServiceProviderMethods in io.helidon.inject.runtime with parameters of type ServiceProviderModifier and TypeMethodDescriptionvoid
ServiceBinderDefault.bind
(ServiceProvider<?> sp) void
AbstractServiceProvider.interceptor
(ServiceProvider<?> interceptor) static boolean
ServiceUtils.isQualifiedInjectionTarget
(ServiceProvider<?> sp) Determines if the service provider is valid to receive injections.static <T> Optional
<AbstractServiceProvider<T>> AbstractServiceProvider.toAbstractServiceProvider
(ServiceProvider<?> sp, boolean expected) Will test and downcast the passed service provider to an instance ofAbstractServiceProvider
.static Optional
<ServiceProviderBindable<?>> ServiceBinderDefault.toBindableProvider
(ServiceProvider<?> sp) Returns the bindable service provider for what is passed if available.static ServiceProvider
<?> ServiceBinderDefault.toRootProvider
(ServiceProvider<?> sp) Returns the root provider of the service provider passed.Constructors in io.helidon.inject.runtime with parameters of type ServiceProviderModifierConstructorDescriptionprotected
InterceptedMethod
(I interceptedImpl, ServiceProvider<?> serviceProvider, TypeName serviceTypeName, List<Annotation> serviceLevelAnnotations, List<Provider<Interceptor>> interceptors, TypedElementInfo methodInfo) The constructor.protected
InterceptedMethod
(I interceptedImpl, ServiceProvider<?> serviceProvider, TypeName serviceTypeName, List<Annotation> serviceLevelAnnotations, List<Provider<Interceptor>> interceptors, TypedElementInfo methodInfo, List<TypedElementInfo> methodArgInfo) The constructor. -
Uses of ServiceProvider in io.helidon.inject.spi
Methods in io.helidon.inject.spi with parameters of type ServiceProviderModifier and TypeMethodDescriptionInjectionResolver.resolve
(io.helidon.inject.api.InjectionPointInfo ipInfo, InjectionServices injectionServices, ServiceProvider<?> serviceProvider, boolean resolveIps) Attempts to resolve the injection point info for a given service provider. -
Uses of ServiceProvider in io.helidon.inject.testing
Classes in io.helidon.inject.testing that implement ServiceProviderModifier and TypeClassDescriptionclass
Creates a simple reflection based service provider - for testing purposes only!Methods in io.helidon.inject.testing with parameters of type ServiceProviderModifier and TypeMethodDescriptionstatic void
InjectionTestingSupport.bind
(InjectionServices injectionServices, ServiceProvider<?> serviceProvider) Provides a means to bind a service provider into theServices
registry.