annotationApi

Talks about: <a class="post-tag post-tag-annotations" href="/tags/annotations">annotations</a>

The annotation API to use.

Configuration Options

Option: ‘PROCESSING_API’

The default value of the annotationApi configuration option is PROCESSING_API. Setting the option to PROCESSING_API therefore produces the same code generated as the default configuration.

package com.example.persistence;

import javax.annotation.processing.Generated;

@Generated(
    value = "YoSQL",
    date = "<current_timestamp>",
    comments = "DO NOT MODIFY - automatically generated by YoSQL"
)
public class SomeRepository {

    @Generated(
        value = "YoSQL",
        date = "<current_timestamp>",
        comments = "DO NOT MODIFY - automatically generated by YoSQL"
    )
    private Object someField;

    @Generated(
        value = "YoSQL",
        date = "<current_timestamp>",
        comments = "DO NOT MODIFY - automatically generated by YoSQL"
    )
    public void someMethod() {
        // ... some code
    }

    // ... rest of generated code

}

Option: ‘ANNOTATION_API’

Changing the annotationApi configuration option to ANNOTATION_API uses the annotation API instead.

package com.example.persistence;

import javax.annotation.Generated;

@Generated(
    value = "YoSQL",
    date = "<current_timestamp>",
    comments = "DO NOT MODIFY - automatically generated by YoSQL"
)
public class SomeRepository {

    @Generated(
          value = "YoSQL",
          date = "<current_timestamp>",
          comments = "DO NOT MODIFY - automatically generated by YoSQL"
    )
    private Object someField;

    @Generated(
        value = "YoSQL",
        date = "<current_timestamp>",
        comments = "DO NOT MODIFY - automatically generated by YoSQL"
    )
    public void someMethod() {
      // ... some code
    }

    // ... rest of generated code (same as above)

}

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 --annotations-annotation-api=configValue

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

$ yosql --annotation-api=configValue

Gradle

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

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

yosql {
  annotations {
    annotationApi.set(configValue)
  }
}

or in Groovy syntax like this:

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

yosql {
  annotations {
    annotationApi = configValue
  }
}

Maven

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