gradle-josm-plugin / org.openstreetmap.josm.gradle.plugin.config / JosmPluginExtension

JosmPluginExtension

open class JosmPluginExtension

This extension is added to the project as project.josm

Constructors

<init>

JosmPluginExtension(project: Project)

instantiates the extension, takes project properties into account

Properties

debugPort

var debugPort: Int?

This is required, when you want to run the task debugJosm. Set this to the port on which you want to listen for the debug output.

github

val github: GithubConfig

Configuration options for GitHub releases

gitlab

val gitlab: GitlabConfig

Configuration options for GitLab repositories for your project

i18n

val i18n: I18nConfig

Configuration options for i18n

josmCompileVersion

var josmCompileVersion: String?

The version number of JOSM against which the plugin should be compiled.

josmConfigDir

var josmConfigDir: File

The directory where the default preferences.xml file is located, which will be used when the directory defined in tmpJosmHome is empty.

josmVersionFuzziness

var josmVersionFuzziness: Int

This determines how many JOSM versions are tried out before giving up when a JOSM version is specified that can't be downloaded through the download page.

logJacocoCoverage

var logJacocoCoverage: Boolean

Iff this is true, the coverage numbers for instruction, branch and line coverage are logged for every tasks with type org.gradle.testing.jacoco.tasks.JacocoReport.

logSkippedTasks

var logSkippedTasks: Boolean

Iff this is true, then after the build has finished, all skipped tasks are listed like this:

logTaskDuration

var logTaskDuration: Boolean

Iff this is true, the number of seconds each task needed for execution is logged, when execution of a task finishes.

manifest

val manifest: JosmManifest

The manifest for the JOSM plugin

maxPluginDependencyDepth

var maxPluginDependencyDepth: Int

When determining on which JOSM plugins this project depends, dependency chains are followed this number of steps. This number is the termination criterion when recursively searching for JOSM plugins that are required through JosmManifest.pluginDependencies.

packIntoJarFileFilter

var packIntoJarFileFilter: (PatternFilterable) -> PatternFilterable

When packing the dependencies of the packIntoJar configuration into the distribution *.jar, this closure is applied to the file tree. If you want to exclude certain files in your dependencies into your release, you can modify this. By default the /META-INF/ directory of dependencies is discarded.

project

val project: Project

publishRepositories

var publishRepositories: (RepositoryHandler) -> Unit

Repositories to which the artifacts can be published. GitLab package repositories can be added via org.openstreetmap.josm.gradle.plugin.gitlab.gitlabRepository

repositories

var repositories: (RepositoryHandler) -> Unit

The repositories that are added to the repository list.

tmpJosmCacheDir

var tmpJosmCacheDir: File

The directory in which the JOSM cache for the JOSM instance used by runJosm and debugJosm is stored.

tmpJosmPrefDir

var tmpJosmPrefDir: File

The directory in which the JOSM preferences for the JOSM instance used by runJosm and debugJosm are stored.

tmpJosmUserdataDir

var tmpJosmUserdataDir: File

The directory in which the JOSM user data for the JOSM instance used by runJosm and debugJosm is stored.

versionWithoutLeadingV

var versionWithoutLeadingV: Boolean

Determines if the leading 'v' character is trimmed from the beginning of Project.getVersion

Functions

github

fun github(c: Closure<GithubConfig>): Any

Configure the field JosmPluginExtension.github using a Groovy Closure.

fun github(a: Action<GithubConfig>): Unit

Configure the field JosmPluginExtension.github using an Action.

gitlab

fun gitlab(c: Closure<GitlabConfig>): Any

Configure the field JosmPluginExtension.gitlab using a Groovy Closure

fun gitlab(a: Action<GitlabConfig>): Unit

Configure the field JosmPluginExtension.gitlab using an Action

i18n

fun i18n(c: Closure<I18nConfig>): Unit

Configure the field JosmPluginExtension.i18n using a Groovy Closure.

fun i18n(a: Action<I18nConfig>): Unit

Configure the field JosmPluginExtension.i18n using an Action.

manifest

fun manifest(c: Closure<JosmManifest>): Unit

Configure the field manifest using a Groovy Closure.

fun manifest(a: Action<JosmManifest>): Unit

Configure the field manifest using an Action.

packIntoJarFileFilter

fun packIntoJarFileFilter(closure: Closure<PatternFilterable>): Unit

Set the packIntoJarFileFilter with a Groovy Closure

repositories

fun repositories(closure: Closure<RepositoryHandler>): Unit

Set the repositories with a Groovy Closure (replaces any previous setting).

useSeparateTmpJosmDirs

fun useSeparateTmpJosmDirs(): Boolean