类 EntityEvent<E>

java.lang.Object
org.babyfish.jimmer.sql.event.EntityEvent<E>
所有已实现的接口:
DatabaseEvent

public class EntityEvent<E> extends Object implements DatabaseEvent
  • 嵌套类概要

    嵌套类
    修饰符和类型
    说明
    static enum 
     
  • 构造器概要

    构造器
    构造器
    说明
    EntityEvent(E oldEntity, E newEntity, Connection con, Object reason)
     
  • 方法概要

    修饰符和类型
    方法
    说明
    boolean
     
    <T> @Nullable ChangedRef<T>
    getChangedRef(org.babyfish.jimmer.meta.ImmutableProp prop)
    Get the changed ref of specified property
    <T> @Nullable ChangedRef<T>
    getChangedRef(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
    Get the changed ref of specified property
    @Nullable Connection
    Determine whether the trigger for sending the current event is within a transaction or based on binlog If the event is fired by binlog trigger, returns null If the event is fired by transaction trigger, returns current trigger
    @NotNull Object
     
    @NotNull org.babyfish.jimmer.meta.ImmutableType
     
     
     
    @Nullable Object
     
     
    <T> @Nullable org.babyfish.jimmer.lang.Ref<T>
    getUnchangedRef(org.babyfish.jimmer.meta.ImmutableProp prop)
    Get the unchanged ref of specified property
    <T> @Nullable org.babyfish.jimmer.lang.Ref<T>
    getUnchangedRef(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
    Get the unchanged ref of specified property
    <T> T
    getUnchangedValue(org.babyfish.jimmer.meta.ImmutableProp prop)
    Get the value of specified property if it is not changed.
    <T> T
    getUnchangedValue(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
    Get the value of specified property if it is not changed.
    int
     
    boolean
    isChanged(org.babyfish.jimmer.meta.ImmutableProp prop)
    Is the value of specified property changed.
    boolean
    isChanged(org.babyfish.jimmer.meta.TypedProp<?,?> prop)
    Is the value of specified property changed
     

    从类继承的方法 java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • 构造器详细资料

    • EntityEvent

      public EntityEvent(E oldEntity, E newEntity, Connection con, Object reason)
  • 方法详细资料

    • getOldEntity

      @Nullable public E getOldEntity()
    • getNewEntity

      @Nullable public E getNewEntity()
    • getId

      @NotNull public @NotNull Object getId()
    • isChanged

      public boolean isChanged(org.babyfish.jimmer.meta.ImmutableProp prop)
      从接口复制的说明: DatabaseEvent
      Is the value of specified property changed.
      指定者:
      isChanged 在接口中 DatabaseEvent
      参数:
      prop - The specified property
      返回:
      Is the value of specified property changed
      • If the current event is EntityEvent, returns whether the declaring type of specified property is assignable from the entity type of current event object and whether the value of specified property is changed.
      • If the current event is AssociationEvent returns whether the specified property is AssociationEvent.getImmutableProp()
    • isChanged

      public boolean isChanged(org.babyfish.jimmer.meta.TypedProp<?,?> prop)
      从接口复制的说明: DatabaseEvent
      Is the value of specified property changed
      指定者:
      isChanged 在接口中 DatabaseEvent
      参数:
      prop - The specified property
      返回:
      Is the value of specified property changed
      • If the current event is EntityEvent, returns whether the declaring type of specified property is assignable from the entity type of current event object and whether the value of specified property is changed.
      • If the current event is AssociationEvent returns whether the specified property is AssociationEvent.getImmutableProp()
    • getConnection

      @Nullable public @Nullable Connection getConnection()
      从接口复制的说明: DatabaseEvent
      Determine whether the trigger for sending the current event is within a transaction or based on binlog
      • If the event is fired by binlog trigger, returns null
      • If the event is fired by transaction trigger, returns current trigger

      Notes, If you use jimmer in spring-boot and accept events with `@EventListener`, it will be very important to determine whether this property is null. Because once the `triggerType` of `SqlClient` is set to `BOTH`, the same event will be notified twice.

      指定者:
      getConnection 在接口中 DatabaseEvent
      返回:
      The current connection or null
    • getReason

      @Nullable public @Nullable Object getReason()
      指定者:
      getReason 在接口中 DatabaseEvent
    • getImmutableType

      @NotNull public @NotNull org.babyfish.jimmer.meta.ImmutableType getImmutableType()
    • getType

      @NotNull public @NotNull EntityEvent.Type getType()
    • getUnchangedRef

      @Nullable public <T> @Nullable org.babyfish.jimmer.lang.Ref<T> getUnchangedRef(org.babyfish.jimmer.meta.ImmutableProp prop)
      Get the unchanged ref of specified property
      类型参数:
      T - The return type of specified property
      参数:
      prop - The specified property
      返回:
      If the value of specified property is NOT changed, return a ref object which is the wrapper of unchanged value; otherwise, return null.
      抛出:
      IllegalArgumentException - The declaring type of specified property is not assignable from the entity type of current event object
    • getUnchangedRef

      @Nullable public <T> @Nullable org.babyfish.jimmer.lang.Ref<T> getUnchangedRef(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
      Get the unchanged ref of specified property
      类型参数:
      T - The return type of specified property
      参数:
      prop - The specified property
      返回:
      If the value of specified property is NOT changed, return a ref object which is the wrapper of unchanged value; otherwise, return null.
      抛出:
      IllegalArgumentException - The declaring type of specified property is not assignable from the entity type of current event object
    • getChangedRef

      @Nullable public <T> @Nullable ChangedRef<T> getChangedRef(org.babyfish.jimmer.meta.ImmutableProp prop)
      Get the changed ref of specified property
      类型参数:
      T - The return type of specified property
      参数:
      prop - The specified property
      返回:
      If the value of specified property is NOT changed, return a changed ref object which is a wrapper of both old value and new value; otherwise, return null.
      抛出:
      IllegalArgumentException - The declaring type of specified property is not assignable from the entity type of current event object
    • getChangedRef

      @Nullable public <T> @Nullable ChangedRef<T> getChangedRef(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
      Get the changed ref of specified property
      类型参数:
      T - The return type of specified property
      参数:
      prop - The specified property
      返回:
      If the value of specified property is NOT changed, return a changed ref object which is a wrapper of both old value and new value; otherwise, return null.
      抛出:
      IllegalArgumentException - The declaring type of specified property is not assignable from the entity type of current event object
    • getUnchangedValue

      public <T> T getUnchangedValue(org.babyfish.jimmer.meta.ImmutableProp prop)
      Get the value of specified property if it is not changed.
      类型参数:
      T - The return type of returned property
      参数:
      prop - The specified property
      返回:
      The unchanged value of specified property
      抛出:
      IllegalArgumentException -
      • The declaring type of specified property is not assignable from the entity type of current event object
      • The value of specified property is changed
    • getUnchangedValue

      public <T> T getUnchangedValue(org.babyfish.jimmer.meta.TypedProp.Single<?,T> prop)
      Get the value of specified property if it is not changed.
      类型参数:
      T - The return type of returned property
      参数:
      prop - The specified property
      返回:
      The unchanged value of specified property
      抛出:
      IllegalArgumentException -
      • The declaring type of specified property is not assignable from the entity type of current event object
      • The value of specified property is changed
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 Object
    • equals

      public boolean equals(Object o)
      覆盖:
      equals 在类中 Object
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object