Class BaseMainSupport

java.lang.Object
org.apache.camel.support.service.BaseService
org.apache.camel.main.BaseMainSupport
Direct Known Subclasses:
MainSupport, SimpleMain

public abstract class BaseMainSupport extends org.apache.camel.support.service.BaseService
Base class for main implementations to allow bootstrapping Camel in standalone mode.
  • Field Details

    • listeners

      protected final List<MainListener> listeners
    • camelContext

      protected volatile org.apache.camel.CamelContext camelContext
    • mainConfigurationProperties

      protected final MainConfigurationProperties mainConfigurationProperties
    • wildcardProperties

      protected final org.apache.camel.util.OrderedLocationProperties wildcardProperties
    • routesCollector

      protected RoutesCollector routesCollector
    • propertyPlaceholderLocations

      protected String propertyPlaceholderLocations
    • defaultPropertyPlaceholderLocation

      protected String defaultPropertyPlaceholderLocation
    • initialProperties

      protected Properties initialProperties
    • overrideProperties

      protected Properties overrideProperties
    • standalone

      protected boolean standalone
    • helper

      protected final MainHelper helper
  • Constructor Details

    • BaseMainSupport

      protected BaseMainSupport()
    • BaseMainSupport

      protected BaseMainSupport(org.apache.camel.CamelContext camelContext)
  • Method Details

    • configure

      public MainConfigurationProperties configure()
      To configure options on Camel Main.
    • getRoutesCollector

      public RoutesCollector getRoutesCollector()
    • setRoutesCollector

      public void setRoutesCollector(RoutesCollector routesCollector)
      To use a custom RoutesCollector.
    • getPropertyPlaceholderLocations

      public String getPropertyPlaceholderLocations()
    • setPropertyPlaceholderLocations

      public void setPropertyPlaceholderLocations(String location)
      A list of locations to add for loading properties. You can use comma to separate multiple locations.
    • getDefaultPropertyPlaceholderLocation

      public String getDefaultPropertyPlaceholderLocation()
    • setDefaultPropertyPlaceholderLocation

      public void setDefaultPropertyPlaceholderLocation(String defaultPropertyPlaceholderLocation)
      Set the default location for application properties if no locations have been set. If the value is set to "false" or empty, the default location is not taken into account.

      Default value is "classpath:application.properties;optional=true".

    • getInitialProperties

      public Properties getInitialProperties()
    • setInitialProperties

      public void setInitialProperties(Properties initialProperties)
      Sets initial properties for the properties component, which will be used before any locations are resolved.
    • setInitialProperties

      public void setInitialProperties(Map<String,Object> initialProperties)
      Sets initial properties for the properties component, which will be used before any locations are resolved.
    • addProperty

      public void addProperty(String key, String value)
      Adds a property (initial) for the properties component, which will be used before any locations are resolved.
      Parameters:
      key - the property key
      value - the property value
      See Also:
    • addInitialProperty

      public void addInitialProperty(String key, String value)
      Adds a property (initial) for the properties component, which will be used before any locations are resolved.
      Parameters:
      key - the property key
      value - the property value
    • getOverrideProperties

      public Properties getOverrideProperties()
    • setOverrideProperties

      public void setOverrideProperties(Properties overrideProperties)
      Sets a special list of override properties that take precedence and will use first, if a property exist.
    • setOverrideProperties

      public void setOverrideProperties(Map<String,Object> initialProperties)
      Sets a special list of override properties that take precedence and will use first, if a property exist.
    • addOverrideProperty

      public void addOverrideProperty(String key, String value)
      Adds an override property that take precedence and will use first, if a property exist.
      Parameters:
      key - the property key
      value - the property value
    • getCamelContext

      public org.apache.camel.CamelContext getCamelContext()
    • addMainListener

      public void addMainListener(MainListener listener)
      Adds a MainListener to receive callbacks when the main is started or stopping
      Parameters:
      listener - the listener
    • removeMainListener

      public void removeMainListener(MainListener listener)
      Removes the MainListener
      Parameters:
      listener - the listener
    • loadCustomBeans

      protected void loadCustomBeans(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • loadConfigurations

      protected void loadConfigurations(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • configurePropertiesService

      protected void configurePropertiesService(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • configureLifecycle

      protected void configureLifecycle(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • autoconfigure

      protected void autoconfigure(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • configureStartupRecorder

      protected void configureStartupRecorder(org.apache.camel.CamelContext camelContext)
    • configurePackageScan

      protected void configurePackageScan(org.apache.camel.CamelContext camelContext)
    • configureRoutesLoader

      protected void configureRoutesLoader(org.apache.camel.CamelContext camelContext)
    • modelineRoutes

      protected void modelineRoutes(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • configureRoutes

      protected void configureRoutes(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • createLifecycleStrategy

      protected org.apache.camel.spi.LifecycleStrategy createLifecycleStrategy(org.apache.camel.CamelContext camelContext)
      A specialized LifecycleStrategy that can handle autowiring of Camel components, dataformats, languages.
    • postProcessCamelContext

      protected void postProcessCamelContext(org.apache.camel.CamelContext camelContext) throws Exception
      Throws:
      Exception
    • autoConfigurationFailFast

      protected void autoConfigurationFailFast(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Throws:
      Exception
    • autoConfigurationSingleOption

      protected void autoConfigurationSingleOption(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties, String optionName, Function<String,Object> setter)
    • doConfigureCamelContextFromMainConfiguration

      protected void doConfigureCamelContextFromMainConfiguration(org.apache.camel.CamelContext camelContext, MainConfigurationProperties config, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Configures CamelContext from the MainConfigurationProperties properties.
      Throws:
      Exception
    • preProcessCamelRegistry

      protected void preProcessCamelRegistry(org.apache.camel.CamelContext camelContext, MainConfigurationProperties config)
      Main implementation may do some additional configuration of the Registry before it's used to (re)configure Camel context.
    • postProcessCamelRegistry

      protected void postProcessCamelRegistry(org.apache.camel.CamelContext camelContext, MainConfigurationProperties config)
      Main implementation may do some additional configuration of the Registry after loading the routes, but before the routes are started.
    • autoConfigurationPropertiesComponent

      protected void autoConfigurationPropertiesComponent(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Throws:
      Exception
    • autoConfigurationMainConfiguration

      protected void autoConfigurationMainConfiguration(org.apache.camel.CamelContext camelContext, MainConfigurationProperties config, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Throws:
      Exception
    • autoConfigurationFromProperties

      protected void autoConfigurationFromProperties(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Throws:
      Exception
    • autoConfigurationFromReloadedProperties

      protected void autoConfigurationFromReloadedProperties(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties reloadedProperties) throws Exception
      Throws:
      Exception
    • doAutoConfigurationFromProperties

      protected void doAutoConfigurationFromProperties(org.apache.camel.CamelContext camelContext, org.apache.camel.util.OrderedLocationProperties prop, Map<org.apache.camel.main.PropertyOptionKey,org.apache.camel.util.OrderedLocationProperties> properties, boolean reload, org.apache.camel.util.OrderedLocationProperties autoConfiguredProperties) throws Exception
      Throws:
      Exception
    • autowireWildcardProperties

      protected void autowireWildcardProperties(org.apache.camel.CamelContext camelContext)
    • doAutowireWildcardProperties

      protected void doAutowireWildcardProperties(String name, org.apache.camel.Component component)