Package org.apache.camel.impl.converter
Class BaseTypeConverterRegistry
java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.support.service.ServiceSupport
org.apache.camel.impl.converter.CoreTypeConverterRegistry
org.apache.camel.impl.converter.BaseTypeConverterRegistry
- All Implemented Interfaces:
AutoCloseable,org.apache.camel.CamelContextAware,org.apache.camel.Service,org.apache.camel.ShutdownableService,org.apache.camel.spi.HasCamelContext,org.apache.camel.spi.TypeConverterRegistry,org.apache.camel.StatefulService,org.apache.camel.StaticService,org.apache.camel.SuspendableService,org.apache.camel.TypeConverter
- Direct Known Subclasses:
DefaultTypeConverter
Base implementation of a type converter registry used for type
converters in Camel.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.camel.impl.converter.CoreTypeConverterRegistry
CoreTypeConverterRegistry.FallbackTypeConverterNested classes/interfaces inherited from interface org.apache.camel.spi.TypeConverterRegistry
org.apache.camel.spi.TypeConverterRegistry.Statistics -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.apache.camel.CamelContextprotected org.apache.camel.spi.Injectorstatic final Stringstatic final Stringstatic final Stringprotected org.apache.camel.spi.PackageScanClassResolverprotected final List<org.apache.camel.spi.TypeConverterLoader> Fields inherited from class org.apache.camel.impl.converter.CoreTypeConverterRegistry
enumTypeConverter, fallbackConverters, MISS_CONVERTER, typeConverterExists, typeConverterExistsLoggingLevelFields inherited from class org.apache.camel.support.service.BaseService
BUILT, FAILED, INITIALIZED, INITIALIZING, lock, NEW, SHUTDOWN, SHUTTING_DOWN, STARTED, STARTING, status, STOPPED, STOPPING, SUSPENDED, SUSPENDINGFields inherited from interface org.apache.camel.TypeConverter
MISS_VALUE -
Constructor Summary
ConstructorsConstructorDescriptionBaseTypeConverterRegistry(org.apache.camel.CamelContext camelContext, org.apache.camel.spi.PackageScanClassResolver resolver, org.apache.camel.spi.Injector injector) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddFallbackTypeConverter(org.apache.camel.TypeConverter typeConverter, boolean canPromote) voidaddTypeConverters(Object typeConverters) protected voiddoInit()protected Collection<String> Finds the fallback type converter classes from the classpath looking for text files on the classpath at theMETA_INF_SERVICES_FALLBACK_TYPE_CONVERTERlocation.protected Collection<String> Finds the type converter loader classes from the classpath looking for text files on the classpath at theMETA_INF_SERVICES_UBER_TYPE_CONVERTER_LOADERandMETA_INF_SERVICES_TYPE_CONVERTER_LOADERlocations.protected voidfindTypeConverterLoaderClasses(Collection<String> loaders, String basePath) org.apache.camel.CamelContextprotected Collection<URL> org.apache.camel.spi.Injectorprotected Collection<URL> getLoaderUrls(String basePath) org.apache.camel.spi.PackageScanClassResolverList<org.apache.camel.spi.TypeConverterLoader> voidLoads the core type converters which is mandatory to use Camel, and also loads the fast type converters (generated via @Converter(loader = true).protected voidprotected voidChecks if the registry is loaded and if not lazily load itvoidsetCamelContext(org.apache.camel.CamelContext camelContext) voidsetInjector(org.apache.camel.spi.Injector injector) Methods inherited from class org.apache.camel.impl.converter.CoreTypeConverterRegistry
addBulkTypeConverters, addConverter, addTypeConverter, allowNull, convertTo, convertTo, createTypeConversionException, doConvertTo, doConvertToAndStat, doLookup, doStop, getOrFindTypeConverter, getStatistics, getTypeConverter, getTypeConverterExists, getTypeConverterExistsLoggingLevel, lookup, mandatoryConvertTo, mandatoryConvertTo, removeTypeConverter, setTypeConverterExists, setTypeConverterExistsLoggingLevel, size, tryConvertTo, tryConvertToMethods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doShutdown, doStart, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspendMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.camel.Service
build, close, init, start, stopMethods inherited from interface org.apache.camel.ShutdownableService
shutdownMethods inherited from interface org.apache.camel.StatefulService
getStatus, isRunAllowed, isStarted, isStarting, isStopped, isStopping, isSuspendingMethods inherited from interface org.apache.camel.SuspendableService
isSuspended, resume, suspend
-
Field Details
-
META_INF_SERVICES_UBER_TYPE_CONVERTER_LOADER
- See Also:
-
META_INF_SERVICES_TYPE_CONVERTER_LOADER
- See Also:
-
META_INF_SERVICES_FALLBACK_TYPE_CONVERTER
- See Also:
-
typeConverterLoaders
-
camelContext
protected org.apache.camel.CamelContext camelContext -
resolver
protected org.apache.camel.spi.PackageScanClassResolver resolver -
injector
protected org.apache.camel.spi.Injector injector
-
-
Constructor Details
-
BaseTypeConverterRegistry
public BaseTypeConverterRegistry(org.apache.camel.CamelContext camelContext, org.apache.camel.spi.PackageScanClassResolver resolver, org.apache.camel.spi.Injector injector)
-
-
Method Details
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()- Specified by:
getCamelContextin interfaceorg.apache.camel.spi.HasCamelContext- Overrides:
getCamelContextin classCoreTypeConverterRegistry
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext) - Specified by:
setCamelContextin interfaceorg.apache.camel.CamelContextAware- Overrides:
setCamelContextin classCoreTypeConverterRegistry
-
getTypeConverterLoaders
-
addTypeConverters
- Specified by:
addTypeConvertersin interfaceorg.apache.camel.spi.TypeConverterRegistry- Overrides:
addTypeConvertersin classCoreTypeConverterRegistry
-
addFallbackTypeConverter
public void addFallbackTypeConverter(org.apache.camel.TypeConverter typeConverter, boolean canPromote) - Specified by:
addFallbackTypeConverterin interfaceorg.apache.camel.spi.TypeConverterRegistry- Overrides:
addFallbackTypeConverterin classCoreTypeConverterRegistry
-
getInjector
public org.apache.camel.spi.Injector getInjector()- Specified by:
getInjectorin interfaceorg.apache.camel.spi.TypeConverterRegistry- Overrides:
getInjectorin classCoreTypeConverterRegistry
-
setInjector
public void setInjector(org.apache.camel.spi.Injector injector) - Specified by:
setInjectorin interfaceorg.apache.camel.spi.TypeConverterRegistry- Overrides:
setInjectorin classCoreTypeConverterRegistry
-
getResolver
public org.apache.camel.spi.PackageScanClassResolver getResolver() -
loadCoreAndFastTypeConverters
Loads the core type converters which is mandatory to use Camel, and also loads the fast type converters (generated via @Converter(loader = true).- Throws:
Exception
-
findTypeConverterLoaderClasses
Finds the type converter loader classes from the classpath looking for text files on the classpath at theMETA_INF_SERVICES_UBER_TYPE_CONVERTER_LOADERandMETA_INF_SERVICES_TYPE_CONVERTER_LOADERlocations.- Throws:
IOException
-
findTypeConverterLoaderClasses
protected void findTypeConverterLoaderClasses(Collection<String> loaders, String basePath) throws IOException - Throws:
IOException
-
getLoaderUrls
- Throws:
IOException
-
loadTypeConverters
Checks if the registry is loaded and if not lazily load it- Throws:
Exception
-
findFallbackTypeConverterClasses
Finds the fallback type converter classes from the classpath looking for text files on the classpath at theMETA_INF_SERVICES_FALLBACK_TYPE_CONVERTERlocation.- Throws:
IOException
-
getFallbackUrls
- Throws:
IOException
-
loadFallbackTypeConverters
- Throws:
IOExceptionClassNotFoundException
-
doInit
- Overrides:
doInitin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-