package click.kamil.springstatemachineexporter.analysis.enricher.routing;

import click.kamil.springstatemachineexporter.analysis.model.CallChain;
import click.kamil.springstatemachineexporter.ast.common.CodebaseContext;
import click.kamil.springstatemachineexporter.model.Transition;

import java.util.List;

public interface BeanResolutionEngine {
    boolean isRoutedToCorrectMachine(CallChain chain, String currentMachineName, CodebaseContext context);

    default boolean hasProvenMachineAffinity(
            CallChain chain,
            String currentMachineName,
            CodebaseContext context,
            List<Transition> machineTransitions) {
        return isRoutedToCorrectMachine(chain, currentMachineName, context);
    }
}

