95
/// Gets or sets a value indicating whether this <see cref="Mono.Debugging.Client.BreakEvent"/> is enabled.
98
/// <c>true</c> if enabled; otherwise, <c>false</c>.
101
/// Changes in this property are automatically applied. There is no need to call CommitChanges().
94
103
public bool Enabled {
97
throw new InvalidOperationException ();
102
throw new InvalidOperationException ();
103
if (store.IsReadOnly)
108
if (store != null && store.IsReadOnly)
106
store.EnableBreakEvent (this, value);
112
store.EnableBreakEvent (this, value);
110
public bool IsValid (DebuggerSession session)
113
throw new InvalidOperationException ();
116
return session.IsBreakEventValid (this);
117
/// Gets the status of the break event
120
/// The status of the break event for the given debug session
122
/// <param name='session'>
123
/// Session for which to get the status of the break event
125
public BreakEventStatus GetStatus (DebuggerSession session)
127
if (store == null || session == null)
128
return BreakEventStatus.Disconnected;
129
return session.GetBreakEventStatus (this);
133
/// Gets a message describing the status of the break event
136
/// The status message of the break event for the given debug session
138
/// <param name='session'>
139
/// Session for which to get the status message of the break event
141
public string GetStatusMessage (DebuggerSession session)
143
if (store == null || session == null)
145
return session.GetBreakEventStatusMessage (this);
149
/// Gets or sets the expression to be traced when the breakpoint is hit
152
/// If this break event is hit and the HitAction is TraceExpression, the debugger
153
/// will evaluate and print the value of this property.
154
/// The CommitChanges() method has to be called for changes in this
155
/// property to take effect.
119
157
public string TraceExpression {
121
159
return traceExpression;
167
/// Gets or sets the action to be performed when the breakpoint is hit
170
/// If the value is Break, the debugger will pause the execution.
171
/// If the value is PrintExpression, the debugger will evaluate and
172
/// print the value of the TraceExpression property.
173
/// If the value is CustomAction, the debugger will execute the
174
/// CustomBreakEventHitHandler callback specified in DebuggerSession,
175
/// and will provide the value of CustomActionId as argument.
176
/// The CommitChanges() method has to be called for changes in this
177
/// property to take effect.
128
179
public HitAction HitAction {
130
181
return hitAction;
133
184
hitAction = value;
189
/// Gets or sets the custom action identifier.
192
/// If this break event is hit and the value of HitAction is CustomAction,
193
/// the debugger will execute the CustomBreakEventHitHandler callback
194
/// specified in DebuggerSession, and will provide the value of this property
196
/// The CommitChanges() method has to be called for changes in this
197
/// property to take effect.
137
199
public string CustomActionId {
139
201
return customActionId;
218
/// Gets or sets the hit count.
221
/// When the break event is hit, if the value of this propery is greater than 0 then
222
/// the value will be decremented and execution will be immediately resumed.
223
/// The CommitChanges() method has to be called for changes in this
224
/// property to take effect.
155
226
public int HitCount {
182
265
store.NotifyBreakEventUpdated (this);
269
/// Clone this instance.
185
271
public BreakEvent Clone ()
187
273
return (BreakEvent) MemberwiseClone ();
277
/// Makes a copy of this instance
279
/// <param name='ev'>
280
/// A break event from which to copy the data.
190
282
public virtual void CopyFrom (BreakEvent ev)
192
284
hitAction = ev.hitAction;