<?php

namespace Yajny\Member\FraudDetection\Actions;

use Yajny\Member\FraudDetection\Utils\FraudDetectionActionsUtil;
use Yajny\Member\Models\FraudRule;

class FraudDetectionActionApplier
{
    /** @var FraudRule $fraudRule */
    private $fraudRule;

    public function __construct(FraudRule $fraudRule)
    {
        $this->fraudRule = $fraudRule;
    }

    public function applyRuleAction($userIDs): bool
    {
        $fraudDetectionRuleActionClass = FraudDetectionActionsUtil::getFraudDetectionActionClass($this->fraudRule->action);
        return $fraudDetectionRuleActionClass->apply($userIDs);
    }
}