Package com.tnsai.annotations
Annotation Interface Lifecycle
Marks a method as a lifecycle callback for agent initialization and cleanup.
Lifecycle methods are called automatically during agent state transitions.
Usage
public class ResearchAgent extends Agent {
@Lifecycle(phase = Phase.INIT)
public void loadResources() {
// Load configuration, connect to services
}
@Lifecycle(phase = Phase.START, order = 1)
public void connectToDatabase() {
// Establish database connection
}
@Lifecycle(phase = Phase.START, order = 2)
public void warmupCache() {
// Populate cache
}
@Lifecycle(phase = Phase.STOP)
public void cleanup() {
// Release resources
}
@Lifecycle(phase = Phase.ERROR)
public void handleError(Throwable error) {
// Error recovery logic
}
}
Lifecycle Phases
- INIT - Agent instantiation, configuration loading
- START - Agent activation, resource acquisition
- PAUSE - Temporary suspension
- RESUME - Resume from pause
- STOP - Normal shutdown
- DESTROY - Final cleanup, resource release
- ERROR - Error handling callback
- Author:
- TnsAI Team
-
Nested Class Summary
Nested Classes -
Required Element Summary
Required ElementsModifier and TypeRequired ElementDescriptionLifecycle phase this method handles. -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanWhether to run asynchronously.Description of what this lifecycle method does.intExecution order within the same phase.booleanWhether failure should prevent agent startup.intTimeout for lifecycle method execution in milliseconds.
-
Element Details
-
phase
Lifecycle.Phase phaseLifecycle phase this method handles.- Returns:
- lifecycle phase
-
order
int orderExecution order within the same phase.Lower values execute first. Default is 100.
- Returns:
- order value
- Default:
100
-
required
boolean requiredWhether failure should prevent agent startup.Only applies to INIT and START phases.
- Returns:
- true if required for startup
- Default:
true
-
timeout
int timeoutTimeout for lifecycle method execution in milliseconds.0 means no timeout.
- Returns:
- timeout in ms
- Default:
0
-
async
boolean asyncWhether to run asynchronously.- Returns:
- true for async execution
- Default:
false
-
description
String descriptionDescription of what this lifecycle method does.- Returns:
- description
- Default:
""
-