BasicTextAnalysisServiceImpl.java
package com.kapil.verbametrics.services.impl;
import com.kapil.verbametrics.dto.TextAnalysisRequest;
import com.kapil.verbametrics.dto.TextAnalysisResponse;
import com.kapil.verbametrics.services.BasicTextAnalysisService;
import com.kapil.verbametrics.services.engines.BasicTextAnalysisEngine;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* Implementation of BasicTextAnalysisService using BasicTextAnalysisEngine.
* Provides functionality to analyze text and return basic statistics.
*
* @author Kapil Garg
*/
@Service
public class BasicTextAnalysisServiceImpl implements BasicTextAnalysisService {
private final BasicTextAnalysisEngine analysisEngine;
@Autowired
public BasicTextAnalysisServiceImpl(BasicTextAnalysisEngine analysisEngine) {
this.analysisEngine = analysisEngine;
}
@Override
public TextAnalysisResponse analyzeText(TextAnalysisRequest request) {
Objects.requireNonNull(request, "Request cannot be null");
return analysisEngine.analyze(request);
}
}