예제 #1
0
 /// <summary>
 /// 注册聚合根的可溯源事件版本信息的表名提供者
 /// </summary>
 public Configuration AggregateRootVersionTableProvider <T>() where T : class, IAggregateRootVersionTableProvider
 {
     ObjectContainer.RegisterDefault <IAggregateRootVersionTableProvider, T>();
     return(this);
 }
예제 #2
0
 /// <summary>
 /// 注册聚合根工厂实现类
 /// </summary>
 public Configuration AggregateRootFactory <T>() where T : class, IAggregateRootFactory
 {
     ObjectContainer.RegisterDefault <IAggregateRootFactory, T>();
     return(this);
 }
예제 #3
0
 /// <summary>
 /// 注册聚合根的可溯源事件的表名提供者
 /// </summary>
 public Configuration SourcableEventTableProvider <T>() where T : class, ISourcableEventTableProvider
 {
     ObjectContainer.RegisterDefault <ISourcableEventTableProvider, T>();
     return(this);
 }
예제 #4
0
 /// <summary>
 /// 注册给定程序集中所有的可溯源事件与其对应聚合根的映射关系
 /// </summary>
 public Configuration RegisterSourcableEventMappings(params Assembly[] assemblies)
 {
     ObjectContainer.Resolve <ISourcableEventTypeProvider>().RegisterMappings(assemblies);
     return(this);
 }
예제 #5
0
 /// <summary>
 /// 注册给定程序集中所有的聚合根事件处理函数
 /// </summary>
 public Configuration RegisterAggregateEventHandlers(params Assembly[] assemblies)
 {
     ObjectContainer.Resolve <IAggregateEventHandlerProvider>().RegisterEventSubscribers(assemblies);
     return(this);
 }
예제 #6
0
 /// <summary>
 /// 注册给定程序集中所有的仓储
 /// </summary>
 public Configuration RegisterRepositories(params Assembly[] assemblies)
 {
     ObjectContainer.RegisterTypes(TypeUtils.IsRepository, assemblies);
     return(this);
 }
예제 #7
0
 /// <summary>
 /// 注册给定程序集中所有的聚合根的类型
 /// </summary>
 public Configuration RegisterAggregateRootTypes(params Assembly[] assemblies)
 {
     ObjectContainer.Resolve <IAggregateRootTypeProvider>().RegisterAggregateRootTypes(assemblies);
     return(this);
 }
예제 #8
0
 /// <summary>
 /// 注册聚合根内部回调函数元数据提供者实现类
 /// </summary>
 public Configuration AggregateRootInternalHandlerProvider <T>() where T : class, IAggregateRootInternalHandlerProvider
 {
     ObjectContainer.RegisterDefault <IAggregateRootInternalHandlerProvider, T>();
     return(this);
 }
예제 #9
0
 /// <summary>
 /// 注册类型与名称映射信息提供者实现类
 /// </summary>
 public Configuration TypeNameMappingProvider <T>() where T : class, ITypeNameMappingProvider
 {
     ObjectContainer.RegisterDefault <ITypeNameMappingProvider, T>();
     return(this);
 }
예제 #10
0
 /// <summary>
 /// 注册Context的生命周期管理器实现类
 /// </summary>
 public Configuration ContextLifetimeManager <T>() where T : class, IContextLifetimeManager
 {
     ObjectContainer.RegisterDefault <IContextLifetimeManager, T>();
     return(this);
 }
예제 #11
0
 /// <summary>
 /// 注册同步事件处理函数提供者实现类
 /// </summary>
 public Configuration SyncEventHandlerProvider <T>() where T : class, ISyncEventHandlerProvider
 {
     ObjectContainer.RegisterDefault <ISyncEventHandlerProvider, T>();
     return(this);
 }
예제 #12
0
 /// <summary>
 /// 注册MessageTransport实现类
 /// </summary>
 public Configuration MessageTransport <T>() where T : class, IMessageTransport
 {
     ObjectContainer.RegisterDefault <IMessageTransport, T>(LifeStyle.Transient);
     return(this);
 }
예제 #13
0
 /// <summary>
 /// 注册事件订阅信息存储器实现类
 /// </summary>
 public Configuration SubscriptionStore <T>() where T : class, ISubscriptionStore
 {
     ObjectContainer.RegisterDefault <ISubscriptionStore, T>();
     return(this);
 }
