# isEagerInit method

bool isEagerInit()

Returns whether this factory pod should be eagerly initialized.

This method controls when the factory pod itself (not the objects it creates) is initialized. Eager initialization can be useful for:

- Validating configuration early in the application startup
- Pre-warming caches or connections
- Failing fast if there are configuration problems

## Return Value

- `true` if the factory should be initialized during context startup
- `false` if the factory should be initialized lazily when first accessed

## Default Implementation

The default implementation returns `false`, meaning lazy initialization. This is generally preferred for better startup performance.

## Example - Eager Initialization

    class DatabaseConnectionPoolFactory extends PodProvider<ConnectionPool> {
      @override
      ObjectHolder<ConnectionPool>? get() {
        // Expensive initialization - validate early
        return ConnectionPool.create(connectionString);
      }

      @override
      bool isEagerInit() => true; // Initialize during startup
    }

## Example - Lazy Initialization

    class ReportGeneratorFactory extends PodProvider<ReportGenerator> {
      @override
      ObjectHolder<ReportGenerator>? get() => ReportGenerator();

      @override
      bool isEagerInit() => false; // Initialize when first needed
    }

## Performance Considerations

- Eager initialization increases startup time but can catch errors early
- Lazy initialization improves startup performance but may delay error detection
- Use eager initialization for critical infrastructure pods
- Use lazy initialization for optional or rarely-used pods

## Implementation

    bool isEagerInit() => false;