Module io.helidon.inject.api
Package io.helidon.inject.api
Class InvocationContext.BuilderBase<BUILDER extends InvocationContext.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends InvocationContext>
java.lang.Object
io.helidon.inject.api.InvocationContext.BuilderBase<BUILDER,PROTOTYPE>
- Type Parameters:
BUILDER- type of the builder extending this abstract builderPROTOTYPE- type of the prototype interface that would be built byPrototype.Builder.buildPrototype()
- All Implemented Interfaces:
Prototype.Builder<BUILDER,PROTOTYPE>
- Direct Known Subclasses:
InvocationContext.Builder
- Enclosing interface:
InvocationContext
public abstract static class InvocationContext.BuilderBase<BUILDER extends InvocationContext.BuilderBase<BUILDER,PROTOTYPE>,PROTOTYPE extends InvocationContext>
extends Object
implements Prototype.Builder<BUILDER,PROTOTYPE>
Fluent API builder base for
InvocationContext.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classGenerated implementation of the prototype, can be extended by descendant prototype implementations. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddClassAnnotations(List<? extends Annotation> classAnnotations) The annotations on the enclosing type.addContextData(Map<? extends String, ?> contextData) This method keeps existing values, then puts all new values into the map.addElementArgInfo(List<? extends TypedElementInfo> elementArgInfo) The method/element argument info.addInterceptors(List<Provider<Interceptor>> interceptors) The interceptor chain.The annotations on the enclosing type.classAnnotations(List<? extends Annotation> classAnnotations) The annotations on the enclosing type.The contextual info that can be shared between interceptors.contextData(Map<? extends String, ?> contextData) This method replaces all values with the new ones.The method/element argument info.elementArgInfo(List<? extends TypedElementInfo> elementArgInfo) The method/element argument info.The element info represents the method (or the constructor) being invoked.elementInfo(TypedElementInfo elementInfo) The element info represents the method (or the constructor) being invoked.elementInfo(Consumer<TypedElementInfo.Builder> consumer) The element info represents the method (or the constructor) being invoked.elementInfo(Supplier<? extends TypedElementInfo> supplier) The element info represents the method (or the constructor) being invoked.from(InvocationContext prototype) Update this builder from an existing prototype instance.from(InvocationContext.BuilderBase<?, ?> builder) Update this builder from an existing prototype builder instance.The interceptor chain.interceptors(List<Provider<Interceptor>> interceptors) The interceptor chain.protected voidHandles providers and decorators.The service provider being intercepted.serviceProvider(ServiceProvider<?> serviceProvider) The service provider being intercepted.The service type name for the root service provider.serviceTypeName(TypeName serviceTypeName) The service type name for the root service provider.serviceTypeName(Consumer<TypeName.Builder> consumer) The service type name for the root service provider.serviceTypeName(Supplier<? extends TypeName> supplier) The service type name for the root service provider.toString()protected voidValidates required properties.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.helidon.builder.api.Prototype.Builder
buildPrototype, self
-
Constructor Details
-
BuilderBase
protected BuilderBase()Protected to support extensibility.
-
-
Method Details
-
from
Update this builder from an existing prototype instance.- Parameters:
prototype- existing prototype to update this builder from- Returns:
- updated builder instance
-
from
Update this builder from an existing prototype builder instance.- Parameters:
builder- existing builder prototype to update this builder from- Returns:
- updated builder instance
-
serviceProvider
The service provider being intercepted.- Parameters:
serviceProvider- the service provider being intercepted- Returns:
- updated builder instance
- See Also:
-
serviceTypeName
The service type name for the root service provider.- Parameters:
serviceTypeName- the service type name for the root service provider- Returns:
- updated builder instance
- See Also:
-
serviceTypeName
The service type name for the root service provider.- Parameters:
consumer- consumer of builder for the service type name for the root service provider- Returns:
- updated builder instance
- See Also:
-
serviceTypeName
The service type name for the root service provider.- Parameters:
supplier- supplier of the service type name for the root service provider- Returns:
- updated builder instance
- See Also:
-
classAnnotations
The annotations on the enclosing type.- Parameters:
classAnnotations- the annotations on the enclosing type- Returns:
- updated builder instance
- See Also:
-
addClassAnnotations
The annotations on the enclosing type.- Parameters:
classAnnotations- the annotations on the enclosing type- Returns:
- updated builder instance
- See Also:
-
elementInfo
The element info represents the method (or the constructor) being invoked.- Parameters:
elementInfo- the element info represents the method (or the constructor) being invoked- Returns:
- updated builder instance
- See Also:
-
elementInfo
The element info represents the method (or the constructor) being invoked.- Parameters:
consumer- consumer of builder for the element info represents the method (or the constructor) being invoked- Returns:
- updated builder instance
- See Also:
-
elementInfo
The element info represents the method (or the constructor) being invoked.- Parameters:
supplier- supplier of the element info represents the method (or the constructor) being invoked- Returns:
- updated builder instance
- See Also:
-
elementArgInfo
The method/element argument info.- Parameters:
elementArgInfo- the method/element argument info- Returns:
- updated builder instance
- See Also:
-
addElementArgInfo
The method/element argument info.- Parameters:
elementArgInfo- the method/element argument info- Returns:
- updated builder instance
- See Also:
-
interceptors
The interceptor chain.- Parameters:
interceptors- the interceptor chain- Returns:
- updated builder instance
- See Also:
-
addInterceptors
The interceptor chain.- Parameters:
interceptors- the interceptor chain- Returns:
- updated builder instance
- See Also:
-
contextData
This method replaces all values with the new ones.- Parameters:
contextData- the read/write contextual data that is passed between each chained interceptor- Returns:
- updated builder instance
- See Also:
-
addContextData
This method keeps existing values, then puts all new values into the map.- Parameters:
contextData- the read/write contextual data that is passed between each chained interceptor- Returns:
- updated builder instance
- See Also:
-
serviceProvider
The service provider being intercepted.- Returns:
- the service provider
-
serviceTypeName
The service type name for the root service provider.- Returns:
- the service type name
-
classAnnotations
The annotations on the enclosing type.- Returns:
- the class annotations
-
elementInfo
The element info represents the method (or the constructor) being invoked.- Returns:
- the element info
-
elementArgInfo
The method/element argument info.- Returns:
- the element arg info
-
interceptors
The interceptor chain.- Returns:
- the interceptors
-
contextData
The contextual info that can be shared between interceptors.- Returns:
- the context data
-
toString
-
preBuildPrototype
protected void preBuildPrototype()Handles providers and decorators. -
validatePrototype
protected void validatePrototype()Validates required properties.
-