Index: Ringtoets/Common/src/Ringtoets.Common.Forms/PresentationObjects/InputContextBase.cs =================================================================== diff -u --- Ringtoets/Common/src/Ringtoets.Common.Forms/PresentationObjects/InputContextBase.cs (revision 0) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/PresentationObjects/InputContextBase.cs (revision ae2a0c4541ca16857b307834e4ba8159e596ab28) @@ -0,0 +1,64 @@ +// Copyright (C) Stichting Deltares 2016. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . +// +// All names, logos, and references to "Deltares" are registered trademarks of +// Stichting Deltares and remain full property of Stichting Deltares at all times. +// All rights reserved. + +using System; +using Ringtoets.Common.Data.AssessmentSection; +using Ringtoets.Common.Data.Calculation; +using Ringtoets.Common.Data.FailureMechanism; + +namespace Ringtoets.Common.Forms.PresentationObjects +{ + /// + /// Presentation object for all data required to configure calculation input. + /// + /// The type of calculation input wrapped by the context object. + /// The type of the calculation containing the calculation input. + /// The type of the failure mechanism which the context belongs to. + public abstract class InputContextBase : FailureMechanismItemContextBase + where TInput : ICalculationInput + where TCalculation : ICalculation + where TFailureMechanism : IFailureMechanism + { + /// + /// Initializes a new instance of the class. + /// + /// The calculation input wrapped by the context object. + /// The calculation containing the calculation input. + /// The failure mechanism which the context belongs to. + /// The assessment section which the context belongs to. + /// When any input argument is null. + protected InputContextBase(TInput wrappedData, TCalculation calculation, TFailureMechanism failureMechanism, IAssessmentSection assessmentSection) + : base(wrappedData, failureMechanism, assessmentSection) + { + if (calculation == null) + { + throw new ArgumentNullException("calculation"); + } + + Calculation = calculation; + } + + /// + /// Gets the calculation item which the context belongs to. + /// + public ICalculation Calculation { get; private set; } + } +} \ No newline at end of file Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj =================================================================== diff -u -rca23b1b155ca87c0aa4665fd919727570f31c781 -rae2a0c4541ca16857b307834e4ba8159e596ab28 --- Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj (.../Ringtoets.Common.Forms.csproj) (revision ca23b1b155ca87c0aa4665fd919727570f31c781) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Ringtoets.Common.Forms.csproj (.../Ringtoets.Common.Forms.csproj) (revision ae2a0c4541ca16857b307834e4ba8159e596ab28) @@ -62,6 +62,7 @@ +