-
Notifications
You must be signed in to change notification settings - Fork 179
Lifecycle Management
Randgalt edited this page Feb 20, 2013
·
26 revisions
There is much more to an object’s lifecyle than just allocation via new
. In particular, there is an important anti-pattern regarding letting this
“escape” from a constructor. This page describes the problem in detail.
In Governator, an object can go through a number of steps in its lifecycle. Annotations are available to define methods for these steps. The steps are:
Allocation (via Guice) | v Pre Configuration | v Configuration | V Set Resources | V Post Construction | V Validation and Warm Up | V -- application runs until termination, then... -- | V Pre Destroy
Here are the annotations available:
Annotation | Target | Description |
---|---|---|
@PreConfiguration | Methods | Called prior to Configuration Mapping |
Resource/ Resources |
Classes,Methods,Fields | Called after Configuration Mapping. See http://docs.oracle.com/javaee/5/tutorial/doc/bncbe.html for details. |
@PostConstruct | Methods | Called after Resource setting |
@Min, @Max, etc. | Fields | Processed when LifecycleManager.start() is called. See Field Validation for details. |
@WarmUp | Methods | Called when LifecycleManager.start() is called. Executed in parallel in the background. See Warm Up for details. |
@PreDestroy | Methods | Called when LifecycleManager.close() is called. |
- Home
- Getting Started
- Bootstrapping
- Lifecycle Management
- Auto Binding
- Module-Dependencies
- Warm Up
- Configuration Mapping
- Field Validation
- Lazy Singleton
- Concurrent Singleton
- Generic Binding Annotations
- LifecycleListener
- Governator Phases
- Grapher Integration
- JUnit Testing
- FAQ
- Best Practices
- Spring, PicoContainer, Etc.
- Javadoc
- End-to-End Examples