001/* 002 * Licensed to the Apache Software Foundation (ASF) under one or more 003 * contributor license agreements. See the NOTICE file distributed with 004 * this work for additional information regarding copyright ownership. 005 * The ASF licenses this file to You under the Apache License, Version 2.0 006 * (the "License"); you may not use this file except in compliance with 007 * the License. You may obtain a copy of the License at 008 * 009 * http://www.apache.org/licenses/LICENSE-2.0 010 * 011 * Unless required by applicable law or agreed to in writing, software 012 * distributed under the License is distributed on an "AS IS" BASIS, 013 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 014 * See the License for the specific language governing permissions and 015 * limitations under the License. 016 */ 017package org.apache.camel.impl.lw; 018 019import java.io.IOException; 020import java.util.Collection; 021import java.util.Date; 022import java.util.List; 023import java.util.Map; 024import java.util.Set; 025import java.util.concurrent.ExecutorService; 026import java.util.concurrent.ScheduledExecutorService; 027import java.util.function.Function; 028 029import org.apache.camel.AsyncProcessor; 030import org.apache.camel.CamelContext; 031import org.apache.camel.CatalogCamelContext; 032import org.apache.camel.Component; 033import org.apache.camel.ConsumerTemplate; 034import org.apache.camel.Endpoint; 035import org.apache.camel.ErrorHandlerFactory; 036import org.apache.camel.Experimental; 037import org.apache.camel.Expression; 038import org.apache.camel.ExtendedCamelContext; 039import org.apache.camel.FluentProducerTemplate; 040import org.apache.camel.GlobalEndpointConfiguration; 041import org.apache.camel.Navigate; 042import org.apache.camel.NoSuchLanguageException; 043import org.apache.camel.Predicate; 044import org.apache.camel.Processor; 045import org.apache.camel.ProducerTemplate; 046import org.apache.camel.Route; 047import org.apache.camel.RoutesBuilder; 048import org.apache.camel.ServiceStatus; 049import org.apache.camel.ShutdownRoute; 050import org.apache.camel.ShutdownRunningTask; 051import org.apache.camel.StartupListener; 052import org.apache.camel.TypeConverter; 053import org.apache.camel.ValueHolder; 054import org.apache.camel.builder.AdviceWithRouteBuilder; 055import org.apache.camel.catalog.RuntimeCamelCatalog; 056import org.apache.camel.impl.DefaultCamelContext; 057import org.apache.camel.impl.engine.DefaultRoute; 058import org.apache.camel.model.DataFormatDefinition; 059import org.apache.camel.model.FaultToleranceConfigurationDefinition; 060import org.apache.camel.model.HystrixConfigurationDefinition; 061import org.apache.camel.model.ModelCamelContext; 062import org.apache.camel.model.ProcessorDefinition; 063import org.apache.camel.model.Resilience4jConfigurationDefinition; 064import org.apache.camel.model.RouteDefinition; 065import org.apache.camel.model.cloud.ServiceCallConfigurationDefinition; 066import org.apache.camel.model.language.ExpressionDefinition; 067import org.apache.camel.model.rest.RestDefinition; 068import org.apache.camel.model.transformer.TransformerDefinition; 069import org.apache.camel.model.validator.ValidatorDefinition; 070import org.apache.camel.processor.channel.DefaultChannel; 071import org.apache.camel.spi.AnnotationBasedProcessorFactory; 072import org.apache.camel.spi.AsyncProcessorAwaitManager; 073import org.apache.camel.spi.BeanIntrospection; 074import org.apache.camel.spi.BeanProcessorFactory; 075import org.apache.camel.spi.BeanProxyFactory; 076import org.apache.camel.spi.BeanRepository; 077import org.apache.camel.spi.CamelBeanPostProcessor; 078import org.apache.camel.spi.CamelContextNameStrategy; 079import org.apache.camel.spi.ClassResolver; 080import org.apache.camel.spi.ComponentNameResolver; 081import org.apache.camel.spi.ComponentResolver; 082import org.apache.camel.spi.ConfigurerResolver; 083import org.apache.camel.spi.DataFormat; 084import org.apache.camel.spi.DataFormatResolver; 085import org.apache.camel.spi.DataType; 086import org.apache.camel.spi.Debugger; 087import org.apache.camel.spi.DeferServiceFactory; 088import org.apache.camel.spi.EndpointRegistry; 089import org.apache.camel.spi.EndpointStrategy; 090import org.apache.camel.spi.ExecutorServiceManager; 091import org.apache.camel.spi.FactoryFinder; 092import org.apache.camel.spi.FactoryFinderResolver; 093import org.apache.camel.spi.HeadersMapFactory; 094import org.apache.camel.spi.InflightRepository; 095import org.apache.camel.spi.Injector; 096import org.apache.camel.spi.InterceptStrategy; 097import org.apache.camel.spi.Language; 098import org.apache.camel.spi.LanguageResolver; 099import org.apache.camel.spi.LifecycleStrategy; 100import org.apache.camel.spi.LogListener; 101import org.apache.camel.spi.ManagementMBeanAssembler; 102import org.apache.camel.spi.ManagementNameStrategy; 103import org.apache.camel.spi.ManagementStrategy; 104import org.apache.camel.spi.MessageHistoryFactory; 105import org.apache.camel.spi.ModelJAXBContextFactory; 106import org.apache.camel.spi.ModelToXMLDumper; 107import org.apache.camel.spi.NodeIdFactory; 108import org.apache.camel.spi.NormalizedEndpointUri; 109import org.apache.camel.spi.PackageScanClassResolver; 110import org.apache.camel.spi.PackageScanResourceResolver; 111import org.apache.camel.spi.ProcessorFactory; 112import org.apache.camel.spi.PropertiesComponent; 113import org.apache.camel.spi.ReactiveExecutor; 114import org.apache.camel.spi.Registry; 115import org.apache.camel.spi.RestBindingJaxbDataFormatFactory; 116import org.apache.camel.spi.RestConfiguration; 117import org.apache.camel.spi.RestRegistry; 118import org.apache.camel.spi.RouteController; 119import org.apache.camel.spi.RoutePolicyFactory; 120import org.apache.camel.spi.RouteStartupOrder; 121import org.apache.camel.spi.RuntimeEndpointRegistry; 122import org.apache.camel.spi.ShutdownStrategy; 123import org.apache.camel.spi.StreamCachingStrategy; 124import org.apache.camel.spi.SupervisingRouteController; 125import org.apache.camel.spi.Tracer; 126import org.apache.camel.spi.Transformer; 127import org.apache.camel.spi.TransformerRegistry; 128import org.apache.camel.spi.TypeConverterRegistry; 129import org.apache.camel.spi.UnitOfWorkFactory; 130import org.apache.camel.spi.UuidGenerator; 131import org.apache.camel.spi.Validator; 132import org.apache.camel.spi.ValidatorRegistry; 133import org.apache.camel.spi.XMLRoutesDefinitionLoader; 134import org.apache.camel.support.DefaultRegistry; 135import org.apache.camel.support.jsse.SSLContextParameters; 136 137@Experimental 138public class LightweightCamelContext implements ExtendedCamelContext, CatalogCamelContext, ModelCamelContext { 139 140 protected volatile CamelContext delegate; 141 142 protected LightweightCamelContext(CamelContext delegate) { 143 this.delegate = delegate; 144 } 145 146 /** 147 * Creates the {@link ModelCamelContext} using 148 * {@link org.apache.camel.support.DefaultRegistry} as registry. 149 * <p/> 150 * Use one of the other constructors to force use an explicit registry. 151 */ 152 public LightweightCamelContext() { 153 DefaultCamelContext d = new DefaultCamelContext(false) { 154 @Override 155 public CamelContext getCamelContextReference() { 156 return LightweightCamelContext.this; 157 } 158 }; 159 delegate = d; 160 d.build(); 161 } 162 163 /** 164 * Creates the {@link CamelContext} using the given {@link BeanRepository} 165 * as first-choice repository, and the 166 * {@link org.apache.camel.support.SimpleRegistry} as fallback, via the 167 * {@link DefaultRegistry} implementation. 168 * 169 * @param repository the bean repository. 170 */ 171 public LightweightCamelContext(BeanRepository repository) { 172 this(new DefaultRegistry(repository)); 173 } 174 175 /** 176 * Creates the {@link ModelCamelContext} using the given registry 177 * 178 * @param registry the registry 179 */ 180 public LightweightCamelContext(Registry registry) { 181 this(); 182 setRegistry(registry); 183 } 184 185 public CamelContext getCamelContextReference() { 186 return this; 187 } 188 189 @Override 190 public boolean isStarted() { 191 return delegate.isStarted(); 192 } 193 194 @Override 195 public boolean isStarting() { 196 return delegate.isStarting(); 197 } 198 199 @Override 200 public boolean isStopped() { 201 return delegate.isStopped(); 202 } 203 204 @Override 205 public boolean isStopping() { 206 return delegate.isStopping(); 207 } 208 209 @Override 210 public boolean isSuspended() { 211 return delegate.isSuspended(); 212 } 213 214 @Override 215 public boolean isRunAllowed() { 216 return delegate.isRunAllowed(); 217 } 218 219 @Override 220 public boolean isSuspending() { 221 return delegate.isSuspending(); 222 } 223 224 @Override 225 public void build() { 226 delegate.build(); 227 } 228 229 @Override 230 public void suspend() { 231 delegate.suspend(); 232 } 233 234 @Override 235 public void resume() { 236 delegate.resume(); 237 } 238 239 @Override 240 public void shutdown() { 241 delegate.shutdown(); 242 } 243 244 @Override 245 public void close() throws Exception { 246 delegate.close(); 247 } 248 249 @Override 250 public <T extends CamelContext> T adapt(Class<T> type) { 251 T res = delegate.adapt(type); 252 if (res == delegate) { 253 return type.cast(this); 254 } else { 255 return res; 256 } 257 } 258 259 @Override 260 public <T> T getExtension(Class<T> type) { 261 return delegate.getExtension(type); 262 } 263 264 @Override 265 public <T> void setExtension(Class<T> type, T module) { 266 delegate.setExtension(type, module); 267 } 268 269 @Override 270 public void start() { 271 delegate.start(); 272 } 273 274 @Override 275 public void stop() { 276 delegate.stop(); 277 } 278 279 @Override 280 public boolean isVetoStarted() { 281 return delegate.isVetoStarted(); 282 } 283 284 @Override 285 public String getName() { 286 return delegate.getName(); 287 } 288 289 @Override 290 public CamelContextNameStrategy getNameStrategy() { 291 return delegate.getNameStrategy(); 292 } 293 294 @Override 295 public void setNameStrategy(CamelContextNameStrategy nameStrategy) { 296 delegate.setNameStrategy(nameStrategy); 297 } 298 299 @Override 300 public ManagementNameStrategy getManagementNameStrategy() { 301 return delegate.getManagementNameStrategy(); 302 } 303 304 @Override 305 public void setManagementNameStrategy(ManagementNameStrategy nameStrategy) { 306 delegate.setManagementNameStrategy(nameStrategy); 307 } 308 309 @Override 310 public String getManagementName() { 311 return delegate.getManagementName(); 312 } 313 314 @Override 315 public void setManagementName(String name) { 316 delegate.setManagementName(name); 317 } 318 319 @Override 320 public String getVersion() { 321 return delegate.getVersion(); 322 } 323 324 @Override 325 public ServiceStatus getStatus() { 326 return delegate.getStatus(); 327 } 328 329 @Override 330 public String getUptime() { 331 return delegate.getUptime(); 332 } 333 334 @Override 335 public long getUptimeMillis() { 336 return delegate.getUptimeMillis(); 337 } 338 339 @Override 340 public Date getStartDate() { 341 return delegate.getStartDate(); 342 } 343 344 @Override 345 public void addService(Object object) throws Exception { 346 delegate.addService(object); 347 } 348 349 @Override 350 public void addService(Object object, boolean stopOnShutdown) throws Exception { 351 delegate.addService(object, stopOnShutdown); 352 } 353 354 @Override 355 public void addService(Object object, boolean stopOnShutdown, boolean forceStart) throws Exception { 356 delegate.addService(object, stopOnShutdown, forceStart); 357 } 358 359 @Override 360 public void addPrototypeService(Object object) throws Exception { 361 delegate.addPrototypeService(object); 362 } 363 364 @Override 365 public boolean removeService(Object object) throws Exception { 366 return delegate.removeService(object); 367 } 368 369 @Override 370 public boolean hasService(Object object) { 371 return delegate.hasService(object); 372 } 373 374 @Override 375 public <T> T hasService(Class<T> type) { 376 return delegate.hasService(type); 377 } 378 379 @Override 380 public <T> Set<T> hasServices(Class<T> type) { 381 return delegate.hasServices(type); 382 } 383 384 @Override 385 public void deferStartService(Object object, boolean stopOnShutdown) throws Exception { 386 delegate.deferStartService(object, stopOnShutdown); 387 } 388 389 @Override 390 public void addStartupListener(StartupListener listener) throws Exception { 391 delegate.addStartupListener(listener); 392 } 393 394 @Override 395 public void addComponent(String componentName, Component component) { 396 delegate.addComponent(componentName, component); 397 } 398 399 @Override 400 public Component hasComponent(String componentName) { 401 return delegate.hasComponent(componentName); 402 } 403 404 @Override 405 public Component getComponent(String componentName) { 406 return delegate.getComponent(componentName); 407 } 408 409 @Override 410 public Component getComponent(String name, boolean autoCreateComponents) { 411 return delegate.getComponent(name, autoCreateComponents); 412 } 413 414 @Override 415 public Component getComponent(String name, boolean autoCreateComponents, boolean autoStart) { 416 return delegate.getComponent(name, autoCreateComponents, autoStart); 417 } 418 419 @Override 420 public <T extends Component> T getComponent(String name, Class<T> componentType) { 421 return delegate.getComponent(name, componentType); 422 } 423 424 @Override 425 public List<String> getComponentNames() { 426 return delegate.getComponentNames(); 427 } 428 429 @Override 430 public Component removeComponent(String componentName) { 431 return delegate.removeComponent(componentName); 432 } 433 434 @Override 435 public EndpointRegistry<? extends ValueHolder<String>> getEndpointRegistry() { 436 return delegate.getEndpointRegistry(); 437 } 438 439 @Override 440 public Endpoint getEndpoint(String uri) { 441 return delegate.getEndpoint(uri); 442 } 443 444 @Override 445 public Endpoint getEndpoint(String uri, Map<String, Object> parameters) { 446 return delegate.getEndpoint(uri, parameters); 447 } 448 449 @Override 450 public <T extends Endpoint> T getEndpoint(String name, Class<T> endpointType) { 451 return delegate.getEndpoint(name, endpointType); 452 } 453 454 @Override 455 public Collection<Endpoint> getEndpoints() { 456 return delegate.getEndpoints(); 457 } 458 459 @Override 460 @Deprecated 461 public Map<String, Endpoint> getEndpointMap() { 462 return delegate.getEndpointMap(); 463 } 464 465 @Override 466 public Endpoint hasEndpoint(String uri) { 467 return delegate.hasEndpoint(uri); 468 } 469 470 @Override 471 public Endpoint addEndpoint(String uri, Endpoint endpoint) throws Exception { 472 return delegate.addEndpoint(uri, endpoint); 473 } 474 475 @Override 476 public void removeEndpoint(Endpoint endpoint) throws Exception { 477 delegate.removeEndpoint(endpoint); 478 } 479 480 @Override 481 public Collection<Endpoint> removeEndpoints(String pattern) throws Exception { 482 return delegate.removeEndpoints(pattern); 483 } 484 485 @Override 486 public GlobalEndpointConfiguration getGlobalEndpointConfiguration() { 487 return delegate.getGlobalEndpointConfiguration(); 488 } 489 490 @Override 491 public void setRouteController(RouteController routeController) { 492 delegate.setRouteController(routeController); 493 } 494 495 @Override 496 public RouteController getRouteController() { 497 return delegate.getRouteController(); 498 } 499 500 @Override 501 public List<Route> getRoutes() { 502 return delegate.getRoutes(); 503 } 504 505 @Override 506 public int getRoutesSize() { 507 return delegate.getRoutesSize(); 508 } 509 510 @Override 511 public Route getRoute(String id) { 512 return delegate.getRoute(id); 513 } 514 515 @Override 516 public Processor getProcessor(String id) { 517 return delegate.getProcessor(id); 518 } 519 520 @Override 521 public <T extends Processor> T getProcessor(String id, Class<T> type) { 522 return delegate.getProcessor(id, type); 523 } 524 525 @Override 526 public void addRoutes(RoutesBuilder builder) throws Exception { 527 delegate.addRoutes(builder); 528 } 529 530 @Override 531 public boolean removeRoute(String routeId) throws Exception { 532 return delegate.removeRoute(routeId); 533 } 534 535 @Override 536 public void addRoutePolicyFactory(RoutePolicyFactory routePolicyFactory) { 537 delegate.addRoutePolicyFactory(routePolicyFactory); 538 } 539 540 @Override 541 public List<RoutePolicyFactory> getRoutePolicyFactories() { 542 return delegate.getRoutePolicyFactories(); 543 } 544 545 @Override 546 public void setRestConfiguration(RestConfiguration restConfiguration) { 547 delegate.setRestConfiguration(restConfiguration); 548 } 549 550 @Override 551 public RestConfiguration getRestConfiguration() { 552 return delegate.getRestConfiguration(); 553 } 554 555 @Override 556 public RestRegistry getRestRegistry() { 557 return delegate.getRestRegistry(); 558 } 559 560 @Override 561 public void setRestRegistry(RestRegistry restRegistry) { 562 delegate.setRestRegistry(restRegistry); 563 } 564 565 @Override 566 public TypeConverter getTypeConverter() { 567 return delegate.getTypeConverter(); 568 } 569 570 @Override 571 public TypeConverterRegistry getTypeConverterRegistry() { 572 return delegate.getTypeConverterRegistry(); 573 } 574 575 @Override 576 public void setTypeConverterRegistry(TypeConverterRegistry typeConverterRegistry) { 577 delegate.setTypeConverterRegistry(typeConverterRegistry); 578 } 579 580 @Override 581 public Registry getRegistry() { 582 return delegate.getRegistry(); 583 } 584 585 @Override 586 public <T> T getRegistry(Class<T> type) { 587 return delegate.getRegistry(type); 588 } 589 590 @Override 591 public Injector getInjector() { 592 return delegate.getInjector(); 593 } 594 595 @Override 596 public void setInjector(Injector injector) { 597 delegate.setInjector(injector); 598 } 599 600 @Override 601 public List<LifecycleStrategy> getLifecycleStrategies() { 602 return delegate.getLifecycleStrategies(); 603 } 604 605 @Override 606 public void addLifecycleStrategy(LifecycleStrategy lifecycleStrategy) { 607 delegate.addLifecycleStrategy(lifecycleStrategy); 608 } 609 610 @Override 611 public Language resolveLanguage(String language) throws NoSuchLanguageException { 612 return delegate.resolveLanguage(language); 613 } 614 615 @Override 616 public String resolvePropertyPlaceholders(String text) { 617 return delegate.resolvePropertyPlaceholders(text); 618 } 619 620 @Override 621 public PropertiesComponent getPropertiesComponent() { 622 return delegate.getPropertiesComponent(); 623 } 624 625 @Override 626 public void setPropertiesComponent(PropertiesComponent propertiesComponent) { 627 delegate.setPropertiesComponent(propertiesComponent); 628 } 629 630 @Override 631 @Deprecated 632 public List<String> getLanguageNames() { 633 return delegate.getLanguageNames(); 634 } 635 636 @Override 637 public ProducerTemplate createProducerTemplate() { 638 return delegate.createProducerTemplate(); 639 } 640 641 @Override 642 public ProducerTemplate createProducerTemplate(int maximumCacheSize) { 643 return delegate.createProducerTemplate(maximumCacheSize); 644 } 645 646 @Override 647 public FluentProducerTemplate createFluentProducerTemplate() { 648 return delegate.createFluentProducerTemplate(); 649 } 650 651 @Override 652 public FluentProducerTemplate createFluentProducerTemplate(int maximumCacheSize) { 653 return delegate.createFluentProducerTemplate(maximumCacheSize); 654 } 655 656 @Override 657 public ConsumerTemplate createConsumerTemplate() { 658 return delegate.createConsumerTemplate(); 659 } 660 661 @Override 662 public ConsumerTemplate createConsumerTemplate(int maximumCacheSize) { 663 return delegate.createConsumerTemplate(maximumCacheSize); 664 } 665 666 @Override 667 public DataFormat resolveDataFormat(String name) { 668 return delegate.resolveDataFormat(name); 669 } 670 671 @Override 672 public DataFormat createDataFormat(String name) { 673 return delegate.createDataFormat(name); 674 } 675 676 @Override 677 public Transformer resolveTransformer(String model) { 678 return delegate.resolveTransformer(model); 679 } 680 681 @Override 682 public Transformer resolveTransformer(DataType from, DataType to) { 683 return delegate.resolveTransformer(from, to); 684 } 685 686 @Override 687 public TransformerRegistry getTransformerRegistry() { 688 return delegate.getTransformerRegistry(); 689 } 690 691 @Override 692 public Validator resolveValidator(DataType type) { 693 return delegate.resolveValidator(type); 694 } 695 696 @Override 697 public ValidatorRegistry getValidatorRegistry() { 698 return delegate.getValidatorRegistry(); 699 } 700 701 @Override 702 public void setGlobalOptions(Map<String, String> globalOptions) { 703 delegate.setGlobalOptions(globalOptions); 704 } 705 706 @Override 707 public Map<String, String> getGlobalOptions() { 708 return delegate.getGlobalOptions(); 709 } 710 711 @Override 712 public String getGlobalOption(String key) { 713 return delegate.getGlobalOption(key); 714 } 715 716 @Override 717 public ClassResolver getClassResolver() { 718 return delegate.getClassResolver(); 719 } 720 721 @Override 722 public void setClassResolver(ClassResolver resolver) { 723 delegate.setClassResolver(resolver); 724 } 725 726 @Override 727 public ManagementStrategy getManagementStrategy() { 728 return delegate.getManagementStrategy(); 729 } 730 731 @Override 732 public void setManagementStrategy(ManagementStrategy strategy) { 733 delegate.setManagementStrategy(strategy); 734 } 735 736 @Override 737 public void disableJMX() throws IllegalStateException { 738 delegate.disableJMX(); 739 } 740 741 @Override 742 public InflightRepository getInflightRepository() { 743 return delegate.getInflightRepository(); 744 } 745 746 @Override 747 public void setInflightRepository(InflightRepository repository) { 748 delegate.setInflightRepository(repository); 749 } 750 751 @Override 752 public ClassLoader getApplicationContextClassLoader() { 753 return delegate.getApplicationContextClassLoader(); 754 } 755 756 @Override 757 public void setApplicationContextClassLoader(ClassLoader classLoader) { 758 delegate.setApplicationContextClassLoader(classLoader); 759 } 760 761 @Override 762 public ShutdownStrategy getShutdownStrategy() { 763 return delegate.getShutdownStrategy(); 764 } 765 766 @Override 767 public void setShutdownStrategy(ShutdownStrategy shutdownStrategy) { 768 delegate.setShutdownStrategy(shutdownStrategy); 769 } 770 771 @Override 772 public ExecutorServiceManager getExecutorServiceManager() { 773 return delegate.getExecutorServiceManager(); 774 } 775 776 @Override 777 public void setExecutorServiceManager(ExecutorServiceManager executorServiceManager) { 778 delegate.setExecutorServiceManager(executorServiceManager); 779 } 780 781 @Override 782 public MessageHistoryFactory getMessageHistoryFactory() { 783 return delegate.getMessageHistoryFactory(); 784 } 785 786 @Override 787 public void setMessageHistoryFactory(MessageHistoryFactory messageHistoryFactory) { 788 delegate.setMessageHistoryFactory(messageHistoryFactory); 789 } 790 791 @Override 792 public Debugger getDebugger() { 793 return delegate.getDebugger(); 794 } 795 796 @Override 797 public void setDebugger(Debugger debugger) { 798 delegate.setDebugger(debugger); 799 } 800 801 @Override 802 public Tracer getTracer() { 803 return delegate.getTracer(); 804 } 805 806 @Override 807 public void setTracer(Tracer tracer) { 808 delegate.setTracer(tracer); 809 } 810 811 @Override 812 public UuidGenerator getUuidGenerator() { 813 return delegate.getUuidGenerator(); 814 } 815 816 @Override 817 public void setUuidGenerator(UuidGenerator uuidGenerator) { 818 delegate.setUuidGenerator(uuidGenerator); 819 } 820 821 @Override 822 public Boolean isLoadTypeConverters() { 823 return delegate.isLoadTypeConverters(); 824 } 825 826 @Override 827 public void setLoadTypeConverters(Boolean loadTypeConverters) { 828 delegate.setLoadTypeConverters(loadTypeConverters); 829 } 830 831 @Override 832 public Boolean isTypeConverterStatisticsEnabled() { 833 return delegate.isTypeConverterStatisticsEnabled(); 834 } 835 836 @Override 837 public void setTypeConverterStatisticsEnabled(Boolean typeConverterStatisticsEnabled) { 838 delegate.setTypeConverterStatisticsEnabled(typeConverterStatisticsEnabled); 839 } 840 841 @Override 842 public Boolean isUseMDCLogging() { 843 return delegate.isUseMDCLogging(); 844 } 845 846 @Override 847 public void setUseMDCLogging(Boolean useMDCLogging) { 848 delegate.setUseMDCLogging(useMDCLogging); 849 } 850 851 @Override 852 public String getMDCLoggingKeysPattern() { 853 return delegate.getMDCLoggingKeysPattern(); 854 } 855 856 @Override 857 public void setMDCLoggingKeysPattern(String pattern) { 858 delegate.setMDCLoggingKeysPattern(pattern); 859 } 860 861 @Override 862 public Boolean isUseDataType() { 863 return delegate.isUseDataType(); 864 } 865 866 @Override 867 public void setUseDataType(Boolean useDataType) { 868 delegate.setUseDataType(useDataType); 869 } 870 871 @Override 872 public Boolean isUseBreadcrumb() { 873 return delegate.isUseBreadcrumb(); 874 } 875 876 @Override 877 public void setUseBreadcrumb(Boolean useBreadcrumb) { 878 delegate.setUseBreadcrumb(useBreadcrumb); 879 } 880 881 @Override 882 public StreamCachingStrategy getStreamCachingStrategy() { 883 return delegate.getStreamCachingStrategy(); 884 } 885 886 @Override 887 public void setStreamCachingStrategy(StreamCachingStrategy streamCachingStrategy) { 888 delegate.setStreamCachingStrategy(streamCachingStrategy); 889 } 890 891 @Override 892 public RuntimeEndpointRegistry getRuntimeEndpointRegistry() { 893 return delegate.getRuntimeEndpointRegistry(); 894 } 895 896 @Override 897 public void setRuntimeEndpointRegistry(RuntimeEndpointRegistry runtimeEndpointRegistry) { 898 delegate.setRuntimeEndpointRegistry(runtimeEndpointRegistry); 899 } 900 901 @Override 902 public void setSSLContextParameters(SSLContextParameters sslContextParameters) { 903 delegate.setSSLContextParameters(sslContextParameters); 904 } 905 906 @Override 907 public SSLContextParameters getSSLContextParameters() { 908 return delegate.getSSLContextParameters(); 909 } 910 911 @Override 912 public void setStreamCaching(Boolean cache) { 913 delegate.setStreamCaching(cache); 914 } 915 916 @Override 917 public Boolean isStreamCaching() { 918 return delegate.isStreamCaching(); 919 } 920 921 @Override 922 public void setTracing(Boolean tracing) { 923 delegate.setTracing(tracing); 924 } 925 926 @Override 927 public Boolean isTracing() { 928 return delegate.isTracing(); 929 } 930 931 @Override 932 public String getTracingPattern() { 933 return delegate.getTracingPattern(); 934 } 935 936 @Override 937 public void setTracingPattern(String tracePattern) { 938 delegate.setTracingPattern(tracePattern); 939 } 940 941 @Override 942 public void setBacklogTracing(Boolean backlogTrace) { 943 delegate.setBacklogTracing(backlogTrace); 944 } 945 946 @Override 947 public Boolean isBacklogTracing() { 948 return delegate.isBacklogTracing(); 949 } 950 951 @Override 952 public void setDebugging(Boolean debugging) { 953 delegate.setDebugging(debugging); 954 } 955 956 @Override 957 public Boolean isDebugging() { 958 return delegate.isDebugging(); 959 } 960 961 @Override 962 public void setMessageHistory(Boolean messageHistory) { 963 delegate.setMessageHistory(messageHistory); 964 } 965 966 @Override 967 public Boolean isMessageHistory() { 968 return delegate.isMessageHistory(); 969 } 970 971 @Override 972 public void setLogMask(Boolean logMask) { 973 delegate.setLogMask(logMask); 974 } 975 976 @Override 977 public Boolean isLogMask() { 978 return delegate.isLogMask(); 979 } 980 981 @Override 982 public void setLogExhaustedMessageBody(Boolean logExhaustedMessageBody) { 983 delegate.setLogExhaustedMessageBody(logExhaustedMessageBody); 984 } 985 986 @Override 987 public Boolean isLogExhaustedMessageBody() { 988 return delegate.isLogExhaustedMessageBody(); 989 } 990 991 @Override 992 public void setDelayer(Long delay) { 993 delegate.setDelayer(delay); 994 } 995 996 @Override 997 public Long getDelayer() { 998 return delegate.getDelayer(); 999 } 1000 1001 @Override 1002 public void setAutoStartup(Boolean autoStartup) { 1003 delegate.setAutoStartup(autoStartup); 1004 } 1005 1006 @Override 1007 public Boolean isAutoStartup() { 1008 return delegate.isAutoStartup(); 1009 } 1010 1011 @Override 1012 public void setShutdownRoute(ShutdownRoute shutdownRoute) { 1013 delegate.setShutdownRoute(shutdownRoute); 1014 } 1015 1016 @Override 1017 public ShutdownRoute getShutdownRoute() { 1018 return delegate.getShutdownRoute(); 1019 } 1020 1021 @Override 1022 public void setShutdownRunningTask(ShutdownRunningTask shutdownRunningTask) { 1023 delegate.setShutdownRunningTask(shutdownRunningTask); 1024 } 1025 1026 @Override 1027 public ShutdownRunningTask getShutdownRunningTask() { 1028 return delegate.getShutdownRunningTask(); 1029 } 1030 1031 @Override 1032 public void setAllowUseOriginalMessage(Boolean allowUseOriginalMessage) { 1033 delegate.setAllowUseOriginalMessage(allowUseOriginalMessage); 1034 } 1035 1036 @Override 1037 public Boolean isAllowUseOriginalMessage() { 1038 return delegate.isAllowUseOriginalMessage(); 1039 } 1040 1041 @Override 1042 public Boolean isCaseInsensitiveHeaders() { 1043 return delegate.isCaseInsensitiveHeaders(); 1044 } 1045 1046 @Override 1047 public void setCaseInsensitiveHeaders(Boolean caseInsensitiveHeaders) { 1048 delegate.setCaseInsensitiveHeaders(caseInsensitiveHeaders); 1049 } 1050 1051 // 1052 // ExtendedCamelContext 1053 // 1054 1055 protected ExtendedCamelContext getExtendedCamelContext() { 1056 return delegate.adapt(ExtendedCamelContext.class); 1057 } 1058 1059 @Override 1060 public void setName(String name) { 1061 getExtendedCamelContext().setName(name); 1062 } 1063 1064 @Override 1065 public void setRegistry(Registry registry) { 1066 getExtendedCamelContext().setRegistry(registry); 1067 } 1068 1069 @Override 1070 public void setupRoutes(boolean done) { 1071 getExtendedCamelContext().setupRoutes(done); 1072 } 1073 1074 @Override 1075 public boolean isSetupRoutes() { 1076 return getExtendedCamelContext().isSetupRoutes(); 1077 } 1078 1079 @Override 1080 public void registerEndpointCallback(EndpointStrategy strategy) { 1081 getExtendedCamelContext().registerEndpointCallback(strategy); 1082 } 1083 1084 @Override 1085 public Endpoint getPrototypeEndpoint(String uri) { 1086 return getExtendedCamelContext().getPrototypeEndpoint(uri); 1087 } 1088 1089 @Override 1090 public Endpoint getPrototypeEndpoint(NormalizedEndpointUri uri) { 1091 return getExtendedCamelContext().getPrototypeEndpoint(uri); 1092 } 1093 1094 @Override 1095 public Endpoint hasEndpoint(NormalizedEndpointUri uri) { 1096 return getExtendedCamelContext().hasEndpoint(uri); 1097 } 1098 1099 @Override 1100 public Endpoint getEndpoint(NormalizedEndpointUri uri) { 1101 return getExtendedCamelContext().getEndpoint(uri); 1102 } 1103 1104 @Override 1105 public Endpoint getEndpoint(NormalizedEndpointUri uri, Map<String, Object> parameters) { 1106 return getExtendedCamelContext().getEndpoint(uri, parameters); 1107 } 1108 1109 @Override 1110 public NormalizedEndpointUri normalizeUri(String uri) { 1111 return getExtendedCamelContext().normalizeUri(uri); 1112 } 1113 1114 @Override 1115 public List<RouteStartupOrder> getRouteStartupOrder() { 1116 return getExtendedCamelContext().getRouteStartupOrder(); 1117 } 1118 1119 @Override 1120 public CamelBeanPostProcessor getBeanPostProcessor() { 1121 return getExtendedCamelContext().getBeanPostProcessor(); 1122 } 1123 1124 @Override 1125 public ManagementMBeanAssembler getManagementMBeanAssembler() { 1126 return getExtendedCamelContext().getManagementMBeanAssembler(); 1127 } 1128 1129 @Override 1130 public AsyncProcessor createMulticast(Collection<Processor> processors, ExecutorService executor, boolean shutdownExecutorService) { 1131 return getExtendedCamelContext().createMulticast(processors, executor, shutdownExecutorService); 1132 } 1133 1134 @Override 1135 public ErrorHandlerFactory getErrorHandlerFactory() { 1136 return getExtendedCamelContext().getErrorHandlerFactory(); 1137 } 1138 1139 @Override 1140 public void setErrorHandlerFactory(ErrorHandlerFactory errorHandlerFactory) { 1141 getExtendedCamelContext().setErrorHandlerFactory(errorHandlerFactory); 1142 } 1143 1144 @Override 1145 public void setNodeIdFactory(NodeIdFactory factory) { 1146 getExtendedCamelContext().setNodeIdFactory(factory); 1147 } 1148 1149 @Override 1150 public NodeIdFactory getNodeIdFactory() { 1151 return getExtendedCamelContext().getNodeIdFactory(); 1152 } 1153 1154 @Override 1155 public ComponentResolver getComponentResolver() { 1156 return getExtendedCamelContext().getComponentResolver(); 1157 } 1158 1159 @Override 1160 public void setComponentResolver(ComponentResolver componentResolver) { 1161 getExtendedCamelContext().setComponentResolver(componentResolver); 1162 } 1163 1164 @Override 1165 public ComponentNameResolver getComponentNameResolver() { 1166 return getExtendedCamelContext().getComponentNameResolver(); 1167 } 1168 1169 @Override 1170 public void setComponentNameResolver(ComponentNameResolver componentNameResolver) { 1171 getExtendedCamelContext().setComponentNameResolver(componentNameResolver); 1172 } 1173 1174 @Override 1175 public LanguageResolver getLanguageResolver() { 1176 return getExtendedCamelContext().getLanguageResolver(); 1177 } 1178 1179 @Override 1180 public void setLanguageResolver(LanguageResolver languageResolver) { 1181 getExtendedCamelContext().setLanguageResolver(languageResolver); 1182 } 1183 1184 @Override 1185 public DataFormatResolver getDataFormatResolver() { 1186 return getExtendedCamelContext().getDataFormatResolver(); 1187 } 1188 1189 @Override 1190 public void setDataFormatResolver(DataFormatResolver dataFormatResolver) { 1191 getExtendedCamelContext().setDataFormatResolver(dataFormatResolver); 1192 } 1193 1194 @Override 1195 public PackageScanClassResolver getPackageScanClassResolver() { 1196 return getExtendedCamelContext().getPackageScanClassResolver(); 1197 } 1198 1199 @Override 1200 public void setPackageScanClassResolver(PackageScanClassResolver resolver) { 1201 getExtendedCamelContext().setPackageScanClassResolver(resolver); 1202 } 1203 1204 @Override 1205 public PackageScanResourceResolver getPackageScanResourceResolver() { 1206 return getExtendedCamelContext().getPackageScanResourceResolver(); 1207 } 1208 1209 @Override 1210 public void setPackageScanResourceResolver(PackageScanResourceResolver resolver) { 1211 getExtendedCamelContext().setPackageScanResourceResolver(resolver); 1212 } 1213 1214 @Override 1215 public FactoryFinder getDefaultFactoryFinder() { 1216 return getExtendedCamelContext().getDefaultFactoryFinder(); 1217 } 1218 1219 @Override 1220 public FactoryFinder getFactoryFinder(String path) { 1221 return getExtendedCamelContext().getFactoryFinder(path); 1222 } 1223 1224 @Override 1225 public void setFactoryFinderResolver(FactoryFinderResolver resolver) { 1226 getExtendedCamelContext().setFactoryFinderResolver(resolver); 1227 } 1228 1229 @Override 1230 public FactoryFinderResolver getFactoryFinderResolver() { 1231 return getExtendedCamelContext().getFactoryFinderResolver(); 1232 } 1233 1234 @Override 1235 public ProcessorFactory getProcessorFactory() { 1236 return getExtendedCamelContext().getProcessorFactory(); 1237 } 1238 1239 @Override 1240 public void setProcessorFactory(ProcessorFactory processorFactory) { 1241 getExtendedCamelContext().setProcessorFactory(processorFactory); 1242 } 1243 1244 @Override 1245 public ModelJAXBContextFactory getModelJAXBContextFactory() { 1246 return getExtendedCamelContext().getModelJAXBContextFactory(); 1247 } 1248 1249 @Override 1250 public void setModelJAXBContextFactory(ModelJAXBContextFactory modelJAXBContextFactory) { 1251 getExtendedCamelContext().setModelJAXBContextFactory(modelJAXBContextFactory); 1252 } 1253 1254 @Override 1255 public DeferServiceFactory getDeferServiceFactory() { 1256 return getExtendedCamelContext().getDeferServiceFactory(); 1257 } 1258 1259 @Override 1260 public UnitOfWorkFactory getUnitOfWorkFactory() { 1261 return getExtendedCamelContext().getUnitOfWorkFactory(); 1262 } 1263 1264 @Override 1265 public void setUnitOfWorkFactory(UnitOfWorkFactory unitOfWorkFactory) { 1266 getExtendedCamelContext().setUnitOfWorkFactory(unitOfWorkFactory); 1267 } 1268 1269 @Override 1270 public AnnotationBasedProcessorFactory getAnnotationBasedProcessorFactory() { 1271 return getExtendedCamelContext().getAnnotationBasedProcessorFactory(); 1272 } 1273 1274 @Override 1275 public BeanProxyFactory getBeanProxyFactory() { 1276 return getExtendedCamelContext().getBeanProxyFactory(); 1277 } 1278 1279 @Override 1280 public BeanProcessorFactory getBeanProcessorFactory() { 1281 return getExtendedCamelContext().getBeanProcessorFactory(); 1282 } 1283 1284 @Override 1285 public ScheduledExecutorService getErrorHandlerExecutorService() { 1286 return getExtendedCamelContext().getErrorHandlerExecutorService(); 1287 } 1288 1289 @Override 1290 public void addInterceptStrategy(InterceptStrategy interceptStrategy) { 1291 getExtendedCamelContext().addInterceptStrategy(interceptStrategy); 1292 } 1293 1294 @Override 1295 public List<InterceptStrategy> getInterceptStrategies() { 1296 return getExtendedCamelContext().getInterceptStrategies(); 1297 } 1298 1299 @Override 1300 public void setupManagement(Map<String, Object> options) { 1301 getExtendedCamelContext().setupManagement(options); 1302 } 1303 1304 @Override 1305 public Set<LogListener> getLogListeners() { 1306 return getExtendedCamelContext().getLogListeners(); 1307 } 1308 1309 @Override 1310 public void addLogListener(LogListener listener) { 1311 getExtendedCamelContext().addLogListener(listener); 1312 } 1313 1314 @Override 1315 public AsyncProcessorAwaitManager getAsyncProcessorAwaitManager() { 1316 return getExtendedCamelContext().getAsyncProcessorAwaitManager(); 1317 } 1318 1319 @Override 1320 public void setAsyncProcessorAwaitManager(AsyncProcessorAwaitManager manager) { 1321 getExtendedCamelContext().setAsyncProcessorAwaitManager(manager); 1322 } 1323 1324 @Override 1325 public BeanIntrospection getBeanIntrospection() { 1326 return getExtendedCamelContext().getBeanIntrospection(); 1327 } 1328 1329 @Override 1330 public void setBeanIntrospection(BeanIntrospection beanIntrospection) { 1331 getExtendedCamelContext().setBeanIntrospection(beanIntrospection); 1332 } 1333 1334 @Override 1335 public HeadersMapFactory getHeadersMapFactory() { 1336 return getExtendedCamelContext().getHeadersMapFactory(); 1337 } 1338 1339 @Override 1340 public void setHeadersMapFactory(HeadersMapFactory factory) { 1341 getExtendedCamelContext().setHeadersMapFactory(factory); 1342 } 1343 1344 @Override 1345 public ReactiveExecutor getReactiveExecutor() { 1346 return getExtendedCamelContext().getReactiveExecutor(); 1347 } 1348 1349 @Override 1350 public void setReactiveExecutor(ReactiveExecutor reactiveExecutor) { 1351 getExtendedCamelContext().setReactiveExecutor(reactiveExecutor); 1352 } 1353 1354 @Override 1355 public boolean isEventNotificationApplicable() { 1356 return getExtendedCamelContext().isEventNotificationApplicable(); 1357 } 1358 1359 @Override 1360 public void setEventNotificationApplicable(boolean eventNotificationApplicable) { 1361 getExtendedCamelContext().setEventNotificationApplicable(eventNotificationApplicable); 1362 } 1363 1364 @Override 1365 public void setXMLRoutesDefinitionLoader(XMLRoutesDefinitionLoader xmlRoutesDefinitionLoader) { 1366 getExtendedCamelContext().setXMLRoutesDefinitionLoader(xmlRoutesDefinitionLoader); 1367 } 1368 1369 @Override 1370 public XMLRoutesDefinitionLoader getXMLRoutesDefinitionLoader() { 1371 return getExtendedCamelContext().getXMLRoutesDefinitionLoader(); 1372 } 1373 1374 @Override 1375 public void setModelToXMLDumper(ModelToXMLDumper modelToXMLDumper) { 1376 getExtendedCamelContext().setModelToXMLDumper(modelToXMLDumper); 1377 } 1378 1379 @Override 1380 public ModelToXMLDumper getModelToXMLDumper() { 1381 return getExtendedCamelContext().getModelToXMLDumper(); 1382 } 1383 1384 @Override 1385 public void setRestBindingJaxbDataFormatFactory(RestBindingJaxbDataFormatFactory restBindingJaxbDataFormatFactory) { 1386 getExtendedCamelContext().setRestBindingJaxbDataFormatFactory(restBindingJaxbDataFormatFactory); 1387 } 1388 1389 @Override 1390 public RestBindingJaxbDataFormatFactory getRestBindingJaxbDataFormatFactory() { 1391 return getExtendedCamelContext().getRestBindingJaxbDataFormatFactory(); 1392 } 1393 1394 @Override 1395 public RuntimeCamelCatalog getRuntimeCamelCatalog() { 1396 return getExtendedCamelContext().getRuntimeCamelCatalog(); 1397 } 1398 1399 @Override 1400 public void setRuntimeCamelCatalog(RuntimeCamelCatalog runtimeCamelCatalog) { 1401 getExtendedCamelContext().setRuntimeCamelCatalog(runtimeCamelCatalog); 1402 } 1403 1404 @Override 1405 public ConfigurerResolver getConfigurerResolver() { 1406 return getExtendedCamelContext().getConfigurerResolver(); 1407 } 1408 1409 @Override 1410 public void setConfigurerResolver(ConfigurerResolver configurerResolver) { 1411 getExtendedCamelContext().setConfigurerResolver(configurerResolver); 1412 } 1413 1414 @Override 1415 public RouteController getInternalRouteController() { 1416 return getExtendedCamelContext().getInternalRouteController(); 1417 } 1418 1419 @Override 1420 public void addRoute(Route route) { 1421 getExtendedCamelContext().addRoute(route); 1422 } 1423 1424 @Override 1425 public void removeRoute(Route route) { 1426 getExtendedCamelContext().removeRoute(route); 1427 } 1428 1429 @Override 1430 public Processor createErrorHandler(Route route, Processor processor) throws Exception { 1431 return getExtendedCamelContext().createErrorHandler(route, processor); 1432 } 1433 1434 // 1435 // CatalogCamelContext 1436 // 1437 1438 protected CatalogCamelContext getCatalogCamelContext() { 1439 return delegate.adapt(CatalogCamelContext.class); 1440 } 1441 1442 @Override 1443 public String getComponentParameterJsonSchema(String componentName) throws IOException { 1444 return getCatalogCamelContext().getComponentParameterJsonSchema(componentName); 1445 } 1446 1447 @Override 1448 public String getDataFormatParameterJsonSchema(String dataFormatName) throws IOException { 1449 return getCatalogCamelContext().getDataFormatParameterJsonSchema(dataFormatName); 1450 } 1451 1452 @Override 1453 public String getLanguageParameterJsonSchema(String languageName) throws IOException { 1454 return getCatalogCamelContext().getLanguageParameterJsonSchema(languageName); 1455 } 1456 1457 @Override 1458 public String getEipParameterJsonSchema(String eipName) throws IOException { 1459 return getCatalogCamelContext().getEipParameterJsonSchema(eipName); 1460 } 1461 1462 // 1463 // ModelCamelContext 1464 // 1465 1466 protected ModelCamelContext getModelCamelContext() { 1467 return delegate.adapt(ModelCamelContext.class); 1468 } 1469 1470 @Override 1471 public List<RouteDefinition> getRouteDefinitions() { 1472 return getModelCamelContext().getRouteDefinitions(); 1473 } 1474 1475 @Override 1476 public RouteDefinition getRouteDefinition(String id) { 1477 return getModelCamelContext().getRouteDefinition(id); 1478 } 1479 1480 @Override 1481 public void addRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception { 1482 getModelCamelContext().addRouteDefinitions(routeDefinitions); 1483 } 1484 1485 @Override 1486 public void addRouteDefinition(RouteDefinition routeDefinition) throws Exception { 1487 getModelCamelContext().addRouteDefinition(routeDefinition); 1488 } 1489 1490 @Override 1491 public void removeRouteDefinitions(Collection<RouteDefinition> routeDefinitions) throws Exception { 1492 getModelCamelContext().removeRouteDefinitions(routeDefinitions); 1493 } 1494 1495 @Override 1496 public void removeRouteDefinition(RouteDefinition routeDefinition) throws Exception { 1497 getModelCamelContext().removeRouteDefinition(routeDefinition); 1498 } 1499 1500 @Override 1501 public List<RestDefinition> getRestDefinitions() { 1502 return getModelCamelContext().getRestDefinitions(); 1503 } 1504 1505 @Override 1506 public void addRestDefinitions(Collection<RestDefinition> restDefinitions, boolean addToRoutes) throws Exception { 1507 getModelCamelContext().addRestDefinitions(restDefinitions, addToRoutes); 1508 } 1509 1510 @Override 1511 public void setDataFormats(Map<String, DataFormatDefinition> dataFormats) { 1512 getModelCamelContext().setDataFormats(dataFormats); 1513 } 1514 1515 @Override 1516 public Map<String, DataFormatDefinition> getDataFormats() { 1517 return getModelCamelContext().getDataFormats(); 1518 } 1519 1520 @Override 1521 public DataFormatDefinition resolveDataFormatDefinition(String name) { 1522 return getModelCamelContext().resolveDataFormatDefinition(name); 1523 } 1524 1525 @Override 1526 public ProcessorDefinition<?> getProcessorDefinition(String id) { 1527 return getModelCamelContext().getProcessorDefinition(id); 1528 } 1529 1530 @Override 1531 public <T extends ProcessorDefinition<T>> T getProcessorDefinition(String id, Class<T> type) { 1532 return getModelCamelContext().getProcessorDefinition(id, type); 1533 } 1534 1535 @Override 1536 public void setValidators(List<ValidatorDefinition> validators) { 1537 getModelCamelContext().setValidators(validators); 1538 } 1539 1540 @Override 1541 public HystrixConfigurationDefinition getHystrixConfiguration(String id) { 1542 return getModelCamelContext().getHystrixConfiguration(id); 1543 } 1544 1545 @Override 1546 public void setHystrixConfiguration(HystrixConfigurationDefinition configuration) { 1547 getModelCamelContext().setHystrixConfiguration(configuration); 1548 } 1549 1550 @Override 1551 public void setHystrixConfigurations(List<HystrixConfigurationDefinition> configurations) { 1552 getModelCamelContext().setHystrixConfigurations(configurations); 1553 } 1554 1555 @Override 1556 public void addHystrixConfiguration(String id, HystrixConfigurationDefinition configuration) { 1557 getModelCamelContext().addHystrixConfiguration(id, configuration); 1558 } 1559 1560 @Override 1561 public Resilience4jConfigurationDefinition getResilience4jConfiguration(String id) { 1562 return getModelCamelContext().getResilience4jConfiguration(id); 1563 } 1564 1565 @Override 1566 public void setResilience4jConfiguration(Resilience4jConfigurationDefinition configuration) { 1567 getModelCamelContext().setResilience4jConfiguration(configuration); 1568 } 1569 1570 @Override 1571 public void setResilience4jConfigurations(List<Resilience4jConfigurationDefinition> configurations) { 1572 getModelCamelContext().setResilience4jConfigurations(configurations); 1573 } 1574 1575 @Override 1576 public void addResilience4jConfiguration(String id, Resilience4jConfigurationDefinition configuration) { 1577 getModelCamelContext().addResilience4jConfiguration(id, configuration); 1578 } 1579 1580 @Override 1581 public FaultToleranceConfigurationDefinition getFaultToleranceConfiguration(String id) { 1582 return getModelCamelContext().getFaultToleranceConfiguration(id); 1583 } 1584 1585 @Override 1586 public void setFaultToleranceConfiguration(FaultToleranceConfigurationDefinition configuration) { 1587 getModelCamelContext().setFaultToleranceConfiguration(configuration); 1588 } 1589 1590 @Override 1591 public void setFaultToleranceConfigurations(List<FaultToleranceConfigurationDefinition> configurations) { 1592 getModelCamelContext().setFaultToleranceConfigurations(configurations); 1593 } 1594 1595 @Override 1596 public void addFaultToleranceConfiguration(String id, FaultToleranceConfigurationDefinition configuration) { 1597 getModelCamelContext().addFaultToleranceConfiguration(id, configuration); 1598 } 1599 1600 @Override 1601 public List<ValidatorDefinition> getValidators() { 1602 return getModelCamelContext().getValidators(); 1603 } 1604 1605 @Override 1606 public void setTransformers(List<TransformerDefinition> transformers) { 1607 getModelCamelContext().setTransformers(transformers); 1608 } 1609 1610 @Override 1611 public List<TransformerDefinition> getTransformers() { 1612 return getModelCamelContext().getTransformers(); 1613 } 1614 1615 @Override 1616 public ServiceCallConfigurationDefinition getServiceCallConfiguration(String serviceName) { 1617 return getModelCamelContext().getServiceCallConfiguration(serviceName); 1618 } 1619 1620 @Override 1621 public void setServiceCallConfiguration(ServiceCallConfigurationDefinition configuration) { 1622 getModelCamelContext().setServiceCallConfiguration(configuration); 1623 } 1624 1625 @Override 1626 public void setServiceCallConfigurations(List<ServiceCallConfigurationDefinition> configurations) { 1627 getModelCamelContext().setServiceCallConfigurations(configurations); 1628 } 1629 1630 @Override 1631 public void addServiceCallConfiguration(String serviceName, ServiceCallConfigurationDefinition configuration) { 1632 getModelCamelContext().addServiceCallConfiguration(serviceName, configuration); 1633 } 1634 1635 @Override 1636 public void startRouteDefinitions() throws Exception { 1637 getModelCamelContext().startRouteDefinitions(); 1638 } 1639 1640 @Override 1641 public void startRouteDefinitions(List<RouteDefinition> routeDefinitions) throws Exception { 1642 getModelCamelContext().startRouteDefinitions(routeDefinitions); 1643 } 1644 1645 @Override 1646 public void setRouteFilterPattern(String include, String exclude) { 1647 getModelCamelContext().setRouteFilterPattern(include, exclude); 1648 } 1649 1650 @Override 1651 public void setRouteFilter(Function<RouteDefinition, Boolean> filter) { 1652 getModelCamelContext().setRouteFilter(filter); 1653 } 1654 1655 @Override 1656 public Function<RouteDefinition, Boolean> getRouteFilter() { 1657 return getModelCamelContext().getRouteFilter(); 1658 } 1659 1660 @Override 1661 public Expression createExpression(ExpressionDefinition definition) { 1662 return getModelCamelContext().createExpression(definition); 1663 } 1664 1665 @Override 1666 public Predicate createPredicate(ExpressionDefinition definition) { 1667 return getModelCamelContext().createPredicate(definition); 1668 } 1669 1670 @Override 1671 public RouteDefinition adviceWith(RouteDefinition definition, AdviceWithRouteBuilder builder) throws Exception { 1672 return getModelCamelContext().adviceWith(definition, builder); 1673 } 1674 1675 @Override 1676 public void registerValidator(ValidatorDefinition validator) { 1677 getModelCamelContext().registerValidator(validator); 1678 } 1679 1680 @Override 1681 public void registerTransformer(TransformerDefinition transformer) { 1682 getModelCamelContext().registerTransformer(transformer); 1683 } 1684 1685 // 1686 // Immutable 1687 // 1688 1689 public void init() { 1690 if (delegate instanceof LightweightRuntimeCamelContext) { 1691 return; 1692 } 1693 delegate.init(); 1694 for (Route route : delegate.getRoutes()) { 1695 clearModelReferences(route); 1696 } 1697 delegate = new LightweightRuntimeCamelContext(this, delegate); 1698 } 1699 1700 private void clearModelReferences(Route r) { 1701 if (r instanceof DefaultRoute) { 1702 ((DefaultRoute) r).clearModelReferences(); 1703 } 1704 clearModelReferences(r.navigate()); 1705 } 1706 1707 private void clearModelReferences(Navigate<Processor> nav) { 1708 for (Processor processor : nav.next()) { 1709 if (processor instanceof DefaultChannel) { 1710 ((DefaultChannel) processor).clearModelReferences(); 1711 } 1712 if (processor instanceof Navigate) { 1713 clearModelReferences((Navigate<Processor>) processor); 1714 } 1715 } 1716 } 1717 1718 public void startImmutable() { 1719 delegate.start(); 1720 } 1721 1722}