예제 #14
0
 /// <summary>
 /// 注册消息序列化器实现类
 /// </summary>
 public Configuration MessageSerializer <T>() where T : class, IMessageSerializer
 {
     ObjectContainer.RegisterDefault <IMessageSerializer, T>(LifeStyle.Transient);
     return(this);
 }
예제 #15
0
 /// <summary>
 /// 注册Context事务管理器实现类
 /// </summary>
 public Configuration ContextTransactionManager <T>() where T : class, IContextTransactionManager
 {
     ObjectContainer.RegisterDefault <IContextTransactionManager, T>(LifeStyle.Transient);
     return(this);
 }
예제 #16
0
 /// <summary>
 /// 注册事件类型提供者实现类
 /// </summary>
 public Configuration EventTypeProvider <T>() where T : class, IEventTypeProvider
 {
     ObjectContainer.RegisterDefault <IEventTypeProvider, T>();
     return(this);
 }
예제 #17
0
 /// <summary>
 /// 注册当前可用的数据库事务提供者实现类
 /// </summary>
 public Configuration CurrentDbTransactionProvider <T>() where T : class, ICurrentDbTransactionProvider
 {
     ObjectContainer.RegisterDefault <ICurrentDbTransactionProvider, T>(LifeStyle.Transient);
     return(this);
 }
예제 #18
0
 /// <summary>
 /// 注册SnapshotStore实现类
 /// </summary>
 public Configuration SnapshotStore <T>() where T : class, ISnapshotStore
 {
     ObjectContainer.RegisterDefault <ISnapshotStore, T>(LifeStyle.Transient);
     return(this);
 }
예제 #19
0
 /// <summary>
 /// 注册给定程序集中所有的服务
 /// </summary>
 public Configuration RegisterServices(params Assembly[] assemblies)
 {
     ObjectContainer.RegisterTypes(TypeUtils.IsService, assemblies);
     return(this);
 }
예제 #20
0
 /// <summary>
 /// 注册异步的事件发布者实现类
 /// </summary>
 public Configuration AsyncEventPublisher <T>() where T : class, IAsyncEventPublisher
 {
     ObjectContainer.RegisterDefault <IAsyncEventPublisher, T>();
     return(this);
 }
예제 #21
0
 /// <summary>
 /// 注册给定程序集中所有的可溯源事件
 /// </summary>
 public Configuration RegisterSourcableEvents(params Assembly[] assemblies)
 {
     ObjectContainer.RegisterTypes(TypeUtils.IsSourcableEvent, assemblies);
     return(this);
 }
예제 #22
0
 /// <summary>
 /// 注册异步的事件订阅者端点实现类
 /// </summary>
 public Configuration AsyncEventSubscriberEndpoint <T>() where T : class, IAsyncEventSubscriberEndpoint
 {
     ObjectContainer.RegisterDefault <IAsyncEventSubscriberEndpoint, T>();
     return(this);
 }
예제 #23
0
 /// <summary>
 /// 注册给定程序集中所有的事件订阅者
 /// </summary>
 public Configuration RegisterEventSubscribers(params Assembly[] assemblies)
 {
     ObjectContainer.RegisterTypes(TypeUtils.IsEventSubscriber, assemblies);
     return(this);
 }
예제 #24
0
 /// <summary>
 /// 注册数据库连接工厂实现类
 /// </summary>
 public Configuration DbConnectionFactory <T>() where T : class, IDbConnectionFactory
 {
     ObjectContainer.RegisterDefault <IDbConnectionFactory, T>(LifeStyle.Transient);
     return(this);
 }
예제 #25
0
 /// <summary>
 /// 启动异步事件发布者端点
 /// </summary>
 public Configuration StartAsyncEventPublisherEndpoint()
 {
     ObjectContainer.Resolve <IAsyncEventPublisher>().Start();
     return(this);
 }
예제 #26
0
 /// <summary>
 /// 注册日志记录器工厂实现类
 /// </summary>
 public Configuration LoggerFactory <T>() where T : class, ILoggerFactory
 {
     ObjectContainer.RegisterDefault <ILoggerFactory, T>();
     return(this);
 }