Class DmlEventAdapter

  • Direct Known Subclasses:
    SelectLobLocatorEventAdapter

    @ProtoAdapter(DmlEvent.class)
    public class DmlEventAdapter
    extends LogMinerEventAdapter
    An Infinispan ProtoStream adapter to marshall DmlEvent instances. This class defines a factory for creating DmlEvent instances when hydrating records from the persisted datastore as well as field handlers to extract values to be marshalled to the protocol buffer stream. The underlying protocol buffer record consists of the following structure:
         message DmlEvent {
             // structure of the super type, LogMinerEventAdapter
             required LogMinerDmlEntryImpl entry = 7;
         }
     
    Author:
    Chris Cranford
    • Constructor Detail

      • DmlEventAdapter

        public DmlEventAdapter()
    • Method Detail

      • factory

        @ProtoFactory
        public DmlEvent factory​(int eventType,
                                String scn,
                                String tableId,
                                String rowId,
                                String rsId,
                                String changeTime,
                                LogMinerDmlEntryImpl entry)
        A ProtoStream factory that creates DmlEvent instances.
        Parameters:
        eventType - the event type
        scn - the system change number, must not be null
        tableId - the fully-qualified table name
        rowId - the Oracle row-id the change is associated with
        rsId - the Oracle rollback segment identifier
        changeTime - the time the change occurred
        entry - the parsed SQL statement entry
        Returns:
        the constructed DmlEvent
      • getEntry

        @ProtoField(number=7,
                    required=true)
        public LogMinerDmlEntryImpl getEntry​(DmlEvent event)
        A ProtoStream handler to extract the entry field from the DmlEvent.
        Parameters:
        event - the event instance, must not be null
        Returns:
        the LogMinerDmlEntryImpl instance