@Override
    @Transactional(readOnly = true, value = TRANSACTION_MANAGER_EVENTS)
    public Stream<? extends CasEvent> load(final ZonedDateTime dateTime) {
        val sql = SELECT_QUERY.concat("where r.creationTime >= :creationTime");
        val query = entityManager.createQuery(sql, JpaCasEvent.class)
            .setParameter(CREATION_TIME_PARAM, dateTime.toInstant());
        query.setLockMode(LockModeType.NONE);
        return jpaBeanFactory
            .streamQuery(query)
            .map(JpaCasEvent.class::cast);
    }
This is {@link JpaCasEventRepository} that stores event data into a RDBMS database.

@author Misagh Moayyed
@since 5.0.0
support/cas-server-support-events-jpa/src/main/java/org/apereo/cas/support/events/jpa/JpaCasEventRepository.java