Interface IBreakableModel
Represents a model that can have a broken state
public interface IBreakableModel
Properties
BrokenDisplayName
Gets the display name of this breakable model
string BrokenDisplayName { get; }
Property Value
BrokenState
Gets or sets the broken state of this breakable model, if null this model is not broken.
string? BrokenState { get; set; }
Property Value
BrokenStateException
Gets or sets the exception that caused the broken state
Exception? BrokenStateException { get; set; }
Property Value
Methods
ClearBrokenState(string)
Clears the broken state and exception if BrokenState equals
void ClearBrokenState(string state)
Parameters
statestring
GetBrokenHierarchy()
Returns a list containing all broken models, including self and any children
IEnumerable<IBreakableModel> GetBrokenHierarchy()
Returns
SetBrokenState(string, Exception?)
Sets the broken state to the provided state and optional exception.
void SetBrokenState(string state, Exception? exception)
Parameters
statestringThe state to set the broken state to
exceptionExceptionThe exception that caused the broken state
TryOrBreak(Action, string)
Try to execute the provided action. If the action succeeded the broken state is cleared if it matches
bool TryOrBreak(Action action, string breakMessage)
Parameters
actionActionThe action to attempt to execute
breakMessagestringThe message to clear on succeed or set on failure (exception)
Returns
Events
BrokenStateChanged
Occurs when the broken state of this model changes
event EventHandler BrokenStateChanged