Package tech.units.indriya.spi
Class DefaultServiceProvider
java.lang.Object
javax.measure.spi.ServiceProvider
tech.units.indriya.spi.DefaultServiceProvider
- All Implemented Interfaces:
Comparable<javax.measure.spi.ServiceProvider>
public class DefaultServiceProvider
extends javax.measure.spi.ServiceProvider
implements Comparable<javax.measure.spi.ServiceProvider>
This class extends the
ServiceProvider
class and
hereby uses the JDK ServiceLoader
to load the required
services.- Since:
- 1.0
- Version:
- 1.0
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Comparator
<Object> List of services loaded, per class. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) static int
compareServices
(Object o1, Object o2) int
compareTo
(javax.measure.spi.ServiceProvider o) int
Returns a priority value of 10.final <Q extends javax.measure.Quantity<Q>>
javax.measure.spi.QuantityFactory<Q> getQuantityFactory
(Class<Q> quantity) Return a factory for this quantityprotected <T> T
getService
(Class<T> serviceType) protected <T> List
<T> getServices
(Class<T> serviceType) Loads and registers services.javax.measure.spi.SystemOfUnitsService
javax.measure.spi.UnitFormatService
private <T> List
<T> loadServices
(Class<T> serviceType) Loads and registers services.Methods inherited from class javax.measure.spi.ServiceProvider
available, current, setCurrent
-
Field Details
-
servicesLoaded
List of services loaded, per class. -
SERVICE_COMPARATOR
-
QUANTITY_FACTORIES
-
-
Constructor Details
-
DefaultServiceProvider
public DefaultServiceProvider()
-
-
Method Details
-
getPriority
public int getPriority()Returns a priority value of 10.- Overrides:
getPriority
in classjavax.measure.spi.ServiceProvider
- Returns:
- 10, overriding the default provider.
-
getServices
Loads and registers services.- Type Parameters:
T
- the concrete type.- Parameters:
serviceType
- The service type.- Returns:
- the items found, never
null
.
-
getService
-
compareServices
-
loadServices
Loads and registers services.- Type Parameters:
T
- the concrete type.- Parameters:
serviceType
- The service type.- Returns:
- the items found, never
null
.
-
compareTo
public int compareTo(javax.measure.spi.ServiceProvider o) - Specified by:
compareTo
in interfaceComparable<javax.measure.spi.ServiceProvider>
-
getSystemOfUnitsService
public javax.measure.spi.SystemOfUnitsService getSystemOfUnitsService()- Specified by:
getSystemOfUnitsService
in classjavax.measure.spi.ServiceProvider
-
getUnitFormatService
public javax.measure.spi.UnitFormatService getUnitFormatService()- Specified by:
getUnitFormatService
in classjavax.measure.spi.ServiceProvider
-
getQuantityFactory
public final <Q extends javax.measure.Quantity<Q>> javax.measure.spi.QuantityFactory<Q> getQuantityFactory(Class<Q> quantity) Return a factory for this quantity- Specified by:
getQuantityFactory
in classjavax.measure.spi.ServiceProvider
- Parameters:
quantity
- the quantity type- Returns:
- the
QuantityFactory
- Throws:
NullPointerException
-