package eu.eudat.logic.services.utilities;

import eu.eudat.logic.services.forms.VisibilityRuleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * Created by ikalyvas on 3/1/2018.
 */
@Service("utilitiesService")
public class UtilitiesServiceImpl implements UtilitiesService {

    private InvitationService invitationService;
    private MailService mailService;
    private VisibilityRuleService visibilityRuleService;
    private ConfirmationEmailService confirmationEmailService;

    @Autowired
    public UtilitiesServiceImpl(InvitationService invitationService, MailService mailService, VisibilityRuleService visibilityRuleService, ConfirmationEmailService confirmationEmailService) {
        this.invitationService = invitationService;
        this.mailService = mailService;
        this.visibilityRuleService = visibilityRuleService;
        this.confirmationEmailService = confirmationEmailService;
    }

    @Override
    public VisibilityRuleService getVisibilityRuleService() {
        return visibilityRuleService;
    }

    @Override
    public ConfirmationEmailService getConfirmationEmailService() {
        return confirmationEmailService;
    }

    @Override
    public InvitationService getInvitationService() {
        return invitationService;
    }

    @Override
    public MailService getMailService() {
        return mailService;
    }
}
