class DetectionFilterChain {

    public void doFilter(@NonNull DetectorRequest request, @NonNull DetectorResponse response) {
        if (!filtersIterator.hasNext()) {
            val result = detector.detect(request.getMetricData());
            response.setDetectorResult(result);
        } else {
            DetectionFilter f = filtersIterator.next();
            f.doFilter(request, response, this);
        }
    }

    public  DetectionFilterChain(DetectorContainer detectorContainer);

}