# ThrottledTranslationEngineAdapter.java

    package com.yumu.noveltranslator.adapter.out.translate;

    import com.yumu.noveltranslator.port.out.TranslationEnginePort;
    import lombok.RequiredArgsConstructor;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.stereotype.Component;

    /**
     * TranslationEnginePort adapter that delegates to UserLevelThrottledTranslationClient.
     * Provides the simple translate(text, sourceLang, targetLang, engine) interface
     * while leveraging the existing rate limiting, round-robin, and fallback logic.
     */
    @Component
    @RequiredArgsConstructor
    @Slf4j
    public class ThrottledTranslationEngineAdapter implements TranslationEnginePort {

        private final UserLevelThrottledTranslationClient throttledClient;

        @Override
        public String translate(String text, String sourceLang, String targetLang, String engine) {
            return throttledClient.translate(text, targetLang, engine, false);
        }

        @Override
        public boolean isHealthy(String engine) {
            return throttledClient != null;
        }
    }