Interface AuditReader

    • Method Detail

      • getLogEntriesFor

        default List<LogEntry> getLogEntriesFor​(String uuid,
                                                String repositoryId)
        Returns the logs given a doc uuid and a repository id.
        Parameters:
        uuid - the document uuid
        repositoryId - the repository id
        Returns:
        a list of log entries
        Since:
        8.4
      • getLogEntriesFor

        @Deprecated
        List<LogEntry> getLogEntriesFor​(String uuid,
                                        Map<String,​FilterMapEntry> filterMap,
                                        boolean doDefaultSort)
        Deprecated.
        since 9.3, this method doesn't take into account the document repository, use queryLogs(QueryBuilder) instead.
        Returns the logs given a doc uuid, a map of filters and a default sort.
        Parameters:
        uuid - the document uuid
        filterMap - the map of filters to apply
        doDefaultSort - the default sort to set (eventDate desc)
        Returns:
        a list of log entries
      • getLogEntryByID

        LogEntry getLogEntryByID​(long id)
        Returns a given log entry given its id.
        Parameters:
        id - the log entry identifier
        Returns:
        a LogEntry instance
      • queryLogs

        List<LogEntry> queryLogs​(QueryBuilder builder)
        Returns the logs given a collection of predicates and a default sort.
        Parameters:
        builder - the query builder to fetch log entries
        Returns:
        a list of log entries
        Since:
        9.3
      • queryLogs

        default List<LogEntry> queryLogs​(String[] eventIds,
                                         String dateRange)
        Returns the list of log entries.

        Note we will use NXQL in the future when the search engine will index history.

        Parameters:
        eventIds - the event ids.
        dateRange - a preset date range.
        Returns:
        a list of log entries.
        See Also:
        DateRangeQueryConstants
      • queryLogsByPage

        default List<LogEntry> queryLogsByPage​(String[] eventIds,
                                               String dateRange,
                                               String category,
                                               String path,
                                               int pageNb,
                                               int pageSize)
        Returns the batched list of log entries.

        Note we will use NXQL in the future when the search engine will index history.

        Parameters:
        eventIds - the event ids.
        dateRange - a preset date range.
        category - add filter on events category
        path - add filter on document path
        pageNb - page number (ignore if <=1)
        pageSize - number of results per page
        Returns:
        a list of log entries.
        See Also:
        DateRangeQueryConstants
      • queryLogsByPage

        default List<LogEntry> queryLogsByPage​(String[] eventIds,
                                               Date limit,
                                               String category,
                                               String path,
                                               int pageNb,
                                               int pageSize)
        Returns the batched list of log entries.

        Note we will use NXQL in the future when the search engine will index history.

        Parameters:
        eventIds - the event ids.
        limit - filter events by date from limit to now
        category - add filter on events category
        path - add filter on document path
        pageNb - page number (ignore if <=1)
        pageSize - number of results per page
        Returns:
        a list of log entries.
        See Also:
        DateRangeQueryConstants
      • nativeQueryLogs

        default List<LogEntry> nativeQueryLogs​(String whereClause,
                                               int pageNb,
                                               int pageSize)
        Returns a batched list of log entries. WhereClause is a native where clause for the backend: here EJBQL 3.0 must be used if implementation of audit backend is JPA (< 7.3 or audit.elasticsearch.enabled=false) and JSON if implementation is Elasticsearch.
      • nativeQuery

        default List<?> nativeQuery​(String query,
                                    int pageNb,
                                    int pageSize)
        Returns a batched list of entries. query string is a native query clause for the backend : here EJBQL 3.0 must be used if implementation of audit backend is JPA (< 7.3 or audit.elasticsearch.enabled=false) and JSON if implementation is Elasticsearch.
      • nativeQuery

        List<?> nativeQuery​(String query,
                            Map<String,​Object> params,
                            int pageNb,
                            int pageSize)
        Returns a batched list of entries.
        Parameters:
        query - a JPA query language query if implementation of audit backend is JPA (< 7.3 or audit.elasticsearch.enabled=false) and JSON if implementation is Elasticsearch
        params - parameters for the query
        pageNb - the page number (starts at 1)
        pageSize - the number of results per page
      • getLatestLogId

        long getLatestLogId​(String repositoryId,
                            String... eventIds)
        Returns the latest log id matching events and repository or 0 when no match found.
        Since:
        9.3
      • getLogEntriesAfter

        List<LogEntry> getLogEntriesAfter​(long logIdOffset,
                                          int limit,
                                          String repositoryId,
                                          String... eventIds)
        Returns up to limit log entries matching events and repository with log id greater or equal to logIdOffset.
        Since:
        9.3