Versions stable (inachevée mais prête à un déploiement en prod)
This commit is contained in:
31
src/main/java/dev/lions/events/AnalyticsEventPublisher.java
Normal file
31
src/main/java/dev/lions/events/AnalyticsEventPublisher.java
Normal 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;
|
||||
}
|
||||
Reference in New Issue
Block a user