Bug 4395

Summary: Apply "State Pattern" to RT stepping mechanism
Product: frysk Reporter: Mike Cvet <mcvet>
Component: generalAssignee: Mike Cvet <mcvet>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Host: Target:
Build: Last reconfirmed:
Bug Depends on:    
Bug Blocks: 2935, 3346    

Description Mike Cvet 2007-04-18 18:58:31 UTC
Remove switch-based stepping machine and implement state-class based engine 
instead.
Comment 1 Mike Cvet 2007-04-19 19:43:35 UTC
frysk-core/frysk/rt:
2007-04-19  Mike Cvet  <mcvet@redhat.com>

	* RunState.java: Removed, via #4395. Most of logic moved to
	SteppingEngine.java.
	* SteppingEngine.java: Added. Fixes #4395.
	(SteppingBreakpoint): Added.
	(ThreadLifeObserver): Moved over from RunState.java.
	(SteppingObserver): Added.
	* TaskStepEngine.java: Added.
	* TestSteppingEngine.java: Added. Logic moved over from
	TestRunState.java.
	* TestStepping.java: Fixups for RunState -> SteppingEngine move.
	* TestRunState.java: Removed.
	* TestStackBacktrace.java: Fixups for the RunState -> SteppingEngine
	move. 
	* BreakpointObserver.java: Ditto.
	* LineBreakpoint.java: Ditto.
	* Breakpoint.java: Added. 
	(PersistentBreakpoint): Added.
	* SourceBreakpoint.java: Fixups for RunState -> SteppingEngine move,
	and PersistantBreakpoint move to Breakpoint.java.
	* states/InstructionStepState.java: Added.
	* states/LineStepState.java: Added.
	* states/NextInstructionStepState.java: Added.
	* states/NextInstructionStepTestState.java: Added.
	* states/RunningState.java: Added.
	* states/State.java: Added.
	* states/StepAdvanceState.java: Added.
	* states/StepOutState.java: Added.
	* states/StepOverState.java: Added.
	* states/StepOverTestState.java: Added.
	* states/StoppedState.java: Added.

frysk-core/frysk/hpd:
2007-04-19  Mike Cvet  <mcvet@redhat.com>

	* hpd/CLI.java: General fixes for RunState -> SteppingEngine move.
	(steppingObserver): Renamed from runStateObserver.
	(ListHandler.handle): No-debuginfo exception fix.
	(SteppingObserver): Renamed from RunStateObserver.
	(SteppingObserver.update): Return if argument is null.
	(getRunState): Removed.
	* hpd/BreakpointHandler.java: SteppingEngine fixes.
	* hpd/FunctionBreakpointAdapter.java: Ditto.
	* hpd/LineBreakpointAdapter.java: Ditto.

frysk-gui/frysk/gui/srcwin:
2007-04-19  Mike Cvet  <mcvet@redhat.com>

	* SourceView.java (SourceViewListener.mouseMotionEvent): Call 
	SourceWindow.isRunning().
	* SourceWindowFactory.java: General SteppingEngine fixups.
	* SourceWindow.java: Ditto.

frysk-gui/frysk/gui:
2007-04-19  Mike Cvet  <mcvet@redhat.com>

	* disassembler/DisassemblyWindowFactory.java: SteppingEngine fixes.
	* memory/MemoryWindowFactory.java: Ditto.
	* register/RegisterWindowFactory.java: Ditto.