Exemplo n.º 1
0
 private static bool IsQueue(EntityPersistentEventType eventType)
 {
     return(eventType == EntityPersistentEventType.AfterCreate ||
            eventType == EntityPersistentEventType.AfterUpdate ||
            eventType == EntityPersistentEventType.AfterRemove ||
            eventType == EntityPersistentEventType.AfterBatch);
 }
Exemplo n.º 2
0
 private static bool IsQueue(EntityPersistentEventType eventType)
 {
     return(false);
     //return eventType == EntityPersistentEventType.AfterCreate ||
     //    eventType == EntityPersistentEventType.AfterUpdate ||
     //    eventType == EntityPersistentEventType.AfterRemove ||
     //    eventType == EntityPersistentEventType.AfterBatch;
 }
        public static bool Publish <TEntity>(EntityPersistentEventType eventType)
        {
            var _event  = new EntityEventTypeArgs(eventType);
            var subject = new EntityPersistentSubject(typeof(TEntity), eventType, _event);

            SynchronizedSubscribeManager.Instance.Publish(subject);

            return(!_event.Cancel);
        }
        public static bool Publish(IEntity entity, EntityPersistentEventType eventType)
        {
            var _event  = new EntityEventArgs(entity, eventType);
            var subject = new EntityPersistentSubject(entity.EntityType, eventType, _event);

            SynchronizedSubscribeManager.Instance.Publish(subject);

            return(!_event.Cancel);
        }
Exemplo n.º 5
0
 public EntityEventArgs(IEntity entity, EntityPersistentEventType eventType)
     : base(entity.EntityType, eventType)
 {
     Entity = entity;
 }
Exemplo n.º 6
0
 public EntityEventTypeArgs(Type entityType, EntityPersistentEventType eventType)
 {
     EntityType = entityType;
     EventType  = eventType;
 }
Exemplo n.º 7
0
 public static void RaiseEvent(object[] arguments, EntityPersistentEventType eventType)
 {
     SubscribeManager.Publish <EntityPersistentSubject>(arguments, eventType);
 }
Exemplo n.º 8
0
        public static void Publish <TEntity>(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType)
        {
            var subject = new EntityPersistentSubject(typeof(TEntity), eventType, new EntitiesArgs(entities, operType, eventType));

            DefaultSubscribeManager.Instance.Publish(subject);
        }
Exemplo n.º 9
0
 public static void RaiseEvent <TEntity>(EntityPersistentEventType eventType)
 {
     SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntityEventTypeArgs(typeof(TEntity), eventType));
 }
 public EntitiesArgs(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType)
     : base(eventType)
 {
     Entities = entities;
     OperType = operType;
 }
 public EntityEventTypeArgs(EntityPersistentEventType eventType)
 {
     EventType = eventType;
 }
        public static bool Publish <TEntity>(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType)
        {
            var _event  = new EntitiesArgs(entities, operType, eventType);
            var subject = new EntityPersistentSubject(typeof(TEntity), eventType, _event);

            SynchronizedSubscribeManager.Instance.Publish(subject);

            return(!_event.Cancel);
        }
Exemplo n.º 13
0
        public static void Publish(IEntity entity, EntityPersistentEventType eventType)
        {
            var subject = new EntityPersistentSubject(entity.EntityType, eventType, new EntityEventArgs(entity, eventType));

            DefaultSubscribeManager.Instance.Publish(subject);
        }
Exemplo n.º 14
0
        public static void Publish <TEntity>(EntityPersistentEventType eventType)
        {
            var subject = new EntityPersistentSubject(typeof(TEntity), eventType, new EntityEventTypeArgs(eventType));

            DefaultSubscribeManager.Instance.Publish(subject);
        }
Exemplo n.º 15
0
 public EntitiesArgs(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType)
     : base(entities.FirstOrDefault().EntityType, eventType)
 {
     Entities = entities;
     OperType = operType;
 }
Exemplo n.º 16
0
 public static void RaiseEvent(IEntity entity, EntityPersistentEventType eventType)
 {
     SubscribeManager.Publish <EntityPersistentSubject>(entity, eventType);
 }
Exemplo n.º 17
0
 public static void RaiseEvent(IEnumerable <IEntity> entities, EntityPersistentOperater operType, EntityPersistentEventType eventType)
 {
     SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntitiesArgs(entities, operType, eventType));
 }
Exemplo n.º 18
0
 public static void OnAfterBatch(IEnumerable <IEntity> entities, EntityPersistentEventType eventType)
 {
     Guard.ArgumentNull(entities, "entity");
     RaiseEvent(new object[] { entities, eventType }, EntityPersistentEventType.AfterBatch);
 }
Exemplo n.º 19
0
 public static void RaiseEvent(IEntity entity, EntityPersistentEventType eventType)
 {
     SubscribeManager.Publish <EntityPersistentSubject>(IsQueue(eventType), new EntityEventArgs(entity, eventType));
 }
Exemplo n.º 20
0
 /// <summary>
 /// 初始化 <see cref="EntityPersistentSubject"/> 类的新实例。
 /// </summary>
 /// <param name="entityType">实体类型。</param>
 /// <param name="eventType">持久化事件类型。</param>
 /// <param name="argument"></param>
 public EntityPersistentSubject(Type entityType, EntityPersistentEventType eventType, object argument)
 {
     EntityType = entityType;
     EventType  = eventType;
     Argument   = argument;
 }