本文整理汇总了Java中org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler类的典型用法代码示例。如果您正苦于以下问题:Java AggregateAnnotationCommandHandler类的具体用法?Java AggregateAnnotationCommandHandler怎么用?Java AggregateAnnotationCommandHandler使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AggregateAnnotationCommandHandler类属于org.axonframework.commandhandling.annotation包,在下文中一共展示了AggregateAnnotationCommandHandler类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createInjector
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
private Injector createInjector() {
return Guice.createInjector(new AbstractModule() {
@Override
protected void configure() {
// Event store
CommandBus commandBus = new SimpleCommandBus();
CommandGateway commandGateway = new DefaultCommandGateway(commandBus);
EventStore eventStore = new FileSystemEventStore(new SimpleEventFileResolver(eventStoreFolder));
EventBus eventBus = new SimpleEventBus();
EventSourcingRepository repository = new EventSourcingRepository(Rating.class, eventStore);
repository.setEventBus(eventBus);
// Event store handlers
AggregateAnnotationCommandHandler.subscribe(Rating.class, repository, commandBus);
AnnotationEventListenerAdapter.subscribe(new RatingEventHandler(), eventBus);
// Load twist config
TwistProvider twistProvider = new TwistProvider(twistsDataFile);
// Twist rating
TwistRating twistRating = new TwistRatingEventStore(commandGateway, twistProvider);
// Bootstrap aggregates
twistProvider.getTwists().stream().forEach(twist -> {
commandGateway.send(new CreateTwistCommand(twist.id));
});
// Set up bindings
bind(TwistRating.class).toInstance(twistRating);
bind(TwistProvider.class).toInstance(twistProvider);
Logger.info("Injector configured");
}
});
}
示例2: productAggregateCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@SuppressWarnings("deprecation")
@Bean
AggregateAnnotationCommandHandler<OrderAggregate> productAggregateCommandHandler() {
AggregateAnnotationCommandHandler<OrderAggregate> handler =
new AggregateAnnotationCommandHandler<OrderAggregate>(
OrderAggregate.class, orderEventSourcingRepository(), commandBus());
return handler;
}
示例3: productAggregateCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
/**
* This method registers your Aggregate Root as a @CommandHandler
*
* @return
*/
@Bean
AggregateAnnotationCommandHandler<ProductAggregate> productAggregateCommandHandler(EventSourcingRepository<ProductAggregate> eventSourcingRepository, CommandBus commandBus) {
AggregateAnnotationCommandHandler<ProductAggregate> handler = new AggregateAnnotationCommandHandler<ProductAggregate>(
ProductAggregate.class,
eventSourcingRepository,
commandBus);
return handler;
}
示例4: postProcessAfterInitialization
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
if (EventSourcedAggregateRoot.class.isAssignableFrom(bean.getClass())) {
AggregateRoot aggregateRoot = (AggregateRoot) bean;
EventSourcingRepository repository = new EventSourcingRepository(bean.getClass(), eventStore);
repository.setEventBus(eventBus);
beanFactory.registerSingleton(beanName + "Repository", repository);
AggregateAnnotationCommandHandler.subscribe(aggregateRoot.getClass(), repository, commandBus);
}
return bean;
}
示例5: subscribe
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
/**
* Subclasses should call this method in order to setup repositories and command handlers etc...
* @param <T>
* @param aggregateType The aggregate type to prepare for
*/
protected static <T extends EventSourcedAggregateRoot> EventSourcingRepository<T> subscribe(Class<T> aggregateType){
// we need to configure the repository
EventSourcingRepository<T> eventSourcingRepository = new EventSourcingRepository<>(aggregateType, eventStore);
eventSourcingRepository.setEventBus(eventBus);
// Axon needs to know that our aggregate can handle commands
AggregateAnnotationCommandHandler.subscribe(aggregateType, eventSourcingRepository, commandBus);
return eventSourcingRepository;
}
开发者ID:dma-graveyard,项目名称:MaritimeCloudPortalTestbed,代码行数:15,代码来源:AbstractManuallyComnfiguredAxonCqrsIT.java
示例6: addAggregateType
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public <T extends EventSourcedAggregateRoot> void addAggregateType(Class<T> aggregateType) {
removeAggregateType(aggregateType);
Repository<T> repo = m_repoFactory.createRepository(aggregateType);
m_aggregates.put(aggregateType,new AggregateSubscription(
repo,
AggregateAnnotationCommandHandler.subscribe(
aggregateType,
repo,
m_commandBus)));
}
示例7: createAggregateSubscription
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
private <T extends EventSourcedAggregateRoot> AggregateSubscription<T> createAggregateSubscription(
Repository<T> repo, Class<T> aggregateType) {
return new AggregateSubscription(
repo,
AggregateAnnotationCommandHandler.subscribe(
aggregateType,
repo,
m_cmdBus)
);
}
示例8: orderCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler orderCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(Order.class, orderRepository(), commandBus());
}
示例9: dayOfChoiceCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler dayOfChoiceCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(DeliveryDay.class, dayOfChoiceRepository(), commandBus());
}
示例10: storeAssistantCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler storeAssistantCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(StoreAssistant.class, storeAssistantRepository(), commandBus());
}
示例11: libraryCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler<Library> libraryCommandHandler() {
AggregateAnnotationCommandHandler<Library> commandHandler = AggregateAnnotationCommandHandler
.subscribe(Library.class, libraryRepository(), axonconf.commandBus());
return commandHandler;
}
示例12: userAggregateCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler<User> userAggregateCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(User.class, userAggregateRepository(), commandBus());
}
示例13: organizationAggregateCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler<Organization> organizationAggregateCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(Organization.class, organizationRepository(), commandBus());
}
示例14: organizationMembershipCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler<Membership> organizationMembershipCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(Membership.class, organizationMembershipRepository(), commandBus());
}
示例15: serviceSpecificationAggregateCommandHandler
import org.axonframework.commandhandling.annotation.AggregateAnnotationCommandHandler; //导入依赖的package包/类
@Bean
public AggregateAnnotationCommandHandler<ServiceSpecification> serviceSpecificationAggregateCommandHandler() {
return AggregateAnnotationCommandHandler.subscribe(ServiceSpecification.class, serviceSpecificationRepository(), commandBus());
}