using System;
using System.Collections.Generic;
using Core.Common.Base;
using Ringtoets.Common.Data.FailureMechanism;
namespace Ringtoets.Common.Forms.PropertyClasses
{
///
/// Interface for an object that can properly handle data model changes due to a change of a
/// failure mechanism property.
///
public interface IFailureMechanismPropertyChangeHandler
{
///
/// Checks to see if the replacement of the norm variable of the assessment section
/// should occur or not.
///
/// true if the change should occur, false otherwise.
bool ConfirmPropertyChange();
///
/// propagates the necessary changes to underlying data structure when a property has
/// been changed for a failure mechanism.
///
/// The section to be updated.
/// All objects that have been affected by the change.
/// Thrown when
/// is null.
IEnumerable PropertyChanged(IFailureMechanism failureMechanism);
}
}