using Admin.Interfaces.Commands; using Admin.Interfaces.ModelBuilders; using Admin.Models.Suspense; using log4net; using System; namespace Admin.Controllers { public class SuspenseControllerDependencies : BaseControllerDependencies, ISuspenseControllerDependencies { public SuspenseControllerDependencies( ILog log , IModelBuilder detailsViewModelBuilder , IModelBuilder listViewModelBuilder , IModelBuilder journalViewModelBuilder , IModelCommand journalCommand , IModelCommand saveNoteCommand) : base(log) { DetailsViewModelBuilder = detailsViewModelBuilder ?? throw new ArgumentNullException("detailsViewModelBuilder"); ListViewModelBuilder = listViewModelBuilder ?? throw new ArgumentNullException("listViewModelBuilder"); JournalViewModelBuilder = journalViewModelBuilder ?? throw new ArgumentNullException("journalViewModelBuilder"); JournalCommand = journalCommand ?? throw new ArgumentNullException("journalCommand"); SaveNoteCommand = saveNoteCommand ?? throw new ArgumentNullException("saveNoteCommand"); } #region ModelBuiders public IModelBuilder DetailsViewModelBuilder { get; private set; } public IModelBuilder ListViewModelBuilder { get; private set; } public IModelBuilder JournalViewModelBuilder { get; private set; } #endregion #region ModelCommands public IModelCommand JournalCommand { get; private set; } public IModelCommand SaveNoteCommand { get; private set; } #endregion } }