@ConditionalOnMissingBean(value = {QueryBus.class, QueryInvocationErrorHandler.class}) @Qualifier("localSegment") @Bean public SimpleQueryBus queryBus(AxonConfiguration axonConfiguration, TransactionManager transactionManager) { return SimpleQueryBus.builder() .messageMonitor(axonConfiguration.messageMonitor(QueryBus.class, "queryBus")) .transactionManager(transactionManager) .errorHandler(axonConfiguration.getComponent( QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build() )) .queryUpdateEmitter(axonConfiguration.getComponent(QueryUpdateEmitter.class)) .build(); }
/** * Provides the default QueryBus implementations. Subclasses may override this method to provide their own default. * * @param config The configuration based on which the component is initialized. * @return The default QueryBus to use. */ protected QueryBus defaultQueryBus(Configuration config) { return SimpleQueryBus.builder() .messageMonitor(config.messageMonitor(SimpleQueryBus.class, "queryBus")) .transactionManager(config.getComponent(TransactionManager.class, NoTransactionManager::instance)) .errorHandler(config.getComponent( QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build() )) .queryUpdateEmitter(config.getComponent(QueryUpdateEmitter.class)) .build(); }
@ConditionalOnMissingBean(value = {QueryBus.class, QueryInvocationErrorHandler.class}) @Qualifier("localSegment") @Bean public SimpleQueryBus queryBus(AxonConfiguration axonConfiguration, TransactionManager transactionManager) { return SimpleQueryBus.builder() .messageMonitor(axonConfiguration.messageMonitor(QueryBus.class, "queryBus")) .transactionManager(transactionManager) .errorHandler(axonConfiguration.getComponent( QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build() )) .queryUpdateEmitter(axonConfiguration.getComponent(QueryUpdateEmitter.class)) .build(); }
private QueryBus buildQueryBus(Configuration c) { SimpleQueryBus localSegment = SimpleQueryBus.builder() .transactionManager(c.getComponent(TransactionManager.class, NoTransactionManager::instance)) .errorHandler(c.getComponent(QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build())) .queryUpdateEmitter(c.queryUpdateEmitter()) .messageMonitor(c.messageMonitor(QueryBus.class, "localQueryBus")) .build(); AxonServerQueryBus queryBus = new AxonServerQueryBus(c.getComponent(AxonServerConnectionManager.class), c.getComponent(AxonServerConfiguration.class), c.queryUpdateEmitter(), localSegment, c.messageSerializer(), c.serializer(), c.getComponent(QueryPriorityCalculator.class, () -> new QueryPriorityCalculator() {})); c.onShutdown(queryBus::disconnect); return queryBus; }
@Bean @ConditionalOnMissingBean public QueryInvocationErrorHandler queryInvocationErrorHandler() { return LoggingQueryInvocationErrorHandler.builder().build(); }
/** * Instantiate a {@link LoggingQueryInvocationErrorHandler} based on the fields contained in the {@link Builder}. * * @param builder the {@link Builder} used to instantiate a {@link LoggingQueryInvocationErrorHandler} instance */ protected LoggingQueryInvocationErrorHandler(Builder builder) { builder.validate(); this.logger = builder.logger; }
/** * Instantiate a Builder to be able to create a {@link LoggingQueryInvocationErrorHandler}. * <p> * The {@link Logger} is defaulted to a {@link LoggerFactory#getLogger(Class)} call using * {@code LoggingQueryInvocationErrorHandler.class}. * * @return a Builder to be able to create a {@link LoggingQueryInvocationErrorHandler} */ public static Builder builder() { return new Builder(); }
/** * Provides the default QueryBus implementations. Subclasses may override this method to provide their own default. * * @param config The configuration based on which the component is initialized. * @return The default QueryBus to use. */ protected QueryBus defaultQueryBus(Configuration config) { return SimpleQueryBus.builder() .messageMonitor(config.messageMonitor(SimpleQueryBus.class, "queryBus")) .transactionManager(config.getComponent(TransactionManager.class, NoTransactionManager::instance)) .errorHandler(config.getComponent( QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build() )) .queryUpdateEmitter(config.getComponent(QueryUpdateEmitter.class)) .build(); }
private QueryBus buildQueryBus(Configuration c) { SimpleQueryBus localSegment = SimpleQueryBus.builder() .transactionManager(c.getComponent(TransactionManager.class, NoTransactionManager::instance)) .errorHandler(c.getComponent(QueryInvocationErrorHandler.class, () -> LoggingQueryInvocationErrorHandler.builder().build())) .queryUpdateEmitter(c.queryUpdateEmitter()) .messageMonitor(c.messageMonitor(QueryBus.class, "localQueryBus")) .build(); AxonServerQueryBus queryBus = new AxonServerQueryBus(c.getComponent(AxonServerConnectionManager.class), c.getComponent(AxonServerConfiguration.class), c.queryUpdateEmitter(), localSegment, c.messageSerializer(), c.serializer(), c.getComponent(QueryPriorityCalculator.class, () -> new QueryPriorityCalculator() {})); c.onShutdown(queryBus::disconnect); return queryBus; }
@Bean @ConditionalOnMissingBean public QueryInvocationErrorHandler queryInvocationErrorHandler() { return LoggingQueryInvocationErrorHandler.builder().build(); }
/** * Instantiate a Builder to be able to create a {@link LoggingQueryInvocationErrorHandler}. * <p> * The {@link Logger} is defaulted to a {@link LoggerFactory#getLogger(Class)} call using * {@code LoggingQueryInvocationErrorHandler.class}. * * @return a Builder to be able to create a {@link LoggingQueryInvocationErrorHandler} */ public static Builder builder() { return new Builder(); }
/** * Instantiate a {@link LoggingQueryInvocationErrorHandler} based on the fields contained in the {@link Builder}. * * @param builder the {@link Builder} used to instantiate a {@link LoggingQueryInvocationErrorHandler} instance */ protected LoggingQueryInvocationErrorHandler(Builder builder) { builder.validate(); this.logger = builder.logger; }