Bug 1010418 - RFE: Refactor jobs scheduled by StartupBean into separate server plugins
Summary: RFE: Refactor jobs scheduled by StartupBean into separate server plugins
Keywords:
Status: NEW
Alias: None
Product: RHQ Project
Classification: Other
Component: Core Server
Version: 4.9
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: Nobody
QA Contact:
URL: https://community.jboss.org/thread/23...
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-09-20 18:14 UTC by Elias Ross
Modified: 2022-03-31 04:28 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description Elias Ross 2013-09-20 18:14:32 UTC
StartupBean.java includes about 15 jobs scheduled into Quartz for execution.

Some of these may be candidates for refactoring as separate server plugins.

Reasons:
1. As the word 'refactoring' suggests, it allows the core startup code to have less explicit dependencies. It also allows the code to be split into multiple modules which are more easily maintained.
2. Allows administrators to stop, pause, or change the frequency of job execution. Some jobs (like the Out-of-band) metrics feature may not used and could be disabled. Calculating baselines may not be used as well.
3. Allows the configuration settings for jobs where necessary. A lot of things are hard-coded, for lack of a way to introduce a setting. It also would allow configuration settings from 'SystemSettings' to be moved to a plugin-specific area.
 
Reasons not to:
1. Certain jobs are not complex to warrant the upkeep of a separate module.
2. Exposing configuration and job control for everything is not as helpful as it is dangerous.
3. Configuration of key settings (data retention) may be taken away from an easy-to-find area and moved to a plugin area.


The other problem is, certain jobs like DataPurgeJob do an awful lot. So in addition, it would make sense to divide jobs into smaller execution steps.


Note You need to log in before you can comment on or make changes to this bug.