Class ArrayItemDeltaProcessor<V,​E>

  • Type Parameters:
    V - type of value in schema
    E - type of element in DB (can be the same as `V`)
    All Implemented Interfaces:
    ItemDeltaProcessor

    public class ArrayItemDeltaProcessor<V,​E>
    extends FinalValueDeltaProcessor<E>
    Delta processor for multi-value property represented by single array column.
    • Constructor Detail

      • ArrayItemDeltaProcessor

        public ArrayItemDeltaProcessor​(SqaleUpdateContext<?,​Q,​R> context,
                                       Function<Q,​com.querydsl.core.types.dsl.ArrayPath<E[],​E>> rootToQueryItem,
                                       Class<E> elementType,
                                       @Nullable
                                       @Nullable Function<V,​E> conversionFunction)
        Type Parameters:
        Q - entity query type from which the attribute is resolved
        R - row type related to ArrayItemDeltaProcessor
        Parameters:
        elementType - class of ArrayItemDeltaProcessor necessary for array creation
        conversionFunction - optional conversion function, can be null if no conversion is necessary
    • Method Detail

      • setRealValues

        public void setRealValues​(Collection<?> values)
        Description copied from class: ItemDeltaValueProcessor
        Sets the provided real values in the database, implements REPLACE modification. This may involve setting the value of some columns or delete/insert of sub-entities. This is a general case covering both multi-value and single-value items.
        Overrides:
        setRealValues in class ItemDeltaValueProcessor<E>
      • delete

        public void delete()
        Description copied from class: ItemDeltaValueProcessor
        Resets the database columns or deletes sub-entities like refs, containers, etc. This must be implemented to support clearing the columns of single-value embedded containers.
        Specified by:
        delete in class ItemDeltaValueProcessor<E>