Package org.apache.camel.spi
Interface TypeConverterRegistry
-
- All Superinterfaces:
AutoCloseable
,CamelContextAware
,Service
,StaticService
public interface TypeConverterRegistry extends StaticService, CamelContextAware
Registry for type converters. The utilizationTypeConverterRegistry.Statistics
is by default disabled, as it has a slight performance impact under very high concurrent load. The statistics can be enabled usingTypeConverterRegistry.Statistics.setStatisticsEnabled(boolean)
method.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
TypeConverterRegistry.Statistics
Utilization statistics of the this registry.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addBulkTypeConverters(BulkTypeConverters bulkTypeConverters)
Registers a new set of type converters that are bulked together into a singleBulkTypeConverters
class.void
addFallbackTypeConverter(TypeConverter typeConverter, boolean canPromote)
Registers a new fallback type convertervoid
addTypeConverter(Class<?> toType, Class<?> fromType, TypeConverter typeConverter)
Registers a new type converter.void
addTypeConverters(TypeConverters typeConverters)
Registers all the type converters from the class, each converter must be implemented as a method and annotated withConverter
.Injector
getInjector()
Gets the injectorTypeConverterRegistry.Statistics
getStatistics()
Gets the utilization statistics of this type converter registryTypeConverterExists
getTypeConverterExists()
What should happen when attempting to add a duplicate type converter.LoggingLevel
getTypeConverterExistsLoggingLevel()
The logging level to use when logging that a type converter already exists when attempting to add a duplicate type converter.TypeConverter
lookup(Class<?> toType, Class<?> fromType)
Performs a lookup for a given type converter.boolean
removeTypeConverter(Class<?> toType, Class<?> fromType)
Removes the type convertervoid
setInjector(Injector injector)
Sets the injector to be used for creating new instances during type conversions.void
setTypeConverterExists(TypeConverterExists typeConverterExists)
What should happen when attempting to add a duplicate type converter.void
setTypeConverterExistsLoggingLevel(LoggingLevel typeConverterExistsLoggingLevel)
The logging level to use when logging that a type converter already exists when attempting to add a duplicate type converter.int
size()
Number of type converters in the registry.-
Methods inherited from interface org.apache.camel.CamelContextAware
getCamelContext, setCamelContext
-
-
-
-
Method Detail
-
addBulkTypeConverters
void addBulkTypeConverters(BulkTypeConverters bulkTypeConverters)
Registers a new set of type converters that are bulked together into a singleBulkTypeConverters
class.
-
addTypeConverter
void addTypeConverter(Class<?> toType, Class<?> fromType, TypeConverter typeConverter)
Registers a new type converter. This method may throwTypeConverterExistsException
if configured to fail if an existing type converter already exists- Parameters:
toType
- the type to convert tofromType
- the type to convert fromtypeConverter
- the type converter to use
-
removeTypeConverter
boolean removeTypeConverter(Class<?> toType, Class<?> fromType)
Removes the type converter- Parameters:
toType
- the type to convert tofromType
- the type to convert from- Returns:
- true if removed, false if the type converter didn't exist
-
addTypeConverters
void addTypeConverters(TypeConverters typeConverters)
Registers all the type converters from the class, each converter must be implemented as a method and annotated withConverter
.- Parameters:
typeConverters
- class which implements the type converters
-
addFallbackTypeConverter
void addFallbackTypeConverter(TypeConverter typeConverter, boolean canPromote)
Registers a new fallback type converter- Parameters:
typeConverter
- the type converter to usecanPromote
- whether or not the fallback type converter can be promoted to a first class type converter
-
lookup
TypeConverter lookup(Class<?> toType, Class<?> fromType)
Performs a lookup for a given type converter.- Parameters:
toType
- the type to convert tofromType
- the type to convert from- Returns:
- the type converter or null if not found.
-
setInjector
void setInjector(Injector injector)
Sets the injector to be used for creating new instances during type conversions.- Parameters:
injector
- the injector
-
getInjector
Injector getInjector()
Gets the injector- Returns:
- the injector
-
getStatistics
TypeConverterRegistry.Statistics getStatistics()
Gets the utilization statistics of this type converter registry- Returns:
- the utilization statistics
-
size
int size()
Number of type converters in the registry.- Returns:
- number of type converters in the registry.
-
getTypeConverterExistsLoggingLevel
LoggingLevel getTypeConverterExistsLoggingLevel()
The logging level to use when logging that a type converter already exists when attempting to add a duplicate type converter. The default logging level is WARN
-
setTypeConverterExistsLoggingLevel
void setTypeConverterExistsLoggingLevel(LoggingLevel typeConverterExistsLoggingLevel)
The logging level to use when logging that a type converter already exists when attempting to add a duplicate type converter. The default logging level is WARN
-
getTypeConverterExists
TypeConverterExists getTypeConverterExists()
What should happen when attempting to add a duplicate type converter. The default behavior is to override the existing.
-
setTypeConverterExists
void setTypeConverterExists(TypeConverterExists typeConverterExists)
What should happen when attempting to add a duplicate type converter. The default behavior is to override the existing.
-
-