package com.ga.external.message;

import com.ga.common.adapter.message.MessageAdapter;
import com.ga.common.adapter.message.MessageRequest;
import com.ga.common.adapter.message.MessageResponse;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Component;

/**
 * NHN Toast SMS / 카카오 알림톡 어댑터 — <b>스켈레톤</b>.
 * <p>
 * 활성 조건: <code>app.adapter.message=toast</code>. 실제 SDK / API 키 등은 미주입 상태.
 * 외부 스펙(인증/엔드포인트/템플릿 코드)이 확정되면 본 클래스의 send 를 구현한다.
 */
@Slf4j
@Component
@ConditionalOnProperty(prefix = "app.adapter", name = "message", havingValue = "toast")
public class ToastMessageAdapter implements MessageAdapter {

    @Override
    public MessageResponse send(MessageRequest request) {
        throw new UnsupportedOperationException(
                "Toast / 카카오 비즈메시지 SDK 통합 미구현 — application.yml 의 app.adapter.message=mock 으로 되돌리거나 본 어댑터를 완성하세요.");
    }
}
