package com.unicorn.hgzero.user.service;

import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.stereotype.Service;

/**
 * No-Op 이벤트 발행 서비스
 * EventHub가 설정되지 않은 경우 사용되는 기본 구현체
 */
@Slf4j
@Service
@ConditionalOnMissingBean(EventPublishServiceImpl.class)
public class NoOpEventPublishService implements EventPublishService {

    @Override
    public void publishLoginEvent(String userId, String username, long timestamp) {
        log.debug("EventHub 미설정으로 로그인 이벤트 발행 건너뜀: userId={}", userId);
    }

    @Override
    public void publishLogoutEvent(String userId, long timestamp) {
        log.debug("EventHub 미설정으로 로그아웃 이벤트 발행 건너뜀: userId={}", userId);
    }

    @Override
    public void publishTokenRefreshEvent(String userId, long timestamp) {
        log.debug("EventHub 미설정으로 토큰 갱신 이벤트 발행 건너뜀: userId={}", userId);
    }
}