injectConverters

Talks about: <a class="post-tag post-tag-frontmatter" href="/tags/frontmatter">frontmatter</a>, and <a class="post-tag post-tag-repositories" href="/tags/repositories">repositories</a>

Toggles whether converters should be injected as constructor parameters.

Configuration Options

Option: ‘false’

The default value of the injectConverters configuration option is false. It produces code similar to this:

package com.example.persistence;

public class SomeRepository {

    private final DataSource dataSource;
    private final ToMapConverter toMap;

    public SomeRepository(final DataSource dataSource) {
        this.dataSource = dataSource;
        this.toMap = new ToMapConverter();
    }

    // ... rest of generated code

}

Option: ’true'

Changing the injectConverters configuration option to true generates the following code instead:

package your.own.domain;

public class SomeRepository {

    private final DataSource dataSource;
    private final ToMapConverter toMap;

    public SomeRepository(final DataSource dataSource, final ToMapConverter toMap) {
        this.dataSource = dataSource;
        this.toMap = toMap;
    }

    // ... rest of generated code

}

Tooling

Ant

In order to use YoSQL together with Ant, take a look at the tooling documentation for Ant.

Bazel

In order to use YoSQL together with Bazel, take a look at the tooling documentation for Bazel.

CLI

In order to use YoSQL on the command line, take a look at the tooling documentation for CLI.

$ yosql --repositories-inject-converters=configValue

As long as the name of the config option is unique across all configuration groups, you can use the shorter form:

$ yosql --inject-converters=configValue

Gradle

In order to use YoSQL together with Gradle, take a look at the tooling documentation for Gradle. The injectConverters setting can be configured using Gradle in Kotlin syntax like this:

plugins {
  java
  id("wtf.metio.yosql") version "2023.2.22"
}

yosql {
  repositories {
    injectConverters.set(configValue)
  }
}

or in Groovy syntax like this:

plugins {
  id "java"
  id "wtf.metio.yosql" version "2023.2.22"
}

yosql {
  repositories {
    injectConverters = configValue
  }
}

Maven

In order to use YoSQL together with Maven, take a look at the tooling documentation for Maven. The injectConverters setting can be configured using Maven like this:

<build>
  <plugins>
    <plugin>
      <groupId>wtf.metio.yosql</groupId>
      <artifactId>yosql-tooling-maven</artifactId>
      <version>2023.2.22</version>
      <configuration>
        <repositories>
          <injectConverters>configValue</injectConverters>
        </repositories>
      </configuration>
    </plugin>
  </plugins>
</build>