Skip to content

io microsphere spring context lifecycle AbstractSmartLifecycle

github-actions[bot] edited this page Jun 18, 2026 · 18 revisions

AbstractSmartLifecycle

Type: Class | Module: microsphere-spring-context | Package: io.microsphere.spring.context.lifecycle | Since: 1.0.0

Source: microsphere-spring-context/src/main/java/io/microsphere/spring/context/lifecycle/AbstractSmartLifecycle.java

Overview

Abstract base class for implementing SmartLifecycle strategies.

This class provides a skeletal implementation of the SmartLifecycle interface, making it easier to create custom lifecycle beans with specific startup and shutdown logic.

Key Features

- Centralizes common lifecycle state management.
- Offers phase-based control for startup and shutdown order.
- Ensures consistent lifecycle behavior across implementations.

Example Usage

{@code
public class MyCustomLifecycle extends AbstractSmartLifecycle {
    private boolean running = false;

### Declaration

```java
public abstract class AbstractSmartLifecycle implements SmartLifecycle
```

**Author:** Mercy

## Version Information

- **Introduced in:** `1.0.0`
- **Current Project Version:** `0.2.27-SNAPSHOT`

## Version Compatibility

This component is tested and compatible with the following Java versions:

| Java Version | Status |
|:---:|:---:|
| Java 17 | ✅ Compatible |
| Java 21 | ✅ Compatible |
| Java 25 | ✅ Compatible |

## Examples

```java
public class MyCustomLifecycle extends AbstractSmartLifecycle {
    private boolean running = false;

    @Override
    protected void doStart() {
        // Initialize resources
        running = true;
    }

    @Override
    protected void doStop() {
        // Release resources
        running = false;
    }

    @Override
    public boolean isRunning() {
        return running;
    }
}
```

## Usage

### Maven Dependency

Add the following dependency to your `pom.xml`:

```xml

    io.github.microsphere-projects
    microsphere-spring-context
    ${microsphere-spring.version}

```

> **Tip:** Use the BOM (`microsphere-spring-dependencies`) for consistent version management. See the [Getting Started](https://github.com/microsphere-projects/microsphere-spring#getting-started) guide.

### Import

```java
import io.microsphere.spring.context.lifecycle.AbstractSmartLifecycle;
```

## API Reference

### Public Methods

| Method | Description |
|--------|-------------|
| `start` |  |
| `stop` |  |
| `isRunning` |  |
| `isAutoStartup` |  |
| `stop` |  |
| `getPhase` |  |
| `isStarted` |  |
| `setPhase` |  |

---

*This documentation was auto-generated from the source code of [microsphere-spring](https://github.com/microsphere-projects/microsphere-spring).*

Home

spring-context

spring-guice

spring-jdbc

spring-test

spring-web

spring-webflux

spring-webmvc

Clone this wiki locally