Class ItemProcessingRequest<I>

  • All Implemented Interfaces:
    Direct Known Subclasses:
    ObjectProcessingRequest, SyncItemProcessingRequest

    public abstract class ItemProcessingRequest<I>
    extends Object
    implements AcknowledgementSink

    Holds an item that is scheduled for processing.

    Besides the item itself it provides so called correlation value that is used to correctly order requests that relate to the same midPoint or resource object - for example, two async changes related to a given account.

    • Field Detail

      • item

        protected final I item
      • identifier

        protected final @NotNull String identifier
        Unique identifier of this request. Not to be confused with requestIdentifier used for auditing purposes! Most probably it will be replaced by something different.
    • Constructor Detail

      • ItemProcessingRequest

        public ItemProcessingRequest​(@NotNull
                                     I item,
                                     @NotNull AbstractIterativeItemProcessor<I,​?,​?,​?,​?> itemProcessor)
    • Method Detail

      • getItem

        public I getItem()
      • getOperationExecutionRecordingTarget

        public abstract OperationExecutionRecorderForTasks.Target getOperationExecutionRecordingTarget()
        Object to which we will write an operation execution record (plus auxiliary information).
      • getObjectOidToRecordRetryTrigger

        public abstract String getObjectOidToRecordRetryTrigger()
        OID of object to which we put a trigger causing operation retry (if known)
      • getIterationItemInformation

        public abstract @NotNull IterationItemInformation getIterationItemInformation()
      • getPrismContext

        protected PrismContext getPrismContext()
      • getRootTaskOid

        protected @NotNull String getRootTaskOid()
      • getType

        protected @NotNull QName getType​(PrismObject<?> object)
      • getItemOid

        public abstract @Nullable String getItemOid()
        OID of the object connected to the item being processed (usually the object itself or related shadow). TODO reconsider
      • getSynchronizationSituationOnProcessingStart

        public abstract @Nullable SynchronizationSituationType getSynchronizationSituationOnProcessingStart()
        TODO reconsider
      • getIdentifier

        public String getIdentifier()