@ExecuteBefore(STARTED)
    @SuppressWarnings("unchecked")
    public void startStreamSuppliers(
        final Injector injector,
        final ProjectComponent projectComponent,
        final DbmsHandlerComponent dbmsHandlerComponent,
        final ManagerComponent managerComponent,
        final SqlStreamOptimizerComponent sqlStreamOptimizerComponent,
        final SqlStreamTerminatorComponent sqlStreamTerminatorComponent
    ) {
        // the trace component is optional
        final SqlTraceComponent sqlTraceComponent = injector.get(SqlTraceComponent.class).orElse(null);

        injector.stream(SqlAdapter.class)
            .forEach(sa -> {
                final SqlStreamSupplier<Object> supplier = new SqlStreamSupplierImpl<>(
                    (TableIdentifier<Object>) sa.identifier(),
                    (SqlFunction<ResultSet, Object>) sa.entityMapper(),
                    projectComponent,
                    dbmsHandlerComponent,
                    managerComponent,
                    sqlStreamOptimizerComponent,
                    sqlStreamTerminatorComponent,
                    sqlTraceComponent,
                    allowStreamIteratorAndSpliterator
                );
                supportMap.put(sa.identifier(), supplier);
            });
    }
The default implementation of the
{@link SqlStreamSupplierComponent}-interface.

@author Per Minborg
@since 3.0.1
runtime-parent/runtime-core/src/main/java/com/speedment/runtime/core/internal/component/sql/SqlStreamSupplierComponentImpl.java