executeOnce

Talks about: , and

Generate methods that are executed once with the given parameters

The ordinary method: one call, one execution, the parameters you passed. It is what you want for almost every statement, which is why it is on.

Turning it off for a statement leaves only its batch method, which is worth doing for a statement that is never sensibly run for a single row — a bulk import, say. A statement with both turned off generates nothing, and YoSQL warns rather than leaving you to notice the missing method.

The method is called what the statement is called.

Configuration Options

Option: ’true'

The default:

public final class TenantRepository {

    public int insertTenant(final UUID id, final String slug) {
        // ... rest of generated code
    }

}

Option: ‘false’

Only the batch method is generated:

public final class TenantRepository {

    public int[] insertTenantBatch(final UUID[] id, final String[] slug) {
        // ... rest of generated code
    }

}

Also in this group: allowedCallPrefixes , allowedReadPrefixes , allowedWritePrefixes , basePackageName , catchAndRethrow , createConnection , executeBatch , generateConnectionOverloads , generateInterfaces , injectConverters , throwOnMultipleResults , validateMethodNamePrefixes , writesReturnUpdateCount .

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-execute-once=configValue

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

yosql --execute-once=configValue

Gradle

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

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

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

or in Groovy syntax like this:

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

yosql {
  repositories {
    executeOnce = configValue
  }
}

Maven

In order to use YoSQL together with Maven , take a look at the tooling documentation for Maven . The executeOnce 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>
          <executeOnce>configValue</executeOnce>
        </repositories>
      </configuration>
    </plugin>
  </plugins>
</build>