Class AbstractMonitorValuesProvider

    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.List<? extends java.io.Serializable> getValues​(SessionConfig sessionConfig, IMonitorField field, ITransaction transaction)
      Returns the values for the given field.
      If this value provider does not provide values for the given field, it must return null.
      Note that returning a null value is not the same as returning an empty list.
      protected abstract java.util.Map<java.lang.String,​java.util.List<? extends java.io.Serializable>> initValues​(SessionConfig sessionConfig, ITransaction transaction)
      Initializes the monitoring values map.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AbstractMonitorValuesProvider

        public AbstractMonitorValuesProvider()
    • Method Detail

      • getValues

        public java.util.List<? extends java.io.Serializable> getValues​(SessionConfig sessionConfig,
                                                                        IMonitorField field,
                                                                        ITransaction transaction)
                                                                 throws java.lang.Exception
        Description copied from interface: IMonitorValuesProvider
        Returns the values for the given field.
        If this value provider does not provide values for the given field, it must return null.
        Note that returning a null value is not the same as returning an empty list. When returning an empty list, it is implied that the field has an explicit null value. When a null value is returned, then other value providers will be called. If a non-null value is returned (even an empty list), then other value providers will not be called. Any null value or empty string in the returned list will be ignored, meaning that a list with only null or empty strings will be considered an empty list.

        It is important to notice also that the given session config is not the session of the user that generated the monitoring event. Instead, it is a system user session.
        As well as session config, the given transaction is not related to the transaction that generated the event (if any).

        Specified by:
        getValues in interface IMonitorValuesProvider
        Parameters:
        sessionConfig - the current session.
        field - the desired field.
        transaction - the current transaction.
        Returns:
        the values for the desired field.
        Throws:
        java.lang.Exception - if some error occur.
      • initValues

        protected abstract java.util.Map<java.lang.String,​java.util.List<? extends java.io.Serializable>> initValues​(SessionConfig sessionConfig,
                                                                                                                           ITransaction transaction)
                                                                                                                    throws java.lang.Exception
        Initializes the monitoring values map. This method will only be called once and the results will be cached. The implementations must not return null. If no value is present, an empty map should be returned instead. Also, any null value in a list will be ignored, meaning that a list with only null will be considered a empty list.
        Parameters:
        sessionConfig - the session config.
        transaction - the transaction.
        Returns:
        the monitoring data map.
        Throws:
        java.lang.Exception
        Since:
        9.0.0