Class LookupInitializer
- All Implemented Interfaces:
AbstractLookupInitializer
AbstractLookupInitializer.- Author:
- Vaadin Ltd
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classDefault implementation ofAppShellPredicate.protected static classDefault implementation ofLookup.protected static classDefault implementation ofResourceProvider. -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected LookupcreateLookup(VaadinContext context, Map<Class<?>, Collection<Class<?>>> services) Creates a lookup based on providedservices.protected <T> voidensureService(Map<Class<?>, Collection<Class<?>>> services, Class<T> serviceType, Class<? extends T> serviceImpl) Ensures that providedservicescontain implementation forserviceTypeSPI.Returns the default implementation classes included.voidinitialize(VaadinContext context, Map<Class<?>, Collection<Class<?>>> services, VaadinApplicationInitializationBootstrap bootstrap) Creates a newLookupinstance, initializes it and passes it to the providedbootstrap.protected <T> Tinstantiate(Class<T> serviceClass, Class<?> implementation) Instantiates serviceimplementationtype with the givenserviceClass.
-
Field Details
-
SPI
- See Also:
-
ONE_IMPL_REQUIRED
- See Also:
-
SEVERAL_IMPLS
- See Also:
-
-
Constructor Details
-
LookupInitializer
public LookupInitializer()
-
-
Method Details
-
initialize
public void initialize(VaadinContext context, Map<Class<?>, Collection<Class<?>>> services, VaadinApplicationInitializationBootstrap bootstrap) throws jakarta.servlet.ServletExceptionDescription copied from interface:AbstractLookupInitializerCreates a newLookupinstance, initializes it and passes it to the providedbootstrap.The method should creates a new initialized
Lookupinstance. In some cases it's not possible to create the instance right away when the method is called. To be able to support this usecase the method contract doesn't require to return theLookupinstance. Instead the created instance should be passed to the providedbootstrapconsumer once the instance is created and completely initialized. Thebootstrapwill start the application initialization which otherwise is postponed until aLookupbecomes available.The implementation must use the provided
bootstrapto pass theLookupinstance otherwise the web application based on thisLookupInitializerwill never be bootstrapped.The provided
servicesmap contains service implementations found in application classpath using@HandlesTypesannotation declared forLookupServletContainerInitializer.- Specified by:
initializein interfaceAbstractLookupInitializer- Parameters:
context- a Vaadin context to run initialization forservices- the map of internal services with their implementations found in the application classpathbootstrap- the web application bootstrap- Throws:
jakarta.servlet.ServletException- if initialization failed
-
createLookup
Creates a lookup based on providedservices.- Parameters:
context- a Vaadin context to create a lookup forservices- the service objects mapped to the service type to create a lookup- Returns:
- the lookup instance created with provided services
-
ensureService
protected <T> void ensureService(Map<Class<?>, Collection<Class<?>>> services, Class<T> serviceType, Class<? extends T> serviceImpl) Ensures that providedservicescontain implementation forserviceTypeSPI.The default
serviceImplimplementation will be set as the service intoservicesif there is no other services available.- Type Parameters:
T- the service type- Parameters:
services- map of internal servicesserviceType- SPI typeserviceImpl- the default SPI implementation
-
instantiate
Instantiates serviceimplementationtype with the givenserviceClass.- Type Parameters:
T- service type- Parameters:
serviceClass- service classimplementation- service implementation class- Returns:
- an instantiated service implementation object
-
getDefaultImplementations
Returns the default implementation classes included.This method is public only for internal purposes.
- Returns:
- a set of classes
-