Versions stable (inachevée mais prête à un déploiement en prod)

This commit is contained in:
DahoudG
2024-12-15 16:35:50 +00:00
parent a276ac2318
commit d2cb9da730
126 changed files with 13559 additions and 631 deletions

View File

@@ -0,0 +1,31 @@
package dev.lions.events;
import dev.lions.events.AnalyticsEvent;
import dev.lions.exceptions.EventPublicationException;
/**
* Interface définissant les opérations de publication des événements analytiques.
* Cette interface fournit les méthodes nécessaires pour publier des événements
* de manière individuelle ou par lot.
*
* @author Lions Dev Team
* @version 1.0
*/
public interface AnalyticsEventPublisher {
/**
* Publie un événement analytique unique.
*
* @param event L'événement à publier
* @throws EventPublicationException Si la publication échoue
*/
void publish(AnalyticsEvent event) throws EventPublicationException;
/**
* Publie un lot d'événements analytiques.
*
* @param events Collection d'événements à publier
* @throws EventPublicationException Si la publication d'un des événements échoue
*/
void publishBatch(Iterable<AnalyticsEvent> events) throws EventPublicationException;
}