Package org.apache.myfaces.spi
Class ServiceProviderFinder
java.lang.Object
org.apache.myfaces.spi.ServiceProviderFinder
- Direct Known Subclasses:
DefaultServiceProviderFinder
This class provides an interface to override SPI handling done by
MyFaces.
This is useful on environments like in OSGi, because it allows to
put custom code to find SPI interfaces under META-INF/services/
- Since:
- 2.0.3
- Author:
- Leonardo Uribe
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncalculateKnownServiceProviderMapInfo
(ExternalContext ectx, String[] knownServices) getServiceProviderList
(String spiClass) Gets the list of classes bound to the spiClass key, looking for entries under META-INF/services/[spiClass]void
initKnownServiceProviderMapInfo
(ExternalContext ectx, Map<String, List<String>> map) If ServiceProviderFinderFactory knows beforehand or has stored somewhere the known locations of the SPI interfaces, this method helps to set this config information so the implementation of this interface can use it.<S> ServiceLoader<S>
-
Field Details
-
KNOWN_SERVICES
-
-
Constructor Details
-
ServiceProviderFinder
public ServiceProviderFinder()
-
-
Method Details
-
getServiceProviderList
Gets the list of classes bound to the spiClass key, looking for entries under META-INF/services/[spiClass]- Parameters:
spiClass
-- Returns:
-
load
-
initKnownServiceProviderMapInfo
If ServiceProviderFinderFactory knows beforehand or has stored somewhere the known locations of the SPI interfaces, this method helps to set this config information so the implementation of this interface can use it. The idea is MyFaces initialization algorithm will call getKnownServiceProviderMapInfo method and if the value is not null it will call this method to pass the map back to the ServiceProviderFinder, so it can take it.- Parameters:
map
-
-
calculateKnownServiceProviderMapInfo
-