-
Task
-
Resolution: Done
-
Major
-
None
-
None
-
None
-
Medium
ServiceListener has become too complex to sustain. We should come up with a way to expose the transitions and/or substates publicly as enums and have a single (or reduced number of) listener methods on the interface. This also may allow us to add more states more easily in the future if needed. Some things to consider:
- Have an attribute on the substate enum which reflects whether the state is "stable" (aka will not be left without human intervention, like "UP" or "WONT_START")
- Enumerate the possible transitions from each substate?
- Make the source/target substates available from each transition
- Would we expose Substate.NEW? How?
- Determine the fate of the "transitiveDep" methods which may now be obsolete due to the PROBLEM substate